linux/drivers/net/phy
Martin Blumenstingl f2f1a847e7 net: phy: icplus: allow configuring the interrupt function on IP101GR
The IP101GR is a 32-pin QFN package variant of the IP101G/IP101GA
Ethernet PHY. Due to it's limited amount of pins the RXER (receive
error) and INTR32 (interrupt) functions share pin 21.
By default the PHY is configured to output the "receive error" status on
pin 21. Depending on the board layout and requirements we may want to
re-configure the PHY to output the interrupt signal there.

The mode of pin 21 can be configured in the "Digital I/O Specific
Control Register" (register 29), bit 2:
- 0 = RXER function
- 1 = INTR(32) function

Depending on the devicetree configuration we will now:
- change the mode to either ther RXER or INTR32 function
- keep the SEL_INTR32 value set by the bootloader (default) if no
  configuration is provided (to ensure that we're not breaking existing
  boards)
- error out if conflicting configuration is given (RXER and INTR32 mode
  are enabled at the same time)

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-11-18 16:16:20 -08:00
..
amd.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
aquantia.c net: ethernet: Convert phydev advertize and supported from u32 to link mode 2018-11-11 10:10:01 -08:00
asix.c net-next: phy: new Asix Electronics PHY driver 2018-04-19 16:11:10 -04:00
at803x.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
bcm7xxx.c net: phy: bcm7xxx: Add entry for BCM7255 2018-11-07 21:50:27 -08:00
bcm63xx.c net: ethernet: Convert phydev advertize and supported from u32 to link mode 2018-11-11 10:10:01 -08:00
bcm87xx.c net: ethernet: Convert phydev advertize and supported from u32 to link mode 2018-11-11 10:10:01 -08:00
bcm-cygnus.c net: phy: broadcom: Fix bcm_write_exp() 2018-05-23 15:27:01 -04:00
bcm-phy-lib.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-05-26 19:46:15 -04:00
bcm-phy-lib.h net: phy: broadcom: Fix bcm_write_exp() 2018-05-23 15:27:01 -04:00
broadcom.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-11-11 17:57:54 -08:00
cicada.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
cortina.c net: phy: cortina: Utilize generic functions 2018-03-01 21:23:35 -05:00
davicom.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
dp83tc811.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
dp83640_reg.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dp83640.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
dp83822.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
dp83848.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
dp83867.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
et1011c.c net: phy: et011c: Remove incorrect PHY_POLL flags 2018-09-16 15:31:01 -07:00
fixed_phy.c net: ethernet: Convert phydev advertize and supported from u32 to link mode 2018-11-11 10:10:01 -08:00
icplus.c net: phy: icplus: allow configuring the interrupt function on IP101GR 2018-11-18 16:16:20 -08:00
intel-xway.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
Kconfig net: phy: bcm63xx: Allow to be built with COMPILE_TEST 2018-09-12 20:24:20 -07:00
lxt.c net: phy: Convert u32 phydev->lp_advertising to linkmode 2018-11-11 10:10:01 -08:00
Makefile net: phy: mscc-miim: Add MDIO driver 2018-05-15 16:41:15 -04:00
marvell10g.c net: phy: Convert u32 phydev->lp_advertising to linkmode 2018-11-11 10:10:01 -08:00
marvell.c net: phy: marvell: remove set but not used variable 'pause' 2018-11-11 18:19:50 -08:00
mdio_bus.c net: mdio: remove duplicated include from mdio_bus.c 2018-09-17 19:52:44 -07:00
mdio_device.c phylib: rename reset-(post-)delay-us to reset-(de)assert-us 2017-12-27 11:06:50 -05:00
mdio-bcm-iproc.c
mdio-bcm-unimac.c net: phy: mdio-bcm-unimac: mark PM functions as __maybe_unused 2018-09-28 10:25:11 -07:00
mdio-bitbang.c net: phy: mdio-bitbang: Remove reset support 2018-04-19 15:59:10 -04:00
mdio-boardinfo.c net: phy: mdio-boardinfo: Allow recursive mdiobus_register() 2018-04-20 10:33:26 -04:00
mdio-boardinfo.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mdio-cavium.c
mdio-cavium.h
mdio-gpio.c net: phy: mdio-gpio: Cut surplus includes 2018-06-12 15:23:55 -07:00
mdio-hisi-femac.c
mdio-i2c.c net: phy: add I2C mdio bus 2017-08-06 20:55:28 -07:00
mdio-i2c.h net: phy: add I2C mdio bus 2017-08-06 20:55:28 -07:00
mdio-moxart.c
mdio-mscc-miim.c drivers: net: Remove device_node checks with of_mdiobus_register() 2018-05-16 14:20:36 -04:00
mdio-mux-bcm-iproc.c net: phy: mdio-mux-bcm-iproc: simplify getting .driver_data 2018-10-21 21:10:12 -07:00
mdio-mux-gpio.c gpiolib: Pass array info to get/set array functions 2018-09-13 11:16:54 +02:00
mdio-mux-mmioreg.c net: phy: mdio-mux: slience probe defer error 2018-03-07 12:39:59 -05:00
mdio-mux.c net: mdio-mux: add mdio_mux parameter to mdio_mux_init() 2017-09-05 14:42:52 -07:00
mdio-octeon.c
mdio-sun4i.c mdio-sun4i: Fix a memory leak 2018-01-08 14:30:28 -05:00
mdio-thunder.c net: phy: Convert to using %pOFn instead of device_node.name 2018-10-01 23:29:37 -07:00
mdio-xgene.c net: phy: xgene: disable clk on error paths 2017-12-18 15:09:42 -05:00
mdio-xgene.h
meson-gxl.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
micrel.c net: ethernet: Convert phydev advertize and supported from u32 to link mode 2018-11-11 10:10:01 -08:00
microchip_t1.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
microchip.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
mscc.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
national.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
phy_device.c net: phy: check for implementation of both callbacks in phy_drv_supports_irq 2018-11-16 19:31:06 -08:00
phy_led_triggers.c net: phy: leds: Don't make our own link speed names 2018-11-09 20:13:51 -08:00
phy-c45.c net: phy: Convert u32 phydev->lp_advertising to linkmode 2018-11-11 10:10:01 -08:00
phy-core.c net: phy: Add support for resolving 5G and 2.5G autoneg 2018-11-11 10:10:02 -08:00
phy.c net: phy: check if advertising is zero using linkmode_empty 2018-11-12 16:26:21 -08:00
phylink.c net: ethernet: Convert phydev advertize and supported from u32 to link mode 2018-11-11 10:10:01 -08:00
qsemi.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
realtek.c net: phy: realtek: use new PHYID matching macros 2018-11-11 09:44:14 -08:00
rockchip.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
sfp-bus.c sfp: fix oops with ethtool -m 2018-09-18 20:14:19 -07:00
sfp.c net: phy: sfp: remove sfp_mutex's definition 2018-10-11 12:10:06 -07:00
sfp.h sfp: add sfp-bus to bridge between network devices and sfp cages 2017-08-06 20:55:29 -07:00
smsc.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
spi_ks8995.c drivers/net: Use octal not symbolic permissions 2018-03-26 12:07:49 -04:00
ste10Xp.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
swphy.c
swphy.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
teranetics.c net: phy: teranetics: Utilize generic functions 2018-03-01 21:23:34 -05:00
uPD60620.c net: phy: Convert u32 phydev->lp_advertising to linkmode 2018-11-11 10:10:01 -08:00
vitesse.c net: phy: remove flag PHY_HAS_INTERRUPT from driver configs 2018-11-11 09:36:56 -08:00
xilinx_gmii2rgmii.c net: phy: xgmiitorgmii: Check read_status results 2018-06-28 16:12:06 +09:00