[U-Boot] [PATCH v4 00/13] LS1012A PFE driver patch series

Calvin Johnson calvin.johnson at nxp.com
Thu Mar 8 10:00:22 UTC 2018


This patch series introduces U-Boot support for NXP's LS1012A Packet
Forwarding Engine (pfe_eth). LS1012A uses hardware packet forwarding
engine to provide high performance Ethernet interfaces. The device
includes two Ethernet ports.


Changes in v4:
-Compile pfe driver conditionally with CONFIG_FSL_PFE
-Compile pfe driver conditionally with CONFIG_FSL_PFE
-Compile pfe driver conditionally with CONFIG_FSL_PFE
-Fix typo "ppfe stop"

Changes in v3:
-Update header location to include/net/pfe_eth
-Replace EMACX_PHY_ADDR with CONFIG_PFE_EMACX_PHY_ADDR
-Update header location to include/net/pfe_eth
-Move pfe_eth header files to include/net/pfe_eth
-Use BIT macro wherever applicable
-Update Kconfig
-Update header file location to include/net/pfe_eth
-Cosmetic changes
-Update Kconfig
-Update header file location to include/net/pfe_eth
-Prefix CONFIG_PFE_ to appropriate macros
-Update Kconfig
-Update header file location to include/net/pfe_eth
-Update Kconfig
-Update header file location to include/net/pfe_eth
-Prefix CONFIG_PFE_ to appropriate macros
-Indent properly
-Use BIT macro wherever applicable
-Cosmetic change
-Move PFE macros to Kconfig
-Remove unused UTIL_PE_DISABLED config

Changes in v2:
-fix RGMII TX-delay issue
-add pfe_rx_done to clear bd after packet processing
-use writel/readl to access hw bds
-cleanup typos and indent
-remove unused code under CONFIG_UTIL_PE_DISABLED
-Consolidate code in pfe_lib_init
-Corrected typo receive
-Magic numbers replaced with proper definitions
-File names pfe.c renamed to pfe_hw.c to be more clear as it contains
 low level functions that directly access pfe hardware block.
-MDIO related code is also moved from pfe_eth.c to a new file
 pfe_mdio.c.
-remove unused code under CONFIG_UTIL_PE_DISABLED
-remove unused code under CONFIG_PFE_WARN_WA
-Add pfe_rx_done to clear bd after packet processing
-remove unused code under CONFIG_UTIL_PE_DISABLED
-Used BIT and GENMASK macros wherever applicable
-Removed generic definitions that pollutes namespace
-File names pfe.h renamed to pfe_hw.h to be more clear as it contains
 low level functions that directly access pfe hardware block
-Added pfe_dm_eth.h for new driver model
-split from original patch "board: freescale: ls1012a: enable network
support on ls1012a platforms"
-split from original patch "board: freescale: ls1012a: enable network
support on ls1012a platforms"
-split from original patch "board: freescale: ls1012a: enable network
support on ls1012a platforms"
-New patch added to series to enable ethernet support for
ls1012a2g5rdb
-Improved commit message to provide more description
-Replaced magic numbers with proper definitions
-Improved commit message to provide more description
-Moved SYS_LS_PFE_FW_ADDR from pfe Kconfig to board Kconfigs
-Add "pfe stop" to ls1012a rdb, frdm and 2g5rdb config files

Calvin Johnson (12):
  drivers: net: phy: Fix aquantia compilation with DM
  drivers: net: pfe_eth: LS1012A PFE driver introduction
  drivers: net: pfe_eth: provide pfe commands
  drivers: net: pfe_eth: LS1012A PFE headers
  board: freescale: ls1012aqds: enable network support on ls1012aqds
  board: freescale: ls1012afrdm: enable network support on ls1012afrdm
  board: freescale: ls1012ardb: enable network support on ls1012ardb
  board: freescale: ls1012a2g5rdb: enable network support on
    ls1012a2g5rdb
  armv8: fsl-lsch2: add pfe macros and update ccsr_scfg structure
  armv8: fsl-lsch2: configure pfe's DDR and HDBUS interfaces and ECC
  armv8: layerscape: csu: enable ns access to PFE registers
  configs: ls1012a: add pfe configuration for LS1012A

