ARM: MX3: lilly1131: move MC13783 device registration

Register the MC13783 device in the module code.

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Daniel Mack 2009-11-21 18:40:40 +01:00 committed by Sascha Hauer
parent 6d3e6601ba
commit 2cc326833f
2 changed files with 17 additions and 19 deletions

View File

@ -29,8 +29,6 @@
#include <linux/init.h> #include <linux/init.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/spi/spi.h>
#include <linux/mfd/mc13783.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
@ -214,22 +212,6 @@ static void __init mx31lilly_init_fb(void)
gpio_direction_output(LCD_VCC_EN_GPIO, 1); gpio_direction_output(LCD_VCC_EN_GPIO, 1);
} }
/* SPI */
static struct mc13783_platform_data mc13783_pdata __initdata = {
.flags = MC13783_USE_RTC | MC13783_USE_TOUCHSCREEN,
};
static struct spi_board_info lilly_spi_devs[] __initdata = {
{
.modalias = "mc13783",
.max_speed_hz = 1000000,
.bus_num = 1,
.chip_select = 0,
.platform_data = &mc13783_pdata,
},
};
void __init mx31lilly_db_init(void) void __init mx31lilly_db_init(void)
{ {
mxc_iomux_setup_multiple_pins(lilly_db_board_pins, mxc_iomux_setup_multiple_pins(lilly_db_board_pins,
@ -240,6 +222,5 @@ void __init mx31lilly_db_init(void)
mxc_register_device(&mxc_uart_device2, &uart_pdata); mxc_register_device(&mxc_uart_device2, &uart_pdata);
mxc_register_device(&mxcsdhc_device0, &mmc_pdata); mxc_register_device(&mxcsdhc_device0, &mmc_pdata);
mx31lilly_init_fb(); mx31lilly_init_fb();
spi_register_board_info(lilly_spi_devs, ARRAY_SIZE(lilly_spi_devs));
} }

View File

@ -31,6 +31,8 @@
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/smsc911x.h> #include <linux/smsc911x.h>
#include <linux/mtd/physmap.h> #include <linux/mtd/physmap.h>
#include <linux/spi/spi.h>
#include <linux/mfd/mc13783.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
@ -111,6 +113,8 @@ static struct platform_device *devices[] __initdata = {
&physmap_flash_device, &physmap_flash_device,
}; };
/* SPI */
static int spi_internal_chipselect[] = { static int spi_internal_chipselect[] = {
MXC_SPI_CS(0), MXC_SPI_CS(0),
MXC_SPI_CS(1), MXC_SPI_CS(1),
@ -127,6 +131,18 @@ static struct spi_imx_master spi1_pdata = {
.num_chipselect = ARRAY_SIZE(spi_internal_chipselect), .num_chipselect = ARRAY_SIZE(spi_internal_chipselect),
}; };
static struct mc13783_platform_data mc13783_pdata __initdata = {
.flags = MC13783_USE_RTC | MC13783_USE_TOUCHSCREEN,
};
static struct spi_board_info mc13783_dev __initdata = {
.modalias = "mc13783",
.max_speed_hz = 1000000,
.bus_num = 1,
.chip_select = 0,
.platform_data = &mc13783_pdata,
};
static int mx31lilly_baseboard; static int mx31lilly_baseboard;
core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444); core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444);
@ -164,6 +180,7 @@ static void __init mx31lilly_board_init(void)
mxc_register_device(&mxc_spi_device0, &spi0_pdata); mxc_register_device(&mxc_spi_device0, &spi0_pdata);
mxc_register_device(&mxc_spi_device1, &spi1_pdata); mxc_register_device(&mxc_spi_device1, &spi1_pdata);
spi_register_board_info(&mc13783_dev, 1);
platform_add_devices(devices, ARRAY_SIZE(devices)); platform_add_devices(devices, ARRAY_SIZE(devices));
} }