1# SPDX-License-Identifier: GPL-2.0-only 2# 3# PHY Layer Configuration 4# 5 6config PHYLINK 7 tristate 8 depends on NETDEVICES 9 select PHYLIB 10 select SWPHY 11 help 12 PHYlink models the link between the PHY and MAC, allowing fixed 13 configuration links, PHYs, and Serdes links with MAC level 14 autonegotiation modes. 15 16menuconfig PHYLIB 17 tristate "PHY Device support and infrastructure" 18 depends on NETDEVICES 19 select MDIO_DEVICE 20 select MDIO_DEVRES 21 help 22 Ethernet controllers are usually attached to PHY 23 devices. This option provides infrastructure for 24 managing PHY devices. 25 26if PHYLIB 27 28config SWPHY 29 bool 30 31config LED_TRIGGER_PHY 32 bool "Support LED triggers for tracking link state" 33 depends on LEDS_TRIGGERS 34 help 35 Adds support for a set of LED trigger events per-PHY. Link 36 state change will trigger the events, for consumption by an 37 LED class driver. There are triggers for each link speed currently 38 supported by the PHY and also a one common "link" trigger as a 39 logical-or of all the link speed ones. 40 All these triggers are named according to the following pattern: 41 <mii bus id>:<phy>:<speed> 42 43 Where speed is in the form: 44 <Speed in megabits>Mbps OR <Speed in gigabits>Gbps OR link 45 for any speed known to the PHY. 46 47config PHYLIB_LEDS 48 def_bool OF 49 depends on LEDS_CLASS=y || LEDS_CLASS=PHYLIB 50 help 51 When LED class support is enabled, phylib can automatically 52 probe LED setting from device tree. 53 54config FIXED_PHY 55 tristate "MDIO Bus/PHY emulation with fixed speed/link PHYs" 56 select SWPHY 57 help 58 Adds the platform "fixed" MDIO Bus to cover the boards that use 59 PHYs that are not connected to the real MDIO bus. 60 61 Currently tested with mpc866ads and mpc8349e-mitx. 62 63config SFP 64 tristate "SFP cage support" 65 depends on I2C && PHYLINK 66 depends on HWMON || HWMON=n 67 select MDIO_I2C 68 69comment "MII PHY device drivers" 70 71config AMD_PHY 72 tristate "AMD PHYs" 73 help 74 Currently supports the am79c874 75 76config MESON_GXL_PHY 77 tristate "Amlogic Meson GXL Internal PHY" 78 depends on ARCH_MESON || COMPILE_TEST 79 select SMSC_PHY 80 help 81 Currently has a driver for the Amlogic Meson GXL Internal PHY 82 83config ADIN_PHY 84 tristate "Analog Devices Industrial Ethernet PHYs" 85 help 86 Adds support for the Analog Devices Industrial Ethernet PHYs. 87 Currently supports the: 88 - ADIN1200 - Robust,Industrial, Low Power 10/100 Ethernet PHY 89 - ADIN1300 - Robust,Industrial, Low Latency 10/100/1000 Gigabit 90 Ethernet PHY 91 92config ADIN1100_PHY 93 tristate "Analog Devices Industrial Ethernet T1L PHYs" 94 help 95 Adds support for the Analog Devices Industrial T1L Ethernet PHYs. 96 Currently supports the: 97 - ADIN1100 - Robust,Industrial, Low Power 10BASE-T1L Ethernet PHY 98 99config AQUANTIA_PHY 100 tristate "Aquantia PHYs" 101 help 102 Currently supports the Aquantia AQ1202, AQ2104, AQR105, AQR405 103 104config AX88796B_PHY 105 tristate "Asix PHYs" 106 help 107 Currently supports the Asix Electronics PHY found in the X-Surf 100 108 AX88796B package. 109 110config BROADCOM_PHY 111 tristate "Broadcom 54XX PHYs" 112 select BCM_NET_PHYLIB 113 select BCM_NET_PHYPTP if NETWORK_PHY_TIMESTAMPING 114 depends on PTP_1588_CLOCK_OPTIONAL 115 help 116 Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464, 117 BCM5481, BCM54810 and BCM5482 PHYs. 118 119config BCM54140_PHY 120 tristate "Broadcom BCM54140 PHY" 121 depends on HWMON || HWMON=n 122 select BCM_NET_PHYLIB 123 help 124 Support the Broadcom BCM54140 Quad SGMII/QSGMII PHY. 125 126 This driver also supports the hardware monitoring of this PHY and 127 exposes voltage and temperature sensors. 128 129config BCM63XX_PHY 130 tristate "Broadcom 63xx SOCs internal PHY" 131 depends on BCM63XX || COMPILE_TEST 132 select BCM_NET_PHYLIB 133 help 134 Currently supports the 6348 and 6358 PHYs. 135 136config BCM7XXX_PHY 137 tristate "Broadcom 7xxx SOCs internal PHYs" 138 select BCM_NET_PHYLIB 139 help 140 Currently supports the BCM7366, BCM7439, BCM7445, and 141 40nm and 65nm generation of BCM7xxx Set Top Box SoCs. 142 143config BCM84881_PHY 144 tristate "Broadcom BCM84881 PHY" 145 help 146 Support the Broadcom BCM84881 PHY. 147 148config BCM87XX_PHY 149 tristate "Broadcom BCM8706 and BCM8727 PHYs" 150 help 151 Currently supports the BCM8706 and BCM8727 10G Ethernet PHYs. 152 153config BCM_CYGNUS_PHY 154 tristate "Broadcom Cygnus/Omega SoC internal PHY" 155 depends on ARCH_BCM_IPROC || COMPILE_TEST 156 depends on MDIO_BCM_IPROC 157 select BCM_NET_PHYLIB 158 help 159 This PHY driver is for the 1G internal PHYs of the Broadcom 160 Cygnus and Omega Family SoC. 161 162 Currently supports internal PHY's used in the BCM11300, 163 BCM11320, BCM11350, BCM11360, BCM58300, BCM58302, 164 BCM58303 & BCM58305 Broadcom Cygnus SoCs. 165 166config BCM_NET_PHYLIB 167 tristate 168 169config BCM_NET_PHYPTP 170 tristate 171 172config CICADA_PHY 173 tristate "Cicada PHYs" 174 help 175 Currently supports the cis8204 176 177config CORTINA_PHY 178 tristate "Cortina EDC CDR 10G Ethernet PHY" 179 help 180 Currently supports the CS4340 phy. 181 182config DAVICOM_PHY 183 tristate "Davicom PHYs" 184 help 185 Currently supports dm9161e and dm9131 186 187config ICPLUS_PHY 188 tristate "ICPlus PHYs" 189 help 190 Currently supports the IP175C and IP1001 PHYs. 191 192config LXT_PHY 193 tristate "Intel LXT PHYs" 194 help 195 Currently supports the lxt970, lxt971 196 197config INTEL_XWAY_PHY 198 tristate "Intel XWAY PHYs" 199 help 200 Supports the Intel XWAY (former Lantiq) 11G and 22E PHYs. 201 These PHYs are marked as standalone chips under the names 202 PEF 7061, PEF 7071 and PEF 7072 or integrated into the Intel 203 SoCs xRX200, xRX300, xRX330, xRX350 and xRX550. 204 205config LSI_ET1011C_PHY 206 tristate "LSI ET1011C PHY" 207 help 208 Supports the LSI ET1011C PHY. 209 210config MARVELL_PHY 211 tristate "Marvell Alaska PHYs" 212 help 213 Currently has a driver for the 88E1XXX 214 215config MARVELL_10G_PHY 216 tristate "Marvell Alaska 10Gbit PHYs" 217 help 218 Support for the Marvell Alaska MV88X3310 and compatible PHYs. 219 220config MARVELL_88X2222_PHY 221 tristate "Marvell 88X2222 PHY" 222 help 223 Support for the Marvell 88X2222 Dual-port Multi-speed Ethernet 224 Transceiver. 225 226config MAXLINEAR_GPHY 227 tristate "Maxlinear Ethernet PHYs" 228 select POLYNOMIAL if HWMON 229 depends on HWMON || HWMON=n 230 help 231 Support for the Maxlinear GPY115, GPY211, GPY212, GPY215, 232 GPY241, GPY245 PHYs. 233 234config MEDIATEK_GE_PHY 235 tristate "MediaTek Gigabit Ethernet PHYs" 236 help 237 Supports the MediaTek Gigabit Ethernet PHYs. 238 239config MEDIATEK_GE_SOC_PHY 240 tristate "MediaTek SoC Ethernet PHYs" 241 depends on (ARM64 && ARCH_MEDIATEK) || COMPILE_TEST 242 depends on NVMEM_MTK_EFUSE 243 help 244 Supports MediaTek SoC built-in Gigabit Ethernet PHYs. 245 246 Include support for built-in Ethernet PHYs which are present in 247 the MT7981 and MT7988 SoCs. These PHYs need calibration data 248 present in the SoCs efuse and will dynamically calibrate VCM 249 (common-mode voltage) during startup. 250 251config MICREL_PHY 252 tristate "Micrel PHYs" 253 depends on PTP_1588_CLOCK_OPTIONAL 254 help 255 Supports the KSZ9021, VSC8201, KS8001 PHYs. 256 257config MICROCHIP_T1S_PHY 258 tristate "Microchip 10BASE-T1S Ethernet PHYs" 259 help 260 Currently supports the LAN8670/1/2 Rev.B1 and LAN8650/1 Rev.B0 Internal 261 PHYs. 262 263config MICROCHIP_PHY 264 tristate "Microchip PHYs" 265 help 266 Supports the LAN88XX PHYs. 267 268config MICROCHIP_T1_PHY 269 tristate "Microchip T1 PHYs" 270 help 271 Supports the LAN87XX PHYs. 272 273config MICROSEMI_PHY 274 tristate "Microsemi PHYs" 275 depends on MACSEC || MACSEC=n 276 depends on PTP_1588_CLOCK_OPTIONAL || !NETWORK_PHY_TIMESTAMPING 277 select CRYPTO_LIB_AES if MACSEC 278 help 279 Currently supports VSC8514, VSC8530, VSC8531, VSC8540 and VSC8541 PHYs 280 281config MOTORCOMM_PHY 282 tristate "Motorcomm PHYs" 283 help 284 Enables support for Motorcomm network PHYs. 285 Currently supports YT85xx Gigabit Ethernet PHYs. 286 287config NATIONAL_PHY 288 tristate "National Semiconductor PHYs" 289 help 290 Currently supports the DP83865 PHY. 291 292config NXP_CBTX_PHY 293 tristate "NXP 100BASE-TX PHYs" 294 help 295 Support the 100BASE-TX PHY integrated on the SJA1110 automotive 296 switch family. 297 298config NXP_C45_TJA11XX_PHY 299 tristate "NXP C45 TJA11XX PHYs" 300 depends on PTP_1588_CLOCK_OPTIONAL 301 help 302 Enable support for NXP C45 TJA11XX PHYs. 303 Currently supports only the TJA1103 PHY. 304 305config NXP_TJA11XX_PHY 306 tristate "NXP TJA11xx PHYs support" 307 depends on HWMON 308 help 309 Currently supports the NXP TJA1100 and TJA1101 PHY. 310 311config NCN26000_PHY 312 tristate "Onsemi 10BASE-T1S Ethernet PHY" 313 help 314 Adds support for the onsemi 10BASE-T1S Ethernet PHY. 315 Currently supports the NCN26000 10BASE-T1S Industrial PHY 316 with MII interface. 317 318config AT803X_PHY 319 tristate "Qualcomm Atheros AR803X PHYs and QCA833x PHYs" 320 depends on REGULATOR 321 help 322 Currently supports the AR8030, AR8031, AR8033, AR8035 and internal 323 QCA8337(Internal qca8k PHY) model 324 325config QSEMI_PHY 326 tristate "Quality Semiconductor PHYs" 327 help 328 Currently supports the qs6612 329 330config REALTEK_PHY 331 tristate "Realtek PHYs" 332 help 333 Supports the Realtek 821x PHY. 334 335config RENESAS_PHY 336 tristate "Renesas PHYs" 337 help 338 Supports the Renesas PHYs uPD60620 and uPD60620A. 339 340config ROCKCHIP_PHY 341 tristate "Rockchip Ethernet PHYs" 342 help 343 Currently supports the integrated Ethernet PHY. 344 345config SMSC_PHY 346 tristate "SMSC PHYs" 347 help 348 Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs 349 350config STE10XP 351 tristate "STMicroelectronics STe10Xp PHYs" 352 help 353 This is the driver for the STe100p and STe101p PHYs. 354 355config TERANETICS_PHY 356 tristate "Teranetics PHYs" 357 help 358 Currently supports the Teranetics TN2020 359 360config DP83822_PHY 361 tristate "Texas Instruments DP83822/825/826 PHYs" 362 help 363 Supports the DP83822, DP83825I, DP83825CM, DP83825CS, DP83825S, 364 DP83826C and DP83826NC PHYs. 365 366config DP83TC811_PHY 367 tristate "Texas Instruments DP83TC811 PHY" 368 help 369 Supports the DP83TC811 PHY. 370 371config DP83848_PHY 372 tristate "Texas Instruments DP83848 PHY" 373 help 374 Supports the DP83848 PHY. 375 376config DP83867_PHY 377 tristate "Texas Instruments DP83867 Gigabit PHY" 378 help 379 Currently supports the DP83867 PHY. 380 381config DP83869_PHY 382 tristate "Texas Instruments DP83869 Gigabit PHY" 383 help 384 Currently supports the DP83869 PHY. This PHY supports copper and 385 fiber connections. 386 387config DP83TD510_PHY 388 tristate "Texas Instruments DP83TD510 Ethernet 10Base-T1L PHY" 389 help 390 Support for the DP83TD510 Ethernet 10Base-T1L PHY. This PHY supports 391 a 10M single pair Ethernet connection for up to 1000 meter cable. 392 393config VITESSE_PHY 394 tristate "Vitesse PHYs" 395 help 396 Currently supports the vsc8244 397 398config XILINX_GMII2RGMII 399 tristate "Xilinx GMII2RGMII converter driver" 400 help 401 This driver support xilinx GMII to RGMII IP core it provides 402 the Reduced Gigabit Media Independent Interface(RGMII) between 403 Ethernet physical media devices and the Gigabit Ethernet controller. 404 405endif # PHYLIB 406 407config MICREL_KS8995MA 408 tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch" 409 depends on SPI 410