Subject: Re: [PATCH] net: phy: fix PHY_RUNNING in phy_state_machine

From: Andrew Lunn <[email-masked]>
Date: Thu, 17 Mar 2016 16:12:40 +0100

> After changing cpsw_emac0 entry to:
> 
> &cpsw_emac0 {
>         phy-mode = "rmii";
>         dual_emac_res_vlan = <1>;
>         fixed-link {
>                 speed = <100>;
>                 full-duplex;
>         };
> };
> 
> I've got packets running in both directions.

Great.
 
> Now I have another problem: I cannot disable ICPlus IP175D ports via
> SIOCSMIIREG as I could do previously. I get not ioctl errors [1], but
> the ports are always on.
> 
> [1] https://github.com/visionsystemsgmbh/libonrisc/blob/master/src/onrisc.c#L83

The MDIO bus is now logically not connected to eth0. Instead you have
the fixed-link mdio device connected to eth0. So SIOCSMIIREG calls on
eth0 now try to manipulate the fixed link phys.

However, i think you can still access the MDIO bus, just use eth1 in
your ioctl call.

You should however consider writing a DSA driver for the switch.

    Andrew