mt7981: add CLT-R30B1 support (#15)

参考原厂固件,修改支持原始分区和多分区uboot
This commit is contained in:
benboguan
2023-08-26 09:39:35 +08:00
committed by GitHub
parent cb9c873362
commit a1448e2542
4 changed files with 387 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
CONFIG_PLAT_MT7981=y
CONFIG_TARGET_ALL_NO_SEC_BOOT=y
CONFIG_FLASH_DEVICE_SPIM_NAND=y
CONFIG_BGA=y
CONFIG_LOG_LEVEL_INFO=y

View File

@@ -0,0 +1,197 @@
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
#include "mt7981.dtsi"
#include <dt-bindings/gpio/gpio.h>
/ {
#address-cells = <1>;
#size-cells = <1>;
model = "mt7981-clt-r30b1";
compatible = "mediatek,mt7981", "mediatek,mt7981-rfb";
chosen {
stdout-path = &uart0;
tick-timer = &timer0;
};
config {
bootcmd = "mtkboardboot";
blink_led = "green:network";
system_led = "blue:system";
};
mtd-layout {
layout@0 {
label = "default";
// mtd layout for clt_r30b1 stock ubi or openwrt-stock/immortalwrt-stock firmware
mtdids = "nmbm0=nmbm0";
mtdparts = "nmbm0:1024k(BL2),512k(u-boot-env),2048k(Factory),2048k(FIP),64M(ubi),32M(data)";
};
layout@1 {
label = "immortalwrt-112m";
// mtd layout for immortalwrt/openwrt 112M ubi firmware
mtdids = "nmbm0=nmbm0";
mtdparts = "nmbm0:1024k(BL2),512k(u-boot-env),2048k(Factory),2048k(FIP),112M(ubi)";
};
layout@2 {
label = "qwrt";
// mtd layout for lean qwrt
mtdids = "nmbm0=nmbm0";
mtdparts = "nmbm0:1024k(BL2),512k(u-boot-env),2048k(Factory),2048k(FIP),1024k(rsv0),110M(ubi)";
};
};
gpio-keys {
compatible = "gpio-keys";
reset-button {
label = "reset";
gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
};
mesh-button {
label = "mesh";
gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
};
};
leds {
compatible = "gpio-leds";
led@0 {
label = "blue:system";
gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
};
led@1 {
label = "green:system";
gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
};
led@2 {
label = "blue:network";
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
};
led@3 {
label = "green:network";
gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
};
};
};
&uart0 {
status = "okay";
};
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&uart1_pins>;
status = "disabled";
};
&eth {
status = "okay";
mediatek,gmac-id = <0>;
phy-mode = "sgmii";
mediatek,switch = "mt7531";
reset-gpios = <&gpio 39 GPIO_ACTIVE_HIGH>;
fixed-link {
speed = <1000>;
full-duplex;
};
};
&pinctrl {
spi_flash_pins: spi0-pins-func-1 {
mux {
function = "flash";
groups = "spi0", "spi0_wp_hold";
};
conf-pu {
pins = "SPI0_CS", "SPI0_HOLD", "SPI0_WP";
drive-strength = <MTK_DRIVE_8mA>;
bias-pull-up = <MTK_PUPD_SET_R1R0_11>;
};
conf-pd {
pins = "SPI0_CLK", "SPI0_MOSI", "SPI0_MISO";
drive-strength = <MTK_DRIVE_8mA>;
bias-pull-down = <MTK_PUPD_SET_R1R0_11>;
};
};
spic_pins: spi1-pins-func-1 {
mux {
function = "spi";
groups = "spi1_1";
};
};
uart1_pins: spi1-pins-func-3 {
mux {
function = "uart";
groups = "uart1_2";
};
};
/* pin15 as pwm0 */
one_pwm_pins: one-pwm-pins {
mux {
function = "pwm";
groups = "pwm0_1";
};
};
/* pin15 as pwm0 and pin14 as pwm1 */
two_pwm_pins: two-pwm-pins {
mux {
function = "pwm";
groups = "pwm0_1", "pwm1_0";
};
};
/* pin15 as pwm0, pin14 as pwm1, pin7 as pwm2 */
three_pwm_pins: three-pwm-pins {
mux {
function = "pwm";
groups = "pwm0_1", "pwm1_0", "pwm2";
};
};
};
&spi0 {
#address-cells = <1>;
#size-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&spi_flash_pins>;
status = "okay";
must_tx;
enhance_timing;
dma_ext;
ipm_design;
support_quad;
tick_dly = <2>;
sample_sel = <0>;
spi_nand@0 {
compatible = "spi-nand";
reg = <0>;
spi-max-frequency = <52000000>;
};
};
&pwm {
pinctrl-names = "default";
pinctrl-0 = <&two_pwm_pins>;
status = "okay";
};
&watchdog {
status = "disabled";
};

