[OpenWrt-Devel] [PATCH v3] ath79: add support for COMFAST CF-E130N v2
admin at kryma.net
admin at kryma.net
Thu Nov 14 17:40:05 EST 2019
From: Pavel Balan <admin at kryma.net>
This patch adds support for the COMFAST CF-E130N v2, an outdoor wireless
CPE with a single Ethernet port and a 802.11bgn radio.
Specifications:
- QCA9531 SoC
- 1x 10/100 Mbps Ethernet with PoE-in support
- 64 MB of RAM (DDR2)
- 16 MB of FLASH
- 5 dBi built-in antenna
- POWER/LAN/WLAN green LEDs
- 4x RSSI LEDs (2x red, 2x green)
- UART (115200 8N1) and GPIO (J9) headers on PCB
Flashing instructions:
The original firmware is based on OpenWrt so a sysupgrade image can be
installed via the stock web GUI.
The U-boot bootloader also contains a backup TFTP client to upload the
firmware from. Upon boot, it checks its ethernet network for the IP
192.168.1.10. Host a TFTP server and provide the image to be flashed as
file firmware_auto.bin.
Signed-off-by: Pavel Balan <admin at kryma.net>
---
Run-tested on hardware. Thank you all for the feedback so far.
Changes since v2:
-Formatting fixes
-Removed the pin muxer for real this time. Thank you Adrian!
-Added proper functionality to the WLAN pin.
Closed questions:
-The memory error mentioned above is not reproducible on another router.
Assuming hardware defect.
Open questions:
-The LED list in the LED configuration tab, along with normal LEDs, has
ath9k-phy0 listed. Why?
-I could not reproduce RSSI LED behaviour during test.
None lit up on connecting to the router via Wi-Fi.
-Could you refer me to a style guide? Some proposed fixes I can't
understand yet.
---
.../ath79/dts/qca9531_comfast_cf-e130n-v2.dts | 138 ++++++++++++++++++
.../generic/base-files/etc/board.d/01_leds | 9 ++
target/linux/ath79/image/generic.mk | 10 ++
3 files changed, 157 insertions(+)
create mode 100644 target/linux/ath79/dts/qca9531_comfast_cf-e130n-v2.dts
diff --git a/target/linux/ath79/dts/qca9531_comfast_cf-e130n-v2.dts b/target/linux/ath79/dts/qca9531_comfast_cf-e130n-v2.dts
new file mode 100644
index 0000000000..13d3c23a95
--- /dev/null
+++ b/target/linux/ath79/dts/qca9531_comfast_cf-e130n-v2.dts
@@ -0,0 +1,138 @@
+// 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 "qca953x.dtsi"
+
+/ {
+ compatible = "comfast,cf-e130n-v2", "qca,qca9531";
+ model = "COMFAST CF-E130N v2";
+
+ aliases {
+ serial0 = &uart;
+ led-boot = &led_rssihigh;
+ led-failsafe = &led_rssihigh;
+ led-upgrade = &led_rssihigh;
+ label-mac-device = ð0;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ pinctrl-names = "default";
+
+ wlan {
+ label = "cf-e130n-v2:green:wlan";
+ gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "phy0tpt";
+ };
+
+ lan {
+ label = "cf-e130n-v2:green:lan";
+ gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
+ };
+
+ unused {
+ label = "cf-e130n-v2:green:unused";
+ gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
+ };
+
+ rssilow {
+ label = "cf-e130n-v2:red:rssilow";
+ gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
+ };
+
+ rssimediumlow {
+ label = "cf-e130n-v2:red:rssimediumlow";
+ gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
+ };
+
+ rssimediumhigh {
+ label = "cf-e130n-v2:green:rssimediumhigh";
+ gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+ };
+
+ led_rssihigh: rssihigh {
+ label = "cf-e130n-v2:green:rssihigh";
+ gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+ };
+ };
+
+ keys {
+ compatible = "gpio-keys";
+
+ reset {
+ label = "reset";
+ linux,code = <KEY_RESTART>;
+ gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
+ debounce-interval = <60>;
+ };
+ };
+};
+
+&spi {
+ status = "okay";
+
+ num-cs = <1>;
+
+ flash at 0 {
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <25000000>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition at 0 {
+ label = "u-boot";
+ reg = <0x000000 0x010000>;
+ read-only;
+ };
+
+ art: partition at 10000 {
+ label = "art";
+ reg = <0x010000 0x010000>;
+ read-only;
+ };
+
+ partition at 20000 {
+ compatible = "denx,uimage";
+ label = "firmware";
+ reg = <0x020000 0x7d0000>;
+ };
+
+ partition at 7f0000 {
+ label = "nvram";
+ reg = <0x7f0000 0x010000>;
+ read-only;
+ };
+ };
+ };
+};
+&uart {
+ status = "okay";
+
+};
+
+ð0 {
+ status = "okay";
+
+ phy-handle = <&swphy0>;
+
+ mtd-mac-address = <&art 0x0>;
+
+ gmac-config {
+ device = <&gmac>;
+ switch-phy-swap = <1>;
+ };
+};
+
+&wmac {
+ status = "okay";
+
+ mtd-cal-data = <&art 0x1000>;
+};
diff --git a/target/linux/ath79/generic/base-files/etc/board.d/01_leds b/target/linux/ath79/generic/base-files/etc/board.d/01_leds
index fbb0d0ea03..1a5e63b23d 100755
--- a/target/linux/ath79/generic/base-files/etc/board.d/01_leds
+++ b/target/linux/ath79/generic/base-files/etc/board.d/01_leds
@@ -47,6 +47,15 @@ comfast,cf-e120a-v3)
ucidef_set_led_rssi "rssimediumhigh" "RSSIMEDIUMHIGH" "$boardname:green:rssimediumhigh" "wlan0" "51" "100"
ucidef_set_led_rssi "rssihigh" "RSSIHIGH" "$boardname:green:rssihigh" "wlan0" "76" "100"
;;
+comfast,cf-e130n-v2)
+ ucidef_set_led_netdev "lan" "LAN" "$boardname:green:lan" "eth0"
+ ucidef_set_led_wlan "wlan" "WLAN" "$boardname:green:wlan" "phy0tpt"
+ ucidef_set_rssimon "wlan0" "200000" "1"
+ ucidef_set_led_rssi "rssilow" "RSSILOW" "$boardname:red:rssilow" "wlan0" "1" "100"
+ ucidef_set_led_rssi "rssimediumlow" "RSSIMEDIUMLOW" "$boardname:red:rssimediumlow" "wlan0" "26" "100"
+ ucidef_set_led_rssi "rssimediumhigh" "RSSIMEDIUMHIGH" "$boardname:green:rssimediumhigh" "wlan0" "51" "100"
+ ucidef_set_led_rssi "rssihigh" "RSSIHIGH" "$boardname:green:rssihigh" "wlan0" "76" "100"
+ ;;
comfast,cf-e313ac)
ucidef_set_led_switch "lan" "LAN" "$boardname:green:lan" "switch0" "0x02"
ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth1"
diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk
index 70631c20d0..256481ece3 100644
--- a/target/linux/ath79/image/generic.mk
+++ b/target/linux/ath79/image/generic.mk
@@ -258,6 +258,16 @@ define Device/comfast_cf-e120a-v3
endef
TARGET_DEVICES += comfast_cf-e120a-v3
+define Device/comfast_cf-e130n-v2
+ ATH_SOC := qca9531
+ DEVICE_VENDOR := COMFAST
+ DEVICE_MODEL := CF-E130N
+ DEVICE_VARIANT := v2
+ DEVICE_PACKAGES := rssileds kmod-leds-gpio -swconfig -uboot-envtools
+ IMAGE_SIZE := 8000k
+endef
+TARGET_DEVICES += comfast_cf-e130n-v2
+
define Device/comfast_cf-e313ac
ATH_SOC := qca9531
DEVICE_VENDOR := COMFAST
--
2.17.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list