-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
5 changed files
with
357 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
324 changes: 324 additions & 0 deletions
324
...s/mediatek_filogic/diy/package/boot/uboot-mediatek/patches/440-add-jdcloud_re-cp-03.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,324 @@ | ||
--- /dev/null | ||
+++ b/configs/mt7986a_jdcloud_re-cp-03_defconfig | ||
@@ -0,0 +1,112 @@ | ||
+CONFIG_ARM=y | ||
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y | ||
+CONFIG_POSITION_INDEPENDENT=y | ||
+CONFIG_ARCH_MEDIATEK=y | ||
+CONFIG_TEXT_BASE=0x41e00000 | ||
+CONFIG_SYS_MALLOC_F_LEN=0x4000 | ||
+CONFIG_NR_DRAM_BANKS=1 | ||
+CONFIG_ENV_SIZE=0x40000 | ||
+CONFIG_ENV_OFFSET=0x400000 | ||
+CONFIG_DEFAULT_DEVICE_TREE="mt7986a-jdcloud_re-cp-03" | ||
+CONFIG_SYS_PROMPT="MT7986> " | ||
+CONFIG_OF_LIBFDT_OVERLAY=y | ||
+CONFIG_TARGET_MT7986=y | ||
+CONFIG_PRE_CON_BUF_ADDR=0x4007EF00 | ||
+CONFIG_DEBUG_UART_BASE=0x11002000 | ||
+CONFIG_DEBUG_UART_CLOCK=40000000 | ||
+CONFIG_ENV_OFFSET_REDUND=0x440000 | ||
+CONFIG_SYS_LOAD_ADDR=0x46000000 | ||
+CONFIG_DEBUG_UART=y | ||
+CONFIG_FIT=y | ||
+CONFIG_BOOTDELAY=30 | ||
+CONFIG_AUTOBOOT_KEYED=y | ||
+CONFIG_AUTOBOOT_MENU_SHOW=y | ||
+CONFIG_DEFAULT_FDT_FILE="mediatek/mt7986a-jdcloud_re-cp-03.dtb" | ||
+CONFIG_LOGLEVEL=7 | ||
+CONFIG_PRE_CONSOLE_BUFFER=y | ||
+CONFIG_LOG=y | ||
+CONFIG_BOARD_LATE_INIT=y | ||
+CONFIG_HUSH_PARSER=y | ||
+CONFIG_CMD_CPU=y | ||
+CONFIG_CMD_LICENSE=y | ||
+CONFIG_CMD_BOOTMENU=y | ||
+CONFIG_CMD_ASKENV=y | ||
+CONFIG_CMD_ERASEENV=y | ||
+CONFIG_CMD_ENV_FLAGS=y | ||
+CONFIG_CMD_STRINGS=y | ||
+CONFIG_CMD_DM=y | ||
+CONFIG_CMD_GPIO=y | ||
+CONFIG_CMD_PWM=y | ||
+CONFIG_CMD_GPT=y | ||
+CONFIG_CMD_MMC=y | ||
+CONFIG_CMD_PART=y | ||
+CONFIG_CMD_DHCP=y | ||
+CONFIG_CMD_TFTPSRV=y | ||
+CONFIG_CMD_RARP=y | ||
+CONFIG_CMD_PING=y | ||
+CONFIG_CMD_CDP=y | ||
+CONFIG_CMD_SNTP=y | ||
+CONFIG_CMD_DNS=y | ||
+CONFIG_CMD_LINK_LOCAL=y | ||
+CONFIG_CMD_PXE=y | ||
+CONFIG_CMD_CACHE=y | ||
+CONFIG_CMD_PSTORE=y | ||
+CONFIG_CMD_PSTORE_MEM_ADDR=0x42ff0000 | ||
+CONFIG_CMD_UUID=y | ||
+CONFIG_CMD_HASH=y | ||
+CONFIG_CMD_SMC=y | ||
+CONFIG_CMD_EXT4=y | ||
+CONFIG_CMD_FAT=y | ||
+CONFIG_CMD_FS_GENERIC=y | ||
+CONFIG_CMD_FS_UUID=y | ||
+CONFIG_OF_EMBED=y | ||
+CONFIG_ENV_OVERWRITE=y | ||
+CONFIG_ENV_IS_IN_MMC=y | ||
+CONFIG_SYS_REDUNDAND_ENVIRONMENT=y | ||
+CONFIG_SYS_RELOC_GD_ENV_ADDR=y | ||
+CONFIG_USE_DEFAULT_ENV_FILE=y | ||
+CONFIG_DEFAULT_ENV_FILE="jdcloud_re-cp-03_env" | ||
+CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y | ||
+CONFIG_VERSION_VARIABLE=y | ||
+CONFIG_NET_RANDOM_ETHADDR=y | ||
+CONFIG_NETCONSOLE=y | ||
+CONFIG_USE_IPADDR=y | ||
+CONFIG_IPADDR="192.168.1.1" | ||
+CONFIG_USE_SERVERIP=y | ||
+CONFIG_SERVERIP="192.168.1.254" | ||
+CONFIG_REGMAP=y | ||
+CONFIG_SYSCON=y | ||
+CONFIG_BUTTON=y | ||
+CONFIG_BUTTON_GPIO=y | ||
+CONFIG_CLK=y | ||
+CONFIG_GPIO_HOG=y | ||
+CONFIG_LED=y | ||
+CONFIG_LED_BLINK=y | ||
+CONFIG_LED_GPIO=y | ||
+CONFIG_SUPPORT_EMMC_BOOT=y | ||
+CONFIG_MMC_HS200_SUPPORT=y | ||
+CONFIG_MMC_MTK=y | ||
+CONFIG_PHY_FIXED=y | ||
+CONFIG_DM_MDIO=y | ||
+CONFIG_MEDIATEK_ETH=y | ||
+CONFIG_PHY=y | ||
+CONFIG_PHY_MTK_TPHY=y | ||
+CONFIG_PINCTRL=y | ||
+CONFIG_PINCONF=y | ||
+CONFIG_PINCTRL_MT7622=y | ||
+CONFIG_PINCTRL_MT7986=y | ||
+CONFIG_POWER_DOMAIN=y | ||
+CONFIG_MTK_POWER_DOMAIN=y | ||
+CONFIG_DM_REGULATOR=y | ||
+CONFIG_DM_REGULATOR_FIXED=y | ||
+CONFIG_DM_REGULATOR_GPIO=y | ||
+CONFIG_DM_PWM=y | ||
+CONFIG_PWM_MTK=y | ||
+CONFIG_RAM=y | ||
+CONFIG_SCSI=y | ||
+CONFIG_DM_SCSI=y | ||
+CONFIG_DM_SERIAL=y | ||
+CONFIG_MTK_SERIAL=y | ||
+CONFIG_ZSTD=y | ||
+CONFIG_HEXDUMP=y | ||
+CONFIG_LMB_MAX_REGIONS=64 | ||
--- /dev/null | ||
+++ b/arch/arm/dts/mt7986a-jdcloud_re-cp-03.dts | ||
@@ -0,0 +1,148 @@ | ||
+// SPDX-License-Identifier: GPL-2.0-or-later | ||
+ | ||
+/dts-v1/; | ||
+#include <dt-bindings/input/linux-event-codes.h> | ||
+#include "mt7986.dtsi" | ||
+#include <dt-bindings/gpio/gpio.h> | ||
+ | ||
+/ { | ||
+ #address-cells = <1>; | ||
+ #size-cells = <1>; | ||
+ model = "JDCloud RE-CP-03"; | ||
+ compatible = "mediatek,mt7986", "mediatek,mt7986-rfb"; | ||
+ | ||
+ chosen { | ||
+ stdout-path = &uart0; | ||
+ tick-timer = &timer0; | ||
+ }; | ||
+ | ||
+ memory@40000000 { | ||
+ device_type = "memory"; | ||
+ reg = <0x40000000 0x40000000>; | ||
+ }; | ||
+ | ||
+ gpio-keys { | ||
+ compatible = "gpio-keys"; | ||
+ | ||
+ button-joylink { | ||
+ label = "joylink"; | ||
+ linux,code = <BTN_0>; | ||
+ gpios = <&gpio 10 GPIO_ACTIVE_LOW>; | ||
+ }; | ||
+ | ||
+ button-reset { | ||
+ label = "reset"; | ||
+ linux,code = <KEY_RESTART>; | ||
+ gpios = <&gpio 9 GPIO_ACTIVE_LOW>; | ||
+ }; | ||
+ }; | ||
+ | ||
+ gpio-leds { | ||
+ compatible = "gpio-leds"; | ||
+ | ||
+ led-0 { | ||
+ label = "blue:status"; | ||
+ gpios = <&gpio 7 GPIO_ACTIVE_HIGH>; | ||
+ default-state = "off"; | ||
+ }; | ||
+ | ||
+ led-1 { | ||
+ label = "red:status"; | ||
+ gpios = <&gpio 11 GPIO_ACTIVE_HIGH>; | ||
+ default-state = "on"; | ||
+ }; | ||
+ | ||
+ led-2 { | ||
+ label = "green:status"; | ||
+ gpios = <&gpio 12 GPIO_ACTIVE_LOW>; | ||
+ default-state = "off"; | ||
+ }; | ||
+ }; | ||
+ | ||
+ reg_1p8v: regulator-1p8v { | ||
+ compatible = "regulator-fixed"; | ||
+ regulator-name = "fixed-1.8V"; | ||
+ regulator-min-microvolt = <1800000>; | ||
+ regulator-max-microvolt = <1800000>; | ||
+ regulator-boot-on; | ||
+ regulator-always-on; | ||
+ }; | ||
+ | ||
+ reg_3p3v: regulator-3p3v { | ||
+ compatible = "regulator-fixed"; | ||
+ regulator-name = "fixed-3.3V"; | ||
+ regulator-min-microvolt = <3300000>; | ||
+ regulator-max-microvolt = <3300000>; | ||
+ regulator-boot-on; | ||
+ regulator-always-on; | ||
+ }; | ||
+}; | ||
+ | ||
+ð { | ||
+ status = "okay"; | ||
+ mediatek,gmac-id = <0>; | ||
+ phy-mode = "2500base-x"; | ||
+ mediatek,switch = "mt7531"; | ||
+ reset-gpios = <&gpio 5 GPIO_ACTIVE_HIGH>; | ||
+ | ||
+ fixed-link { | ||
+ speed = <2500>; | ||
+ full-duplex; | ||
+ }; | ||
+}; | ||
+ | ||
+&mmc0 { | ||
+ bus-width = <8>; | ||
+ cap-mmc-highspeed; | ||
+ cap-mmc-hw-reset; | ||
+ max-frequency = <200000000>; | ||
+ non-removable; | ||
+ pinctrl-names = "default"; | ||
+ pinctrl-0 = <&mmc0_pins_default>; | ||
+ vmmc-supply = <®_3p3v>; | ||
+ vqmmc-supply = <®_1p8v>; | ||
+ status = "okay"; | ||
+}; | ||
+ | ||
+&pinctrl { | ||
+ mmc0_pins_default: mmc0default { | ||
+ mux { | ||
+ function = "flash"; | ||
+ groups = "emmc_51"; | ||
+ }; | ||
+ | ||
+ conf-cmd-dat { | ||
+ pins = "EMMC_DATA_0", "EMMC_DATA_1", "EMMC_DATA_2", | ||
+ "EMMC_DATA_3", "EMMC_DATA_4", "EMMC_DATA_5", | ||
+ "EMMC_DATA_6", "EMMC_DATA_7", "EMMC_CMD"; | ||
+ input-enable; | ||
+ drive-strength = <MTK_DRIVE_4mA>; | ||
+ bias-pull-up = <MTK_PUPD_SET_R1R0_01>; | ||
+ }; | ||
+ | ||
+ conf-clk { | ||
+ pins = "EMMC_CK"; | ||
+ drive-strength = <MTK_DRIVE_6mA>; | ||
+ bias-pull-down = <MTK_PUPD_SET_R1R0_10>; | ||
+ }; | ||
+ | ||
+ conf-dsl { | ||
+ pins = "EMMC_DSL"; | ||
+ bias-pull-down = <MTK_PUPD_SET_R1R0_10>; | ||
+ }; | ||
+ | ||
+ conf-rst { | ||
+ pins = "EMMC_RSTB"; | ||
+ drive-strength = <MTK_DRIVE_4mA>; | ||
+ bias-pull-up = <MTK_PUPD_SET_R1R0_01>; | ||
+ }; | ||
+ }; | ||
+}; | ||
+ | ||
+&uart0 { | ||
+ status = "okay"; | ||
+}; | ||
+ | ||
+&watchdog { | ||
+ status = "disabled"; | ||
+}; | ||
--- /dev/null | ||
+++ b/jdcloud_re-cp-03_env | ||
@@ -0,0 +1,55 @@ | ||
+ipaddr=192.168.1.1 | ||
+serverip=192.168.1.254 | ||
+loadaddr=0x46000000 | ||
+console=earlycon=uart8250,mmio32,0x11002000 console=ttyS0 | ||
+bootargs=root=/dev/mmcblk0p65 | ||
+bootcmd=if pstore check ; then run boot_recovery ; else run boot_emmc ; fi | ||
+bootconf=config-1 | ||
+bootdelay=0 | ||
+bootfile=immortalwrt-mediatek-filogic-jdcloud_re-cp-03-initramfs-recovery.itb | ||
+bootfile_bl2=immortalwrt-mediatek-filogic-jdcloud_re-cp-03-preloader.bin | ||
+bootfile_fip=immortalwrt-mediatek-filogic-jdcloud_re-cp-03-bl31-uboot.fip | ||
+bootfile_upg=immortalwrt-mediatek-filogic-jdcloud_re-cp-03-squashfs-sysupgrade.itb | ||
+bootled_pwr=red:status | ||
+bootled_rec=blue:status | ||
+bootmenu_confirm_return=askenv - Press ENTER to return to menu ; bootmenu 60 | ||
+bootmenu_default=0 | ||
+bootmenu_delay=0 | ||
+bootmenu_title= [0;34m( ( ( [1;39mOpenWrt[0;34m ) ) ) | ||
+bootmenu_0=Initialize environment.=run _firstboot | ||
+bootmenu_0d=Run default boot command.=run boot_default | ||
+bootmenu_1=Boot system via TFTP.=run boot_tftp ; run bootmenu_confirm_return | ||
+bootmenu_2=Boot production system from eMMC.=run boot_production ; run bootmenu_confirm_return | ||
+bootmenu_3=Boot recovery system from eMMC.=run boot_recovery ; run bootmenu_confirm_return | ||
+bootmenu_4=Load production system via TFTP then write to eMMC.=setenv noboot 1 ; setenv replacevol 1 ; run boot_tftp_production ; setenv noboot ; setenv replacevol ; run bootmenu_confirm_return | ||
+bootmenu_5=Load recovery system via TFTP then write to eMMC.=setenv noboot 1 ; setenv replacevol 1 ; run boot_tftp_recovery ; setenv noboot ; setenv replacevol ; run bootmenu_confirm_return | ||
+bootmenu_6=[31mLoad BL31+U-Boot FIP via TFTP then write to eMMC.[0m=run boot_tftp_write_fip ; run bootmenu_confirm_return | ||
+bootmenu_7=[31mLoad BL2 preloader via TFTP then write to eMMC.[0m=run boot_tftp_write_bl2 ; run bootmenu_confirm_return | ||
+bootmenu_8=Reboot.=reset | ||
+bootmenu_9=Reset all settings to factory defaults.=run reset_factory ; reset | ||
+boot_first=if button reset ; then led $bootled_rec on ; run boot_tftp_recovery ; setenv flag_recover 1 ; run boot_default ; fi ; bootmenu | ||
+boot_default=if env exists flag_recover ; then else run bootcmd ; fi ; run boot_recovery ; setenv replacevol 1 ; run boot_tftp_forever | ||
+boot_production=led $bootled_pwr on ; run emmc_read_production && bootm $loadaddr#$bootconf ; led $bootled_pwr off | ||
+boot_recovery=led $bootled_rec on ; run emmc_read_recovery && bootm $loadaddr#$bootconf ; led $bootled_rec off | ||
+boot_emmc=run boot_production ; run boot_recovery | ||
+boot_tftp_forever=led $bootled_rec on ; while true ; do run boot_tftp_recovery ; sleep 1 ; done | ||
+boot_tftp_production=tftpboot $loadaddr $bootfile_upg && env exists replacevol && iminfo $loadaddr && run emmc_write_production ; if env exists noboot ; then else bootm $loadaddr#$bootconf ; fi | ||
+boot_tftp_recovery=tftpboot $loadaddr $bootfile && env exists replacevol && iminfo $loadaddr && run emmc_write_recovery ; if env exists noboot ; then else bootm $loadaddr#$bootconf ; fi | ||
+boot_tftp_write_fip=tftpboot $loadaddr $bootfile_fip && run emmc_write_fip | ||
+boot_tftp_write_bl2=tftpboot $loadaddr $bootfile_bl2 && run emmc_write_bl2 | ||
+boot_tftp=tftpboot $loadaddr $bootfile && bootm $loadaddr#$bootconf | ||
+mmc_write_vol=imszb $loadaddr image_size && test 0x$image_size -le 0x$part_size && mmc erase 0x$part_addr 0x$image_size && mmc write $loadaddr 0x$part_addr 0x$image_size | ||
+mmc_read_vol=mmc read $loadaddr $part_addr 0x100 && imszb $loadaddr image_size && test 0x$image_size -le 0x$part_size && mmc read $loadaddr 0x$part_addr 0x$image_size && setexpr filesize $image_size * 0x200 | ||
+part_default=production | ||
+part_recovery=recovery | ||
+reset_factory=eraseenv && reset | ||
+emmc_read_production=part start mmc 0 $part_default part_addr && part size mmc 0 $part_default part_size && run mmc_read_vol | ||
+emmc_read_recovery=part start mmc 0 $part_recovery part_addr && part size mmc 0 $part_recovery part_size && run mmc_read_vol | ||
+emmc_write_bl2=mmc partconf 0 1 1 1 && mmc erase 0x0 0x400 && mmc write $fileaddr 0x0 0x400 ; mmc partconf 0 1 1 0 | ||
+emmc_write_fip=mmc erase 0x3400 0x2000 && mmc write $fileaddr 0x3400 0x2000 && mmc erase 0x2000 0x800 | ||
+emmc_write_production=part start mmc 0 $part_default part_addr && part size mmc 0 $part_default part_size && run mmc_write_vol | ||
+emmc_write_recovery=part start mmc 0 $part_recovery part_addr && part size mmc 0 $part_recovery part_size && run mmc_write_vol | ||
+_init_env=setenv _init_env ; setenv _create_env ; saveenv ; saveenv | ||
+_firstboot=setenv _firstboot ; run _switch_to_menu ; run _init_env ; run boot_first | ||
+_switch_to_menu=setenv _switch_to_menu ; setenv bootdelay 3 ; setenv bootmenu_delay 3 ; setenv bootmenu_0 $bootmenu_0d ; setenv bootmenu_0d ; run _bootmenu_update_title | ||
+_bootmenu_update_title=setenv _bootmenu_update_title ; setenv bootmenu_title "$bootmenu_title [33m$ver[0m" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters