fm: Don't allow disabling of FM1-DTSEC1
The MDIO controller to talk to external PHYs is on FM1-DTSEC1 so don't allow disabling. If we disable it we end up powering the block down in the SoC and thus can't communicate to any external PHYs. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
This commit is contained in:
parent
e81c0aba9a
commit
f5b9e73641
|
@ -39,6 +39,11 @@ static int is_device_disabled(enum fm_port port)
|
||||||
void fman_disable_port(enum fm_port port)
|
void fman_disable_port(enum fm_port port)
|
||||||
{
|
{
|
||||||
ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
|
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->devdisr, port_to_devdisr[port]);
|
setbits_be32(&gur->devdisr, port_to_devdisr[port]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -45,6 +45,11 @@ static int is_device_disabled(enum fm_port port)
|
||||||
void fman_disable_port(enum fm_port port)
|
void fman_disable_port(enum fm_port port)
|
||||||
{
|
{
|
||||||
ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
|
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]);
|
setbits_be32(&gur->devdisr2, port_to_devdisr[port]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -47,6 +47,11 @@ static int is_device_disabled(enum fm_port port)
|
||||||
void fman_disable_port(enum fm_port port)
|
void fman_disable_port(enum fm_port port)
|
||||||
{
|
{
|
||||||
ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
|
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]);
|
setbits_be32(&gur->devdisr2, port_to_devdisr[port]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -43,6 +43,11 @@ static int is_device_disabled(enum fm_port port)
|
||||||
void fman_disable_port(enum fm_port port)
|
void fman_disable_port(enum fm_port port)
|
||||||
{
|
{
|
||||||
ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);
|
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]);
|
setbits_be32(&gur->devdisr2, port_to_devdisr[port]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue