Message ID | 20230830113134.1226970-1-danishanwar@ti.com |
---|---|
Headers | show |
Series | Add Half Duplex support for ICSSG Driver | expand |
On Wed, Aug 30, 2023 at 05:01:34PM +0530, MD Danish Anwar wrote: > This patch adds support for half duplex operation at 10M and 100M link > speeds for AM654x/AM64x devices. > - Driver configures rand_seed, a random number, in DMEM HD_RAND_SEED_OFFSET > field, which will be used by firmware for Back off time calculation. > - Driver informs FW about half duplex link operation in DMEM > PORT_LINK_SPEED_OFFSET field by setting bit 7 for 10/100M HD. > > Hence, the half duplex operation depends on board design the > "ti,half-duplex-capable" property has to be enabled for ICSS-G ports if HW > is capable to perform half duplex. > > Signed-off-by: MD Danish Anwar <danishanwar@ti.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Andrew
On 30/08/2023 14:31, MD Danish Anwar wrote: > 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 depends on [1] which is posted as RFC. > > [1] https://lore.kernel.org/all/20230830110847.1219515-1-danishanwar@ti.com/ > > Thanks and Regards, > Md Danish Anwar > > MD Danish Anwar (2): > dt-bindings: net: Add documentation for Half duplex support. > net: ti: icssg-prueth: Add support for half duplex operation > > .../bindings/net/ti,icssg-prueth.yaml | 7 +++++++ > drivers/net/ethernet/ti/icssg/icssg_config.c | 14 ++++++++++++++ > drivers/net/ethernet/ti/icssg/icssg_prueth.c | 17 +++++++++++++++-- > drivers/net/ethernet/ti/icssg/icssg_prueth.h | 2 ++ > 4 files changed, 38 insertions(+), 2 deletions(-) > For this series: Reviewed-by: Roger Quadros <rogerq@kernel.org>