Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ad851bff authored by Uwe Kleine-König's avatar Uwe Kleine-König
Browse files

ARM: imx: dynamically register imx-fb devices

parent fc40d019
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -71,6 +71,7 @@ comment "MX21 platforms:"

config MACH_MX21ADS
	bool "MX21ADS platform"
	select IMX_HAVE_PLATFORM_IMX_FB
	select IMX_HAVE_PLATFORM_IMX_UART
	select IMX_HAVE_PLATFORM_MXC_NAND
	help
@@ -85,6 +86,7 @@ comment "MX27 platforms:"

config MACH_MX27ADS
	bool "MX27ADS platform"
	select IMX_HAVE_PLATFORM_IMX_FB
	select IMX_HAVE_PLATFORM_IMX_I2C
	select IMX_HAVE_PLATFORM_IMX_UART
	select IMX_HAVE_PLATFORM_MXC_NAND
@@ -112,8 +114,8 @@ choice
	default MACH_PCM970_BASEBOARD

config MACH_PCM970_BASEBOARD
	prompt "PHYTEC PCM970 development board"
	bool
	bool "PHYTEC PCM970 development board"
	select IMX_HAVE_PLATFORM_IMX_FB
	help
	  This adds board specific devices that can be found on Phytec's
	  PCM970 evaluation board.
@@ -153,6 +155,7 @@ choice

config MACH_EUKREA_MBIMX27_BASEBOARD
	bool "Eukrea MBIMX27 development board"
	select IMX_HAVE_PLATFORM_IMX_FB
	select IMX_HAVE_PLATFORM_IMX_SSI
	select IMX_HAVE_PLATFORM_IMX_UART
	select IMX_HAVE_PLATFORM_SPI_IMX
@@ -188,6 +191,7 @@ config MACH_IMX27LITE
config MACH_PCA100
	bool "Phytec phyCARD-s (pca100)"
	select IMX_HAVE_PLATFORM_IMX2_WDT
	select IMX_HAVE_PLATFORM_IMX_FB
	select IMX_HAVE_PLATFORM_IMX_I2C
	select IMX_HAVE_PLATFORM_IMX_SSI
	select IMX_HAVE_PLATFORM_IMX_UART
@@ -201,6 +205,7 @@ config MACH_PCA100

config MACH_MXT_TD60
	bool "Maxtrack i-MXT TD60"
	select IMX_HAVE_PLATFORM_IMX_FB
	select IMX_HAVE_PLATFORM_IMX_I2C
	select IMX_HAVE_PLATFORM_IMX_UART
	select IMX_HAVE_PLATFORM_MXC_NAND
+4 −0
Original line number Diff line number Diff line
@@ -13,6 +13,10 @@ extern const struct imx_imx2_wdt_data imx21_imx2_wdt_data __initconst;
#define imx21_add_imx2_wdt(pdata)	\
	imx_add_imx2_wdt(&imx21_imx2_wdt_data)

extern const struct imx_imx_fb_data imx21_imx_fb_data __initconst;
#define imx21_add_imx_fb(pdata)	\
	imx_add_imx_fb(&imx21_imx_fb_data, pdata)

extern const struct imx_imx_i2c_data imx21_imx_i2c_data __initconst;
#define imx21_add_imx_i2c(pdata)	\
	imx_add_imx_i2c(&imx21_imx_i2c_data, pdata)
+4 −0
Original line number Diff line number Diff line
@@ -17,6 +17,10 @@ extern const struct imx_imx2_wdt_data imx27_imx2_wdt_data __initconst;
#define imx27_add_imx2_wdt(pdata)	\
	imx_add_imx2_wdt(&imx27_imx2_wdt_data)

extern const struct imx_imx_fb_data imx27_imx_fb_data __initconst;
#define imx27_add_imx_fb(pdata)	\
	imx_add_imx_fb(&imx27_imx_fb_data, pdata)

extern const struct imx_imx_i2c_data imx27_imx_i2c_data[] __initconst;
#define imx27_add_imx_i2c(id, pdata)	\
	imx_add_imx_i2c(&imx27_imx_i2c_data[id], pdata)
+0 −29
Original line number Diff line number Diff line
@@ -77,35 +77,6 @@ int __init imx1_register_gpios(void)
#endif

#if defined(CONFIG_MACH_MX21) || defined(CONFIG_MACH_MX27)
/*
 * lcdc:
 * - i.MX1: the basic controller
 * - i.MX21: to be checked
 * - i.MX27: like i.MX1, with slightly variations
 */
static struct resource mxc_fb[] = {
	{
		.start = MX2x_LCDC_BASE_ADDR,
		.end = MX2x_LCDC_BASE_ADDR + SZ_4K - 1,
		.flags = IORESOURCE_MEM,
	}, {
		.start = MX2x_INT_LCDC,
		.end = MX2x_INT_LCDC,
		.flags = IORESOURCE_IRQ,
	}
};

/* mxc lcd driver */
struct platform_device mxc_fb_device = {
	.name = "imx-fb",
	.id = 0,
	.num_resources = ARRAY_SIZE(mxc_fb),
	.resource = mxc_fb,
	.dev = {
		.coherent_dma_mask = DMA_BIT_MASK(32),
	},
};

static struct resource mxc_pwm_resources[] = {
	{
		.start = MX2x_PWM_BASE_ADDR,
+0 −1
Original line number Diff line number Diff line
#if defined(CONFIG_MACH_MX21) || defined(CONFIG_MACH_MX27)
extern struct platform_device mxc_fb_device;
extern struct platform_device mxc_pwm_device;
extern struct platform_device mxc_sdhc_device0;
extern struct platform_device mxc_sdhc_device1;
Loading