From: Sven Danner <sven...@gmx.net> Comfast CF-E538AC is a wall mounted access point with an additional Ethernet LAN access port. It supports 802.11AC Wave2 MU-MIMO. Serial port access for debricking requires simple soldering of 4 pins. Device specifications: * SoC: MT7620DA @ 580MHz * RAM: 64MiB DDR2 * Flash: 8iB SPI * Wireless 2.4GHz (SoC): b/g/n * Wireless 5Ghz (MT7612E): n/ac, 2x2 MU-MINO * Ethernet connection back (RTL8211F - port 4): 1× 1GbE, 802.3af PoE * Ethernet connection front (RTL8211F - port 5): 1× 1GbE Flashing instructions: * Upgrade using stock web interface's update feature Debricking: * Serial port can be soldered on top PCB (marked as 1) (1: VCC, 2: GND, 3: TX, 4: RX) * Use 3.3V, 115200 baud, 8N1 * Recovery only possible via TFTP * Modified U-Boot environment does not allow recovery via serial data transfer (will not commit it to flash) * Bootloader will show a menu for 1 seconds * Select 2: Load system code then write to Flash via TFTP. Signed-off-by: Sven Danner <sven...@gmx.net> --- This is my third submission. I hope I have successfully incorporated any feedback that I have received and am following the right format. Apologies for any inconvenience caused. A couple of notes: This speed (which 47 of 68 mt7620a devices use) comes straight from the stock firmware's DTS file: spi-max-frequency = <10000000>; At this point I rather not increase it unless necessary. This line was suggested to be dropped, but every device in /target/linux/ramips/image/mt7620.mk is defining that as well: + SUPPORTED_DEVICES += cf-e538ac I have left it in for this submission.
I have still defined LED white:wifi so it will appear in LuCI for users as the device drivers seem to automatically create 4 LEDs in /sys/class/leds that are not physically connected: mt76-phy0 rt2800soc-phy1::quality rt2800soc-phy1::assoc rt2800soc-phy1::radio I appreciate all feedback, please be kind and assume honest mistakes not maliciousness. --- .../ramips/dts/mt7620a_comfast_cf-e538ac.dts | 149 ++++++++++++++++++ target/linux/ramips/image/mt7620.mk | 10 ++ .../mt7620/base-files/etc/board.d/01_leds | 3 + .../mt7620/base-files/etc/board.d/02_network | 4 + 4 files changed, 166 insertions(+) create mode 100644 target/linux/ramips/dts/mt7620a_comfast_cf-e538ac.dts diff --git a/target/linux/ramips/dts/mt7620a_comfast_cf-e538ac.dts b/target/linux/ramips/dts/mt7620a_comfast_cf-e538ac.dts new file mode 100644 index 0000000000..6ccf06531d --- /dev/null +++ b/target/linux/ramips/dts/mt7620a_comfast_cf-e538ac.dts @@ -0,0 +1,149 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +#include "mt7620a.dtsi" + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/input/input.h> + +/ { + compatible = "comfast,cf-e538ac", "ralink,mt7620a-soc"; + model = "Comfast CF-E538AC"; + + aliases { + led-boot = &led_wifi; + led-failsafe = &led_wifi; + led-running = &led_wifi; + led-upgrade = &led_wifi; + }; + + chosen { + bootargs = "console=ttyS0,115200"; + }; + + leds { + compatible = "gpio-leds"; + + led_wifi: wifi { + label = "white:wifi"; + gpios = <&gpio3 0 GPIO_ACTIVE_LOW>; + }; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; + linux,code = <KEY_RESTART>; + }; + }; +}; + +&gpio0 { + status = "okay"; +}; + +&gpio3 { + status = "okay"; +}; + +&spi0 { + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <10000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x10000>; + read-only; + }; + + factory: partition@40000 { + label = "factory"; + reg = <0x40000 0x10000>; + read-only; + }; + + partition@50000 { + compatible = "denx,uimage"; + label = "firmware"; + reg = <0x50000 0x7b0000>; + }; + }; + }; +}; + +ðernet { + status = "okay"; + pinctrl-names = "default"; + mtd-mac-address = <&factory 0xe000>; + pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>; + mediatek,portmap = "wllll"; + + port@4 { + status = "okay"; + phy-mode = "rgmii"; + phy-handle = <&phy4>; + }; + + port@5 { + status = "okay"; + phy-mode = "rgmii"; + phy-handle = <&phy5>; + }; + + mdio-bus { + status = "okay"; + + phy4: ethernet-phy@4 { + reg = <0x04>; + phy-mode = "rgmii"; + }; + + phy5: ethernet-phy@5 { + reg = <0x05>; + phy-mode = "rgmii"; + }; + }; +}; + +&gsw { + mediatek,port4 = "gmac"; +}; + +&wmac { + ralink,mtd-eeprom = <&factory 0x0>; +}; + +&pcie { + status = "okay"; +}; + +&state_default { + gpio { + groups = "wled"; + function = "gpio"; + }; +}; + +&pcie0 { + mt76@0,0 { + reg = <0x0000 0 0 0 0>; + mediatek,mtd-eeprom = <&factory 0x8000>; + ieee80211-freq-limit = <5000000 6000000>; + }; +}; diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk index dfdb5f28d3..63aa299545 100644 --- a/target/linux/ramips/image/mt7620.mk +++ b/target/linux/ramips/image/mt7620.mk @@ -163,6 +163,16 @@ define Device/buffalo_wmr-300 endef TARGET_DEVICES += buffalo_wmr-300 +define Device/comfast_cf-e538ac + SOC := mt7620a + IMAGE_SIZE := 7872k + DEVICE_VENDOR := Comfast + DEVICE_MODEL := CF-E538AC + SUPPORTED_DEVICES += cf-e538ac + DEVICE_PACKAGES := kmod-mt76x2 +endef +TARGET_DEVICES += comfast_cf-e538ac + define Device/comfast_cf-wr800n SOC := mt7620n IMAGE_SIZE := 7872k diff --git a/target/linux/ramips/mt7620/base-files/etc/board.d/01_leds b/target/linux/ramips/mt7620/base-files/etc/board.d/01_leds index 292f310d51..22d3e0f783 100755 --- a/target/linux/ramips/mt7620/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/mt7620/base-files/etc/board.d/01_leds @@ -41,6 +41,9 @@ asus,rt-n14u) bdcom,wap2100-sk) ucidef_set_led_netdev "wifi_led" "wifi" "green:wlan2g" "wlan0" ;; +comfast,cf-e538ac) + ucidef_set_led_netdev "wifi_led" "wifi" "white:wifi" "wlan0" + ;; comfast,cf-wr800n) ucidef_set_led_netdev "lan" "lan" "white:ethernet" eth0.1 ucidef_set_led_netdev "wifi_led" "wifi" "white:wifi" "wlan0" diff --git a/target/linux/ramips/mt7620/base-files/etc/board.d/02_network b/target/linux/ramips/mt7620/base-files/etc/board.d/02_network index e884390c31..b069fe75e7 100755 --- a/target/linux/ramips/mt7620/base-files/etc/board.d/02_network +++ b/target/linux/ramips/mt7620/base-files/etc/board.d/02_network @@ -99,6 +99,10 @@ ramips_setup_interfaces() ucidef_add_switch "switch0" \ "0:lan" "1:lan" "2:lan" "3:lan" "5:wan" "6@eth0" ;; + comfast,cf-e538ac) + ucidef_add_switch "switch0" \ + "4:lan" "5:wan" "6@eth0" + ;; comfast,cf-wr800n|\ hnet,c108) ucidef_add_switch "switch0" \ -- 2.20.1 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel