mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-10-28 20:03:05 +00:00
This patch adds functions for providing in KSZ9477 switch HSR (High-availability Seamless Redundancy) hardware offloading. According to AN3474 application note following features are provided: - TX packet duplication from host to switch (NETIF_F_HW_HSR_DUP) - RX packet duplication discarding - Prevention of packet loop For last two ones - there is a probability that some packets will not be filtered in HW (in some special cases - described in AN3474). Hence, the HSR core code shall be used to discard those not caught frames. Moreover, some switch registers adjustments are required - like setting MAC address of HSR network interface. Additionally, the KSZ9477 switch has been configured to forward frames between HSR ports (e.g. 1,2) members to provide support for NETIF_F_HW_HSR_FWD flag. Join and leave functions are written in a way, that are executed with single port - i.e. configuration is NOT done only when second HSR port is configured. Co-developed-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com> |
History
|
|
|---|---|---|
| .. | ||
| Kconfig | ||
| ksz8.h | ||
| ksz8795.c | ||
| ksz8795_reg.h | ||
| ksz8863_smi.c | ||
| ksz9477.c | ||
| ksz9477.h | ||
| ksz9477_acl.c | ||
| ksz9477_i2c.c | ||
| ksz9477_reg.h | ||
| ksz9477_tc_flower.c | ||
| ksz_common.c | ||
| ksz_common.h | ||
| ksz_ptp.c | ||
| ksz_ptp.h | ||
| ksz_ptp_reg.h | ||
| ksz_spi.c | ||
| lan937x.h | ||
| lan937x_main.c | ||
| lan937x_reg.h | ||
| Makefile | ||