[OpenWrt-Devel] [PATCH v4] ath79: add support for COMFAST CF-E130N v2

mail at adrianschmutzler.de mail at adrianschmutzler.de
Sat Jan 18 12:38:55 EST 2020


Hi,

> -----Original Message-----
> From: openwrt-devel [mailto:openwrt-devel-bounces at lists.openwrt.org]
> On Behalf Of admin at kryma.net
> Sent: Donnerstag, 16. Januar 2020 22:35
> To: openwrt-devel at lists.openwrt.org
> Cc: Pavel Balan <admin at kryma.net>
> Subject: [OpenWrt-Devel] [PATCH v4] ath79: add support for COMFAST CF-
> E130N v2
> 
> From: Pavel Balan <admin at kryma.net>
> 

[...]

> -Re unused led: the led is blocked by a mostly
>     opaque plate in the shell. It can still be
>     controlled, though.

So now we know where it is. But what is it for? Any idea?

>  -Re verifying addresses: I don't think I did.
>     How would I do that?

https://openwrt.org/docs/guide-developer/mac.address

Install vendor firmware and check what MAC addresses are used there for eth0/WiFi.

Add a table of MAC address assignment (and label MAC address) to the commit message after that, so your research results are conserved.

> +			partition at 20000 {
> +				compatible = "denx,uimage";
> +				label = "firmware";
> +				reg = <0x020000 0x7d0000>;
> +			};

Some Comfast devices have a config partition <0x7e0000 0x010000>. Is that missing for your device or should we add it?

> +
> +			partition at 7f0000 {
> +				label = "nvram";
> +				reg = <0x7f0000 0x010000>;
> +				read-only;
> +			};
> +		};
> +	};
> +};
> +
> +&uart {
> +	status = "okay";
> +
> +};
> +
> +&eth1 {
> +	status = "okay";
> +
> +	phy-handle = <&swphy0>;
> +
> +	mtd-mac-address = <&art 0x0>;
> +
> +	gmac-config {
> +		device = <&gmac>;
> +		switch-phy-swap = <1>;
> +	};
> +};
> +
> +&eth0 {
> +	compatible = "syscon", "simple-mfd";
> +};

The network setup looks wrong to me. I think you just need to make eth1->eth0 and eth0->eth1. If that's not helping, play with switch-phy-swap and setting phy-handle to swphy0 or swphy4. Have a look at the other qca9531 comfast devices.

> +
> +&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..7521e435a1 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"

You do not need this line since you have a trigger in DTS.

> +	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/generic/base-files/etc/board.d/02_network
> b/target/linux/ath79/generic/base-files/etc/board.d/02_network
> index 10ca213e70..5840b90bf6 100755
> --- a/target/linux/ath79/generic/base-files/etc/board.d/02_network
> +++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network
> @@ -86,6 +86,8 @@ ath79_setup_interfaces()
>  		;;
>  	comfast,cf-e110n-v2|\
>  	comfast,cf-e120a-v3|\
> +	comfast,cf-e130n-v2|\
> +		ucidef_set_interface_lan "eth1"

This is not only very unlikely to be correct, it will also change the devices above to a wrong setup.
You will need to add your device to the case where ' ucidef_set_interface_lan "eth0"' is set. Then you will need to adjust DTS to make that work.

Best

Adrian 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: openpgp-digital-signature.asc
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20200118/aaf87072/attachment.sig>
-------------- next part --------------
_______________________________________________
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