
Hello,
This is the new round to add U-Boot support for MediaTek SoCs - MT7623n & MT7629, and the most of the drivers are based on mainline Linux, such as clock, timer, mmc, pinctrl, watchdog, power domain and device tree.
Current implementation was validated via the FIT image.
Thanks, Ryder
Ryder Lee (16): tools: MediaTek: add MTK boot header generation to mkimage arm: dts: MediaTek: add device tree for MT7629 arm: dts: MediaTek: add device tree for MT7623 arm: MediaTek: add basic support for MT7629 boards clk: MediaTek: add clock driver for MT7629 SoC. clk: MediaTek: add clock driver for MT7623 SoC. timer: MediaTek: add timer driver for MediaTek SoCs watchdog: MediaTek: add watchdog driver for MediaTek SoCs pinctrl: MediaTek: add pinctrl driver for MT7629 SoC pinctrl: MediaTek: add pinctrl driver for MT7623 SoC power domain: MediaTek: add power domain driver for MT7629 SoC power domain: MediaTek: add power domain driver for MT7623 SoC serial: 16550: allow the driver to support MediaTek serial ram: MediaTek: add DDR3 driver for MT7629 SoC doc: README.mediatek: Add a simple README for MediaTek MAINTAINERS: add an entry for MediaTek
Weijie Gao (2): arm: MediaTek: add basic support for MT7623 boards mmc: mtk-sd: add SD/MMC host controller driver for MT7623 SoC
MAINTAINERS | 20 + Makefile | 20 + arch/arm/Kconfig | 16 + arch/arm/Makefile | 1 + arch/arm/dts/Makefile | 4 + arch/arm/dts/mt7623.dtsi | 255 +++++ arch/arm/dts/mt7623n-bananapi-bpi-r2.dts | 207 ++++ arch/arm/dts/mt7629-rfb-u-boot.dtsi | 24 + arch/arm/dts/mt7629-rfb.dts | 70 ++ arch/arm/dts/mt7629.dtsi | 244 +++++ arch/arm/include/asm/arch-mediatek/gpio.h | 9 + arch/arm/include/asm/arch-mediatek/misc.h | 17 + arch/arm/mach-mediatek/Kconfig | 39 + arch/arm/mach-mediatek/Makefile | 7 + arch/arm/mach-mediatek/cpu.c | 34 + arch/arm/mach-mediatek/init.h | 11 + arch/arm/mach-mediatek/mt7623/Makefile | 4 + arch/arm/mach-mediatek/mt7623/init.c | 54 + arch/arm/mach-mediatek/mt7623/lowlevel_init.S | 22 + arch/arm/mach-mediatek/mt7623/preloader.h | 99 ++ arch/arm/mach-mediatek/mt7629/Makefile | 4 + arch/arm/mach-mediatek/mt7629/init.c | 128 +++ arch/arm/mach-mediatek/mt7629/lowlevel_init.S | 50 + arch/arm/mach-mediatek/spl.c | 43 + board/mediatek/mt7623/Kconfig | 13 + board/mediatek/mt7623/MAINTAINERS | 7 + board/mediatek/mt7623/Makefile | 3 + board/mediatek/mt7623/mt7623_rfb.c | 11 + board/mediatek/mt7629/Kconfig | 17 + board/mediatek/mt7629/MAINTAINERS | 7 + board/mediatek/mt7629/Makefile | 3 + board/mediatek/mt7629/mt7629_rfb.c | 11 + common/image.c | 1 + configs/mt7623n_bpir2_defconfig | 54 + configs/mt7629_rfb_defconfig | 73 ++ doc/README.mediatek | 54 + drivers/clk/Makefile | 1 + drivers/clk/mediatek/Makefile | 7 + drivers/clk/mediatek/clk-mt7623.c | 870 +++++++++++++++ drivers/clk/mediatek/clk-mt7629.c | 709 +++++++++++++ drivers/clk/mediatek/clk-mtk.c | 492 +++++++++ drivers/clk/mediatek/clk-mtk.h | 153 +++ drivers/mmc/Kconfig | 11 + drivers/mmc/Makefile | 1 + drivers/mmc/mtk-sd.c | 1394 +++++++++++++++++++++++++ drivers/pinctrl/Kconfig | 1 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/mediatek/Kconfig | 15 + drivers/pinctrl/mediatek/Makefile | 7 + drivers/pinctrl/mediatek/pinctrl-mt7623.c | 1284 +++++++++++++++++++++++ drivers/pinctrl/mediatek/pinctrl-mt7629.c | 471 +++++++++ drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 552 ++++++++++ drivers/pinctrl/mediatek/pinctrl-mtk-common.h | 183 ++++ drivers/power/domain/Kconfig | 7 + drivers/power/domain/Makefile | 1 + drivers/power/domain/mtk-power-domain.c | 406 +++++++ drivers/ram/Makefile | 1 + drivers/ram/mediatek/Makefile | 7 + drivers/ram/mediatek/ddr3-mt7629.c | 766 ++++++++++++++ drivers/serial/ns16550.c | 10 + drivers/timer/Kconfig | 7 + drivers/timer/Makefile | 1 + drivers/timer/mtk_timer.c | 85 ++ drivers/watchdog/Kconfig | 8 + drivers/watchdog/Makefile | 1 + drivers/watchdog/mtk_wdt.c | 135 +++ include/configs/mt7623.h | 59 ++ include/configs/mt7629.h | 60 ++ include/dt-bindings/clock/mt7623-clk.h | 413 ++++++++ include/dt-bindings/clock/mt7629-clk.h | 206 ++++ include/dt-bindings/power/mt7623-power.h | 19 + include/dt-bindings/power/mt7629-power.h | 13 + include/image.h | 1 + scripts/Makefile.spl | 11 + tools/Makefile | 1 + tools/mtk_image.c | 749 +++++++++++++ tools/mtk_image.h | 199 ++++ 77 files changed, 10954 insertions(+) create mode 100644 arch/arm/dts/mt7623.dtsi create mode 100644 arch/arm/dts/mt7623n-bananapi-bpi-r2.dts create mode 100644 arch/arm/dts/mt7629-rfb-u-boot.dtsi create mode 100644 arch/arm/dts/mt7629-rfb.dts create mode 100644 arch/arm/dts/mt7629.dtsi create mode 100644 arch/arm/include/asm/arch-mediatek/gpio.h create mode 100644 arch/arm/include/asm/arch-mediatek/misc.h create mode 100644 arch/arm/mach-mediatek/Kconfig create mode 100644 arch/arm/mach-mediatek/Makefile create mode 100644 arch/arm/mach-mediatek/cpu.c create mode 100644 arch/arm/mach-mediatek/init.h create mode 100644 arch/arm/mach-mediatek/mt7623/Makefile create mode 100644 arch/arm/mach-mediatek/mt7623/init.c create mode 100644 arch/arm/mach-mediatek/mt7623/lowlevel_init.S create mode 100644 arch/arm/mach-mediatek/mt7623/preloader.h create mode 100644 arch/arm/mach-mediatek/mt7629/Makefile create mode 100644 arch/arm/mach-mediatek/mt7629/init.c create mode 100644 arch/arm/mach-mediatek/mt7629/lowlevel_init.S create mode 100644 arch/arm/mach-mediatek/spl.c create mode 100644 board/mediatek/mt7623/Kconfig create mode 100644 board/mediatek/mt7623/MAINTAINERS create mode 100644 board/mediatek/mt7623/Makefile create mode 100644 board/mediatek/mt7623/mt7623_rfb.c create mode 100644 board/mediatek/mt7629/Kconfig create mode 100644 board/mediatek/mt7629/MAINTAINERS create mode 100644 board/mediatek/mt7629/Makefile create mode 100644 board/mediatek/mt7629/mt7629_rfb.c create mode 100644 configs/mt7623n_bpir2_defconfig create mode 100644 configs/mt7629_rfb_defconfig create mode 100644 doc/README.mediatek create mode 100644 drivers/clk/mediatek/Makefile create mode 100644 drivers/clk/mediatek/clk-mt7623.c create mode 100644 drivers/clk/mediatek/clk-mt7629.c create mode 100644 drivers/clk/mediatek/clk-mtk.c create mode 100644 drivers/clk/mediatek/clk-mtk.h create mode 100644 drivers/mmc/mtk-sd.c create mode 100644 drivers/pinctrl/mediatek/Kconfig create mode 100644 drivers/pinctrl/mediatek/Makefile create mode 100644 drivers/pinctrl/mediatek/pinctrl-mt7623.c create mode 100644 drivers/pinctrl/mediatek/pinctrl-mt7629.c create mode 100644 drivers/pinctrl/mediatek/pinctrl-mtk-common.c create mode 100644 drivers/pinctrl/mediatek/pinctrl-mtk-common.h create mode 100644 drivers/power/domain/mtk-power-domain.c create mode 100644 drivers/ram/mediatek/Makefile create mode 100644 drivers/ram/mediatek/ddr3-mt7629.c create mode 100644 drivers/timer/mtk_timer.c create mode 100644 drivers/watchdog/mtk_wdt.c create mode 100644 include/configs/mt7623.h create mode 100644 include/configs/mt7629.h create mode 100644 include/dt-bindings/clock/mt7623-clk.h create mode 100644 include/dt-bindings/clock/mt7629-clk.h create mode 100644 include/dt-bindings/power/mt7623-power.h create mode 100644 include/dt-bindings/power/mt7629-power.h create mode 100644 tools/mtk_image.c create mode 100644 tools/mtk_image.h