• Danielle Ratson's avatar
    mlxsw: pci: Avoid flow control for EMAD packets · d43e4271
    Danielle Ratson authored
    Locally generated packets ingress the device through its CPU port. When
    the CPU port is congested and there are not enough credits in its
    headroom buffer, packets can be dropped.
    
    While this might be acceptable for data packets that traverse the
    network, configuration packets exchanged between the host and the device
    (EMADs) should not be subjected to this flow control.
    
    The "sdq_lp" bit in the SDQ (Send Descriptor Queue) context allows the
    host to instruct the device to treat packets sent on this queue as
    "local processing" and always process them, regardless of the state of
    the CPU port's headroom.
    
    Add the definition of this bit and set it for the dedicated SDQ reserved
    for the transmission of EMAD packets. This makes the "local processing"
    bit in the WQE (Work Queue Element) redundant, so clear it.
    Signed-off-by: default avatarDanielle Ratson <danieller@nvidia.com>
    Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    d43e4271
cmd.h 39.8 KB