All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv2 net-next 00/22] Support MDIO devices
@ 2016-01-06 19:11 Andrew Lunn
  2016-01-06 19:11 ` [PATCHv2 net-next 01/22] phy: Consistently use addr for address on an MII bus Andrew Lunn
                   ` (22 more replies)
  0 siblings, 23 replies; 27+ messages in thread
From: Andrew Lunn @ 2016-01-06 19:11 UTC (permalink / raw)
  To: David Miller; +Cc: Florian Fainelli, netdev, Andrew Lunn

The discussions about changing the way DSA probes switches resulted in
the wish to have switches attached to an MDIO bus to be represented as
an MDIO device. However the current code only supports PHYs on MDIO
busses. This patchset remedies this problem. It consists of a number
of cleanups, abstraction for accessing structure members, and
refactoring, as well as adding the concept of a generic MDIO device
and MDIO driver.

v2:
Added Reviewed-by from Florian
Made phydev_name() an inline function
Added phy_attached_info/phy_attached_print() for information about
the attached phy.
Removed now redundant irq setup from of_mdio.c
Dropped hunks from PHYMII ioctl which prevented access to any address
DSA carrier off before phy setup


Andrew Lunn (22):
  phy: Consistently use addr for address on an MII bus
  mdio: Move mdiobus_read/write operatings into mdio.h
  phy: Use phy_read() instead of mdiobus_read()
  phy: Add phydev_err() and phydev_dbg() macros
  phy: add phydev_name() wrapper
  net: dnet: Use phy_find_first() helper
  phy: phy_{read|write}_mmd_indirect: get addr from phydev
  phy: Centralise print about attached phy
  phy: mdio-octeon: Use devm_mdiobus_alloc_size()
  mdio: Move allocation of interrupts into core
  phy: Add an mdio_device structure
  of: phy: Only register a phy device for phys
  phy: Add API for {un}registering an mdio device to a bus.
  phy_device: Move phy attributes into phy_device
  dsa: Register netdev before phy
  phy: Move PHY PM operations into phy_device
  phy: Centralize setting driver module owner
  phy: Move phy specific bus match into phy_device
  mdio_bus: Generalise of_mdiobus_link_phydev()
  mdio_bus: Add comment to mdiobus_scan() and __mdiobus_register()
  mdio: Add support for mdio drivers.
  mdio: Abstract device_remove() and device_free()

 arch/powerpc/platforms/82xx/ep8248e.c              |  10 +-
 arch/powerpc/platforms/pasemi/gpio_mdio.c          |   3 -
 drivers/net/ethernet/8390/ax88796.c                |  17 +-
 drivers/net/ethernet/adi/bfin_mac.c                |  19 +-
 drivers/net/ethernet/aeroflex/greth.c              |   5 -
 drivers/net/ethernet/aeroflex/greth.h              |   1 -
 drivers/net/ethernet/agere/et131x.c                |  49 ++-
 drivers/net/ethernet/altera/altera_tse_main.c      |  15 +-
 drivers/net/ethernet/amd/au1000_eth.c              |  22 +-
 drivers/net/ethernet/broadcom/b44.c                |  21 +-
 drivers/net/ethernet/broadcom/bcm63xx_enet.c       |  12 +-
 drivers/net/ethernet/broadcom/bgmac.c              |  15 +-
 drivers/net/ethernet/broadcom/genet/bcmmii.c       |  14 +-
 drivers/net/ethernet/broadcom/sb1250-mac.c         |  15 +-
 drivers/net/ethernet/broadcom/tg3.c                |  46 ++-
 drivers/net/ethernet/broadcom/tg3.h                |   1 -
 drivers/net/ethernet/cadence/macb.c                |  17 +-
 drivers/net/ethernet/dnet.c                        |  28 +-
 drivers/net/ethernet/ethoc.c                       |  18 +-
 drivers/net/ethernet/faraday/ftgmac100.c           |  10 +-
 drivers/net/ethernet/freescale/fec_main.c          |  27 +-
 drivers/net/ethernet/freescale/fec_mpc52xx_phy.c   |   4 -
 drivers/net/ethernet/freescale/fman/fman_dtsec.c   |   6 +-
 drivers/net/ethernet/freescale/fman/fman_memac.c   |   6 +-
 drivers/net/ethernet/freescale/fs_enet/mac-fec.c   |   2 +-
 .../net/ethernet/freescale/fs_enet/mii-bitbang.c   |  10 +-
 drivers/net/ethernet/freescale/fs_enet/mii-fec.c   |  10 +-
 drivers/net/ethernet/freescale/fsl_pq_mdio.c       |   2 -
 drivers/net/ethernet/freescale/gianfar.c           |   4 +-
 drivers/net/ethernet/freescale/ucc_geth.c          |   4 +-
 drivers/net/ethernet/hisilicon/hns/hns_ethtool.c   | 106 +++----
 drivers/net/ethernet/hisilicon/hns_mdio.c          |   5 -
 drivers/net/ethernet/lantiq_etop.c                 |  20 +-
 drivers/net/ethernet/marvell/mv643xx_eth.c         |   2 +-
 drivers/net/ethernet/marvell/mvmdio.c              |  10 +-
 drivers/net/ethernet/marvell/mvneta.c              |   2 +-
 drivers/net/ethernet/nxp/lpc_eth.c                 |  20 +-
 drivers/net/ethernet/rdc/r6040.c                   |  20 +-
 drivers/net/ethernet/renesas/ravb_main.c           |   3 +-
 drivers/net/ethernet/renesas/sh_eth.c              |  15 +-
 drivers/net/ethernet/samsung/sxgbe/sxgbe_mdio.c    |   4 +-
 drivers/net/ethernet/smsc/smsc911x.c               |  21 +-
 drivers/net/ethernet/smsc/smsc9420.c               |  23 +-
 drivers/net/ethernet/stmicro/stmmac/stmmac_mdio.c  |  18 +-
 drivers/net/ethernet/synopsys/dwc_eth_qos.c        |  27 +-
 drivers/net/ethernet/ti/cpmac.c                    |   3 -
 drivers/net/ethernet/ti/cpsw.c                     |   7 +-
 drivers/net/ethernet/ti/davinci_emac.c             |   5 +-
 drivers/net/ethernet/ti/davinci_mdio.c             |   4 +-
 drivers/net/ethernet/ti/netcp_ethss.c              |   4 +-
 drivers/net/ethernet/toshiba/tc35815.c             |  22 +-
 drivers/net/ethernet/xilinx/ll_temac.h             |   1 -
 drivers/net/ethernet/xilinx/ll_temac_mdio.c        |   2 -
 drivers/net/ethernet/xilinx/xilinx_axienet.h       |   2 -
 drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c  |   2 -
 drivers/net/ethernet/xilinx/xilinx_emaclite.c      |   6 +-
 drivers/net/phy/Makefile                           |   2 +-
 drivers/net/phy/amd.c                              |   1 -
 drivers/net/phy/aquantia.c                         |   4 -
 drivers/net/phy/at803x.c                           |  15 +-
 drivers/net/phy/bcm-phy-lib.c                      |   8 +-
 drivers/net/phy/bcm63xx.c                          |   2 -
 drivers/net/phy/bcm7xxx.c                          |   8 +-
 drivers/net/phy/bcm87xx.c                          |  11 +-
 drivers/net/phy/broadcom.c                         |  12 -
 drivers/net/phy/cicada.c                           |   2 -
 drivers/net/phy/davicom.c                          |   4 -
 drivers/net/phy/dp83640.c                          |  25 +-
 drivers/net/phy/dp83848.c                          |   2 -
 drivers/net/phy/dp83867.c                          |  12 +-
 drivers/net/phy/et1011c.c                          |   1 -
 drivers/net/phy/fixed_phy.c                        |  14 +-
 drivers/net/phy/icplus.c                           |  21 +-
 drivers/net/phy/lxt.c                              |   4 -
 drivers/net/phy/marvell.c                          |  20 +-
 drivers/net/phy/mdio-bcm-unimac.c                  |  11 +-
 drivers/net/phy/mdio-gpio.c                        |   2 +-
 drivers/net/phy/mdio-moxart.c                      |   7 -
 drivers/net/phy/mdio-mux.c                         |   3 +-
 drivers/net/phy/mdio-octeon.c                      |  14 +-
 drivers/net/phy/mdio-sun4i.c                       |  12 +-
 drivers/net/phy/mdio_bus.c                         | 283 +++++++----------
 drivers/net/phy/mdio_device.c                      | 171 +++++++++++
 drivers/net/phy/micrel.c                           |  41 +--
 drivers/net/phy/microchip.c                        |  11 +-
 drivers/net/phy/national.c                         |   1 -
 drivers/net/phy/phy.c                              |  62 ++--
 drivers/net/phy/phy_device.c                       | 334 ++++++++++++++++++---
 drivers/net/phy/qsemi.c                            |   1 -
 drivers/net/phy/realtek.c                          |   5 -
 drivers/net/phy/smsc.c                             |  12 +-
 drivers/net/phy/ste10Xp.c                          |   2 -
 drivers/net/phy/teranetics.c                       |   1 -
 drivers/net/phy/vitesse.c                          |   8 -
 drivers/net/usb/ax88172a.c                         |  14 +-
 drivers/net/usb/lan78xx.c                          |  11 +-
 drivers/of/of_mdio.c                               |  89 ++++--
 drivers/staging/netlogic/xlr_net.c                 |   7 +-
 include/linux/mdio.h                               |  78 +++++
 include/linux/phy.h                                |  76 ++---
 net/dsa/dsa.c                                      |   2 +-
 net/dsa/slave.c                                    |  22 +-
 102 files changed, 1081 insertions(+), 1134 deletions(-)
 create mode 100644 drivers/net/phy/mdio_device.c

