]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
qualcommax: ipq60xx: add JDCloud RE-CS-07 support 19840/head
authorChukun Pan <amadeus@jmu.edu.cn>
Wed, 9 Apr 2025 13:10:20 +0000 (21:10 +0800)
committerRobert Marko <robimarko@gmail.com>
Sun, 18 Jan 2026 10:13:54 +0000 (11:13 +0100)
Specifications:
  SoC:     Qualcomm IPQ6010 1.8GHz
  RAM:     K4A8G165WC-BCTD x2 2GiB
  ETH:     QCA8075 (3x LAN, 1x WAN)
  Flash:   ICMAX 8GB eMMC
  Power:   DC 12V 2A
  USB:     1x 3.0
  Button:  Reset

Flash instructions:
  1. Download the initramfs image, rename it to
     initramfs.itb, host it with the tftp server.
  2. Enter "jdmt018R" to interrupt U-Boot
     when the following statement appears:
     "disabled console and autoboot in 2 seconds"
  3. Run these commands in U-Boot console:
     tftpboot initramfs.itb
     bootm
  4. After openwrt boots up, use scp or luci web
     to upload sysupgrade.bin to upgrade.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/19840
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6010-re-cs-07.dts [new file with mode: 0644]
target/linux/qualcommax/image/ipq60xx.mk
target/linux/qualcommax/ipq60xx/base-files/etc/board.d/02_network
target/linux/qualcommax/ipq60xx/base-files/lib/upgrade/platform.sh

diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6010-re-cs-07.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6010-re-cs-07.dts
new file mode 100644 (file)
index 0000000..650e2c5
--- /dev/null
@@ -0,0 +1,98 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+/dts-v1/;
+
+#include "ipq6010-re-cs.dtsi"
+
+/ {
+       model = "JDCloud RE-CS-07";
+       compatible = "jdcloud,re-cs-07", "qcom,ipq6018";
+
+       aliases {
+               ethernet0 = &dp1;
+               ethernet1 = &dp2;
+               ethernet2 = &dp3;
+               ethernet3 = &dp4;
+
+               label-mac-device = &dp2;
+               serial0 = &blsp1_uart3;
+       };
+
+       keys {
+               compatible = "gpio-keys";
+               pinctrl-0 = <&button_pins>;
+               pinctrl-names = "default";
+
+               reset {
+                       label = "reset";
+                       linux,code = <KEY_RESTART>;
+                       gpios = <&tlmm 56 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
+
+&tlmm {
+       button_pins: button-pins {
+               mux {
+                       pins = "gpio56";
+                       function = "gpio";
+                       drive-strength = <8>;
+                       bias-pull-up;
+               };
+       };
+};
+
+&switch {
+       status = "okay";
+
+       switch_lan_bmp = <(ESS_PORT2 | ESS_PORT3 | ESS_PORT4)>;
+       switch_wan_bmp = <ESS_PORT1>;
+       switch_mac_mode = <MAC_MODE_PSGMII>;
+
+       qcom,port_phyinfo {
+               port@1 {
+                       port_id = <1>;
+                       phy_address = <24>;
+               };
+               port@2 {
+                       port_id = <2>;
+                       phy_address = <25>;
+               };
+               port@3 {
+                       port_id = <3>;
+                       phy_address = <26>;
+               };
+               port@4 {
+                       port_id = <4>;
+                       phy_address = <27>;
+               };
+       };
+};
+
+&edma {
+       status = "okay";
+};
+
+&dp1 {
+       status = "okay";
+       phy-handle = <&qca8075_0>;
+       label = "wan";
+};
+
+&dp2 {
+       status = "okay";
+       phy-handle = <&qca8075_1>;
+       label = "lan1";
+};
+
+&dp3 {
+       status = "okay";
+       phy-handle = <&qca8075_2>;
+       label = "lan2";
+};
+
+&dp4 {
+       status = "okay";
+       phy-handle = <&qca8075_3>;
+       label = "lan3";
+};
index 170b27f898b7165f5d0282767e3d10395c7b1d62..c9e0569bbd724bd077fea2a1ef14e1bc80d73c06 100644 (file)
@@ -88,6 +88,18 @@ define Device/jdcloud_re-cs-02
 endef
 TARGET_DEVICES += jdcloud_re-cs-02
 
+define Device/jdcloud_re-cs-07
+       $(call Device/FitImage)
+       DEVICE_VENDOR := JDCloud
+       DEVICE_MODEL := RE-CS-07
+       SOC := ipq6010
+       BLOCKSIZE := 64k
+       KERNEL_SIZE := 6144k
+       DEVICE_DTS_CONFIG := config@cp03-c4
+       DEVICE_PACKAGES := -ath11k-firmware-ipq6018 -kmod-ath11k-ahb -wpad-basic-mbedtls
+endef
+TARGET_DEVICES += jdcloud_re-cs-07
+
 define Device/jdcloud_re-ss-01
        $(call Device/FitImage)
        DEVICE_VENDOR := JDCloud
index 7cce06e3a37ee9dc126ac6e1947bc8528ab6d37e..f8a43d84f4e0de86e5225786d3231b812dd529dc 100644 (file)
@@ -28,6 +28,7 @@ ipq60xx_setup_interfaces()
        yuncore,fap650)
                ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
                ;;
+       jdcloud,re-cs-07|\
        jdcloud,re-ss-01|\
        qihoo,360v6)
                ucidef_set_interfaces_lan_wan "lan1 lan2 lan3" "wan"
index 844a7373acfb62e5c3ddd8a2052c68d7daae351d..d230c32e2e38d6fc73bc1a786ff16cd6e068b347 100644 (file)
@@ -167,6 +167,7 @@ platform_do_upgrade() {
                nand_do_upgrade "$1"
                ;;
        jdcloud,re-cs-02|\
+       jdcloud,re-cs-07|\
        jdcloud,re-ss-01)
                local cfgpart=$(find_mmc_part "0:BOOTCONFIG")
                part_num="$(hexdump -e '1/1 "%01x|"' -n 1 -s 148 -C $cfgpart | cut -f 1 -d "|" | head -n1)"