2010-10-24 18:51:00 +00:00
|
|
|
#include <common.h>
|
|
|
|
#include <driver.h>
|
|
|
|
#include <mach/devices.h>
|
|
|
|
|
2011-07-22 10:41:01 +00:00
|
|
|
static inline struct device_d *imx_add_device(char *name, int id, void *base, int size, void *pdata)
|
2010-10-24 18:51:00 +00:00
|
|
|
{
|
2011-07-22 10:41:01 +00:00
|
|
|
return add_generic_device(name, id, NULL, (resource_size_t)base, size,
|
|
|
|
IORESOURCE_MEM, pdata);
|
2010-10-24 18:51:00 +00:00
|
|
|
}
|
|
|
|
|
2011-08-14 08:05:29 +00:00
|
|
|
struct device_d *imx_add_fec_imx27(void *base, struct fec_platform_data *pdata)
|
2010-10-24 18:51:00 +00:00
|
|
|
{
|
2011-08-14 08:05:29 +00:00
|
|
|
return imx_add_device("imx27-fec", -1, base, 0x1000, pdata);
|
|
|
|
}
|
|
|
|
|
|
|
|
struct device_d *imx_add_fec_imx6(void *base, struct fec_platform_data *pdata)
|
|
|
|
{
|
|
|
|
return imx_add_device("imx6-fec", -1, base, 0x1000, pdata);
|
2010-10-24 18:51:00 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
struct device_d *imx_add_spi(void *base, int id, struct spi_imx_master *pdata)
|
|
|
|
{
|
|
|
|
return imx_add_device("imx_spi", id, base, 0x1000, pdata);
|
|
|
|
}
|
|
|
|
|
|
|
|
struct device_d *imx_add_i2c(void *base, int id, struct i2c_platform_data *pdata)
|
|
|
|
{
|
2012-08-31 14:10:33 +00:00
|
|
|
return imx_add_device("i2c-fsl", id, base, 0x1000, pdata);
|
2010-10-24 18:51:00 +00:00
|
|
|
}
|
|
|
|
|
2012-09-22 14:43:02 +00:00
|
|
|
struct device_d *imx_add_uart_imx1(void *base, int id)
|
2010-10-24 18:51:00 +00:00
|
|
|
{
|
2012-09-22 14:43:02 +00:00
|
|
|
return imx_add_device("imx1-uart", id, base, 0x1000, NULL);
|
|
|
|
}
|
|
|
|
|
|
|
|
struct device_d *imx_add_uart_imx21(void *base, int id)
|
|
|
|
{
|
|
|
|
return imx_add_device("imx21-uart", id, base, 0x1000, NULL);
|
2010-10-24 18:51:00 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
struct device_d *imx_add_nand(void *base, struct imx_nand_platform_data *pdata)
|
|
|
|
{
|
2010-11-10 09:46:03 +00:00
|
|
|
return imx_add_device("imx_nand", -1, base, 0x1000, pdata);
|
2010-10-24 18:51:00 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
struct device_d *imx_add_fb(void *base, struct imx_fb_platform_data *pdata)
|
|
|
|
{
|
|
|
|
return imx_add_device("imxfb", -1, base, 0x1000, pdata);
|
|
|
|
}
|
|
|
|
|
|
|
|
struct device_d *imx_add_ipufb(void *base, struct imx_ipu_fb_platform_data *pdata)
|
|
|
|
{
|
|
|
|
return imx_add_device("imx-ipu-fb", -1, base, 0x1000, pdata);
|
|
|
|
}
|
|
|
|
|
|
|
|
struct device_d *imx_add_mmc(void *base, int id, void *pdata)
|
|
|
|
{
|
|
|
|
return imx_add_device("imx-mmc", id, base, 0x1000, pdata);
|
|
|
|
}
|
2010-11-18 08:14:05 +00:00
|
|
|
|
2011-12-05 15:19:01 +00:00
|
|
|
struct device_d *imx_add_esdhc(void *base, int id, struct esdhc_platform_data *pdata)
|
2010-11-18 08:14:05 +00:00
|
|
|
{
|
|
|
|
return imx_add_device("imx-esdhc", id, base, 0x1000, pdata);
|
|
|
|
}
|
2012-07-16 11:40:30 +00:00
|
|
|
|
|
|
|
struct device_d *imx_add_kpp(void *base, struct matrix_keymap_data *pdata)
|
|
|
|
{
|
|
|
|
return imx_add_device("imx-kpp", -1, base, 0x1000, pdata);
|
|
|
|
}
|