-- 
2.6.4

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2016-01-07 22:53 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-06 19:11 [PATCHv2 net-next 00/22] Support MDIO devices Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 01/22] phy: Consistently use addr for address on an MII bus Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 02/22] mdio: Move mdiobus_read/write operatings into mdio.h Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 03/22] phy: Use phy_read() instead of mdiobus_read() Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 04/22] phy: Add phydev_err() and phydev_dbg() macros Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 05/22] phy: add phydev_name() wrapper Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 06/22] net: dnet: Use phy_find_first() helper Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 07/22] phy: phy_{read|write}_mmd_indirect: get addr from phydev Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 08/22] phy: Centralise print about attached phy Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 09/22] phy: mdio-octeon: Use devm_mdiobus_alloc_size() Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 10/22] mdio: Move allocation of interrupts into core Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 11/22] phy: Add an mdio_device structure Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 12/22] of: phy: Only register a phy device for phys Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 13/22] phy: Add API for {un}registering an mdio device to a bus Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 14/22] phy_device: Move phy attributes into phy_device Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 15/22] dsa: Register netdev before phy Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 16/22] phy: Move PHY PM operations into phy_device Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 17/22] phy: Centralize setting driver module owner Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 18/22] phy: Move phy specific bus match into phy_device Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 19/22] mdio_bus: Generalise of_mdiobus_link_phydev() Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 20/22] mdio_bus: Add comment to mdiobus_scan() and __mdiobus_register() Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 21/22] mdio: Add support for mdio drivers Andrew Lunn
2016-01-06 19:11 ` [PATCHv2 net-next 22/22] mdio: Abstract device_remove() and device_free() Andrew Lunn
2016-01-07 19:33 ` [PATCHv2 net-next 00/22] Support MDIO devices David Miller
2016-01-07 20:14   ` Andrew Lunn
2016-01-07 21:30     ` David Miller
2016-01-07 22:53     ` Florian Fainelli

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.