[U-Boot] [U-Boot, 2/5] net: phy: micrel: Separate KSZ9000 drivers from KSZ8000 drivers
Philipp Tomsich
philipp.tomsich at theobroma-systems.com
Fri Jul 7 20:11:09 UTC 2017
> 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>
> ---
> drivers/net/phy/Kconfig | 30 ++
> drivers/net/phy/Makefile | 3 +-
> drivers/net/phy/{micrel.c => micrel_ksz8xxx.c} | 2 +-
> drivers/net/phy/micrel_ksz90x1.c | 363 +++++++++++++++++++++++++
> drivers/net/phy/phy.c | 7 +-
> include/phy.h | 3 +-
> 6 files changed, 403 insertions(+), 5 deletions(-)
> rename drivers/net/phy/{micrel.c => micrel_ksz8xxx.c} (99%)
> create mode 100644 drivers/net/phy/micrel_ksz90x1.c
>
Reviewed-by: Philipp Tomsich <philipp.tomsich at theobroma-systems.com>
More information about the U-Boot
mailing list