Loading arch/arm/mach-imx/Kconfig +3 −0 Original line number Diff line number Diff line Loading @@ -92,6 +92,7 @@ config MACH_PCM038 bool "Phytec phyCORE-i.MX27 CPU module (pcm038)" select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for phyCORE-i.MX27 (aka pcm038) platform. This Loading Loading @@ -134,6 +135,7 @@ choice config MACH_EUKREA_MBIMX27_BASEBOARD prompt "Eukrea MBIMX27 development board" bool select IMX_HAVE_PLATFORM_SPI_IMX help This adds board specific devices that can be found on Eukrea's MBIMX27 evaluation board. Loading @@ -156,6 +158,7 @@ config MACH_PCA100 bool "Phytec phyCARD-s (pca100)" select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for phyCARD-s (aka pca100) platform. This Loading arch/arm/mach-imx/devices-imx27.h +7 −0 Original line number Diff line number Diff line Loading @@ -16,3 +16,10 @@ #define imx27_add_mxc_nand(pdata) \ imx_add_mxc_nand_v1(MX27_NFC_BASE_ADDR, MX27_INT_NANDFC, pdata) #define imx27_add_spi_imx0(pdata) \ imx_add_spi_imx(0, MX27_CSPI1_BASE_ADDR, SZ_4K, MX27_INT_CSPI1, pdata) #define imx27_add_spi_imx1(pdata) \ imx_add_spi_imx(1, MX27_CSPI2_BASE_ADDR, SZ_4K, MX27_INT_CSPI2, pdata) #define imx27_add_spi_imx2(pdata) \ imx_add_spi_imx(2, MX27_CSPI3_BASE_ADDR, SZ_4K, MX27_INT_CSPI3, pdata) arch/arm/mach-imx/devices.c +0 −33 Original line number Diff line number Diff line Loading @@ -218,39 +218,6 @@ int __init imx1_register_gpios(void) #endif #if defined(CONFIG_MACH_MX21) || defined(CONFIG_MACH_MX27) /* * SPI master controller * * - i.MX1: 2 channel (slighly different register setting) * - i.MX21: 2 channel * - i.MX27: 3 channel */ #ifdef CONFIG_MACH_MX27 #define DEFINE_IMX_SPI_DEVICE(n, baseaddr, irq) \ static struct resource mxc_spi_resources ## n[] = { \ { \ .start = baseaddr, \ .end = baseaddr + SZ_4K - 1, \ .flags = IORESOURCE_MEM, \ }, { \ .start = irq, \ .end = irq, \ .flags = IORESOURCE_IRQ, \ }, \ }; \ \ struct platform_device mxc_spi_device ## n = { \ .name = "spi_imx", \ .id = n, \ .num_resources = ARRAY_SIZE(mxc_spi_resources ## n), \ .resource = mxc_spi_resources ## n, \ } DEFINE_IMX_SPI_DEVICE(0, MX2x_CSPI1_BASE_ADDR, MX2x_INT_CSPI1); DEFINE_IMX_SPI_DEVICE(1, MX2x_CSPI2_BASE_ADDR, MX2x_INT_CSPI2); DEFINE_IMX_SPI_DEVICE(2, MX27_CSPI3_BASE_ADDR, MX27_INT_CSPI3); #endif /* * General Purpose Timer * - i.MX21: 3 timers Loading arch/arm/mach-imx/devices.h +0 −5 Original line number Diff line number Diff line Loading @@ -34,11 +34,6 @@ extern struct platform_device mxc_otg_udc_device; extern struct platform_device mxc_otg_host; extern struct platform_device mxc_usbh1; extern struct platform_device mxc_usbh2; #ifdef CONFIG_MACH_MX27 extern struct platform_device mxc_spi_device0; extern struct platform_device mxc_spi_device1; extern struct platform_device mxc_spi_device2; #endif extern struct platform_device mx21_usbhc_device; extern struct platform_device imx_ssi_device0; extern struct platform_device imx_ssi_device1; Loading arch/arm/mach-imx/eukrea_mbimx27-baseboard.c +3 −2 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ #include <mach/mmc.h> #include <mach/imx-uart.h> #include "devices-imx27.h" #include "devices.h" static int eukrea_mbimx27_pins[] = { Loading Loading @@ -201,7 +202,7 @@ static struct spi_board_info eukrea_mbimx27_spi_board_info[] __initdata = { static int eukrea_mbimx27_spi_cs[] = {GPIO_PORTD | 28}; static struct spi_imx_master eukrea_mbimx27_spi_0_data = { static const struct spi_imx_master eukrea_mbimx27_spi0_data __initconst = { .chipselect = eukrea_mbimx27_spi_cs, .num_chipselect = ARRAY_SIZE(eukrea_mbimx27_spi_cs), }; Loading Loading @@ -233,7 +234,7 @@ void __init eukrea_mbimx27_baseboard_init(void) /* SPI and ADS7846 Touchscreen controler init */ mxc_gpio_mode(GPIO_PORTD | 28 | GPIO_GPIO | GPIO_OUT); mxc_gpio_mode(GPIO_PORTD | 25 | GPIO_GPIO | GPIO_IN); mxc_register_device(&mxc_spi_device0, &eukrea_mbimx27_spi_0_data); imx27_add_spi_imx0(&eukrea_mbimx27_spi0_data); spi_register_board_info(eukrea_mbimx27_spi_board_info, ARRAY_SIZE(eukrea_mbimx27_spi_board_info)); ads7846_dev_init(); Loading Loading
arch/arm/mach-imx/Kconfig +3 −0 Original line number Diff line number Diff line Loading @@ -92,6 +92,7 @@ config MACH_PCM038 bool "Phytec phyCORE-i.MX27 CPU module (pcm038)" select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for phyCORE-i.MX27 (aka pcm038) platform. This Loading Loading @@ -134,6 +135,7 @@ choice config MACH_EUKREA_MBIMX27_BASEBOARD prompt "Eukrea MBIMX27 development board" bool select IMX_HAVE_PLATFORM_SPI_IMX help This adds board specific devices that can be found on Eukrea's MBIMX27 evaluation board. Loading @@ -156,6 +158,7 @@ config MACH_PCA100 bool "Phytec phyCARD-s (pca100)" select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for phyCARD-s (aka pca100) platform. This Loading
arch/arm/mach-imx/devices-imx27.h +7 −0 Original line number Diff line number Diff line Loading @@ -16,3 +16,10 @@ #define imx27_add_mxc_nand(pdata) \ imx_add_mxc_nand_v1(MX27_NFC_BASE_ADDR, MX27_INT_NANDFC, pdata) #define imx27_add_spi_imx0(pdata) \ imx_add_spi_imx(0, MX27_CSPI1_BASE_ADDR, SZ_4K, MX27_INT_CSPI1, pdata) #define imx27_add_spi_imx1(pdata) \ imx_add_spi_imx(1, MX27_CSPI2_BASE_ADDR, SZ_4K, MX27_INT_CSPI2, pdata) #define imx27_add_spi_imx2(pdata) \ imx_add_spi_imx(2, MX27_CSPI3_BASE_ADDR, SZ_4K, MX27_INT_CSPI3, pdata)
arch/arm/mach-imx/devices.c +0 −33 Original line number Diff line number Diff line Loading @@ -218,39 +218,6 @@ int __init imx1_register_gpios(void) #endif #if defined(CONFIG_MACH_MX21) || defined(CONFIG_MACH_MX27) /* * SPI master controller * * - i.MX1: 2 channel (slighly different register setting) * - i.MX21: 2 channel * - i.MX27: 3 channel */ #ifdef CONFIG_MACH_MX27 #define DEFINE_IMX_SPI_DEVICE(n, baseaddr, irq) \ static struct resource mxc_spi_resources ## n[] = { \ { \ .start = baseaddr, \ .end = baseaddr + SZ_4K - 1, \ .flags = IORESOURCE_MEM, \ }, { \ .start = irq, \ .end = irq, \ .flags = IORESOURCE_IRQ, \ }, \ }; \ \ struct platform_device mxc_spi_device ## n = { \ .name = "spi_imx", \ .id = n, \ .num_resources = ARRAY_SIZE(mxc_spi_resources ## n), \ .resource = mxc_spi_resources ## n, \ } DEFINE_IMX_SPI_DEVICE(0, MX2x_CSPI1_BASE_ADDR, MX2x_INT_CSPI1); DEFINE_IMX_SPI_DEVICE(1, MX2x_CSPI2_BASE_ADDR, MX2x_INT_CSPI2); DEFINE_IMX_SPI_DEVICE(2, MX27_CSPI3_BASE_ADDR, MX27_INT_CSPI3); #endif /* * General Purpose Timer * - i.MX21: 3 timers Loading
arch/arm/mach-imx/devices.h +0 −5 Original line number Diff line number Diff line Loading @@ -34,11 +34,6 @@ extern struct platform_device mxc_otg_udc_device; extern struct platform_device mxc_otg_host; extern struct platform_device mxc_usbh1; extern struct platform_device mxc_usbh2; #ifdef CONFIG_MACH_MX27 extern struct platform_device mxc_spi_device0; extern struct platform_device mxc_spi_device1; extern struct platform_device mxc_spi_device2; #endif extern struct platform_device mx21_usbhc_device; extern struct platform_device imx_ssi_device0; extern struct platform_device imx_ssi_device1; Loading
arch/arm/mach-imx/eukrea_mbimx27-baseboard.c +3 −2 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ #include <mach/mmc.h> #include <mach/imx-uart.h> #include "devices-imx27.h" #include "devices.h" static int eukrea_mbimx27_pins[] = { Loading Loading @@ -201,7 +202,7 @@ static struct spi_board_info eukrea_mbimx27_spi_board_info[] __initdata = { static int eukrea_mbimx27_spi_cs[] = {GPIO_PORTD | 28}; static struct spi_imx_master eukrea_mbimx27_spi_0_data = { static const struct spi_imx_master eukrea_mbimx27_spi0_data __initconst = { .chipselect = eukrea_mbimx27_spi_cs, .num_chipselect = ARRAY_SIZE(eukrea_mbimx27_spi_cs), }; Loading Loading @@ -233,7 +234,7 @@ void __init eukrea_mbimx27_baseboard_init(void) /* SPI and ADS7846 Touchscreen controler init */ mxc_gpio_mode(GPIO_PORTD | 28 | GPIO_GPIO | GPIO_OUT); mxc_gpio_mode(GPIO_PORTD | 25 | GPIO_GPIO | GPIO_IN); mxc_register_device(&mxc_spi_device0, &eukrea_mbimx27_spi_0_data); imx27_add_spi_imx0(&eukrea_mbimx27_spi0_data); spi_register_board_info(eukrea_mbimx27_spi_board_info, ARRAY_SIZE(eukrea_mbimx27_spi_board_info)); ads7846_dev_init(); Loading