Prabhakar Kushwaha (1):
  armv8: fsl-layerscape: Add support of GPIO structure

 arch/arm/cpu/armv8/fsl-layerscape/soc.c            |  23 +
 .../include/asm/arch-fsl-layerscape/immap_lsch2.h  |  63 +-
 .../include/asm/arch-fsl-layerscape/ns_access.h    |   2 +
 arch/arm/include/asm/arch-fsl-layerscape/soc.h     |   3 +
 board/freescale/ls1012afrdm/Kconfig                |  29 +
 board/freescale/ls1012afrdm/Makefile               |   1 +
 board/freescale/ls1012afrdm/eth.c                  | 124 +++
 board/freescale/ls1012afrdm/ls1012afrdm.c          |   5 -
 board/freescale/ls1012aqds/Kconfig                 |  45 +
 board/freescale/ls1012aqds/Makefile                |   1 +
 board/freescale/ls1012aqds/eth.c                   | 309 +++++++
 board/freescale/ls1012aqds/ls1012aqds.c            |  97 +-
 board/freescale/ls1012aqds/ls1012aqds_pfe.h        |  45 +
 board/freescale/ls1012aqds/ls1012aqds_qixis.h      |   2 +-
 board/freescale/ls1012ardb/Kconfig                 |  59 ++
 board/freescale/ls1012ardb/Makefile                |   1 +
 board/freescale/ls1012ardb/eth.c                   | 135 +++
 board/freescale/ls1012ardb/ls1012ardb.c            |   4 -
 configs/ls1012a2g5rdb_qspi_defconfig               |   2 +
 configs/ls1012afrdm_qspi_defconfig                 |   2 +
 configs/ls1012aqds_qspi_defconfig                  |   2 +
 configs/ls1012ardb_qspi_defconfig                  |   2 +
 drivers/net/Kconfig                                |   1 +
 drivers/net/Makefile                               |   1 +
 drivers/net/pfe_eth/Kconfig                        |  12 +
 drivers/net/pfe_eth/Makefile                       |  12 +
 drivers/net/pfe_eth/pfe_cmd.c                      | 497 ++++++++++
 drivers/net/pfe_eth/pfe_driver.c                   | 643 +++++++++++++
 drivers/net/pfe_eth/pfe_eth.c                      | 297 ++++++
 drivers/net/pfe_eth/pfe_firmware.c                 | 230 +++++
 drivers/net/pfe_eth/pfe_hw.c                       | 999 +++++++++++++++++++++
 drivers/net/pfe_eth/pfe_mdio.c                     | 291 ++++++
 drivers/net/phy/aquantia.c                         |   1 +
 include/configs/ls1012a2g5rdb.h                    |  11 +-
 include/configs/ls1012a_common.h                   |   6 +-
 include/configs/ls1012afrdm.h                      |   2 +-
 include/configs/ls1012ardb.h                       |   6 +-
 include/dm/platform_data/pfe_dm_eth.h              |  21 +
 include/net/pfe_eth/pfe/cbus.h                     |  77 ++
 include/net/pfe_eth/pfe/cbus/bmu.h                 |  40 +
 include/net/pfe_eth/pfe/cbus/class_csr.h           | 180 ++++
 include/net/pfe_eth/pfe/cbus/emac.h                | 140 +++
 include/net/pfe_eth/pfe/cbus/gpi.h                 |  62 ++
 include/net/pfe_eth/pfe/cbus/hif.h                 |  68 ++
 include/net/pfe_eth/pfe/cbus/hif_nocpy.h           |  40 +
 include/net/pfe_eth/pfe/cbus/tmu_csr.h             | 148 +++
 include/net/pfe_eth/pfe/cbus/util_csr.h            |  47 +
 include/net/pfe_eth/pfe/pfe_hw.h                   | 163 ++++
 include/net/pfe_eth/pfe_driver.h                   |  59 ++
 include/net/pfe_eth/pfe_eth.h                      | 104 +++
 include/net/pfe_eth/pfe_firmware.h                 |  17 +
 include/net/pfe_eth/pfe_mdio.h                     |  13 +
 52 files changed, 5111 insertions(+), 33 deletions(-)
 create mode 100644 board/freescale/ls1012afrdm/eth.c
 create mode 100644 board/freescale/ls1012aqds/eth.c
 create mode 100644 board/freescale/ls1012aqds/ls1012aqds_pfe.h
 create mode 100644 board/freescale/ls1012ardb/eth.c
 create mode 100644 drivers/net/pfe_eth/Kconfig
 create mode 100644 drivers/net/pfe_eth/Makefile
 create mode 100644 drivers/net/pfe_eth/pfe_cmd.c
 create mode 100644 drivers/net/pfe_eth/pfe_driver.c
 create mode 100644 drivers/net/pfe_eth/pfe_eth.c
 create mode 100644 drivers/net/pfe_eth/pfe_firmware.c
 create mode 100644 drivers/net/pfe_eth/pfe_hw.c
 create mode 100644 drivers/net/pfe_eth/pfe_mdio.c
 create mode 100644 include/dm/platform_data/pfe_dm_eth.h
 create mode 100644 include/net/pfe_eth/pfe/cbus.h
 create mode 100644 include/net/pfe_eth/pfe/cbus/bmu.h
 create mode 100644 include/net/pfe_eth/pfe/cbus/class_csr.h
 create mode 100644 include/net/pfe_eth/pfe/cbus/emac.h
 create mode 100644 include/net/pfe_eth/pfe/cbus/gpi.h
 create mode 100644 include/net/pfe_eth/pfe/cbus/hif.h
 create mode 100644 include/net/pfe_eth/pfe/cbus/hif_nocpy.h
 create mode 100644 include/net/pfe_eth/pfe/cbus/tmu_csr.h
 create mode 100644 include/net/pfe_eth/pfe/cbus/util_csr.h
 create mode 100644 include/net/pfe_eth/pfe/pfe_hw.h
 create mode 100644 include/net/pfe_eth/pfe_driver.h
 create mode 100644 include/net/pfe_eth/pfe_eth.h
 create mode 100644 include/net/pfe_eth/pfe_firmware.h
 create mode 100644 include/net/pfe_eth/pfe_mdio.h

-- 
2.7.4



More information about the U-Boot mailing list