},
};
+struct physmap_flash_data rt305x_flash0_data;
static struct platform_device rt305x_flash0_device = {
.name = "physmap-flash",
.resource = rt305x_flash0_resources,
.num_resources = ARRAY_SIZE(rt305x_flash0_resources),
+ .dev = {
+ .platform_data = &rt305x_flash0_data,
+ },
};
static struct resource rt305x_flash1_resources[] = {
},
};
+struct physmap_flash_data rt305x_flash1_data;
static struct platform_device rt305x_flash1_device = {
.name = "physmap-flash",
.resource = rt305x_flash1_resources,
.num_resources = ARRAY_SIZE(rt305x_flash1_resources),
+ .dev = {
+ .platform_data = &rt305x_flash1_data,
+ },
};
static int rt305x_flash_instance __initdata;
-void __init rt305x_register_flash(unsigned int id,
- struct physmap_flash_data *pdata)
+void __init rt305x_register_flash(unsigned int id)
{
struct platform_device *pdev;
+ struct physmap_flash_data *pdata;
u32 t;
int reg;
t = rt305x_memc_rr(reg);
t = (t >> FLASH_CFG_WIDTH_SHIFT) & FLASH_CFG_WIDTH_MASK;
+ pdata = pdev->dev.platform_data;
switch (t) {
case FLASH_CFG_WIDTH_8BIT:
pdata->width = 1;
return;
}
- pdev->dev.platform_data = pdata;
pdev->id = rt305x_flash_instance;
platform_device_register(pdev);