[U-Boot] [PATCH] mips: rename arch mt7620 to mt7628
Weijie Gao
weijie.gao at mediatek.com
Mon Apr 29 09:28:00 UTC 2019
On Mon, 2019-04-29 at 07:08 +0200, Stefan Roese wrote:
> On 28.04.19 11:38, Weijie Gao wrote:
> > The MediaTek MT7620 and MT7628 SoCs are different.
> > Although they use the same memory controller, the lowlevel code (CPU PLL)
> > and other peripherals they use are totally different. Which means they
> > should use seperate mach directories.
>
> s/seperate/separate
>
> > Currently the mach mt7620 contains only architecture code of MT7628.
> > In case we add real arch support of MT7620 in the future, the arch should
> > be renamed to mt7628, including both Kconfig files and directories.
> > Other files affected are also modified.
>
> Perhaps it would be possible to support both SoC's (MT7620 and MT7628/88)
> in one mach directory? Frankly I don't know the differences in detail, so
> its your call.
>
> > Cc: Stefan Roese <sr at denx.de>
> > Cc: Daniel Schwierzeck <daniel.schwierzeck at gmail.com>
> > Signed-off-by: Weijie Gao <weijie.gao at mediatek.com>
> > ---
> > arch/mips/Kconfig | 6 +++---
> > arch/mips/Makefile | 2 +-
> > arch/mips/dts/Makefile | 2 +-
> > arch/mips/{mach-mt7620 => mach-mt7628}/Kconfig | 16 ++++++++--------
> > arch/mips/{mach-mt7620 => mach-mt7628}/Makefile | 0
> > arch/mips/{mach-mt7620 => mach-mt7628}/cpu.c | 0
> > .../{mach-mt7620 => mach-mt7628}/ddr_calibrate.c | 0
> > .../{mach-mt7620 => mach-mt7628}/lowlevel_init.S | 0
> > arch/mips/{mach-mt7620 => mach-mt7628}/mt76xx.h | 0
> > configs/linkit-smart-7688-ram_defconfig | 2 +-
> > configs/linkit-smart-7688_defconfig | 2 +-
>
> You missed updating the gardena defconfig files:
>
> $ git grep MT7620
> configs/gardena-smart-gateway-mt7688-ram_defconfig:CONFIG_ARCH_MT7620=y
> configs/gardena-smart-gateway-mt7688_defconfig:CONFIG_ARCH_MT7620=y
>
> Other than this:
>
> Reviewed-by: Stefan Roese <sr at denx.de>
>
> Thanks,
> Stefan
>
> > drivers/gpio/Kconfig | 2 +-
> > drivers/net/Kconfig | 2 +-
> > drivers/spi/Kconfig | 2 +-
> > drivers/watchdog/Kconfig | 2 +-
> > 15 files changed, 19 insertions(+), 19 deletions(-)
> > rename arch/mips/{mach-mt7620 => mach-mt7628}/Kconfig (92%)
> > rename arch/mips/{mach-mt7620 => mach-mt7628}/Makefile (100%)
> > rename arch/mips/{mach-mt7620 => mach-mt7628}/cpu.c (100%)
> > rename arch/mips/{mach-mt7620 => mach-mt7628}/ddr_calibrate.c (100%)
> > rename arch/mips/{mach-mt7620 => mach-mt7628}/lowlevel_init.S (100%)
> > rename arch/mips/{mach-mt7620 => mach-mt7628}/mt76xx.h (100%)
> >
> > diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> > index 194f4f349e..fc861c8273 100644
> > --- a/arch/mips/Kconfig
> > +++ b/arch/mips/Kconfig
> > @@ -74,8 +74,8 @@ config ARCH_BMIPS
> > select SYSRESET
> > imply CMD_DM
> >
> > -config ARCH_MT7620
> > - bool "Support MT7620/7688 SoCs"
> > +config ARCH_MT7628
> > + bool "Support MediaTek MT7628/7688 SoCs"
> > imply CMD_DM
> > select DISPLAY_CPUINFO
> > select DM
> > @@ -153,7 +153,7 @@ source "arch/mips/mach-mscc/Kconfig"
> > source "arch/mips/mach-bmips/Kconfig"
> > source "arch/mips/mach-jz47xx/Kconfig"
> > source "arch/mips/mach-pic32/Kconfig"
> > -source "arch/mips/mach-mt7620/Kconfig"
> > +source "arch/mips/mach-mt7628/Kconfig"
> >
> > if MIPS
> >
> > diff --git a/arch/mips/Makefile b/arch/mips/Makefile
> > index 029d290f1e..da5b9c0e74 100644
> > --- a/arch/mips/Makefile
> > +++ b/arch/mips/Makefile
> > @@ -15,7 +15,7 @@ machine-$(CONFIG_ARCH_ATH79) += ath79
> > machine-$(CONFIG_ARCH_BMIPS) += bmips
> > machine-$(CONFIG_ARCH_JZ47XX) += jz47xx
> > machine-$(CONFIG_MACH_PIC32) += pic32
> > -machine-$(CONFIG_ARCH_MT7620) += mt7620
> > +machine-$(CONFIG_ARCH_MT7628) += mt7628
> > machine-$(CONFIG_ARCH_MSCC) += mscc
> >
> > machdirs := $(patsubst %,arch/mips/mach-%/,$(machine-y))
> > diff --git a/arch/mips/dts/Makefile b/arch/mips/dts/Makefile
> > index 3522e6cdc8..1c4ad5207d 100644
> > --- a/arch/mips/dts/Makefile
> > +++ b/arch/mips/dts/Makefile
> > @@ -1,6 +1,6 @@
> > # SPDX-License-Identifier: GPL-2.0+
> >
> > -dtb-$(CONFIG_ARCH_MT7620) += \
> > +dtb-$(CONFIG_ARCH_MT7628) += \
> > gardena-smart-gateway-mt7688.dtb \
> > linkit-smart-7688.dtb
> > dtb-$(CONFIG_TARGET_AP121) += ap121.dtb
> > diff --git a/arch/mips/mach-mt7620/Kconfig b/arch/mips/mach-mt7628/Kconfig
> > similarity index 92%
> > rename from arch/mips/mach-mt7620/Kconfig
> > rename to arch/mips/mach-mt7628/Kconfig
> > index a983443999..6a46640479 100644
> > --- a/arch/mips/mach-mt7620/Kconfig
> > +++ b/arch/mips/mach-mt7628/Kconfig
> > @@ -1,20 +1,20 @@
> > -menu "MediaTek MIPS platforms"
> > - depends on ARCH_MT7620
> > +menu "MediaTek MT7628/7688 platforms"
> > + depends on ARCH_MT7628
> >
> > config SYS_MALLOC_F_LEN
> > default 0x1000
> >
> > config SYS_SOC
> > - default "mt7620" if SOC_MT7620
> > + default "mt7628" if SOC_MT7628
> >
> > choice
> > prompt "MediaTek MIPS SoC select"
> >
> > -config SOC_MT7620
> > - bool "MT7620/8"
> > +config SOC_MT7628
> > + bool "MT7628/7688"
> > select MIPS_L1_CACHE_SHIFT_5
> > help
> > - This supports MediaTek MIPS MT7620 family.
> > + This supports MediaTek MT7628/7688 SoCs.
> >
> > endchoice
> >
> > @@ -23,7 +23,7 @@ choice
> >
> > config BOARD_GARDENA_SMART_GATEWAY_MT7688
> > bool "GARDENA smart Gateway"
> > - depends on SOC_MT7620
> > + depends on SOC_MT7628
> > select BOARD_LATE_INIT
> > select SUPPORTS_BOOT_RAM
> > help
> > @@ -32,7 +32,7 @@ config BOARD_GARDENA_SMART_GATEWAY_MT7688
> >
> > config BOARD_LINKIT_SMART_7688
> > bool "LinkIt Smart 7688"
> > - depends on SOC_MT7620
> > + depends on SOC_MT7628
> > select SUPPORTS_BOOT_RAM
> > help
> > Seeed LinkIt Smart 7688 boards have a MT7688 SoC with 128 MiB of RAM
> > diff --git a/arch/mips/mach-mt7620/Makefile b/arch/mips/mach-mt7628/Makefile
> > similarity index 100%
> > rename from arch/mips/mach-mt7620/Makefile
> > rename to arch/mips/mach-mt7628/Makefile
> > diff --git a/arch/mips/mach-mt7620/cpu.c b/arch/mips/mach-mt7628/cpu.c
> > similarity index 100%
> > rename from arch/mips/mach-mt7620/cpu.c
> > rename to arch/mips/mach-mt7628/cpu.c
> > diff --git a/arch/mips/mach-mt7620/ddr_calibrate.c b/arch/mips/mach-mt7628/ddr_calibrate.c
> > similarity index 100%
> > rename from arch/mips/mach-mt7620/ddr_calibrate.c
> > rename to arch/mips/mach-mt7628/ddr_calibrate.c
> > diff --git a/arch/mips/mach-mt7620/lowlevel_init.S b/arch/mips/mach-mt7628/lowlevel_init.S
> > similarity index 100%
> > rename from arch/mips/mach-mt7620/lowlevel_init.S
> > rename to arch/mips/mach-mt7628/lowlevel_init.S
> > diff --git a/arch/mips/mach-mt7620/mt76xx.h b/arch/mips/mach-mt7628/mt76xx.h
> > similarity index 100%
> > rename from arch/mips/mach-mt7620/mt76xx.h
> > rename to arch/mips/mach-mt7628/mt76xx.h
> > diff --git a/configs/linkit-smart-7688-ram_defconfig b/configs/linkit-smart-7688-ram_defconfig
> > index 649db0f67d..6705740fdc 100644
> > --- a/configs/linkit-smart-7688-ram_defconfig
> > +++ b/configs/linkit-smart-7688-ram_defconfig
> > @@ -1,6 +1,6 @@
> > CONFIG_MIPS=y
> > CONFIG_SYS_TEXT_BASE=0x80010000
> > -CONFIG_ARCH_MT7620=y
> > +CONFIG_ARCH_MT7628=y
> > CONFIG_BOARD_LINKIT_SMART_7688=y
> > # CONFIG_MIPS_BOOT_ENV_LEGACY is not set
> > CONFIG_MIPS_BOOT_FDT=y
> > diff --git a/configs/linkit-smart-7688_defconfig b/configs/linkit-smart-7688_defconfig
> > index 41aa900e56..d276114a14 100644
> > --- a/configs/linkit-smart-7688_defconfig
> > +++ b/configs/linkit-smart-7688_defconfig
> > @@ -1,6 +1,6 @@
> > CONFIG_MIPS=y
> > CONFIG_SYS_TEXT_BASE=0x9c000000
> > -CONFIG_ARCH_MT7620=y
> > +CONFIG_ARCH_MT7628=y
> > CONFIG_BOARD_LINKIT_SMART_7688=y
> > CONFIG_BOOT_ROM=y
> > CONFIG_ONBOARD_DDR2_SIZE_1024MBIT=y
> > diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
> > index b3e4ecc50e..131ea11cec 100644
> > --- a/drivers/gpio/Kconfig
> > +++ b/drivers/gpio/Kconfig
> > @@ -351,7 +351,7 @@ config MPC8XXX_GPIO
> >
> > config MT7621_GPIO
> > bool "MediaTek MT7621 GPIO driver"
> > - depends on DM_GPIO && ARCH_MT7620
> > + depends on DM_GPIO && ARCH_MT7628
> > default y
> > help
> > Say yes here to support MediaTek MT7621 compatible GPIOs.
> > diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
> > index 6e436b56ab..0c0932f63a 100644
> > --- a/drivers/net/Kconfig
> > +++ b/drivers/net/Kconfig
> > @@ -269,7 +269,7 @@ config MACB_ZYNQ
> >
> > config MT7628_ETH
> > bool "MediaTek MT7628 Ethernet Interface"
> > - depends on ARCH_MT7620
> > + depends on ARCH_MT7628
> > help
> > The MediaTek MT7628 ethernet interface is used on MT7628 and
> > MT7688 based boards.
> > diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
> > index fb794adae7..b2b5061490 100644
> > --- a/drivers/spi/Kconfig
> > +++ b/drivers/spi/Kconfig
> > @@ -133,7 +133,7 @@ config MPC8XX_SPI
> >
> > config MT7621_SPI
> > bool "MediaTek MT7621 SPI driver"
> > - depends on ARCH_MT7620
> > + depends on ARCH_MT7628
> > help
> > Enable the MT7621 SPI driver. This driver can be used to access
> > the SPI NOR flash on platforms embedding this Ralink / MediaTek
> > diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> > index 3bce0aa0b8..0f7d827581 100644
> > --- a/drivers/watchdog/Kconfig
> > +++ b/drivers/watchdog/Kconfig
> > @@ -143,7 +143,7 @@ config WDT_AT91
> >
> > config WDT_MT7621
> > bool "MediaTek MT7621 watchdog timer support"
> > - depends on WDT && ARCH_MT7620
> > + depends on WDT && ARCH_MT7628
> > help
> > Select this to enable Ralink / Mediatek watchdog timer,
> > which can be found on some MediaTek chips.
> >
>
> Viele Grüße,
> Stefan
>
Dear Stefan,
Thanks for pointing out the missing files.
Here is the summary of HW components needed by u-boot for MT7620 and
MT7628:
L1 data cache: MT7620 can not lock it.
MT7628 uses it to do DDR calibration.
CPU frequency (PLL): MT7620 can change it. MT7628 can't.
The PLL registers are different.
DRAM controller: Near the same.
MT7620 can't do calibration.
MT7628 has extra PAD configurations.
GPIO controller: Not the same IP core.
SPI controller: Not the same IP core.
Frame engine: Similar IP core, different generation.
Built-in Ethernet switch: Not the same IP core.
So I insist to split them into two mach directory.
Best Regards,
Weijie
More information about the U-Boot
mailing list