]> git.sur5r.net Git - u-boot/blobdiff - drivers/net/fm/p4080.c
Merge branch 'u-boot-pxa/master' into 'u-boot-arm/master'
[u-boot] / drivers / net / fm / p4080.c
index 6761a2f43b6f8589fe2bcfdbdd9e1d2fb843b4b7..b04fd0f6562569cea9a5799a88f6922258042da7 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,
@@ -44,6 +44,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);