0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # PHY Layer Configuration
0004 #
0005
0006 config PHYLINK
0007 tristate
0008 depends on NETDEVICES
0009 select PHYLIB
0010 select SWPHY
0011 help
0012 PHYlink models the link between the PHY and MAC, allowing fixed
0013 configuration links, PHYs, and Serdes links with MAC level
0014 autonegotiation modes.
0015
0016 menuconfig PHYLIB
0017 tristate "PHY Device support and infrastructure"
0018 depends on NETDEVICES
0019 select MDIO_DEVICE
0020 select MDIO_DEVRES
0021 help
0022 Ethernet controllers are usually attached to PHY
0023 devices. This option provides infrastructure for
0024 managing PHY devices.
0025
0026 if PHYLIB
0027
0028 config SWPHY
0029 bool
0030
0031 config LED_TRIGGER_PHY
0032 bool "Support LED triggers for tracking link state"
0033 depends on LEDS_TRIGGERS
0034 help
0035 Adds support for a set of LED trigger events per-PHY. Link
0036 state change will trigger the events, for consumption by an
0037 LED class driver. There are triggers for each link speed currently
0038 supported by the PHY and also a one common "link" trigger as a
0039 logical-or of all the link speed ones.
0040 All these triggers are named according to the following pattern:
0041 <mii bus id>:<phy>:<speed>
0042
0043 Where speed is in the form:
0044 <Speed in megabits>Mbps OR <Speed in gigabits>Gbps OR link
0045 for any speed known to the PHY.
0046
0047
0048 config FIXED_PHY
0049 tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs"
0050 depends on PHYLIB
0051 select SWPHY
0052 help
0053 Adds the platform "fixed" MDIO Bus to cover the boards that use
0054 PHYs that are not connected to the real MDIO bus.
0055
0056 Currently tested with mpc866ads and mpc8349e-mitx.
0057
0058 config SFP
0059 tristate "SFP cage support"
0060 depends on I2C && PHYLINK
0061 depends on HWMON || HWMON=n
0062 select MDIO_I2C
0063
0064 comment "MII PHY device drivers"
0065
0066 config AMD_PHY
0067 tristate "AMD PHYs"
0068 help
0069 Currently supports the am79c874
0070
0071 config MESON_GXL_PHY
0072 tristate "Amlogic Meson GXL Internal PHY"
0073 depends on ARCH_MESON || COMPILE_TEST
0074 help
0075 Currently has a driver for the Amlogic Meson GXL Internal PHY
0076
0077 config ADIN_PHY
0078 tristate "Analog Devices Industrial Ethernet PHYs"
0079 help
0080 Adds support for the Analog Devices Industrial Ethernet PHYs.
0081 Currently supports the:
0082 - ADIN1200 - Robust,Industrial, Low Power 10/100 Ethernet PHY
0083 - ADIN1300 - Robust,Industrial, Low Latency 10/100/1000 Gigabit
0084 Ethernet PHY
0085
0086 config ADIN1100_PHY
0087 tristate "Analog Devices Industrial Ethernet T1L PHYs"
0088 help
0089 Adds support for the Analog Devices Industrial T1L Ethernet PHYs.
0090 Currently supports the:
0091 - ADIN1100 - Robust,Industrial, Low Power 10BASE-T1L Ethernet PHY
0092
0093 config AQUANTIA_PHY
0094 tristate "Aquantia PHYs"
0095 help
0096 Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405
0097
0098 config AX88796B_PHY
0099 tristate "Asix PHYs"
0100 help
0101 Currently supports the Asix Electronics PHY found in the X-Surf 100
0102 AX88796B package.
0103
0104 config BROADCOM_PHY
0105 tristate "Broadcom 54XX PHYs"
0106 select BCM_NET_PHYLIB
0107 select BCM_NET_PHYPTP if NETWORK_PHY_TIMESTAMPING
0108 depends on PTP_1588_CLOCK_OPTIONAL
0109 help
0110 Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
0111 BCM5481, BCM54810 and BCM5482 PHYs.
0112
0113 config BCM54140_PHY
0114 tristate "Broadcom BCM54140 PHY"
0115 depends on PHYLIB
0116 depends on HWMON || HWMON=n
0117 select BCM_NET_PHYLIB
0118 help
0119 Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY.
0120
0121 This driver also supports the hardware monitoring of this PHY and
0122 exposes voltage and temperature sensors.
0123
0124 config BCM63XX_PHY
0125 tristate "Broadcom 63xx SOCs internal PHY"
0126 depends on BCM63XX || COMPILE_TEST
0127 select BCM_NET_PHYLIB
0128 help
0129 Currently supports the 6348 and 6358 PHYs.
0130
0131 config BCM7XXX_PHY
0132 tristate "Broadcom 7xxx SOCs internal PHYs"
0133 select BCM_NET_PHYLIB
0134 help
0135 Currently supports the BCM7366, BCM7439, BCM7445, and
0136 40nm and 65nm generation of BCM7xxx Set Top Box SoCs.
0137
0138 config BCM84881_PHY
0139 tristate "Broadcom BCM84881 PHY"
0140 depends on PHYLIB
0141 help
0142 Support the Broadcom BCM84881 PHY.
0143
0144 config BCM87XX_PHY
0145 tristate "Broadcom BCM8706 and BCM8727 PHYs"
0146 help
0147 Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs.
0148
0149 config BCM_CYGNUS_PHY
0150 tristate "Broadcom Cygnus/Omega SoC internal PHY"
0151 depends on ARCH_BCM_IPROC || COMPILE_TEST
0152 depends on MDIO_BCM_IPROC
0153 select BCM_NET_PHYLIB
0154 help
0155 This PHY driver is for the 1G internal PHYs of the Broadcom
0156 Cygnus and Omega Family SoC.
0157
0158 Currently supports internal PHY's used in the BCM11300,
0159 BCM11320, BCM11350, BCM11360, BCM58300, BCM58302,
0160 BCM58303 & BCM58305 Broadcom Cygnus SoCs.
0161
0162 config BCM_NET_PHYLIB
0163 tristate
0164
0165 config BCM_NET_PHYPTP
0166 tristate
0167
0168 config CICADA_PHY
0169 tristate "Cicada PHYs"
0170 help
0171 Currently supports the cis8204
0172
0173 config CORTINA_PHY
0174 tristate "Cortina EDC CDR 10G Ethernet PHY"
0175 help
0176 Currently supports the CS4340 phy.
0177
0178 config DAVICOM_PHY
0179 tristate "Davicom PHYs"
0180 help
0181 Currently supports dm9161e and dm9131
0182
0183 config ICPLUS_PHY
0184 tristate "ICPlus PHYs"
0185 help
0186 Currently supports the IP175C and IP1001 PHYs.
0187
0188 config LXT_PHY
0189 tristate "Intel LXT PHYs"
0190 help
0191 Currently supports the lxt970, lxt971
0192
0193 config INTEL_XWAY_PHY
0194 tristate "Intel XWAY PHYs"
0195 help
0196 Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs.
0197 These PHYs are marked as standalone chips under the names
0198 PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel
0199 SoCs xRX200, xRX300, xRX330, xRX350 and xRX550.
0200
0201 config LSI_ET1011C_PHY
0202 tristate "LSI ET1011C PHY"
0203 help
0204 Supports the LSI ET1011C PHY.
0205
0206 config MARVELL_PHY
0207 tristate "Marvell Alaska PHYs"
0208 help
0209 Currently has a driver for the 88E1XXX
0210
0211 config MARVELL_10G_PHY
0212 tristate "Marvell Alaska 10Gbit PHYs"
0213 help
0214 Support for the Marvell Alaska MV88X3310 and compatible PHYs.
0215
0216 config MARVELL_88X2222_PHY
0217 tristate "Marvell 88X2222 PHY"
0218 help
0219 Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet
0220 Transceiver.
0221
0222 config MAXLINEAR_GPHY
0223 tristate "Maxlinear Ethernet PHYs"
0224 select POLYNOMIAL if HWMON
0225 depends on HWMON || HWMON=n
0226 help
0227 Support for the Maxlinear GPY115, GPY211, GPY212, GPY215,
0228 GPY241, GPY245 PHYs.
0229
0230 config MEDIATEK_GE_PHY
0231 tristate "MediaTek Gigabit Ethernet PHYs"
0232 help
0233 Supports the MediaTek Gigabit Ethernet PHYs.
0234
0235 config MICREL_PHY
0236 tristate "Micrel PHYs"
0237 depends on PTP_1588_CLOCK_OPTIONAL
0238 help
0239 Supports the KSZ9021, VSC8201, KS8001 PHYs.
0240
0241 config MICROCHIP_PHY
0242 tristate "Microchip PHYs"
0243 help
0244 Supports the LAN88XX PHYs.
0245
0246 config MICROCHIP_T1_PHY
0247 tristate "Microchip T1 PHYs"
0248 help
0249 Supports the LAN87XX PHYs.
0250
0251 config MICROSEMI_PHY
0252 tristate "Microsemi PHYs"
0253 depends on MACSEC || MACSEC=n
0254 depends on PTP_1588_CLOCK_OPTIONAL || !NETWORK_PHY_TIMESTAMPING
0255 select CRYPTO_LIB_AES if MACSEC
0256 help
0257 Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs
0258
0259 config MOTORCOMM_PHY
0260 tristate "Motorcomm PHYs"
0261 help
0262 Enables support for Motorcomm network PHYs.
0263 Currently supports the YT8511 gigabit PHY.
0264
0265 config NATIONAL_PHY
0266 tristate "National Semiconductor PHYs"
0267 help
0268 Currently supports the DP83865 PHY.
0269
0270 config NXP_C45_TJA11XX_PHY
0271 tristate "NXP C45 TJA11XX PHYs"
0272 depends on PTP_1588_CLOCK_OPTIONAL
0273 help
0274 Enable support for NXP C45 TJA11XX PHYs.
0275 Currently supports only the TJA1103 PHY.
0276
0277 config NXP_TJA11XX_PHY
0278 tristate "NXP TJA11xx PHYs support"
0279 depends on HWMON
0280 help
0281 Currently supports the NXP TJA1100 and TJA1101 PHY.
0282
0283 config AT803X_PHY
0284 tristate "Qualcomm Atheros AR803X PHYs and QCA833x PHYs"
0285 depends on REGULATOR
0286 help
0287 Currently supports the AR8030, AR8031, AR8033, AR8035 and internal
0288 QCA8337(Internal qca8k PHY) model
0289
0290 config QSEMI_PHY
0291 tristate "Quality Semiconductor PHYs"
0292 help
0293 Currently supports the qs6612
0294
0295 config REALTEK_PHY
0296 tristate "Realtek PHYs"
0297 help
0298 Supports the Realtek 821x PHY.
0299
0300 config RENESAS_PHY
0301 tristate "Renesas PHYs"
0302 help
0303 Supports the Renesas PHYs uPD60620 and uPD60620A.
0304
0305 config ROCKCHIP_PHY
0306 tristate "Rockchip Ethernet PHYs"
0307 help
0308 Currently supports the integrated Ethernet PHY.
0309
0310 config SMSC_PHY
0311 tristate "SMSC PHYs"
0312 help
0313 Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
0314
0315 config STE10XP
0316 tristate "STMicroelectronics STe10Xp PHYs"
0317 help
0318 This is the driver for the STe100p and STe101p PHYs.
0319
0320 config TERANETICS_PHY
0321 tristate "Teranetics PHYs"
0322 help
0323 Currently supports the Teranetics TN2020
0324
0325 config DP83822_PHY
0326 tristate "Texas Instruments DP83822/825/826 PHYs"
0327 help
0328 Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S,
0329 DP83826C and DP83826NC PHYs.
0330
0331 config DP83TC811_PHY
0332 tristate "Texas Instruments DP83TC811 PHY"
0333 help
0334 Supports the DP83TC811 PHY.
0335
0336 config DP83848_PHY
0337 tristate "Texas Instruments DP83848 PHY"
0338 help
0339 Supports the DP83848 PHY.
0340
0341 config DP83867_PHY
0342 tristate "Texas Instruments DP83867 Gigabit PHY"
0343 help
0344 Currently supports the DP83867 PHY.
0345
0346 config DP83869_PHY
0347 tristate "Texas Instruments DP83869 Gigabit PHY"
0348 help
0349 Currently supports the DP83869 PHY. This PHY supports copper and
0350 fiber connections.
0351
0352 config DP83TD510_PHY
0353 tristate "Texas Instruments DP83TD510 Ethernet 10Base-T1L PHY"
0354 help
0355 Support for the DP83TD510 Ethernet 10Base-T1L PHY. This PHY supports
0356 a 10M single pair Ethernet connection for up to 1000 meter cable.
0357
0358 config VITESSE_PHY
0359 tristate "Vitesse PHYs"
0360 help
0361 Currently supports the vsc8244
0362
0363 config XILINX_GMII2RGMII
0364 tristate "Xilinx GMII2RGMII converter driver"
0365 help
0366 This driver support xilinx GMII to RGMII IP core it provides
0367 the Reduced Gigabit Media Independent Interface(RGMII) between
0368 Ethernet physical media devices and the Gigabit Ethernet controller.
0369
0370 endif # PHYLIB
0371
0372 config MICREL_KS8995MA
0373 tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
0374 depends on SPI