Re: [Intel-wired-lan] [PATCH iwl-next v2 2/9] ethtool: Add forced speed to supported link modes maps
From: Alexander Lobakin <aleksander.lobakin@intel.com>
Date: 2023-09-15 13:42:43
Also in:
intel-wired-lan
From: Pawel Chmielewski <redacted> Date: Thu, 14 Sep 2023 16:27:28 +0200
On Sun, Sep 03, 2023 at 04:00:57PM +0200, Andrew Lunn wrote:quoted
quoted
Let me check if I understand correctly- is that what was sent with the v3 [1] , with the initialization helper (ethtool_forced_speed_maps_init) and the structure map in the ethtool code? Or do you have another helper in mind?Sorry for the late reply, been on vacation. The main thing is you try to reuse the table: static const struct phy_setting settings[] = {} If you can build your helper on top of phy_lookup_setting() even better. You don't need a phy_device to use those. AndrewThank for the hint Andrew! I took a look into the phy-core code, and a little into phylink. However, I still have the same concern
Here I'd like to add that we're planning to try to use Phylink in ice soon. It may take a while and will most likely require core code expansion, since Phylink was originally developed for embedded HW and DeviceTree and doesn't fully support PCI devices. Let's see how it goes.
regarding modes that are supported/unsupported by hardware (managed by the firmware in our case). Let's say I'm only looking for duplex modes and iterate over speeds with advertised modes map as an argument for phy_lookup_setting. In this case, I still need another table/map of hardware compatible link modes to check against. Theese are actually the maps we'd like to keep in the driver (and proposed in [1]), so maybe the simple intersect check between them and the advertised modes is sufficient? [1] https://lore.kernel.org/netdev/20230823180633.2450617-4-pawel.chmielewski@intel.com/ (local)
Thanks, Olek