Hi Andrew, On Thu, Aug 24, 2017 at 03:45:04PM +0200, Andrew Lunn wrote: > > + for_each_available_child_of_node(pdev->dev.of_node, child) { > > + struct mvebu_comphy_lane *lane; > > + struct phy *phy; > > + int ret; > > + u32 val; > > + > > + ret = of_property_read_u32(child, "reg", &val); > > + if (ret < 0) { > > + dev_err(&pdev->dev, "missing 'reg' property (%d)\n", > > + ret); > > + continue; > > + } > > I'm just wondering why we need this. We know how many lanes there are > from the table. So just create a generic PHY for each lane?
At first I did this statically. I moved to this solution because: 1. It represents the h/w correctly (there are 6 lanes duplicated here). 2. It eases the dt representation, we would have something like: <&cpm_comphy 0 1>; otherwise. 3. If the number of lanes changes in future revisions it'll be quite easy to handle. Thanks! Antoine -- Antoine Ténart, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
signature.asc
Description: PGP signature