All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next 00/18] net: mvpp2: MAC/GoP configuration and optional PHYs
@ 2017-07-24 13:48 ` Antoine Tenart
  0 siblings, 0 replies; 104+ messages in thread
From: Antoine Tenart @ 2017-07-24 13:48 UTC (permalink / raw)
  To: davem, jason, andrew, gregory.clement, sebastian.hesselbarth
  Cc: Antoine Tenart, thomas.petazzoni, nadavh, linux, mw, stefanc,
	netdev, linux-arm-kernel

Hi all,

This series aim two things: making the PPv2 driver less depending on
the firmware/bootloader initialization[1], and making the PPv2 driver
work when no Ethernet PHY is connected between a port and the physical
layer[2]. A few patches cleanup some small parts of the driver, and
newly supported interfaces are described in the device trees[3].

[1] The current implementation of the PPv2 driver relies on the
    firmware/bootloader initialization to configure some parts, as the
    Group of Ports (GoP) and the MACs (GMAC and/or XLG MAC --for 10G--).
    The drawback is the kernel must be configured to match exactly what
    the bootloader configures which is not convenient and is an issue
    when using boards having an Ethernet port and an SFP port wired to
    the same GoP port, as no dynamic configuration can be done.

    This series adds the GoP and GMAC/XLG MAC initializations so that
    the PPV2 does not have to rely on a previous initialization. One
    part is still missing from this series, and that would be the
    'comphy' which provides shared serdes PHYs and which must be
    configured as well for a full kernel initialization to work. This
    comphy support will be part of a following up series. (This
    series was also tested with this 'comphy' support, as it's nearly
    ready).

    Patches 3-7, 11 and 14-15.

[2] While the documentation states the phy property in a port node is
    optional, it is not in the current driver's implementation. This is
    needed when no PHY is connected between a GoP port and the physical
    layer (as for the two SFP ports on the 8040-db). One other feature
    is missing to be able to use such ports: the port link interrupt
    which allows not to rely on the phylib link event callback.

    This series makes the phy optional in the PPv2 driver, and then adds
    the support for the GoP port link interrupt to handle link status
    changes on such ports.

    Patches 8-10, 12-14.

[3] With the port link interrupt and optional PHY support, the two SFP
    ports on the Marvell Armada 8040 DB can be described and used; as
    well as the SFP port on the 7040 DB..

    Cosmetic changes / fixes.

    Patches 1, 2 and 16-18.

I intentionally grouped all these patches into one series, as we would
end up with series depending on each others (and I already did not
include all my patches in this one). If that's an issue for this series
to be reviewed/merged, I can easily split it into two series, with a
dependency of one on the other.

@Dave: Patches 13 to 18 should go through the mvebu tree, thanks :)

Thanks!
Antoine


Antoine Tenart (18):
  net: mvpp2: unify register definitions coding style
  net: mvpp2: fix the synchronization module bypass macro name
  net: mvpp2: set the SMI PHY address when connecting to the PHY
  net: mvpp2: move the mii configuration in the ndo_open path
  net: mvpp2: initialize the GMAC when using a port
  net: mvpp2: initialize the XLG MAC when using a port
  net: mvpp2: initialize the GoP
  net: mvpp2: make the phy optional
  net: mvpp2: use named interrupts
  net: mvpp2: use the GoP interrupt for link status changes
  Documentation/bindings: net: marvell-pp2: add the system controller
  Documentation/bindings: net: marvell-pp2: add the interrupt-names
  arm64: dts: marvell: cp110: use named interrupts for the Ethernet
    ports
  arm64: dts: marvell: cp110: add PPv2 port interrupts
  arm64: dts: marvell: add a reference to the sysctrl syscon in the ppv2
    node
  arm64: dts: marvell: mcbin: enable more networking ports
  arm64: dts: marvell: 7040-db: enable the SFP port
  arm64: dts: marvell: 8040-db: enable the SFP ports

 .../devicetree/bindings/net/marvell-pp2.txt        |   7 +
 arch/arm64/boot/dts/marvell/armada-7040-db.dts     |   5 +
 arch/arm64/boot/dts/marvell/armada-8040-db.dts     |  10 +
 arch/arm64/boot/dts/marvell/armada-8040-mcbin.dts  |  30 ++
 .../boot/dts/marvell/armada-cp110-master.dtsi      |  13 +-
 .../arm64/boot/dts/marvell/armada-cp110-slave.dtsi |  13 +-
 drivers/net/ethernet/marvell/mvpp2.c               | 587 ++++++++++++++++++---
 7 files changed, 575 insertions(+), 90 deletions(-)

-- 
2.13.3

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

end of thread, other threads:[~2017-08-24 10:59 UTC | newest]

Thread overview: 104+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-24 13:48 [PATCH net-next 00/18] net: mvpp2: MAC/GoP configuration and optional PHYs Antoine Tenart
2017-07-24 13:48 ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 01/18] net: mvpp2: unify register definitions coding style Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 02/18] net: mvpp2: fix the synchronization module bypass macro name Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 03/18] net: mvpp2: set the SMI PHY address when connecting to the PHY Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 16:40   ` Sergei Shtylyov
2017-07-24 16:40     ` Sergei Shtylyov
2017-07-25  8:42     ` Antoine Tenart
2017-07-25  8:42       ` Antoine Tenart
2017-07-26 16:08   ` Andrew Lunn
2017-07-26 16:08     ` Andrew Lunn
2017-07-28  1:49     ` Antoine Tenart
2017-07-28  1:49       ` Antoine Tenart
2017-07-28  4:21       ` Andrew Lunn
2017-07-28  4:21         ` Andrew Lunn
2017-08-22 14:41         ` Antoine Tenart
2017-08-22 14:41           ` Antoine Tenart
2017-08-22 14:50           ` Andrew Lunn
2017-08-22 14:50             ` Andrew Lunn
2017-08-23 10:40         ` [EXT] " Stefan Chulski
2017-08-23 10:40           ` Stefan Chulski
2017-08-23 12:34           ` Andrew Lunn
2017-08-23 12:34             ` Andrew Lunn
2017-08-23 13:30             ` Stefan Chulski
2017-08-23 13:30               ` Stefan Chulski
2017-08-23 13:34               ` Andrew Lunn
2017-08-23 13:34                 ` Andrew Lunn
2017-07-24 13:48 ` [PATCH net-next 04/18] net: mvpp2: move the mii configuration in the ndo_open path Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-26 16:11   ` Andrew Lunn
2017-07-26 16:11     ` Andrew Lunn
2017-07-28  1:44     ` Antoine Tenart
2017-07-28  1:44       ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 05/18] net: mvpp2: initialize the GMAC when using a port Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-26 16:14   ` Andrew Lunn
2017-07-26 16:14     ` Andrew Lunn
2017-07-24 13:48 ` [PATCH net-next 06/18] net: mvpp2: initialize the XLG MAC " Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 07/18] net: mvpp2: initialize the GoP Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-26 16:16   ` Andrew Lunn
2017-07-26 16:16     ` Andrew Lunn
2017-07-24 13:48 ` [PATCH net-next 08/18] net: mvpp2: make the phy optional Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-26 16:20   ` Andrew Lunn
2017-07-26 16:20     ` Andrew Lunn
2017-07-28  1:50     ` Antoine Tenart
2017-07-28  1:50       ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 09/18] net: mvpp2: use named interrupts Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 16:49   ` Sergei Shtylyov
2017-07-24 16:49     ` Sergei Shtylyov
2017-07-25  8:45     ` Antoine Tenart
2017-07-25  8:45       ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 10/18] net: mvpp2: use the GoP interrupt for link status changes Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 22:58   ` Marcin Wojtas
2017-07-24 22:58     ` Marcin Wojtas
2017-07-25  8:47     ` Antoine Tenart
2017-07-25  8:47       ` Antoine Tenart
2017-07-25 13:17   ` Thomas Petazzoni
2017-07-25 13:17     ` Thomas Petazzoni
2017-07-26  0:07     ` Antoine Tenart
2017-07-26  0:07       ` Antoine Tenart
2017-07-26 16:26   ` Andrew Lunn
2017-07-26 16:26     ` Andrew Lunn
2017-07-26 19:38     ` Russell King - ARM Linux
2017-07-26 19:38       ` Russell King - ARM Linux
2017-08-23  8:25     ` Antoine Tenart
2017-08-23  8:25       ` Antoine Tenart
2017-08-23 15:24       ` [EXT] " Stefan Chulski
2017-08-23 15:24         ` Stefan Chulski
2017-08-23 16:04         ` Antoine Tenart
2017-08-23 16:04           ` Antoine Tenart
2017-08-23 21:05           ` Marcin Wojtas
2017-08-23 21:05             ` Marcin Wojtas
2017-08-24 10:59             ` Antoine Tenart
2017-08-24 10:59               ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 11/18] Documentation/bindings: net: marvell-pp2: add the system controller Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 12/18] Documentation/bindings: net: marvell-pp2: add the interrupt-names Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 13/18] arm64: dts: marvell: cp110: use named interrupts for the Ethernet ports Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 14/18] arm64: dts: marvell: cp110: add PPv2 port interrupts Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 15/18] arm64: dts: marvell: add a reference to the sysctrl syscon in the ppv2 node Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 16/18] arm64: dts: marvell: mcbin: enable more networking ports Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 17/18] arm64: dts: marvell: 7040-db: enable the SFP port Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 13:48 ` [PATCH net-next 18/18] arm64: dts: marvell: 8040-db: enable the SFP ports Antoine Tenart
2017-07-24 13:48   ` Antoine Tenart
2017-07-24 23:56 ` [PATCH net-next 00/18] net: mvpp2: MAC/GoP configuration and optional PHYs Marcin Wojtas
2017-07-24 23:56   ` Marcin Wojtas
2017-07-25  8:48   ` Antoine Tenart
2017-07-25  8:48     ` Antoine Tenart
2017-07-25 10:45     ` Marcin Wojtas
2017-07-25 10:45       ` Marcin Wojtas

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.