openwrt/target/linux/ixp4xx/patches/141-nslu2_setup_mac.patch

43 lines
1.1 KiB
Diff

Index: linux-2.6.21.7/arch/arm/mach-ixp4xx/nslu2-setup.c
===================================================================
--- linux-2.6.21.7.orig/arch/arm/mach-ixp4xx/nslu2-setup.c
+++ linux-2.6.21.7/arch/arm/mach-ixp4xx/nslu2-setup.c
@@ -138,6 +138,29 @@ static struct platform_device nslu2_uart
.resource = nslu2_uart_resources,
};
+static struct resource res_mac0 = {
+ .start = IXP4XX_EthB_BASE_PHYS,
+ .end = IXP4XX_EthB_BASE_PHYS + 0x1ff,
+ .flags = IORESOURCE_MEM,
+};
+
+static struct mac_plat_info plat_mac0 = {
+ .npe_id = 1,
+ .phy_id = 1,
+ .eth_id = 0,
+ .rxq_id = 27,
+ .txq_id = 24,
+ .rxdoneq_id = 4,
+};
+
+static struct platform_device mac0 = {
+ .name = "ixp4xx_mac",
+ .id = 0,
+ .dev.platform_data = &plat_mac0,
+ .num_resources = 1,
+ .resource = &res_mac0,
+};
+
static struct platform_device *nslu2_devices[] __initdata = {
&nslu2_i2c_controller,
&nslu2_flash,
@@ -145,6 +168,7 @@ static struct platform_device *nslu2_dev
#ifdef CONFIG_LEDS_IXP4XX
&nslu2_leds,
#endif
+ &mac0
};
static void nslu2_power_off(void)