[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