Merge branch 'icssg-half-duplex-support'
authorDavid S. Miller <davem@davemloft.net>
Fri, 15 Sep 2023 12:54:34 +0000 (13:54 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 15 Sep 2023 12:54:34 +0000 (13:54 +0100)
commit13a46acc05042fc1653a5d6ebf6dc957f2744fc6
tree1897949d72b10916504d6a9872a226b9469c3881
parent7c192ce9ff1d93f004fa6cdc0f567f5ab3dd4feb
parent0a205f0fe8dd2ab80531b54f01d6483f37120c0e
Merge branch 'icssg-half-duplex-support'

====================
net: Add Half Duplex support for ICSSG Driver

This series adds support for half duplex operation for ICSSG driver.

In order to support half-duplex operation at 10M and 100M link speeds, the
PHY collision detection signal (COL) should be routed to ICSSG GPIO pin
(PRGx_PRU0/1_GPI10) so that firmware can detect collision signal and apply
the CSMA/CD algorithm applicable for half duplex operation. A DT property,
"ti,half-duplex-capable" is introduced for this purpose in the first patch
of the series. If board has PHY COL pin conencted to PRGx_PRU1_GPIO10,
this DT property can be added to eth node of ICSSG, MII port to support
half duplex operation at that port.

Second patch of the series configures driver to support half-duplex
operation if the DT property "ti,half-duplex-capable" is enabled.

This series addresses comments on [v2]. This series is based on the latest
net-next/main. This series has no dependency.

Changes from v1 to v2:
*) Changed the description of "ti,half-duplex-capable" property as asked
   by Rob and Andrew to avoid confusion between capable and enable.

Changes from v1 to v2:
*) Dropped the RFC tag.
*) Added RB tags of Andrew and Roger.

[v1] https://lore.kernel.org/all/20230830113134.1226970-1-danishanwar@ti.com/
[v2] https://lore.kernel.org/all/20230911060200.2164771-1-danishanwar@ti.com/
====================

Signed-off-by: David S. Miller <davem@davemloft.net>