View File

@@ -0,0 +1,93 @@
CONFIG_ARM=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_SYS_TEXT_BASE=0x41e00000
CONFIG_SYS_MALLOC_F_LEN=0x4000
CONFIG_NR_DRAM_BANKS=1
CONFIG_ENV_SIZE=0x80000
CONFIG_ENV_OFFSET=0x100000
CONFIG_DEFAULT_DEVICE_TREE="mt7981-clt-r30b1"
CONFIG_TARGET_MT7981=y
CONFIG_ENABLE_NAND_NMBM=y
CONFIG_MEDIATEK_BOOTMENU=y
CONFIG_MEDIATEK_BOOTMENU_DELAY=3
CONFIG_MEDIATEK_LOAD_FROM_RAM=y
CONFIG_MT7981_BOOTMENU_UBI=y
CONFIG_DEBUG_UART_BASE=0x11002000
CONFIG_DEBUG_UART_CLOCK=40000000
CONFIG_SYS_LOAD_ADDR=0x46000000
CONFIG_DEBUG_UART=y
CONFIG_BOOTDELAY=3
CONFIG_AUTOBOOT_MENU_SHOW=y
CONFIG_AUTOBOOT_MENU_MTK_SHOW=y
CONFIG_DEFAULT_FDT_FILE="mt7981-spim-nand-rfb"
CONFIG_LOGLEVEL=7
CONFIG_LOG=y
CONFIG_POLLER=y
CONFIG_HUSH_PARSER=y
CONFIG_SYS_PROMPT="MT7981> "
# CONFIG_BOOTM_NETBSD is not set
# CONFIG_BOOTM_PLAN9 is not set
# CONFIG_BOOTM_RTEMS is not set
# CONFIG_BOOTM_VXWORKS is not set
CONFIG_CMD_MEMINFO=y
# CONFIG_CMD_UNLZ4 is not set
# CONFIG_CMD_UNZIP is not set
# CONFIG_CMD_FLASH is not set
CONFIG_CMD_GPIO=y
CONFIG_CMD_GPIO_READ=y
CONFIG_CMD_PWM=y
CONFIG_CMD_MTD=y
# CONFIG_CMD_NAND_EXT is not set
CONFIG_CMD_NMBM=y
CONFIG_CMD_TFTPPUT=y
# CONFIG_CMD_NFS is not set
CONFIG_CMD_PING=y
CONFIG_CMD_LED_BLINK=y
CONFIG_CMD_SMC=y
CONFIG_CMD_MTDPARTS=y
CONFIG_MTDIDS_DEFAULT="nmbm0=nmbm0"
CONFIG_MTDPARTS_DEFAULT="nmbm0:1024k(BL2),512k(u-boot-env),2048k(Factory),2048k(FIP),64M(ubi),32M(data)"
CONFIG_CMD_UBI=y
CONFIG_CMD_GL_BTN=y
CONFIG_CMD_SHOW_MTD_LAYOUT=y
CONFIG_OF_EMBED=y
CONFIG_ENV_OVERWRITE=y
CONFIG_ENV_IS_IN_MTD=y
CONFIG_ENV_MTD_NAME="nmbm0"
CONFIG_ENV_SIZE_REDUND=0x80000
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
CONFIG_NET_RANDOM_ETHADDR=y
CONFIG_REGMAP=y
CONFIG_SYSCON=y
CONFIG_BUTTON=y
CONFIG_BUTTON_GPIO=y
CONFIG_CLK=y
# CONFIG_I2C is not set
# CONFIG_INPUT is not set
CONFIG_LED=y
CONFIG_LED_BLINK=y
CONFIG_LED_GPIO=y
# CONFIG_MMC is not set
CONFIG_DM_MTD=y
CONFIG_MTD_SPI_NAND=y
CONFIG_PHY_FIXED=y
CONFIG_DM_ETH=y
CONFIG_MEDIATEK_ETH=y
CONFIG_PINCTRL=y
CONFIG_PINCONF=y
CONFIG_PINCTRL_MT7981=y
CONFIG_POWER_DOMAIN=y
CONFIG_MTK_POWER_DOMAIN=y
CONFIG_DM_PWM=y
CONFIG_PWM_MTK=y
CONFIG_RAM=y
CONFIG_DM_SERIAL=y
CONFIG_MTK_SERIAL=y
CONFIG_SPI=y
CONFIG_DM_SPI=y
CONFIG_MTK_SPIM=y
CONFIG_TIMER=y
CONFIG_MTK_TIMER=y
CONFIG_HEXDUMP=y
CONFIG_WEBUI_FAILSAFE=y

