1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2025-04-21 12:27:27 +03:00

[adm5120] new experimental driver for the CF slot on the RouterBOARD 153

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9707 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
juhosg
2007-12-11 09:00:06 +00:00
parent c0d490d3c5
commit a7f49cd3e8
6 changed files with 362 additions and 31 deletions

View File

@@ -42,8 +42,8 @@
#include <adm5120_nand.h>
#include <adm5120_board.h>
#include <adm5120_platform.h>
#include <adm5120_cf.h>
#include <adm5120_info.h>
#include <prom/routerboot.h>
#define RB1XX_NAND_CHIP_DELAY 25
@@ -127,8 +127,8 @@ static struct resource rb150_nand_resource[] = {
static struct resource rb153_cf_resources[] = {
{
.name = "cf_membase",
.start = ADM5120_EXTIO0_BASE,
.end = ADM5120_EXTIO0_BASE + ADM5120_MPMC_SIZE-1 ,
.start = ADM5120_EXTIO1_BASE,
.end = ADM5120_EXTIO1_BASE + ADM5120_EXTIO1_SIZE-1 ,
.flags = IORESOURCE_MEM
}, {
.name = "cf_irq",
@@ -138,16 +138,11 @@ static struct resource rb153_cf_resources[] = {
}
};
static struct cf_device rb153_cf_data = {
.gpio_pin = ADM5120_GPIO_PIN4
};
static struct platform_device rb153_cf_device = {
.name = "rb153-cf",
.name = "pata-rb153-cf",
.id = -1,
.resource = rb153_cf_resources,
.num_resources = ARRAY_SIZE(rb153_cf_resources),
.dev.platform_data = &rb153_cf_data,
};
static struct platform_device *rb153_devices[] __initdata = {
@@ -223,7 +218,7 @@ static void rb150_nand_cmd_ctrl(struct mtd_info *mtd, int cmd,
static void __init rb1xx_mac_setup(void)
{
int i, j;
for (i = 0; i < rb_hs.mac_count; i++) {
for (j = 0; j < RB_MAC_SIZE; j++)
adm5120_eth_macs[i][j] = rb_hs.macs[i][j];
@@ -247,6 +242,9 @@ static void __init rb1xx_flash_setup(void)
static void __init rb153_cf_setup(void)
{
/* enable CSX1:INTX1 on GPIO 3:4 for the CF slot */
adm5120_gpio_csx1_enable();
gpio_request(RB153_GPIO_CF_RDY, "cf-ready");
gpio_direction_input(RB153_GPIO_CF_RDY);
gpio_request(RB153_GPIO_CF_WT, "cf-wait");