Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IGB AVB support #1

Open
wants to merge 4 commits into
base: v4.9.78
Choose a base branch
from
Open

IGB AVB support #1

wants to merge 4 commits into from

Commits on May 27, 2020

  1. igb: add some AVB specific register definitions

    These will be needed for external AVB streaming driver and upcoming
    AVB extension of igb driver on i210 card model.
    Registers are documented in i210 controller datasheet available
    at intel.com
    
    Signed-off-by: Andreas Pape <[email protected]>
    Signed-off-by: Timo Wischer <[email protected]>
    aditpape authored and Timo Wischer committed May 27, 2020
    Configuration menu
    Copy the full SHA
    27ed66c View commit details
    Browse the repository at this point in the history
  2. igb: add basic AVB support

    This patch adds config option CONFIG_IGB_EXT_AVB which enables
    AVB support in igb driver. If enabled and driver is probed on an
    igb card supporting AVB (currently only i210 model) the NIC is
    configured for AVB use case (in parallel to normal traffic):
    -2 TX queues and 2 RX queues are reserved for AVB usage
    -these queues are 'hidden' to the linux networking stack to avoid
    	usage for any 'normal' network traffic
    -these queues are configured to support traffic shaping (QAV)
    
    The queues are only allocated and initialized by igb driver but
    need to be driven (sending/receiving) by external component.
    Igb driver allows registering external IRQ handlers on these queues
    and a notification callback for link status.
    Shutting down the interface will also stop/shutdown AVB queues.
    
    Signed-off-by: Andreas Pape <[email protected]>
    Signed-off-by: Timo Wischer <[email protected]>
    aditpape authored and Timo Wischer committed May 27, 2020
    Configuration menu
    Copy the full SHA
    5ddee7e View commit details
    Browse the repository at this point in the history
  3. igb: streaming driver for MSE

    This patch adds a streaming driver to use the MSE (Media Streaming Engine)
    provided by Renesas for RCAR3 also on intel NIC.
    The driver itself is derived from the Renesas ravb_streaming driver
    (version R-Car v2.7.0).
    For now it hooks at the ravb streaming API as there is no full separation
    between the common parts (prefix 'eavb') and the NIC dependent
    (RCAR3 specific) part (prefix 'ravb').
    This results in obvious 'ravb' parts also used by the igb solution
    which is acceptable.
    Feature set is similar to the ravb driver:
    -16 tx instances, 16 rx instances
    The driver comes as a separate module and attaches to the igb driver
    via the optional AVB API exported with config option CONFIG_IGB_EXT_AVB.
    After attaching the streaming driver directly acts on the igb
    hardware queues.
    
    Signed-off-by: Andreas Pape <[email protected]>
    Signed-off-by: Timo Wischer <[email protected]>
    aditpape authored and Timo Wischer committed May 27, 2020
    Configuration menu
    Copy the full SHA
    9ecd1d0 View commit details
    Browse the repository at this point in the history
  4. x86: Add defconfig to enable IGB AVB

    Signed-off-by: Timo Wischer <[email protected]>
    Timo Wischer committed May 27, 2020
    Configuration menu
    Copy the full SHA
    32e2e0d View commit details
    Browse the repository at this point in the history