ARM: mx28: add the second fec device registration
authorShawn Guo <shawn.guo@freescale.com>
Tue, 11 Jan 2011 12:09:24 +0000 (20:09 +0800)
committerSascha Hauer <s.hauer@pengutronix.de>
Tue, 11 Jan 2011 12:59:39 +0000 (13:59 +0100)
Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
arch/arm/mach-mxs/mach-mx28evk.c

index d162e95910f30130c1192722fab2b006f09fb24d..8e2c5975001ef2f331da045cc894301a248a7c53 100644 (file)
@@ -57,6 +57,19 @@ static const iomux_cfg_t mx28evk_pads[] __initconst = {
                (MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
        MX28_PAD_ENET_CLK__CLKCTRL_ENET |
                (MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
+       /* fec1 */
+       MX28_PAD_ENET0_CRS__ENET1_RX_EN |
+               (MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
+       MX28_PAD_ENET0_RXD2__ENET1_RXD0 |
+               (MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
+       MX28_PAD_ENET0_RXD3__ENET1_RXD1 |
+               (MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
+       MX28_PAD_ENET0_COL__ENET1_TX_EN |
+               (MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
+       MX28_PAD_ENET0_TXD2__ENET1_TXD0 |
+               (MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
+       MX28_PAD_ENET0_TXD3__ENET1_TXD1 |
+               (MXS_PAD_8MA | MXS_PAD_3V3 | MXS_PAD_PULLUP),
        /* phy power line */
        MX28_PAD_SSP1_DATA3__GPIO_2_15 |
                (MXS_PAD_4MA | MXS_PAD_3V3 | MXS_PAD_NOPULL),
@@ -106,8 +119,14 @@ static void __init mx28evk_fec_reset(void)
        gpio_set_value(MX28EVK_FEC_PHY_RESET, 1);
 }
 
-static const struct fec_platform_data mx28_fec_pdata __initconst = {
-       .phy = PHY_INTERFACE_MODE_RMII,
+static struct fec_platform_data mx28_fec_pdata[] = {
+       {
+               /* fec0 */
+               .phy = PHY_INTERFACE_MODE_RMII,
+       }, {
+               /* fec1 */
+               .phy = PHY_INTERFACE_MODE_RMII,
+       },
 };
 
 static void __init mx28evk_init(void)
@@ -117,7 +136,8 @@ static void __init mx28evk_init(void)
        mx28_add_duart();
 
        mx28evk_fec_reset();
-       mx28_add_fec(0, &mx28_fec_pdata);
+       mx28_add_fec(0, &mx28_fec_pdata[0]);
+       mx28_add_fec(1, &mx28_fec_pdata[1]);
 }
 
 static void __init mx28evk_timer_init(void)