[U-Boot] [PATCH 2/5] net: phy: micrel: Separate KSZ9000 drivers from KSZ8000 drivers

Marek Vasut marex at denx.de
Fri Jul 7 20:13:09 UTC 2017


On 07/07/2017 08:36 PM, Alexandru Gagniuc wrote:
> The KS8721BL and KSZ9021 PHYs are software-incompatible, yet they
> share the same ID. Drivers for bothe PHYs cannot safely coexist, so
> the solution was to use #ifdefs to select between the two drivers.
> 
> As a result KSZ9031, which has a unique ID, is now caught in the
> crossfire. Unless CONFIG_PHY_MICREL_KSZ9031 is defined, the KSZ9031
> will not function properly, as some essential configuration code is
> ifdef'd-out.
> 
> To prevent such situations, move the KSZ9000 drivers to a separate
> file, and place them under a separate Kconfig option. While it is
> possible to enable both KSZ8000 and KSZ9000 drivers at the same time,
> the assumption is that it is highly unlikely for a system to contain
> both a KSZ8000 and a KSZ9000 PHY, and that only one of the drivers
> will be enabled at any given time.
> 
> Signed-off-by: Alexandru Gagniuc <alex.g at adaptrum.com>

The solution would be to either specify the PHY type in DT or platform
data. This shuffling of ifdefs is IMO pointless.

[...]

-- 
Best regards,
Marek Vasut


More information about the U-Boot mailing list