[PATCH v3 00/32] Add support for MediaTek MT7981/MT7986 SoCs - v3

Weijie Gao weijie.gao at mediatek.com
Fri Sep 9 13:59:05 CEST 2022


This patch series add support for MediaTek MT7981/MT7986 SoCs with their
reference boards and related drivers.

This patch series add basic boot support on eMMC/SD/SPI-NOR/SPI-NAND for these
boards. The clock, pinctrl drivers and the SoC initializaton code are also
included.

Product spec for MT7986:
https://www.mediatek.com/products/home-networking/mediatek-filogic-830

Changes of v3:
- Use regmap for cpu driver to access hwver registers

Changes of v2:
- Add cpu driver for print_cpuinfo()
- Fix NULL pointer dereference in mtk_image
- Fix coding style
- Minor changes

Weijie Gao (32):
  arm: mediatek: add support for MediaTek MT7986 SoC
  arm: mediatek: add support for MediaTek MT7981 SoC
  board: mediatek: add MT7986 reference boards
  board: mediatek: add MT7981 reference boards
  mmc: mediatek: add support for MediaTek MT7891/MT7986 SoCs
  net: mediatek: use a struct to cover variations of all SoCs
  net: mediatek: stop using bitfileds for DMA descriptors
  net: mediatek: add support for PDMA v2
  net: mediatek: add support for MediaTek MT7981/MT7986
  serial: mtk: add support for using dynamic baud clock souce
  arm: dts: mt7622: force high-speed mode for uart
  pwm: mtk: add support for MediaTek MT7986 SoC
  pwm: mtk: add support for MediaTek MT7981 SoC
  timer: mtk: add support for MediaTek MT7981/MT7986 SoCs
  watchdog: mediatek: add support for MediaTek MT7986 SoC
  spi: add support for MediaTek spi-mem controller
  i2c: add support for MediaTek I2C interface
  arm: dts: mt7622: add i2c support
  dt-bindings: pinctrl: mediatek: add a header for common pinconf
    parameters
  pinctrl: mediatek: add pinctrl driver for MT7981 SoC
  pinctrl: mediatek: add pinctrl driver for MT7986 SoC
  clk: mediatek: add CLK_BYPASS_XTAL flag to allow bypassing searching
    clock parent of xtal clock
  clk: mediatek: add support to configure clock driver parent
  clk: mediatek: add infrasys clock mux support
  clk: mediatek: add CLK_XTAL support for clock driver
  clk: mediatek: add clock driver support for MediaTek MT7986 SoC
  clk: mediatek: add clock driver support for MediaTek MT7981 SoC
  cpu: add basic cpu driver for MediaTek ARM chips
  tools: mtk_image: split gfh header verification into a new function
  tools: mtk_image: split the code of generating NAND header into a new
    file
  tools: mtk_image: add support for nand headers used by newer chips
  MAINTAINERS: update maintainer for MediaTek ARM platform

 MAINTAINERS                                   |    6 +
 arch/arm/dts/Makefile                         |    9 +
 arch/arm/dts/mt7622-rfb.dts                   |   18 +
 arch/arm/dts/mt7622.dtsi                      |   25 +
 arch/arm/dts/mt7981-emmc-rfb.dts              |  139 +++
 arch/arm/dts/mt7981-rfb.dts                   |  173 +++
 arch/arm/dts/mt7981-sd-rfb.dts                |  139 +++
 arch/arm/dts/mt7981.dtsi                      |  295 +++++
 arch/arm/dts/mt7986-u-boot.dtsi               |   33 +
 arch/arm/dts/mt7986.dtsi                      |  350 ++++++
 arch/arm/dts/mt7986a-emmc-rfb.dts             |   16 +
 arch/arm/dts/mt7986a-rfb.dts                  |  218 ++++
 arch/arm/dts/mt7986a-sd-rfb.dts               |  177 +++
 arch/arm/dts/mt7986b-emmc-rfb.dts             |   16 +
 arch/arm/dts/mt7986b-rfb.dts                  |  204 ++++
 arch/arm/dts/mt7986b-sd-rfb.dts               |  173 +++
 arch/arm/mach-mediatek/Kconfig                |   23 +
 arch/arm/mach-mediatek/Makefile               |    2 +
 arch/arm/mach-mediatek/mt7981/Makefile        |    4 +
 arch/arm/mach-mediatek/mt7981/init.c          |   45 +
 arch/arm/mach-mediatek/mt7981/lowlevel_init.S |   32 +
 arch/arm/mach-mediatek/mt7986/Makefile        |    4 +
 arch/arm/mach-mediatek/mt7986/init.c          |   45 +
 arch/arm/mach-mediatek/mt7986/lowlevel_init.S |   32 +
 board/mediatek/mt7981/MAINTAINERS             |   10 +
 board/mediatek/mt7981/Makefile                |    3 +
 board/mediatek/mt7981/mt7981_rfb.c            |   10 +
 board/mediatek/mt7986/MAINTAINERS             |   10 +
 board/mediatek/mt7986/Makefile                |    3 +
 board/mediatek/mt7986/mt7986_rfb.c            |   10 +
 configs/mt7981_emmc_rfb_defconfig             |   64 +
 configs/mt7981_rfb_defconfig                  |   69 ++
 configs/mt7981_sd_rfb_defconfig               |   64 +
 configs/mt7986_rfb_defconfig                  |   66 ++
 configs/mt7986a_bpir3_emmc_defconfig          |   64 +
 configs/mt7986a_bpir3_sd_defconfig            |   64 +
 drivers/clk/mediatek/Makefile                 |    2 +
 drivers/clk/mediatek/clk-mt7981.c             |  683 +++++++++++
 drivers/clk/mediatek/clk-mt7986.c             |  672 +++++++++++
 drivers/clk/mediatek/clk-mtk.c                |  156 ++-
 drivers/clk/mediatek/clk-mtk.h                |   13 +-
 drivers/cpu/Makefile                          |    1 +
 drivers/cpu/mtk_cpu.c                         |   86 ++
 drivers/i2c/Kconfig                           |    9 +
 drivers/i2c/Makefile                          |    1 +
 drivers/i2c/mtk_i2c.c                         |  822 +++++++++++++
 drivers/mmc/mtk-sd.c                          |   68 +-
 drivers/net/mtk_eth.c                         |  261 ++--
 drivers/net/mtk_eth.h                         |  101 +-
 drivers/pinctrl/mediatek/Kconfig              |    8 +
 drivers/pinctrl/mediatek/Makefile             |    2 +
 drivers/pinctrl/mediatek/pinctrl-mt7981.c     | 1049 +++++++++++++++++
 drivers/pinctrl/mediatek/pinctrl-mt7986.c     |  775 ++++++++++++
 drivers/pwm/pwm-mtk.c                         |   40 +-
 drivers/serial/serial_mtk.c                   |   80 +-
 drivers/spi/Kconfig                           |    8 +
 drivers/spi/Makefile                          |    1 +
 drivers/spi/mtk_spim.c                        |  701 +++++++++++
 drivers/timer/mtk_timer.c                     |   59 +-
 drivers/watchdog/mtk_wdt.c                    |    1 +
 include/configs/mt7981.h                      |   26 +
 include/configs/mt7986.h                      |   26 +
 include/dt-bindings/clock/mt7981-clk.h        |  267 +++++
 include/dt-bindings/clock/mt7986-clk.h        |  249 ++++
 include/dt-bindings/pinctrl/mt65xx.h          |   41 +
 tools/Makefile                                |    1 +
 tools/mtk_image.c                             |  377 ++----
 tools/mtk_image.h                             |   25 -
 tools/mtk_nand_headers.c                      |  668 +++++++++++
 tools/mtk_nand_headers.h                      |  165 +++
 70 files changed, 9511 insertions(+), 548 deletions(-)
 create mode 100644 arch/arm/dts/mt7981-emmc-rfb.dts
 create mode 100644 arch/arm/dts/mt7981-rfb.dts
 create mode 100644 arch/arm/dts/mt7981-sd-rfb.dts
 create mode 100644 arch/arm/dts/mt7981.dtsi
 create mode 100644 arch/arm/dts/mt7986-u-boot.dtsi
 create mode 100644 arch/arm/dts/mt7986.dtsi
 create mode 100644 arch/arm/dts/mt7986a-emmc-rfb.dts
 create mode 100644 arch/arm/dts/mt7986a-rfb.dts
 create mode 100644 arch/arm/dts/mt7986a-sd-rfb.dts
 create mode 100644 arch/arm/dts/mt7986b-emmc-rfb.dts
 create mode 100644 arch/arm/dts/mt7986b-rfb.dts
 create mode 100644 arch/arm/dts/mt7986b-sd-rfb.dts
 create mode 100644 arch/arm/mach-mediatek/mt7981/Makefile
 create mode 100644 arch/arm/mach-mediatek/mt7981/init.c
 create mode 100644 arch/arm/mach-mediatek/mt7981/lowlevel_init.S
 create mode 100644 arch/arm/mach-mediatek/mt7986/Makefile
 create mode 100644 arch/arm/mach-mediatek/mt7986/init.c
 create mode 100644 arch/arm/mach-mediatek/mt7986/lowlevel_init.S
 create mode 100644 board/mediatek/mt7981/MAINTAINERS
 create mode 100644 board/mediatek/mt7981/Makefile
 create mode 100644 board/mediatek/mt7981/mt7981_rfb.c
 create mode 100644 board/mediatek/mt7986/MAINTAINERS
 create mode 100644 board/mediatek/mt7986/Makefile
 create mode 100644 board/mediatek/mt7986/mt7986_rfb.c
 create mode 100644 configs/mt7981_emmc_rfb_defconfig
 create mode 100644 configs/mt7981_rfb_defconfig
 create mode 100644 configs/mt7981_sd_rfb_defconfig
 create mode 100644 configs/mt7986_rfb_defconfig
 create mode 100644 configs/mt7986a_bpir3_emmc_defconfig
 create mode 100644 configs/mt7986a_bpir3_sd_defconfig
 create mode 100644 drivers/clk/mediatek/clk-mt7981.c
 create mode 100644 drivers/clk/mediatek/clk-mt7986.c
 create mode 100644 drivers/cpu/mtk_cpu.c
 create mode 100644 drivers/i2c/mtk_i2c.c
 create mode 100644 drivers/pinctrl/mediatek/pinctrl-mt7981.c
 create mode 100644 drivers/pinctrl/mediatek/pinctrl-mt7986.c
 create mode 100644 drivers/spi/mtk_spim.c
 create mode 100644 include/configs/mt7981.h
 create mode 100644 include/configs/mt7986.h
 create mode 100644 include/dt-bindings/clock/mt7981-clk.h
 create mode 100644 include/dt-bindings/clock/mt7986-clk.h
 create mode 100644 include/dt-bindings/pinctrl/mt65xx.h
 create mode 100644 tools/mtk_nand_headers.c
 create mode 100644 tools/mtk_nand_headers.h

-- 
2.17.1



More information about the U-Boot mailing list