[PATCH v2 0/8] Cavium OCTEON-III network driver.

David Daney ddaney at caviumnetworks.com
Thu Nov 9 18:16:08 UTC 2017


I need to send v3.  With this v2 set, there is a small bug in the RX 
initialization that causes failure on little-endian kernels.

David.


On 11/08/2017 04:51 PM, David Daney wrote:
> We are adding the Cavium OCTEON-III network driver.  But since
> interacting with the input and output queues is done via special CPU
> local memory, we also need to add support to the MIPS/Octeon
> architecture code.  Aren't SoCs nice in this way?
> 
> The first six patches add the SoC support needed by the driver, the
> last two add the driver and an entry in MAINTAINERS.
> 
> Since these touch several subsystems (mips, staging, netdev), I would
> propose merging via netdev, but defer to the maintainers if they think
> something else would work better.
> 
> A separate pull request was recently done by Steven Hill for the
> firmware required by the driver.
> 
> Changes from v1:
> 
> o Cleanup and use of standard bindings in the device tree bindings
>    document.
> 
> o Added (hopefully) clarifying comments about several OCTEON
>    architectural peculiarities.
> 
> o Removed unused testing code from the driver.
> 
> o Removed some module parameters that already default to the proper
>    values.
> 
> o KConfig cleanup, including testing on x86_64, arm64 and mips.
> 
> o Fixed breakage to the driver for previous generation of OCTEON SoCs (in
>    the staging directory still).
> 
> o Verified bisectability of the patch set.
> 
> Carlos Munoz (5):
>    dt-bindings: Add Cavium Octeon Common Ethernet Interface.
>    MIPS: Octeon: Enable LMTDMA/LMTST operations.
>    MIPS: Octeon: Add a global resource manager.
>    MIPS: Octeon: Add Free Pointer Unit (FPA) support.
>    netdev: octeon-ethernet: Add Cavium Octeon III support.
> 
> David Daney (3):
>    MIPS: Octeon: Automatically provision CVMSEG space.
>    staging: octeon: Remove USE_ASYNC_IOBDMA macro.
>    MAINTAINERS: Add entry for
>      drivers/net/ethernet/cavium/octeon/octeon3-*
> 
>   .../devicetree/bindings/net/cavium-bgx.txt         |   61 +
>   MAINTAINERS                                        |    6 +
>   arch/mips/cavium-octeon/Kconfig                    |   35 +-
>   arch/mips/cavium-octeon/Makefile                   |    4 +-
>   arch/mips/cavium-octeon/octeon-fpa3.c              |  364 ++++
>   arch/mips/cavium-octeon/resource-mgr.c             |  371 ++++
>   arch/mips/cavium-octeon/setup.c                    |   22 +-
>   .../asm/mach-cavium-octeon/kernel-entry-init.h     |   20 +-
>   arch/mips/include/asm/mipsregs.h                   |    2 +
>   arch/mips/include/asm/octeon/octeon.h              |   47 +-
>   arch/mips/include/asm/processor.h                  |    2 +-
>   arch/mips/kernel/octeon_switch.S                   |    2 -
>   arch/mips/mm/tlbex.c                               |   29 +-
>   drivers/net/ethernet/cavium/Kconfig                |   55 +-
>   drivers/net/ethernet/cavium/octeon/Makefile        |    6 +
>   .../net/ethernet/cavium/octeon/octeon3-bgx-nexus.c |  698 +++++++
>   .../net/ethernet/cavium/octeon/octeon3-bgx-port.c  | 2028 +++++++++++++++++++
>   drivers/net/ethernet/cavium/octeon/octeon3-core.c  | 2068 ++++++++++++++++++++
>   drivers/net/ethernet/cavium/octeon/octeon3-pki.c   |  833 ++++++++
>   drivers/net/ethernet/cavium/octeon/octeon3-pko.c   | 1719 ++++++++++++++++
>   drivers/net/ethernet/cavium/octeon/octeon3-sso.c   |  309 +++
>   drivers/net/ethernet/cavium/octeon/octeon3.h       |  411 ++++
>   drivers/staging/octeon/ethernet-defines.h          |    6 -
>   drivers/staging/octeon/ethernet-rx.c               |   25 +-
>   drivers/staging/octeon/ethernet-tx.c               |   85 +-
>   25 files changed, 9065 insertions(+), 143 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/net/cavium-bgx.txt
>   create mode 100644 arch/mips/cavium-octeon/octeon-fpa3.c
>   create mode 100644 arch/mips/cavium-octeon/resource-mgr.c
>   create mode 100644 drivers/net/ethernet/cavium/octeon/octeon3-bgx-nexus.c
>   create mode 100644 drivers/net/ethernet/cavium/octeon/octeon3-bgx-port.c
>   create mode 100644 drivers/net/ethernet/cavium/octeon/octeon3-core.c
>   create mode 100644 drivers/net/ethernet/cavium/octeon/octeon3-pki.c
>   create mode 100644 drivers/net/ethernet/cavium/octeon/octeon3-pko.c
>   create mode 100644 drivers/net/ethernet/cavium/octeon/octeon3-sso.c
>   create mode 100644 drivers/net/ethernet/cavium/octeon/octeon3.h
> 



More information about the devel mailing list