linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 00/11] net: mvmdio: add xMDIO xSMI support
@ 2017-06-14 15:49 Antoine Tenart
  2017-06-14 15:49 ` [PATCH v4 01/11] net: mvmdio: reorder headers alphabetically Antoine Tenart
                   ` (10 more replies)
  0 siblings, 11 replies; 24+ messages in thread
From: Antoine Tenart @ 2017-06-14 15:49 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

This series aims to add the xSMI support on the xMDIO bus to the
mvmdio driver. The xSMI interface complies with the IEEE 802.3 clause 45
and is used by 10GbE devices. On 7k and 8k (as of now), such an
interface is found and is used by Ethernet controllers.

Patches 1-4 and 9 are cosmetic cleanups.

Patches 5-7 are prerequisites to the xSMI support.

Patches 8 and 10-11 add the xSMI support to the mvmdio driver, and a
node is added both in the cp110 slave and master device trees.

This was tested on an Armada 8040 mcbin, as well as on both the
Armada 7040 DB and the Armada 8040 DB to ensure the SMI interface
was still working.

@Dave: patch 11 should go through the mvebu tree as asked by Gregory,
thanks!

Thanks,
Antoine

Since v3:
  - Added a patch from Russell King removing locks, as there is already
    per bus locking in the MDIO layer.
  - Russell suggested another approach to add the xSMI support, by having
    two different read/write functions. Reworked the series to take this
    into account. (This also lead to the removal of some patches, and the
    introduction of some others).

Since v2:
  - Brought back the marvell,xmdio compatible and updated the driver
    accordingly. The ops (smi, xsmi) are chosen based on the compatible.
  - Now return -EOPNOTSUPP when the MII_ADDR_C45 bit is wrongly set.
  - Mask dev_addr with GENMASK(4, 0).
  - Moved bit definitions under their register definition.
  - Fixed the write operation shift.
  - Added one space before the second parameter of GENMASK.

Since v1:
  - Instead of using the smi/xsmi helpers based on the compatible, now
    check if the MII_ADDR_C45 bit is set.
  - Removed the marvell,xmdio compatible addition.
  - Fixed the is_read_valid logic.
  - Updated to use static const variables for ops.
  - Added 3 Reviewed-by tags from Florian (I dropped another one as the
    patch changed in v2).

Antoine Tenart (10):
  net: mvmdio: reorder headers alphabetically
  net: mvmdio: use tabs for defines
  net: mvmdio: use GENMASK for masks
  net: mvmdio: introduce an ops structure
  net: mvmdio: put the poll intervals in the ops structure
  net: mvmdio: check the MII_ADDR_C45 bit is not set for smi operations
  net: mvmdio: add xmdio xsmi support
  net: mvmdio: simplify the smi read and write error paths
  dt-bindings: orion-mdio: document the new xmdio compatible
  arm64: marvell: dts: add xmdio nodes for 7k/8k

Russell King (1):
  net: mvmdio: remove duplicate locking

 .../devicetree/bindings/net/marvell-orion-mdio.txt |   8 +-
 .../boot/dts/marvell/armada-cp110-master.dtsi      |   8 +
 .../arm64/boot/dts/marvell/armada-cp110-slave.dtsi |   8 +
 drivers/net/ethernet/marvell/mvmdio.c              | 214 +++++++++++++++------
 4 files changed, 178 insertions(+), 60 deletions(-)

-- 
2.9.4

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

end of thread, other threads:[~2017-06-19 14:49 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-14 15:49 [PATCH v4 00/11] net: mvmdio: add xMDIO xSMI support Antoine Tenart
2017-06-14 15:49 ` [PATCH v4 01/11] net: mvmdio: reorder headers alphabetically Antoine Tenart
2017-06-14 15:49 ` [PATCH v4 02/11] net: mvmdio: use tabs for defines Antoine Tenart
2017-06-14 15:49 ` [PATCH v4 03/11] net: mvmdio: use GENMASK for masks Antoine Tenart
2017-06-19 11:57   ` David Laight
2017-06-19 14:49     ` David Miller
2017-06-14 15:49 ` [PATCH v4 04/11] net: mvmdio: remove duplicate locking Antoine Tenart
2017-06-14 17:01   ` Florian Fainelli
2017-06-14 15:49 ` [PATCH v4 05/11] net: mvmdio: introduce an ops structure Antoine Tenart
2017-06-14 17:02   ` Florian Fainelli
2017-06-14 15:49 ` [PATCH v4 06/11] net: mvmdio: put the poll intervals in the " Antoine Tenart
2017-06-14 17:02   ` Florian Fainelli
2017-06-14 15:49 ` [PATCH v4 07/11] net: mvmdio: check the MII_ADDR_C45 bit is not set for smi operations Antoine Tenart
2017-06-14 17:02   ` Florian Fainelli
2017-06-14 15:49 ` [PATCH v4 08/11] net: mvmdio: add xmdio xsmi support Antoine Tenart
2017-06-14 17:03   ` Florian Fainelli
2017-06-14 15:49 ` [PATCH v4 09/11] net: mvmdio: simplify the smi read and write error paths Antoine Tenart
2017-06-14 17:04   ` Florian Fainelli
2017-06-14 15:49 ` [PATCH v4 10/11] dt-bindings: orion-mdio: document the new xmdio compatible Antoine Tenart
2017-06-14 16:35   ` Andrew Lunn
2017-06-15  6:55     ` Antoine Tenart
2017-06-15 13:12       ` Andrew Lunn
2017-06-15 13:22         ` Antoine Tenart
2017-06-14 15:49 ` [PATCH v4 11/11] arm64: marvell: dts: add xmdio nodes for 7k/8k Antoine Tenart

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).