|
|
|
@ -35,10 +35,14 @@ static struct resource rt288x_flash0_resources[] = { |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
struct physmap_flash_data rt288x_flash0_data; |
|
|
|
|
static struct platform_device rt288x_flash0_device = { |
|
|
|
|
.name = "physmap-flash", |
|
|
|
|
.resource = rt288x_flash0_resources, |
|
|
|
|
.num_resources = ARRAY_SIZE(rt288x_flash0_resources), |
|
|
|
|
.dev = { |
|
|
|
|
.platform_data = &rt288x_flash0_data, |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static struct resource rt288x_flash1_resources[] = { |
|
|
|
@ -50,17 +54,21 @@ static struct resource rt288x_flash1_resources[] = { |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
struct physmap_flash_data rt288x_flash1_data; |
|
|
|
|
static struct platform_device rt288x_flash1_device = { |
|
|
|
|
.name = "physmap-flash", |
|
|
|
|
.resource = rt288x_flash1_resources, |
|
|
|
|
.num_resources = ARRAY_SIZE(rt288x_flash1_resources), |
|
|
|
|
.dev = { |
|
|
|
|
.platform_data = &rt288x_flash1_data, |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static int rt288x_flash_instance __initdata; |
|
|
|
|
void __init rt288x_register_flash(unsigned int id, |
|
|
|
|
struct physmap_flash_data *pdata) |
|
|
|
|
void __init rt288x_register_flash(unsigned int id) |
|
|
|
|
{ |
|
|
|
|
struct platform_device *pdev; |
|
|
|
|
struct physmap_flash_data *pdata; |
|
|
|
|
u32 t; |
|
|
|
|
int reg; |
|
|
|
|
|
|
|
|
@ -80,6 +88,7 @@ void __init rt288x_register_flash(unsigned int id, |
|
|
|
|
t = rt288x_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; |
|
|
|
@ -95,7 +104,6 @@ void __init rt288x_register_flash(unsigned int id, |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
pdev->dev.platform_data = pdata; |
|
|
|
|
pdev->id = rt288x_flash_instance; |
|
|
|
|
|
|
|
|
|
platform_device_register(pdev); |
|
|
|
|