diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2007-06-10 12:37:56 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2007-06-10 12:37:56 +0000 |
commit | 1c7ba68cb86c642b9f6cf878b345cb051848a827 (patch) | |
tree | e55afdd387b43518358058fcb4adecdb100196ef | |
parent | 2e13bcc8ae43abf47f8e960c86799fa929bd26dc (diff) | |
download | master-31e0f0ae-1c7ba68cb86c642b9f6cf878b345cb051848a827.tar.gz master-31e0f0ae-1c7ba68cb86c642b9f6cf878b345cb051848a827.tar.bz2 master-31e0f0ae-1c7ba68cb86c642b9f6cf878b345cb051848a827.zip |
add support for the CF slot on the Pronghorn Metro - needs testing
SVN-Revision: 7544
-rw-r--r-- | target/linux/ixp4xx-2.6/patches/430-pronghorn_metro_cf.patch | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/target/linux/ixp4xx-2.6/patches/430-pronghorn_metro_cf.patch b/target/linux/ixp4xx-2.6/patches/430-pronghorn_metro_cf.patch new file mode 100644 index 0000000000..d2982bc954 --- /dev/null +++ b/target/linux/ixp4xx-2.6/patches/430-pronghorn_metro_cf.patch @@ -0,0 +1,57 @@ +diff -Nur linux-2.6.21.1/arch/arm/mach-ixp4xx/pronghornmetro-setup.c linux-2.6.21.1-owrt/arch/arm/mach-ixp4xx/pronghornmetro-setup.c +--- linux-2.6.21.1/arch/arm/mach-ixp4xx/pronghornmetro-setup.c 2007-06-10 14:31:27.000000000 +0200 ++++ linux-2.6.21.1-owrt/arch/arm/mach-ixp4xx/pronghornmetro-setup.c 2007-06-10 14:36:23.000000000 +0200 +@@ -77,6 +77,35 @@ + .resource = &pronghornmetro_uart_resource, + }; + ++static struct resource pronghornmetro_pata_resources[] = { ++ { ++ .flags = IORESOURCE_MEM ++ }, ++ { ++ .flags = IORESOURCE_MEM, ++ }, ++ { ++ .name = "intrq", ++ .start = IRQ_IXP4XX_GPIO0, ++ .end = IRQ_IXP4XX_GPIO0, ++ .flags = IORESOURCE_IRQ, ++ }, ++}; ++ ++static struct ixp4xx_pata_data pronghornmetro_pata_data = { ++ .cs0_bits = 0xbfff0043, ++ .cs1_bits = 0xbfff0043, ++}; ++ ++static struct platform_device pronghornmetro_pata = { ++ .name = "pata_ixp4xx_cf", ++ .id = 0, ++ .dev.platform_data = &pronghornmetro_pata_data, ++ .num_resources = ARRAY_SIZE(pronghornmetro_pata_resources), ++ .resource = pronghornmetro_pata_resources, ++}; ++ ++ + static struct resource res_mac0 = { + .start = IXP4XX_EthB_BASE_PHYS, + .end = IXP4XX_EthB_BASE_PHYS + 0x1ff, +@@ -165,6 +194,17 @@ + + platform_add_devices(pronghornmetro_devices, ARRAY_SIZE(pronghornmetro_devices)); + ++ pronghornmetro_pata_resources[0].start = IXP4XX_EXP_BUS_BASE(1); ++ pronghornmetro_pata_resources[0].end = IXP4XX_EXP_BUS_END(1); ++ ++ pronghornmetro_pata_resources[1].start = IXP4XX_EXP_BUS_BASE(2); ++ pronghornmetro_pata_resources[1].end = IXP4XX_EXP_BUS_END(2); ++ ++ pronghornmetro_pata_data.cs0_cfg = IXP4XX_EXP_CS1; ++ pronghornmetro_pata_data.cs1_cfg = IXP4XX_EXP_CS2; ++ ++ platform_device_register(&pronghornmetro_pata); ++ + register_mtd_user(&pronghornmetro_flash_notifier); + } + |