mirror of
https://github.com/hanwckf/immortalwrt-mt798x.git
synced 2025-01-07 01:53:34 +08:00
mediatek: add JDCloud RE-CP-03 support (#183)
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
parent
02d553250f
commit
cbfb74a070
@ -713,6 +713,7 @@ setup_model()
|
||||
bananapi,bpi-r3mini* |\
|
||||
netcore,n60 |\
|
||||
glinet,gl-mt6000|\
|
||||
jdcloud,re-cp-03 |\
|
||||
tplink,tl-xdr608* |\
|
||||
*7986*)
|
||||
MT7986_whnat $num_of_wifi
|
||||
|
@ -0,0 +1,289 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
/dts-v1/;
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
#include "mt7986a.dtsi"
|
||||
#include "mt7986a-pinctrl.dtsi"
|
||||
|
||||
/ {
|
||||
model = "JDCloud RE-CP-03";
|
||||
compatible = "jdcloud,re-cp-03", "mediatek,mt7986a";
|
||||
|
||||
aliases {
|
||||
led-boot = &red_led;
|
||||
led-failsafe = &red_led;
|
||||
led-running = &green_led;
|
||||
led-upgrade = &green_led;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyS0,115200n1 loglevel=8 \
|
||||
earlycon=uart8250,mmio32,0x11002000 \
|
||||
root=PARTLABEL=rootfs rootwait rootfstype=squashfs,f2fs";
|
||||
};
|
||||
|
||||
memory {
|
||||
reg = <0 0x40000000 0 0x40000000>;
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
button-joylink {
|
||||
label = "joylink";
|
||||
linux,code = <BTN_0>;
|
||||
gpios = <&pio 10 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
button-reset {
|
||||
label = "reset";
|
||||
linux,code = <KEY_RESTART>;
|
||||
gpios = <&pio 9 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
gpio-leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led-0 {
|
||||
label = "blue:status";
|
||||
gpios = <&pio 7 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
red_led: led-1 {
|
||||
label = "red:status";
|
||||
gpios = <&pio 11 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
green_led: led-2 {
|
||||
label = "green:status";
|
||||
gpios = <&pio 12 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
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";
|
||||
|
||||
gmac0: mac@0 {
|
||||
compatible = "mediatek,eth-mac";
|
||||
reg = <0>;
|
||||
phy-mode = "2500base-x";
|
||||
|
||||
fixed-link {
|
||||
speed = <2500>;
|
||||
full-duplex;
|
||||
pause;
|
||||
};
|
||||
};
|
||||
|
||||
gmac1: mac@1 {
|
||||
compatible = "mediatek,eth-mac";
|
||||
reg = <1>;
|
||||
phy-mode = "2500base-x";
|
||||
|
||||
ext-phy-reg = <6>;
|
||||
ext-phy-reset-gpios = <&pio 6 0>;
|
||||
|
||||
fixed-link {
|
||||
speed = <2500>;
|
||||
full-duplex;
|
||||
pause;
|
||||
};
|
||||
};
|
||||
|
||||
mdio: mdio-bus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&hnat {
|
||||
mtketh-wan = "eth1";
|
||||
mtketh-lan = "lan";
|
||||
mtketh-max-gmac = <2>;
|
||||
mtketh-ppe-num = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&mdio {
|
||||
switch: switch@1f {
|
||||
compatible = "mediatek,mt7531";
|
||||
reg = <31>;
|
||||
reset-gpios = <&pio 5 GPIO_ACTIVE_HIGH>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
interrupt-parent = <&pio>;
|
||||
interrupts = <66 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&mmc0 {
|
||||
bus-width = <8>;
|
||||
cap-mmc-highspeed;
|
||||
hs400-ds-delay = <0x14014>;
|
||||
max-frequency = <200000000>;
|
||||
mmc-hs200-1_8v;
|
||||
mmc-hs400-1_8v;
|
||||
no-sd;
|
||||
no-sdio;
|
||||
non-removable;
|
||||
pinctrl-names = "default", "state_uhs";
|
||||
pinctrl-0 = <&mmc0_pins_default>;
|
||||
pinctrl-1 = <&mmc0_pins_uhs>;
|
||||
vmmc-supply = <®_3p3v>;
|
||||
vqmmc-supply = <®_1p8v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pio {
|
||||
mmc0_pins_default: mmc0-pins-default {
|
||||
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>;
|
||||
mediatek,pull-up-adv = <1>;
|
||||
};
|
||||
conf-clk {
|
||||
pins = "EMMC_CK";
|
||||
drive-strength = <MTK_DRIVE_6mA>;
|
||||
mediatek,pull-down-adv = <2>;
|
||||
};
|
||||
conf-ds {
|
||||
pins = "EMMC_DSL";
|
||||
mediatek,pull-down-adv = <2>;
|
||||
};
|
||||
conf-rst {
|
||||
pins = "EMMC_RSTB";
|
||||
drive-strength = <MTK_DRIVE_4mA>;
|
||||
mediatek,pull-up-adv = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
mmc0_pins_uhs: mmc0-uhs-pins {
|
||||
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>;
|
||||
mediatek,pull-up-adv = <1>;
|
||||
};
|
||||
conf-clk {
|
||||
pins = "EMMC_CK";
|
||||
drive-strength = <MTK_DRIVE_6mA>;
|
||||
mediatek,pull-down-adv = <2>;
|
||||
};
|
||||
conf-ds {
|
||||
pins = "EMMC_DSL";
|
||||
mediatek,pull-down-adv = <2>;
|
||||
};
|
||||
conf-rst {
|
||||
pins = "EMMC_RSTB";
|
||||
drive-strength = <MTK_DRIVE_4mA>;
|
||||
mediatek,pull-up-adv = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
wf_2g_5g_pins: wf-2g-5g-pins {
|
||||
mux {
|
||||
function = "wifi";
|
||||
groups = "wf_2g", "wf_5g";
|
||||
};
|
||||
conf {
|
||||
pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4",
|
||||
"WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6",
|
||||
"WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10",
|
||||
"WF0_TOP_CLK", "WF0_TOP_DATA", "WF1_HB1",
|
||||
"WF1_HB2", "WF1_HB3", "WF1_HB4", "WF1_HB0",
|
||||
"WF1_HB5", "WF1_HB6", "WF1_HB7", "WF1_HB8",
|
||||
"WF1_TOP_CLK", "WF1_TOP_DATA";
|
||||
drive-strength = <MTK_DRIVE_4mA>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&switch {
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@6 {
|
||||
reg = <6>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac0>;
|
||||
phy-mode = "2500base-x";
|
||||
|
||||
fixed-link {
|
||||
speed = <2500>;
|
||||
full-duplex;
|
||||
pause;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&watchdog {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wbsys {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wf_2g_5g_pins>;
|
||||
status = "okay";
|
||||
};
|
@ -430,6 +430,18 @@ define Device/BPI-R3MINI-EMMC
|
||||
endef
|
||||
TARGET_DEVICES += BPI-R3MINI-EMMC
|
||||
|
||||
define Device/jdcloud_re-cp-03
|
||||
DEVICE_VENDOR := JDCloud
|
||||
DEVICE_MODEL := RE-CP-03
|
||||
DEVICE_DTS := mt7986a-jdcloud-re-cp-03
|
||||
DEVICE_DTS_DIR := $(DTS_DIR)/mediatek
|
||||
SUPPORTED_DEVICES := jdcloud,re-cp-03
|
||||
DEVICE_PACKAGES := blkid blockdev fdisk f2fsck mkf2fs losetup \
|
||||
kmod-mmc kmod-nls-cp437 kmod-nls-iso8859-1
|
||||
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
||||
endef
|
||||
TARGET_DEVICES += jdcloud_re-cp-03
|
||||
|
||||
define Device/netcore_n60
|
||||
DEVICE_VENDOR := Netcore
|
||||
DEVICE_MODEL := N60
|
||||
|
@ -33,6 +33,9 @@ mediatek_setup_interfaces()
|
||||
glinet,gl-mt6000)
|
||||
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5" eth1
|
||||
;;
|
||||
jdcloud,re-cp-03)
|
||||
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "eth1"
|
||||
;;
|
||||
tplink,tl-xdr6086)
|
||||
ucidef_set_interfaces_lan_wan "lan1 lan2" eth1
|
||||
;;
|
||||
@ -63,6 +66,11 @@ mediatek_setup_macs()
|
||||
wan_mac=$label_mac
|
||||
lan_mac=$(macaddr_add "$label_mac" 2)
|
||||
;;
|
||||
jdcloud,re-cp-03)
|
||||
wan_mac=$(mmc_get_mac_binary factory 0x2a)
|
||||
lan_mac=$(mmc_get_mac_binary factory 0x24)
|
||||
label_mac=$lan_mac
|
||||
;;
|
||||
tplink,tl-xdr6086|\
|
||||
tplink,tl-xdr6088)
|
||||
wan_mac=$(mtd_get_mac_binary config 0x1c)
|
||||
|
@ -16,7 +16,8 @@ caldata_validate() {
|
||||
|
||||
do_extract_caldata() {
|
||||
case $(board_name) in
|
||||
glinet,gl-mt6000)
|
||||
glinet,gl-mt6000|\
|
||||
jdcloud,re-cp-03)
|
||||
FIRMWARE=MT7986_ePAeLNA_EEPROM_AX6000.bin
|
||||
caldata_validate && exit 0
|
||||
caldata_extract_mmc "factory" 0x0 0x1000
|
||||
|
@ -154,6 +154,7 @@ platform_do_upgrade() {
|
||||
;;
|
||||
bananapi,bpi-r3mini-emmc |\
|
||||
glinet,gl-mt6000 |\
|
||||
jdcloud,re-cp-03 |\
|
||||
*emmc*)
|
||||
CI_KERNPART="kernel"
|
||||
CI_ROOTPART="rootfs"
|
||||
@ -179,6 +180,7 @@ platform_check_image() {
|
||||
netcore,n60|\
|
||||
*snand* |\
|
||||
glinet,gl-mt6000|\
|
||||
jdcloud,re-cp-03|\
|
||||
tplink,tl-xdr608*|\
|
||||
*emmc*)
|
||||
# tar magic `ustar`
|
||||
|
Loading…
x
Reference in New Issue
Block a user