]> git.sur5r.net Git - u-boot/blobdiff - drivers/net/fm/p5020.c
Merge branch 'master' of git://git.denx.de/u-boot-video
[u-boot] / drivers / net / fm / p5020.c
index 59638eb2aa3b7281f792756f1b3f72dec97261b3..5391044833cb6d1c24f2d78c885e7b4085e0fe46 100644 (file)
@@ -23,7 +23,7 @@
 #include <asm/immap_85xx.h>
 #include <asm/fsl_serdes.h>
 
-u32 port_to_devdisr[] = {
+static u32 port_to_devdisr[] = {
        [FM1_DTSEC1] = FSL_CORENET_DEVDISR2_DTSEC1_1,
        [FM1_DTSEC2] = FSL_CORENET_DEVDISR2_DTSEC1_2,
        [FM1_DTSEC3] = FSL_CORENET_DEVDISR2_DTSEC1_3,
@@ -40,6 +40,17 @@ static int is_device_disabled(enum fm_port port)
        return port_to_devdisr[port] & devdisr2;
 }
 
+void fman_disable_port(enum fm_port port)
+{
+       ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
+
+       /* don't allow disabling of DTSEC1 as its needed for MDIO */
+       if (port == FM1_DTSEC1)
+               return;
+
+       setbits_be32(&gur->devdisr2, port_to_devdisr[port]);
+}
+
 phy_interface_t fman_port_enet_if(enum fm_port port)
 {
        ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);