Add fec ethernet and pinctrl DT config.
Remove legacy iomux setup for fec.
Enable phylib and DM fec.
Use Kconfig for enabling fec.

Signed-off-by: Robert Beckett <bob.beck...@collabora.com>
---
 arch/arm/dts/imx53-ppd.dts | 24 ++++++++++++++++++++++++
 board/ge/mx53ppd/mx53ppd.c | 26 --------------------------
 configs/mx53ppd_defconfig  |  3 +++
 include/configs/mx53ppd.h  |  8 --------
 4 files changed, 27 insertions(+), 34 deletions(-)

diff --git a/arch/arm/dts/imx53-ppd.dts b/arch/arm/dts/imx53-ppd.dts
index 484447af10..d308abc09c 100644
--- a/arch/arm/dts/imx53-ppd.dts
+++ b/arch/arm/dts/imx53-ppd.dts
@@ -152,6 +152,21 @@
                        MX53_PAD_EIM_D17__GPIO3_17              0x1e4
                >;
        };
+
+       pinctrl_fec: fecgrp {
+               fsl,pins = <
+                       MX53_PAD_FEC_MDC__FEC_MDC               0x0
+                       MX53_PAD_FEC_MDIO__FEC_MDIO             0x0
+                       MX53_PAD_FEC_REF_CLK__FEC_TX_CLK        0x0
+                       MX53_PAD_FEC_RX_ER__FEC_RX_ER           0x0
+                       MX53_PAD_FEC_CRS_DV__FEC_RX_DV          0x0
+                       MX53_PAD_FEC_RXD1__FEC_RDATA_1          0x0
+                       MX53_PAD_FEC_RXD0__FEC_RDATA_0          0x0
+                       MX53_PAD_FEC_TX_EN__FEC_TX_EN           0x0
+                       MX53_PAD_FEC_TXD1__FEC_TDATA_1          0x0
+                       MX53_PAD_FEC_TXD0__FEC_TDATA_0          0x0
+               >;
+       };
 };
 
 /* eMMC */
@@ -317,3 +332,12 @@
 &gpio5 {
        u-boot,dm-pre-reloc;
 };
+
+&fec {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_fec>;
+       phy-supply = <&reg_3v3>;
+       phy-mode = "rmii";
+       phy-reset-gpios = <&gpio2 16 GPIO_ACTIVE_LOW>;
+       status = "okay";
+};
diff --git a/board/ge/mx53ppd/mx53ppd.c b/board/ge/mx53ppd/mx53ppd.c
index 57bf03f659..486ef6d374 100644
--- a/board/ge/mx53ppd/mx53ppd.c
+++ b/board/ge/mx53ppd/mx53ppd.c
@@ -107,31 +107,6 @@ int board_ehci_hcd_init(int port)
 }
 #endif
 
-static void setup_iomux_fec(void)
-{
-       static const iomux_v3_cfg_t fec_pads[] = {
-               NEW_PAD_CTRL(MX53_PAD_FEC_MDIO__FEC_MDIO, PAD_CTL_HYS |
-                            PAD_CTL_DSE_HIGH | PAD_CTL_PUS_22K_UP |
-                            PAD_CTL_ODE),
-               NEW_PAD_CTRL(MX53_PAD_FEC_MDC__FEC_MDC, PAD_CTL_DSE_HIGH),
-               NEW_PAD_CTRL(MX53_PAD_FEC_RXD1__FEC_RDATA_1,
-                            PAD_CTL_HYS | PAD_CTL_PKE),
-               NEW_PAD_CTRL(MX53_PAD_FEC_RXD0__FEC_RDATA_0,
-                            PAD_CTL_HYS | PAD_CTL_PKE),
-               NEW_PAD_CTRL(MX53_PAD_FEC_TXD1__FEC_TDATA_1, PAD_CTL_DSE_HIGH),
-               NEW_PAD_CTRL(MX53_PAD_FEC_TXD0__FEC_TDATA_0, PAD_CTL_DSE_HIGH),
-               NEW_PAD_CTRL(MX53_PAD_FEC_TX_EN__FEC_TX_EN, PAD_CTL_DSE_HIGH),
-               NEW_PAD_CTRL(MX53_PAD_FEC_REF_CLK__FEC_TX_CLK,
-                            PAD_CTL_HYS | PAD_CTL_PKE),
-               NEW_PAD_CTRL(MX53_PAD_FEC_RX_ER__FEC_RX_ER,
-                            PAD_CTL_HYS | PAD_CTL_PKE),
-               NEW_PAD_CTRL(MX53_PAD_FEC_CRS_DV__FEC_RX_DV,
-                            PAD_CTL_HYS | PAD_CTL_PKE),
-       };
-
-       imx_iomux_v3_setup_multiple_pads(fec_pads, ARRAY_SIZE(fec_pads));
-}
-
 static int clock_1GHz(void)
 {
        int ret;
@@ -170,7 +145,6 @@ void ppd_gpio_init(void)
 int board_early_init_f(void)
 {
        setup_iomux_uart();
-       setup_iomux_fec();
        ppd_gpio_init();
 
        return 0;
diff --git a/configs/mx53ppd_defconfig b/configs/mx53ppd_defconfig
index 2094e74c7d..1fa9715850 100644
--- a/configs/mx53ppd_defconfig
+++ b/configs/mx53ppd_defconfig
@@ -45,6 +45,9 @@ CONFIG_MISC=y
 CONFIG_I2C_EEPROM=y
 CONFIG_DM_MMC=y
 CONFIG_FSL_ESDHC_IMX=y
+CONFIG_PHYLIB=y
+CONFIG_DM_ETH=y
+CONFIG_FEC_MXC=y
 CONFIG_MII=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX5=y
diff --git a/include/configs/mx53ppd.h b/include/configs/mx53ppd.h
index 3b1615338c..5b1c467554 100644
--- a/include/configs/mx53ppd.h
+++ b/include/configs/mx53ppd.h
@@ -28,12 +28,6 @@
 #define CONFIG_MXC_UART
 #define CONFIG_MXC_UART_BASE   UART1_BASE
 
-/* Eth Configs */
-
-#define CONFIG_FEC_MXC
-#define IMX_FEC_BASE   FEC_BASE_ADDR
-#define CONFIG_FEC_MXC_PHYADDR 0x1F
-
 /* USB Configs */
 #define CONFIG_USB_HOST_ETHER
 #define CONFIG_USB_ETHER_ASIX
@@ -49,8 +43,6 @@
 
 /* Command definition */
 
-#define CONFIG_ETHPRIME                "FEC0"
-
 #define CONFIG_LOADADDR                0x72000000      /* loadaddr env var */
 
 #define PPD_CONFIG_NFS \
-- 
2.20.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to