• Subbaraya Sundeep's avatar
    octeontx2-af: Introduce internal packet switching · 23109f8d
    Subbaraya Sundeep authored
    As of now any communication between CGXs PFs and
    their VFs within the system is possible only by
    external switches sending packets back to the
    system. This patch adds internal switching support.
    Broadcast packet replication is not covered here.
    RVU admin function (AF) maintains MAC addresses
    of all interfaces in the system. When switching is
    enabled, MCAM entries are allocated to install rules
    such that packets with DMAC matching any of the
    internal interface MAC addresses is punted back
    into the system via the loopback channel.
    On the receive side the default unicast rules
    are modified to not check for ingress channel.
    So any packet with matching DMAC irrespective of
    which interface it is coming from will be forwarded
    to the respective PF/VF interface.
    The transmit side rules and default unicast rules
    are updated if user changes MAC address of an interface.
    Signed-off-by: default avatarSubbaraya Sundeep <sbhatta@marvell.com>
    Signed-off-by: default avatarSunil Kovvuri Goutham <sgoutham@marvell.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    23109f8d
rvu_switch.c 6.79 KB