[U-Boot] [RFC PATCH 00/29] arm: Introduce Marvell/Cavium OcteonTX

Suneel Garapati suneelglinux at gmail.com
Tue Oct 29 21:07:52 UTC 2019


This series will add support for OcteonTX and OcteonTX2 processsor based
platforms. The Marvell/Cavium Octeon-TX 64-bit ARM based SoCs include
the CN80XX, CN81XX and CN83XX while Octeon-TX2 64-bit ARM based SoCs include
support for CN96XX and CN95XX.
These SoC's have peripheral drivers based on PCI ECAM.
  
Patches
[1 -10] Add requied changes to PCI framework
 - [6] Add support for multi-memory region range
 - [7] EA in bridges
 - [8] SR-IOV
[12] Add driver model support for RTC DS1337 driver
[15 - 17] AHCI changes
[18 - 27] Add OcteonTX drivers
[28 - 29] Add OcteonTX/TX2 board files and configurations
  
Suneel Garapati (29):
  include: pci_ids: add vendor ID for Cavium
  include: pci: Increase max pci region limit
  fdtdec: add API to read pci bus-range property
  drivers: pci-uclass: fix incorrect argument in map_sysmem
  drivers: pci-uclass: make DT subnode parse optional
  drivers: pci-uclass: add multi entry support for pci regions
  drivers: pci-uclass: add support for Enhanced Allocation in Bridges
  drivers: pci-uclass: add support for Single-Root I/O Virtualizaiton
  drivers: pci-uclass: add VF map_bar support for Enhanced Allocation
  drivers: pci-uclass: Add support for Alternate-RoutingID capability
  include: arm: asm: io: add 64bit clrbits and setbits helpers
  drivers: rtc: ds1337: add driver model support
  arch: include: octeontx: add headers for OcteonTX
  arch: include: octeontx2: add headers for OcteonTX2
  drivers: ata: ahci: update max id if it is more than available ports
  drivers: ata: ahci: fill upper 32bit buffer address in sg descriptor
  drivers: ata: ahci: add BAR index quirk for OcteonTX
  drivers: pci: add PCI controller driver for OcteonTX
  drivers: gpio: add GPIO controller driver for OcteonTX
  drivers: i2c: add I2C controller driver for OcteonTX
  drivers: spi: add SPI controller driver for OcteonTX
  drivers: mmc: remove static qualifier on mmc_power_init
  drivers: mmc: add MMC controller driver for OcteonTX
  drivers: mtd: nand: add NAND controller driver for OcteonTX
  drivers: net: add NIC controller driver for OcteonTX
  drivers: net: add NIC controller driver for OcteonTX2
  drivers: watchdog: add reset support for OcteonTX
  octeontx: Add support for OcteonTX SoC platforms
  octeontx2: Add support for OcteonTX2 SoC platforms

 arch/arm/Kconfig                              |    22 +
 arch/arm/Makefile                             |     2 +
 arch/arm/include/asm/arch-octeontx/board.h    |   121 +
 arch/arm/include/asm/arch-octeontx/clock.h    |    25 +
 .../asm/arch-octeontx/csrs/csrs-mio_emm.h     |  1193 ++
 .../include/asm/arch-octeontx/csrs/csrs-xcv.h |   428 +
 arch/arm/include/asm/arch-octeontx/gpio.h     |     6 +
 arch/arm/include/asm/arch-octeontx/smc.h      |    20 +
 arch/arm/include/asm/arch-octeontx/soc.h      |    31 +
 arch/arm/include/asm/arch-octeontx2/board.h   |   123 +
 arch/arm/include/asm/arch-octeontx2/clock.h   |    24 +
 .../asm/arch-octeontx2/csrs/csrs-cgx.h        |  7835 ++++++++++++
 .../asm/arch-octeontx2/csrs/csrs-lmt.h        |    60 +
 .../asm/arch-octeontx2/csrs/csrs-mio_emm.h    |  1193 ++
 .../asm/arch-octeontx2/csrs/csrs-nix.h        | 10482 ++++++++++++++++
 .../asm/arch-octeontx2/csrs/csrs-npa.h        |  2296 ++++
 .../asm/arch-octeontx2/csrs/csrs-npc.h        |  1930 +++
 .../asm/arch-octeontx2/csrs/csrs-rvu.h        |  2430 ++++
 arch/arm/include/asm/arch-octeontx2/gpio.h    |     6 +
 arch/arm/include/asm/arch-octeontx2/smc-id.h  |    32 +
 arch/arm/include/asm/arch-octeontx2/smc.h     |    18 +
 arch/arm/include/asm/arch-octeontx2/soc.h     |    31 +
 arch/arm/include/asm/io.h                     |     8 +
 arch/arm/mach-octeontx/Kconfig                |    23 +
 arch/arm/mach-octeontx/Makefile               |     9 +
 arch/arm/mach-octeontx/clock.c                |    35 +
 arch/arm/mach-octeontx/cpu.c                  |    76 +
 arch/arm/mach-octeontx/lowlevel_init.S        |    33 +
 arch/arm/mach-octeontx2/Kconfig               |    23 +
 arch/arm/mach-octeontx2/Makefile              |     9 +
 arch/arm/mach-octeontx2/clock.c               |    35 +
 arch/arm/mach-octeontx2/config.mk             |     4 +
 arch/arm/mach-octeontx2/cpu.c                 |    72 +
 arch/arm/mach-octeontx2/lowlevel_init.S       |    33 +
 board/Marvell/octeontx/Kconfig                |    14 +
 board/Marvell/octeontx/MAINTAINERS            |     9 +
 board/Marvell/octeontx/Makefile               |     9 +
 board/Marvell/octeontx/board-fdt.c            |   271 +
 board/Marvell/octeontx/board.c                |   137 +
 board/Marvell/octeontx/smc.c                  |    30 +
 board/Marvell/octeontx/soc-utils.c            |    53 +
 board/Marvell/octeontx2/Kconfig               |    15 +
 board/Marvell/octeontx2/MAINTAINERS           |     9 +
 board/Marvell/octeontx2/Makefile              |     9 +
 board/Marvell/octeontx2/board-fdt.c           |   155 +
 board/Marvell/octeontx2/board.c               |   232 +
 board/Marvell/octeontx2/smc.c                 |    62 +
 board/Marvell/octeontx2/soc-utils.c           |    49 +
 configs/octeontx2_95xx_defconfig              |   105 +
 configs/octeontx2_96xx_defconfig              |   131 +
 configs/octeontx_81xx_defconfig               |   133 +
 configs/octeontx_83xx_defconfig               |   130 +
 drivers/ata/ahci.c                            |    15 +
 drivers/gpio/Kconfig                          |     7 +
 drivers/gpio/Makefile                         |     1 +
 drivers/gpio/octeontx_gpio.c                  |   218 +
 drivers/i2c/Kconfig                           |     7 +
 drivers/i2c/Makefile                          |     1 +
 drivers/i2c/octeontx_i2c.c                    |   968 ++
 drivers/mmc/Kconfig                           |     9 +
 drivers/mmc/Makefile                          |     1 +
 drivers/mmc/mmc.c                             |     2 +-
 drivers/mmc/octeontx_hsmmc.c                  |  3233 +++++
 drivers/mmc/octeontx_hsmmc.h                  |   191 +
 drivers/mtd/nand/raw/Kconfig                  |    16 +
 drivers/mtd/nand/raw/Makefile                 |     2 +
 drivers/mtd/nand/raw/octeontx_bch.c           |   424 +
 drivers/mtd/nand/raw/octeontx_bch.h           |   142 +
 drivers/mtd/nand/raw/octeontx_bch_regs.h      |   169 +
 drivers/mtd/nand/raw/octeontx_nand.c          |  2261 ++++
 drivers/net/Kconfig                           |    29 +
 drivers/net/Makefile                          |     4 +
 drivers/net/octeontx/Makefile                 |     9 +
 drivers/net/octeontx/bgx.c                    |  1546 +++
 drivers/net/octeontx/bgx.h                    |   259 +
 drivers/net/octeontx/nic.h                    |   518 +
 drivers/net/octeontx/nic_main.c               |   777 ++
 drivers/net/octeontx/nic_reg.h                |   252 +
 drivers/net/octeontx/nicvf_main.c             |   575 +
 drivers/net/octeontx/nicvf_queues.c           |  1141 ++
 drivers/net/octeontx/nicvf_queues.h           |   355 +
 drivers/net/octeontx/q_struct.h               |   697 +
 drivers/net/octeontx/smi.c                    |   382 +
 drivers/net/octeontx/xcv.c                    |   129 +
 drivers/net/octeontx2/Makefile                |    11 +
 drivers/net/octeontx2/cgx.c                   |   297 +
 drivers/net/octeontx2/cgx.h                   |   105 +
 drivers/net/octeontx2/cgx_intf.c              |   421 +
 drivers/net/octeontx2/cgx_intf.h              |   370 +
 drivers/net/octeontx2/lmt.h                   |    51 +
 drivers/net/octeontx2/nix.c                   |   824 ++
 drivers/net/octeontx2/nix.h                   |   355 +
 drivers/net/octeontx2/nix_af.c                |  1103 ++
 drivers/net/octeontx2/npc.h                   |    92 +
 drivers/net/octeontx2/rvu.h                   |   127 +
 drivers/net/octeontx2/rvu_af.c                |   172 +
 drivers/net/octeontx2/rvu_common.c            |    74 +
 drivers/net/octeontx2/rvu_pf.c                |   118 +
 drivers/pci/Kconfig                           |    17 +
 drivers/pci/Makefile                          |     1 +
 drivers/pci/pci-uclass.c                      |   211 +-
 drivers/pci/pci_octeontx.c                    |   538 +
 drivers/rtc/Kconfig                           |     7 +
 drivers/rtc/ds1337.c                          |   170 +
 drivers/spi/Kconfig                           |     6 +
 drivers/spi/Makefile                          |     1 +
 drivers/spi/octeontx_spi.c                    |   750 ++
 drivers/watchdog/Kconfig                      |    10 +
 drivers/watchdog/Makefile                     |     1 +
 drivers/watchdog/octeontx_wdt.c               |    76 +
 include/configs/octeontx2_95xx.h              |    80 +
 include/configs/octeontx2_96xx.h              |    90 +
 include/configs/octeontx_common.h             |    98 +
 include/fdtdec.h                              |    12 +
 include/mmc.h                                 |     1 +
 include/pci.h                                 |    23 +-
 include/pci_ids.h                             |     2 +
 lib/fdtdec.c                                  |    16 +
 118 files changed, 50774 insertions(+), 17 deletions(-)
 create mode 100644 arch/arm/include/asm/arch-octeontx/board.h
 create mode 100644 arch/arm/include/asm/arch-octeontx/clock.h
 create mode 100644 arch/arm/include/asm/arch-octeontx/csrs/csrs-mio_emm.h
 create mode 100644 arch/arm/include/asm/arch-octeontx/csrs/csrs-xcv.h
 create mode 100644 arch/arm/include/asm/arch-octeontx/gpio.h
 create mode 100644 arch/arm/include/asm/arch-octeontx/smc.h
 create mode 100644 arch/arm/include/asm/arch-octeontx/soc.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/board.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/clock.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/csrs/csrs-cgx.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/csrs/csrs-lmt.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/csrs/csrs-mio_emm.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/csrs/csrs-nix.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/csrs/csrs-npa.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/csrs/csrs-npc.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/csrs/csrs-rvu.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/gpio.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/smc-id.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/smc.h
 create mode 100644 arch/arm/include/asm/arch-octeontx2/soc.h
 create mode 100644 arch/arm/mach-octeontx/Kconfig
 create mode 100644 arch/arm/mach-octeontx/Makefile
 create mode 100644 arch/arm/mach-octeontx/clock.c
 create mode 100644 arch/arm/mach-octeontx/cpu.c
 create mode 100644 arch/arm/mach-octeontx/lowlevel_init.S
 create mode 100644 arch/arm/mach-octeontx2/Kconfig
 create mode 100644 arch/arm/mach-octeontx2/Makefile
 create mode 100644 arch/arm/mach-octeontx2/clock.c
 create mode 100644 arch/arm/mach-octeontx2/config.mk
 create mode 100644 arch/arm/mach-octeontx2/cpu.c
 create mode 100644 arch/arm/mach-octeontx2/lowlevel_init.S
 create mode 100644 board/Marvell/octeontx/Kconfig
 create mode 100644 board/Marvell/octeontx/MAINTAINERS
 create mode 100644 board/Marvell/octeontx/Makefile
 create mode 100644 board/Marvell/octeontx/board-fdt.c
 create mode 100644 board/Marvell/octeontx/board.c
 create mode 100644 board/Marvell/octeontx/smc.c
 create mode 100644 board/Marvell/octeontx/soc-utils.c
 create mode 100644 board/Marvell/octeontx2/Kconfig
 create mode 100644 board/Marvell/octeontx2/MAINTAINERS
 create mode 100644 board/Marvell/octeontx2/Makefile
 create mode 100644 board/Marvell/octeontx2/board-fdt.c
 create mode 100644 board/Marvell/octeontx2/board.c
 create mode 100644 board/Marvell/octeontx2/smc.c
 create mode 100644 board/Marvell/octeontx2/soc-utils.c
 create mode 100644 configs/octeontx2_95xx_defconfig
 create mode 100644 configs/octeontx2_96xx_defconfig
 create mode 100644 configs/octeontx_81xx_defconfig
 create mode 100644 configs/octeontx_83xx_defconfig
 create mode 100644 drivers/gpio/octeontx_gpio.c
 create mode 100644 drivers/i2c/octeontx_i2c.c
 create mode 100644 drivers/mmc/octeontx_hsmmc.c
 create mode 100644 drivers/mmc/octeontx_hsmmc.h
 create mode 100644 drivers/mtd/nand/raw/octeontx_bch.c
 create mode 100644 drivers/mtd/nand/raw/octeontx_bch.h
 create mode 100644 drivers/mtd/nand/raw/octeontx_bch_regs.h
 create mode 100644 drivers/mtd/nand/raw/octeontx_nand.c
 create mode 100644 drivers/net/octeontx/Makefile
 create mode 100644 drivers/net/octeontx/bgx.c
 create mode 100644 drivers/net/octeontx/bgx.h
 create mode 100644 drivers/net/octeontx/nic.h
 create mode 100644 drivers/net/octeontx/nic_main.c
 create mode 100644 drivers/net/octeontx/nic_reg.h
 create mode 100644 drivers/net/octeontx/nicvf_main.c
 create mode 100644 drivers/net/octeontx/nicvf_queues.c
 create mode 100644 drivers/net/octeontx/nicvf_queues.h
 create mode 100644 drivers/net/octeontx/q_struct.h
 create mode 100644 drivers/net/octeontx/smi.c
 create mode 100644 drivers/net/octeontx/xcv.c
 create mode 100644 drivers/net/octeontx2/Makefile
 create mode 100644 drivers/net/octeontx2/cgx.c
 create mode 100644 drivers/net/octeontx2/cgx.h
 create mode 100644 drivers/net/octeontx2/cgx_intf.c
 create mode 100644 drivers/net/octeontx2/cgx_intf.h
 create mode 100644 drivers/net/octeontx2/lmt.h
 create mode 100644 drivers/net/octeontx2/nix.c
 create mode 100644 drivers/net/octeontx2/nix.h
 create mode 100644 drivers/net/octeontx2/nix_af.c
 create mode 100644 drivers/net/octeontx2/npc.h
 create mode 100644 drivers/net/octeontx2/rvu.h
 create mode 100644 drivers/net/octeontx2/rvu_af.c
 create mode 100644 drivers/net/octeontx2/rvu_common.c
 create mode 100644 drivers/net/octeontx2/rvu_pf.c
 create mode 100644 drivers/pci/pci_octeontx.c
 create mode 100644 drivers/spi/octeontx_spi.c
 create mode 100644 drivers/watchdog/octeontx_wdt.c
 create mode 100644 include/configs/octeontx2_95xx.h
 create mode 100644 include/configs/octeontx2_96xx.h
 create mode 100644 include/configs/octeontx_common.h

-- 
2.23.0



More information about the U-Boot mailing list