On Thu, 2021-10-28 at 18:05 +0100, Russell King (Oracle) wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the > content is safe > > On Thu, Oct 28, 2021 at 10:11:07PM +0530, Prasanna Vengateshan wrote: > > Support for phylink_validate() and reused KSZ commmon API for > > phylink_mac_link_down() operation > > > > lan937x_phylink_mac_config configures the interface using > > lan937x_mac_config and lan937x_phylink_mac_link_up configures > > the speed/duplex/flow control. > > > > Currently SGMII & in-band neg are not supported & it will be > > added later. > > > > Signed-off-by: Prasanna Vengateshan <prasanna.vengateshan@xxxxxxxxxxxxx> > > Hi, > > I've just sent "net: dsa: populate supported_interfaces member" > which adds a hook to allow DSA to populate the newly introduced > supported_interfaces member of phylink_config. Once this patch is > merged, it would be great to see any new drivers setting this > member. > > Essentially, the phylink_get_interfaces method is called with the > DSA switch and port number, and a pointer to the supported_interfaces > member - which is a bitmap of PHY_INTERFACE_MODEs that are supported > by this port. > > When you have set any bit in the supported interfaces, phylink's > behaviour when calling your lan937x_phylink_validate changes - it will > no longer call it with PHY_INTERFACE_MODE_NA, but will instead do a > bitwalk over the bitmap, and call it for each supported interface type > instead. > > When phylink has a specific interface mode, it will continue to make a > single call - but only if the interface mode is indicated as supported > in the supported interfaces bitmap. > > Please keep an eye on "net: dsa: populate supported_interfaces member" > and if you need to respin this series after that patch has been merged, > please update in regards of this. Sure, i will watch out for this series and add to my new driver. Do the new drivers need to still return all supported modes if state->interface is set to %PHY_INTERFACE_MODE_NA as per phylink documentation? I understand that supported_interfaces will not be empty if phylink_get_interfaces() is handled. But i just wanted to double check with you.