View File

@@ -0,0 +1,92 @@
CONFIG_ARM=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_SYS_TEXT_BASE=0x41e00000
CONFIG_SYS_MALLOC_F_LEN=0x4000
CONFIG_NR_DRAM_BANKS=1
CONFIG_ENV_SIZE=0x80000
CONFIG_ENV_OFFSET=0x100000
CONFIG_DEFAULT_DEVICE_TREE="mt7981-clt-r30b1"
CONFIG_TARGET_MT7981=y
CONFIG_ENABLE_NAND_NMBM=y
CONFIG_MEDIATEK_BOOTMENU=y
CONFIG_MEDIATEK_BOOTMENU_DELAY=3
CONFIG_MEDIATEK_MULTI_MTD_LAYOUT=y
CONFIG_MEDIATEK_LOAD_FROM_RAM=y
CONFIG_MT7981_BOOTMENU_UBI=y
CONFIG_DEBUG_UART_BASE=0x11002000
CONFIG_DEBUG_UART_CLOCK=40000000
CONFIG_SYS_LOAD_ADDR=0x46000000
CONFIG_DEBUG_UART=y
CONFIG_BOOTDELAY=3
CONFIG_AUTOBOOT_MENU_SHOW=y
CONFIG_AUTOBOOT_MENU_MTK_SHOW=y
CONFIG_DEFAULT_FDT_FILE="mt7981-spim-nand-rfb"
CONFIG_LOGLEVEL=7
CONFIG_LOG=y
CONFIG_POLLER=y
CONFIG_HUSH_PARSER=y
CONFIG_SYS_PROMPT="MT7981> "
# CONFIG_BOOTM_NETBSD is not set
# CONFIG_BOOTM_PLAN9 is not set
# CONFIG_BOOTM_RTEMS is not set
# CONFIG_BOOTM_VXWORKS is not set
CONFIG_CMD_MEMINFO=y
# CONFIG_CMD_UNLZ4 is not set
# CONFIG_CMD_UNZIP is not set
# CONFIG_CMD_FLASH is not set
CONFIG_CMD_GPIO=y
CONFIG_CMD_GPIO_READ=y
CONFIG_CMD_PWM=y
CONFIG_CMD_MTD=y
# CONFIG_CMD_NAND_EXT is not set
CONFIG_CMD_NMBM=y
CONFIG_CMD_TFTPPUT=y
# CONFIG_CMD_NFS is not set
CONFIG_CMD_PING=y
CONFIG_CMD_LED_BLINK=y
CONFIG_CMD_SMC=y
CONFIG_CMD_MTDPARTS=y
CONFIG_CMD_UBI=y
CONFIG_CMD_GL_BTN=y
CONFIG_CMD_SHOW_MTD_LAYOUT=y
CONFIG_OF_EMBED=y
CONFIG_ENV_OVERWRITE=y
CONFIG_ENV_IS_IN_MTD=y
CONFIG_ENV_MTD_NAME="nmbm0"
CONFIG_ENV_SIZE_REDUND=0x80000
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
CONFIG_NET_RANDOM_ETHADDR=y
CONFIG_REGMAP=y
CONFIG_SYSCON=y
CONFIG_BUTTON=y
CONFIG_BUTTON_GPIO=y
CONFIG_CLK=y
# CONFIG_I2C is not set
# CONFIG_INPUT is not set
CONFIG_LED=y
CONFIG_LED_BLINK=y
CONFIG_LED_GPIO=y
# CONFIG_MMC is not set
CONFIG_DM_MTD=y
CONFIG_MTD_SPI_NAND=y
CONFIG_PHY_FIXED=y
CONFIG_DM_ETH=y
CONFIG_MEDIATEK_ETH=y
CONFIG_PINCTRL=y
CONFIG_PINCONF=y
CONFIG_PINCTRL_MT7981=y
CONFIG_POWER_DOMAIN=y
CONFIG_MTK_POWER_DOMAIN=y
CONFIG_DM_PWM=y
CONFIG_PWM_MTK=y
CONFIG_RAM=y
CONFIG_DM_SERIAL=y
CONFIG_MTK_SERIAL=y
CONFIG_SPI=y
CONFIG_DM_SPI=y
CONFIG_MTK_SPIM=y
CONFIG_TIMER=y
CONFIG_MTK_TIMER=y
CONFIG_HEXDUMP=y
CONFIG_WEBUI_FAILSAFE=y