1af2cbfd6SAlex 2af2cbfd6SAlexconfig BITBANGMII 3af2cbfd6SAlex bool "Bit-banged ethernet MII management channel support" 4af2cbfd6SAlex 5af2cbfd6SAlexconfig MV88E6352_SWITCH 6af2cbfd6SAlex bool "Marvell 88E6352 switch support" 7af2cbfd6SAlex 8af2cbfd6SAlexmenuconfig PHYLIB 9af2cbfd6SAlex bool "Ethernet PHY (physical media interface) support" 10c946b0e9SMichal Simek depends on NET 11af2cbfd6SAlex help 12af2cbfd6SAlex Enable Ethernet PHY (physical media interface) support. 13af2cbfd6SAlex 14af2cbfd6SAlexif PHYLIB 15af2cbfd6SAlex 1616879cd2SJoe Hershbergerconfig PHY_ADDR_ENABLE 1716879cd2SJoe Hershberger bool "Limit phy address" 1816879cd2SJoe Hershberger default y if ARCH_SUNXI 1916879cd2SJoe Hershberger help 2016879cd2SJoe Hershberger Select this if you want to control which phy address is used 2116879cd2SJoe Hershberger 2216879cd2SJoe Hershbergerif PHY_ADDR_ENABLE 23b30c4190SStefan Mavrodievconfig PHY_ADDR 24b30c4190SStefan Mavrodiev int "PHY address" 25b30c4190SStefan Mavrodiev default 1 if ARCH_SUNXI 26b30c4190SStefan Mavrodiev default 0 27b30c4190SStefan Mavrodiev help 28b30c4190SStefan Mavrodiev The address of PHY on MII bus. Usually in range of 0 to 31. 2916879cd2SJoe Hershbergerendif 30b30c4190SStefan Mavrodiev 31137963d7SFlorian Fainelliconfig B53_SWITCH 32137963d7SFlorian Fainelli bool "Broadcom BCM53xx (RoboSwitch) Ethernet switch PHY support." 33137963d7SFlorian Fainelli help 34137963d7SFlorian Fainelli Enable support for Broadcom BCM53xx (RoboSwitch) Ethernet switches. 35137963d7SFlorian Fainelli This currently supports BCM53125 and similar models. 36137963d7SFlorian Fainelli 37137963d7SFlorian Fainelliif B53_SWITCH 38137963d7SFlorian Fainelli 39137963d7SFlorian Fainelliconfig B53_CPU_PORT 40137963d7SFlorian Fainelli int "CPU port" 41137963d7SFlorian Fainelli default 8 42137963d7SFlorian Fainelli 43137963d7SFlorian Fainelliconfig B53_PHY_PORTS 44137963d7SFlorian Fainelli hex "Bitmask of PHY ports" 45137963d7SFlorian Fainelli 46137963d7SFlorian Fainelliendif # B53_SWITCH 47137963d7SFlorian Fainelli 48af2cbfd6SAlexconfig MV88E61XX_SWITCH 49af2cbfd6SAlex bool "Marvel MV88E61xx Ethernet switch PHY support." 50af2cbfd6SAlex 51b4f4b0f5STim Harveyif MV88E61XX_SWITCH 52b4f4b0f5STim Harvey 53b4f4b0f5STim Harveyconfig MV88E61XX_CPU_PORT 54b4f4b0f5STim Harvey int "CPU Port" 55b4f4b0f5STim Harvey 56b4f4b0f5STim Harveyconfig MV88E61XX_PHY_PORTS 57b4f4b0f5STim Harvey hex "Bitmask of PHY Ports" 58b4f4b0f5STim Harvey 59b4f4b0f5STim Harveyconfig MV88E61XX_FIXED_PORTS 60b4f4b0f5STim Harvey hex "Bitmask of PHYless serdes Ports" 61b4f4b0f5STim Harvey 62b4f4b0f5STim Harveyendif # MV88E61XX_SWITCH 63b4f4b0f5STim Harvey 64af2cbfd6SAlexconfig PHYLIB_10G 65af2cbfd6SAlex bool "Generic 10G PHY support" 66af2cbfd6SAlex 67*4506423aSJeremy Gebbenmenuconfig PHY_AQUANTIA 68af2cbfd6SAlex bool "Aquantia Ethernet PHYs support" 691c650108SJeremy Gebben select PHY_GIGE 701c650108SJeremy Gebben select PHYLIB_10G 71af2cbfd6SAlex 72*4506423aSJeremy Gebbenconfig PHY_AQUANTIA_UPLOAD_FW 73*4506423aSJeremy Gebben bool "Aquantia firmware loading support" 74*4506423aSJeremy Gebben default n 75*4506423aSJeremy Gebben depends on PHY_AQUANTIA 76*4506423aSJeremy Gebben help 77*4506423aSJeremy Gebben Aquantia PHYs use firmware which can be either loaded automatically 78*4506423aSJeremy Gebben from storage directly attached to the phy or loaded by the boot loader 79*4506423aSJeremy Gebben via MDIO commands. The firmware is loaded from a file, specified by 80*4506423aSJeremy Gebben the PHY_AQUANTIA_FW_PART and PHY_AQUANTIA_FW_NAME options. 81*4506423aSJeremy Gebben 82*4506423aSJeremy Gebbenconfig PHY_AQUANTIA_FW_PART 83*4506423aSJeremy Gebben string "Aquantia firmware partition" 84*4506423aSJeremy Gebben depends on PHY_AQUANTIA_UPLOAD_FW 85*4506423aSJeremy Gebben help 86*4506423aSJeremy Gebben Partition containing the firmware file. 87*4506423aSJeremy Gebben 88*4506423aSJeremy Gebbenconfig PHY_AQUANTIA_FW_NAME 89*4506423aSJeremy Gebben string "Aquantia firmware filename" 90*4506423aSJeremy Gebben depends on PHY_AQUANTIA_UPLOAD_FW 91*4506423aSJeremy Gebben help 92*4506423aSJeremy Gebben Firmware filename. 93*4506423aSJeremy Gebben 94af2cbfd6SAlexconfig PHY_ATHEROS 95af2cbfd6SAlex bool "Atheros Ethernet PHYs support" 96af2cbfd6SAlex 97af2cbfd6SAlexconfig PHY_BROADCOM 98af2cbfd6SAlex bool "Broadcom Ethernet PHYs support" 99af2cbfd6SAlex 100af2cbfd6SAlexconfig PHY_CORTINA 101af2cbfd6SAlex bool "Cortina Ethernet PHYs support" 102af2cbfd6SAlex 103af2cbfd6SAlexconfig PHY_DAVICOM 104af2cbfd6SAlex bool "Davicom Ethernet PHYs support" 105af2cbfd6SAlex 106af2cbfd6SAlexconfig PHY_ET1011C 107af2cbfd6SAlex bool "LSI TruePHY ET1011C support" 108af2cbfd6SAlex 109af2cbfd6SAlexconfig PHY_LXT 110af2cbfd6SAlex bool "LXT971 Ethernet PHY support" 111af2cbfd6SAlex 112af2cbfd6SAlexconfig PHY_MARVELL 113af2cbfd6SAlex bool "Marvell Ethernet PHYs support" 114af2cbfd6SAlex 1158995a96dSNeil Armstrongconfig PHY_MESON_GXL 1168995a96dSNeil Armstrong bool "Amlogic Meson GXL Internal PHY support" 1178995a96dSNeil Armstrong 118af2cbfd6SAlexconfig PHY_MICREL 119af2cbfd6SAlex bool "Micrel Ethernet PHYs support" 120449ea2cdSPhilipp Tomsich help 121449ea2cdSPhilipp Tomsich Enable support for the GbE PHYs manufactured by Micrel (now 122449ea2cdSPhilipp Tomsich a part of Microchip). This includes drivers for the KSZ804, 123449ea2cdSPhilipp Tomsich KSZ8031, KSZ8051, KSZ8081, KSZ8895, KSZ886x, KSZ8721 124449ea2cdSPhilipp Tomsich either/or KSZ9021 (see the "Micrel KSZ9021 family support" 125449ea2cdSPhilipp Tomsich config option for details), and KSZ9031 (if configured). 126449ea2cdSPhilipp Tomsich 127449ea2cdSPhilipp Tomsichif PHY_MICREL 128449ea2cdSPhilipp Tomsich 129449ea2cdSPhilipp Tomsichconfig PHY_MICREL_KSZ9021 1309a31c739SAlexandru Gagniuc bool 131449ea2cdSPhilipp Tomsich select PHY_GIGE 132d397f7c4SAlexandru Gagniuc select PHY_MICREL_KSZ90X1 133d397f7c4SAlexandru Gagniuc 134449ea2cdSPhilipp Tomsichconfig PHY_MICREL_KSZ9031 1359a31c739SAlexandru Gagniuc bool 136449ea2cdSPhilipp Tomsich select PHY_GIGE 137d397f7c4SAlexandru Gagniuc select PHY_MICREL_KSZ90X1 138d397f7c4SAlexandru Gagniuc 139d397f7c4SAlexandru Gagniucconfig PHY_MICREL_KSZ90X1 140d397f7c4SAlexandru Gagniuc bool "Micrel KSZ90x1 family support" 141d397f7c4SAlexandru Gagniuc select PHY_GIGE 142d397f7c4SAlexandru Gagniuc help 143d397f7c4SAlexandru Gagniuc Enable support for the Micrel KSZ9021 and KSZ9031 GbE PHYs. If 144d397f7c4SAlexandru Gagniuc enabled, the extended register read/write for KSZ90x1 PHYs 145d397f7c4SAlexandru Gagniuc is supported through the 'mdio' command and any RGMII signal 146d397f7c4SAlexandru Gagniuc delays configured in the device tree will be applied to the 147d397f7c4SAlexandru Gagniuc PHY during initialization. 148d397f7c4SAlexandru Gagniuc 149d397f7c4SAlexandru Gagniuc This should not be enabled at the same time with PHY_MICREL_KSZ8XXX 150d397f7c4SAlexandru Gagniuc as the KSZ9021 and KS8721 share the same ID. 151d397f7c4SAlexandru Gagniuc 152d397f7c4SAlexandru Gagniucconfig PHY_MICREL_KSZ8XXX 153d397f7c4SAlexandru Gagniuc bool "Micrel KSZ8xxx family support" 154d397f7c4SAlexandru Gagniuc default y if !PHY_MICREL_KSZ90X1 155d397f7c4SAlexandru Gagniuc help 156d397f7c4SAlexandru Gagniuc Enable support for the 8000 series GbE PHYs manufactured by Micrel 157d397f7c4SAlexandru Gagniuc (now a part of Microchip). This includes drivers for the KSZ804, 158d397f7c4SAlexandru Gagniuc KSZ8031, KSZ8051, KSZ8081, KSZ8895, KSZ886x, and KSZ8721. 159d397f7c4SAlexandru Gagniuc 160d397f7c4SAlexandru Gagniuc This should not be enabled at the same time with PHY_MICREL_KSZ90X1 161d397f7c4SAlexandru Gagniuc as the KSZ9021 and KS8721 share the same ID. 162d397f7c4SAlexandru Gagniuc 163449ea2cdSPhilipp Tomsichendif # PHY_MICREL 164af2cbfd6SAlex 165a5fd13adSJohn Haechtenconfig PHY_MSCC 166a5fd13adSJohn Haechten bool "Microsemi Corp Ethernet PHYs support" 167a5fd13adSJohn Haechten 168af2cbfd6SAlexconfig PHY_NATSEMI 169af2cbfd6SAlex bool "National Semiconductor Ethernet PHYs support" 170af2cbfd6SAlex 171af2cbfd6SAlexconfig PHY_REALTEK 172af2cbfd6SAlex bool "Realtek Ethernet PHYs support" 173af2cbfd6SAlex 17466526e70Skevans@FreeBSD.orgconfig RTL8211E_PINE64_GIGABIT_FIX 17566526e70Skevans@FreeBSD.org bool "Fix gigabit throughput on some Pine64+ models" 17666526e70Skevans@FreeBSD.org depends on PHY_REALTEK 17766526e70Skevans@FreeBSD.org help 17866526e70Skevans@FreeBSD.org Configure the Realtek RTL8211E found on some Pine64+ models differently to 17966526e70Skevans@FreeBSD.org fix throughput on Gigabit links, turning off all internal delays in the 18066526e70Skevans@FreeBSD.org process. The settings that this touches are not documented in the CONFREG 18166526e70Skevans@FreeBSD.org section of the RTL8211E datasheet, but come from Realtek by way of the 18266526e70Skevans@FreeBSD.org Pine64 engineering team. 18366526e70Skevans@FreeBSD.org 184af2cbfd6SAlexconfig RTL8211X_PHY_FORCE_MASTER 185af2cbfd6SAlex bool "Ethernet PHY RTL8211x: force 1000BASE-T master mode" 186af2cbfd6SAlex depends on PHY_REALTEK 187af2cbfd6SAlex help 188af2cbfd6SAlex Force master mode for 1000BASE-T on RTl8211x PHYs (except for RTL8211F). 189af2cbfd6SAlex This can work around link stability and data corruption issues on gigabit 190af2cbfd6SAlex links which can occur in slave mode on certain PHYs, e.g. on the 191af2cbfd6SAlex RTL8211C(L). 192af2cbfd6SAlex 193af2cbfd6SAlex Please note that two directly connected devices (i.e. via crossover cable) 194af2cbfd6SAlex will not be able to establish a link between each other if they both force 195af2cbfd6SAlex master mode. Multiple devices forcing master mode when connected by a 196af2cbfd6SAlex network switch do not pose a problem as the switch configures its affected 197af2cbfd6SAlex ports into slave mode. 198af2cbfd6SAlex 199af2cbfd6SAlex This option only affects gigabit links. If you must establish a direct 200af2cbfd6SAlex connection between two devices which both force master mode, try forcing 201af2cbfd6SAlex the link speed to 100MBit/s. 202af2cbfd6SAlex 203af2cbfd6SAlex If unsure, say N. 204af2cbfd6SAlex 205af2cbfd6SAlexconfig PHY_SMSC 206af2cbfd6SAlex bool "Microchip(SMSC) Ethernet PHYs support" 207af2cbfd6SAlex 208af2cbfd6SAlexconfig PHY_TERANETICS 209af2cbfd6SAlex bool "Teranetics Ethernet PHYs support" 210af2cbfd6SAlex 211af2cbfd6SAlexconfig PHY_TI 212af2cbfd6SAlex bool "Texas Instruments Ethernet PHYs support" 213af2cbfd6SAlex 214af2cbfd6SAlexconfig PHY_VITESSE 215af2cbfd6SAlex bool "Vitesse Ethernet PHYs support" 216af2cbfd6SAlex 217af2cbfd6SAlexconfig PHY_XILINX 218af2cbfd6SAlex bool "Xilinx Ethernet PHYs support" 219af2cbfd6SAlex 220db40c1aaSHannes Schmelzerconfig PHY_FIXED 221db40c1aaSHannes Schmelzer bool "Fixed-Link PHY" 222db40c1aaSHannes Schmelzer depends on DM_ETH 223db40c1aaSHannes Schmelzer help 224db40c1aaSHannes Schmelzer Fixed PHY is used for having a 'fixed-link' to another MAC with a direct 225db40c1aaSHannes Schmelzer connection (MII, RGMII, ...). 226db40c1aaSHannes Schmelzer There is nothing like autoneogation and so 227db40c1aaSHannes Schmelzer on, the link is always up with fixed speed and fixed duplex-setting. 228db40c1aaSHannes Schmelzer More information: doc/device-tree-bindings/net/fixed-link.txt 229db40c1aaSHannes Schmelzer 230af2cbfd6SAlexendif #PHYLIB 231