net: phy: micrel: Allow KSZ8xxx and KSZ90x1 to be used together
Commit d397f7c45b
("net: phy: micrel: Separate KSZ9000 drivers from
KSZ8000 drivers") separated the KSZ8xxx and KSZ90x1 drivers and warns
that you shouldn't select both of them due to a device ID clash between
the KSZ9021 and the KS8721, asserting that "it is highly unlikely for a
system to contain both a KSZ8000 and a KSZ9000 PHY". Unfortunately
boards like the SAMA5D3xEK do contain both types of PHY, but fortunately
the Linux Micrel PHY driver provides a solution by using different PHY
ID and mask values to distinguish these chips.
This commit contains the following changes:
- The PHY ID and mask values for the KSZ9021 and the KS8721 now match
those used by the Linux driver.
- The warnings about not enabling both drivers have been removed.
- The description for PHY_MICREL_KSZ8XXX has been corrected (these are
10/100 PHYs, not GbE PHYs).
- PHY_MICREL_KSZ9021 and PHY_MICREL_KSZ9031 no longer select PHY_GIGE
since this is selected by PHY_MICREL_KSZ90X1.
- All of the relevant defconfig files have been updated now that
PHY_MICREL_KSZ8XXX does not default to 'Y'.
Signed-off-by: James Byrne <james.byrne@origamienergy.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
This commit is contained in:
parent
90176e3be6
commit
77b508d34b
@ -70,6 +70,7 @@ CONFIG_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_SH_ETHER=y
|
||||
CONFIG_PCI=y
|
||||
|
@ -47,6 +47,7 @@ CONFIG_MTD_UBI_FASTMAP=y
|
||||
CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_MXC_SPI=y
|
||||
|
@ -67,6 +67,7 @@ CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_FEC_MXC=y
|
||||
CONFIG_MII=y
|
||||
|
@ -61,6 +61,7 @@ CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_IMX6=y
|
||||
|
@ -57,6 +57,7 @@ CONFIG_NAND_MXS_DT=y
|
||||
CONFIG_MTD_UBI_FASTMAP=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_IMX7=y
|
||||
|
@ -49,6 +49,7 @@ CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_IMX7=y
|
||||
|
@ -66,6 +66,7 @@ CONFIG_SYS_NAND_VF610_NFC_60_ECC_BYTES=y
|
||||
CONFIG_MTD_UBI_FASTMAP=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_FEC_MXC=y
|
||||
CONFIG_MII=y
|
||||
|
@ -33,6 +33,7 @@ CONFIG_NAND=y
|
||||
CONFIG_NAND_MXC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_MXC_SPI=y
|
||||
|
@ -67,6 +67,7 @@ CONFIG_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_SH_ETHER=y
|
||||
CONFIG_PCI=y
|
||||
|
@ -36,6 +36,7 @@ CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_FEC_MXC=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL_IMX6=y
|
||||
|
@ -45,6 +45,7 @@ CONFIG_SYS_I2C_MXC=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_FEC_MXC=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
|
@ -51,6 +51,7 @@ CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MARVELL=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_PHY_TI=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_MII=y
|
||||
|
@ -45,6 +45,7 @@ CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MARVELL=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_DRIVER_TI_KEYSTONE_NET=y
|
||||
|
@ -67,6 +67,7 @@ CONFIG_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_SH_ETHER=y
|
||||
CONFIG_PCI=y
|
||||
|
@ -69,6 +69,7 @@ CONFIG_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_SH_ETHER=y
|
||||
CONFIG_PCI=y
|
||||
|
@ -57,6 +57,7 @@ CONFIG_NAND=y
|
||||
CONFIG_NAND_MXC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_RTC_M41T62=y
|
||||
CONFIG_USB=y
|
||||
CONFIG_USB_EHCI_MX5=y
|
||||
|
@ -52,6 +52,7 @@ CONFIG_SF_DEFAULT_SPEED=40000000
|
||||
CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
|
@ -52,6 +52,7 @@ CONFIG_SF_DEFAULT_SPEED=40000000
|
||||
CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
|
@ -72,6 +72,7 @@ CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_FEC_MXC=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
|
@ -54,6 +54,7 @@ CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_FEC_MXC=y
|
||||
CONFIG_MII=y
|
||||
|
@ -42,6 +42,7 @@ CONFIG_NAND_MXS=y
|
||||
CONFIG_NAND_MXS_DT=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_FEC_MXC=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
|
@ -49,6 +49,7 @@ CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_IMX6=y
|
||||
|
@ -51,6 +51,7 @@ CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_IMX6=y
|
||||
|
@ -49,6 +49,7 @@ CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_PINCTRL_IMX6=y
|
||||
|
@ -68,6 +68,7 @@ CONFIG_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_SH_ETHER=y
|
||||
CONFIG_PCI=y
|
||||
|
@ -70,6 +70,7 @@ CONFIG_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_SH_ETHER=y
|
||||
CONFIG_PCI=y
|
||||
|
@ -68,6 +68,7 @@ CONFIG_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_MTD=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_DM_ETH=y
|
||||
CONFIG_SH_ETHER=y
|
||||
CONFIG_PCI=y
|
||||
|
@ -26,6 +26,7 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_CADENCE_QSPI=y
|
||||
|
@ -31,5 +31,6 @@ CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
CONFIG_FSL_ESDHC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_OF_LIBFDT=y
|
||||
|
@ -37,6 +37,7 @@ CONFIG_NAND_VF610_NFC=y
|
||||
CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_DM_SERIAL=y
|
||||
CONFIG_FSL_LPUART=y
|
||||
|
@ -37,6 +37,7 @@ CONFIG_NAND_VF610_NFC=y
|
||||
CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_DM_SERIAL=y
|
||||
CONFIG_FSL_LPUART=y
|
||||
|
@ -38,6 +38,7 @@ CONFIG_NAND=y
|
||||
CONFIG_NAND_MXC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_MXC_SPI=y
|
||||
|
@ -50,6 +50,7 @@ CONFIG_NAND=y
|
||||
CONFIG_NAND_MXC=y
|
||||
CONFIG_PHYLIB=y
|
||||
CONFIG_PHY_MICREL=y
|
||||
CONFIG_PHY_MICREL_KSZ8XXX=y
|
||||
CONFIG_MII=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_MXC_SPI=y
|
||||
|
@ -119,21 +119,19 @@ config PHY_MICREL
|
||||
bool "Micrel Ethernet PHYs support"
|
||||
help
|
||||
Enable support for the GbE PHYs manufactured by Micrel (now
|
||||
a part of Microchip). This includes drivers for the KSZ804,
|
||||
KSZ8031, KSZ8051, KSZ8081, KSZ8895, KSZ886x, KSZ8721
|
||||
either/or KSZ9021 (see the "Micrel KSZ9021 family support"
|
||||
config option for details), and KSZ9031 (if configured).
|
||||
a part of Microchip). This includes drivers for the KSZ804, KSZ8031,
|
||||
KSZ8051, KSZ8081, KSZ8895, KSZ886x and KSZ8721 (if "Micrel KSZ8xxx
|
||||
family support" is selected) and the KSZ9021 and KSZ9031 (if "Micrel
|
||||
KSZ90x1 family support" is selected).
|
||||
|
||||
if PHY_MICREL
|
||||
|
||||
config PHY_MICREL_KSZ9021
|
||||
bool
|
||||
select PHY_GIGE
|
||||
select PHY_MICREL_KSZ90X1
|
||||
|
||||
config PHY_MICREL_KSZ9031
|
||||
bool
|
||||
select PHY_GIGE
|
||||
select PHY_MICREL_KSZ90X1
|
||||
|
||||
config PHY_MICREL_KSZ90X1
|
||||
@ -146,20 +144,13 @@ config PHY_MICREL_KSZ90X1
|
||||
delays configured in the device tree will be applied to the
|
||||
PHY during initialization.
|
||||
|
||||
This should not be enabled at the same time with PHY_MICREL_KSZ8XXX
|
||||
as the KSZ9021 and KS8721 share the same ID.
|
||||
|
||||
config PHY_MICREL_KSZ8XXX
|
||||
bool "Micrel KSZ8xxx family support"
|
||||
default y if !PHY_MICREL_KSZ90X1
|
||||
help
|
||||
Enable support for the 8000 series GbE PHYs manufactured by Micrel
|
||||
Enable support for the 8000 series 10/100 PHYs manufactured by Micrel
|
||||
(now a part of Microchip). This includes drivers for the KSZ804,
|
||||
KSZ8031, KSZ8051, KSZ8081, KSZ8895, KSZ886x, and KSZ8721.
|
||||
|
||||
This should not be enabled at the same time with PHY_MICREL_KSZ90X1
|
||||
as the KSZ9021 and KS8721 share the same ID.
|
||||
|
||||
endif # PHY_MICREL
|
||||
|
||||
config PHY_MSCC
|
||||
|
@ -147,11 +147,13 @@ static struct phy_driver ksz8895_driver = {
|
||||
.shutdown = &genphy_shutdown,
|
||||
};
|
||||
|
||||
/* Micrel used the exact same part number for the KSZ9021. */
|
||||
/* Micrel used the exact same model number for the KSZ9021,
|
||||
* so the revision number is used to distinguish them.
|
||||
*/
|
||||
static struct phy_driver KS8721_driver = {
|
||||
.name = "Micrel KS8721BL",
|
||||
.uid = 0x221610,
|
||||
.mask = 0xfffff0,
|
||||
.uid = 0x221618,
|
||||
.mask = 0xfffffc,
|
||||
.features = PHY_BASIC_FEATURES,
|
||||
.config = &genphy_config,
|
||||
.startup = &genphy_startup,
|
||||
|
@ -285,7 +285,7 @@ static int ksz9021_config(struct phy_device *phydev)
|
||||
static struct phy_driver ksz9021_driver = {
|
||||
.name = "Micrel ksz9021",
|
||||
.uid = 0x221610,
|
||||
.mask = 0xfffff0,
|
||||
.mask = 0xfffffe,
|
||||
.features = PHY_GBIT_FEATURES,
|
||||
.config = &ksz9021_config,
|
||||
.startup = &ksz90xx_startup,
|
||||
|
Loading…
Reference in New Issue
Block a user