on all the cpu module we have a at25 except on the cogent where we have a at45 Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@xxxxxxxxxxxx> --- arch/arm/boards/at91sam9x5ek/init.c | 37 +++++++++++++++++++++++++++++++ arch/arm/configs/at91sam9x5ek_defconfig | 5 ++++- 2 files changed, 41 insertions(+), 1 deletion(-) diff --git a/arch/arm/boards/at91sam9x5ek/init.c b/arch/arm/boards/at91sam9x5ek/init.c index 48eebac..afb50e8 100644 --- a/arch/arm/boards/at91sam9x5ek/init.c +++ b/arch/arm/boards/at91sam9x5ek/init.c @@ -41,6 +41,7 @@ #include <readkey.h> #include <linux/w1-gpio.h> #include <w1_mac_address.h> +#include <spi/spi.h> #include "hw_version.h" @@ -125,6 +126,41 @@ static void ek_add_device_i2c(void) at91_add_device_i2c(0, i2c_devices, ARRAY_SIZE(i2c_devices)); } +static const struct spi_board_info ek_cm_cogent_spi_devices[] = { + { + .name = "mtd_dataflash", + .chip_select = 0, + .max_speed_hz = 15 * 1000 * 1000, + .bus_num = 0, + } +}; + +static const struct spi_board_info ek_spi_devices[] = { + { + .name = "m25p80", + .chip_select = 0, + .max_speed_hz = 30 * 1000 * 1000, + .bus_num = 0, + } +}; + +static unsigned spi0_standard_cs[] = { AT91_PIN_PA14}; +static struct at91_spi_platform_data spi_pdata = { + .chipselect = spi0_standard_cs, + .num_chipselect = ARRAY_SIZE(spi0_standard_cs), +}; + +static void ek_add_device_spi(void) +{ + if (at91sam9x5ek_cm_is_vendor(VENDOR_COGENT)) + spi_register_board_info(ek_cm_cogent_spi_devices, + ARRAY_SIZE(ek_cm_cogent_spi_devices)); + else + spi_register_board_info(ek_spi_devices, + ARRAY_SIZE(ek_spi_devices)); + at91_add_device_spi(0, &spi_pdata); +} + /* * USB Host port */ @@ -181,6 +217,7 @@ static int at91sam9x5ek_devices_init(void) ek_add_device_w1(); ek_add_device_nand(); ek_add_device_eth(); + ek_add_device_spi(); at91_add_device_usbh_ohci(&ek_usbh_data); ek_add_led(); ek_add_device_i2c(); diff --git a/arch/arm/configs/at91sam9x5ek_defconfig b/arch/arm/configs/at91sam9x5ek_defconfig index c71fe0d..5611b95 100644 --- a/arch/arm/configs/at91sam9x5ek_defconfig +++ b/arch/arm/configs/at91sam9x5ek_defconfig @@ -52,10 +52,13 @@ CONFIG_CMD_TFTP=y CONFIG_FS_TFTP=y CONFIG_NET_NETCONSOLE=y CONFIG_DRIVER_NET_MACB=y -# CONFIG_SPI is not set +CONFIG_DRIVER_SPI_ATMEL=y +CONFIG_MTD_M25P80=y CONFIG_I2C=y CONFIG_I2C_GPIO=y CONFIG_MTD=y +# CONFIG_MTD_OOB_DEVICE is not set +CONFIG_MTD_DATAFLASH=y CONFIG_NAND=y # CONFIG_NAND_ECC_HW is not set # CONFIG_NAND_ECC_HW_SYNDROME is not set -- 1.7.10.4 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox