diff mbox series

[OpenWrt-Devel] ath79: add support for GL.iNet GL-AR750S

Message ID mailman.11982.1546163686.2376.openwrt-devel@lists.openwrt.org
State Changes Requested
Delegated to: Mathias Kresin
Headers show
Series [OpenWrt-Devel] ath79: add support for GL.iNet GL-AR750S | expand

Commit Message

Thomas Richard via openwrt-devel Dec. 30, 2018, 9:54 a.m. UTC
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
This patch adds supports for GL-AR750S.

Specification:
- SOC: QCA9563 (775MHz)
- Flash: 16 MiB (W25Q128FVSG)
- RAM: 128 MiB DDR2
- Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN
- Wireless: 2.4GHz (bgn) and 5GHz (ac)
- USB: 1x USB 2.0 port
- Button: 1x switch button, 1x reset button
- LED: 3x LEDS (green)

Flash instruction:
Upload image via uboot web recovery

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
---
 .../ath79/base-files/etc/board.d/02_network   |   4 +
 .../etc/hotplug.d/firmware/11-ath10k-caldata  |   9 +-
 .../linux/ath79/dts/qca9563_glinet_ar750s.dts | 153 ++++++++++++++++++
 target/linux/ath79/image/generic.mk           |  12 ++
 4 files changed, 174 insertions(+), 4 deletions(-)
 create mode 100644 target/linux/ath79/dts/qca9563_glinet_ar750s.dts

Comments

Piotr Dymacz Dec. 30, 2018, 10:06 a.m. UTC | #1
Hi Christoph,

On 30.12.2018 10:54, Christoph Krapp via openwrt-devel wrote:
> This patch adds supports for GL-AR750S.
> 
> Specification:
> - SOC: QCA9563 (775MHz)
> - Flash: 16 MiB (W25Q128FVSG)

This device comes with SPI NOR + NAND combination.

You should at least mention that in your patch and let others know that 
your patch is incomplete and makes use of only part of the available 
flash storage.
Tom Psyborg Dec. 30, 2018, 11:35 a.m. UTC | #2
On 30/12/2018, Christoph Krapp via openwrt-devel
<openwrt-devel@lists.openwrt.org> wrote:
> The sender domain has a DMARC Reject/Quarantine policy which disallows
> sending mailing list messages using the original "From" header.
>
> To mitigate this problem, the original message has been wrapped
> automatically by the mailing list software.
>
>---------- Forwarded message ----------
>From: Christoph Krapp <achterin@googlemail.com>
>To: openwrt-devel@lists.openwrt.org
>Cc:
>Bcc:
>Date: Sun, 30 Dec 2018 10:53:54 +0100
>Subject: [PATCH] ath79: add support for GL.iNet GL-AR750S
>This patch adds supports for GL-AR750S.
>
> Specification:
> - SOC: QCA9563 (775MHz)
> - Flash: 16 MiB (W25Q128FVSG)
> - RAM: 128 MiB DDR2
> - Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN
> - Wireless: 2.4GHz (bgn) and 5GHz (ac)
> - USB: 1x USB 2.0 port
> - Button: 1x switch button, 1x reset button
> - LED: 3x LEDS (green)
>
> Flash instruction:
> Upload image via uboot web recovery

Hi

upgrade procedure from GL firmware via webserver is required and
missing in your changeset
Mathias Kresin Dec. 30, 2018, 11:57 a.m. UTC | #3
30/12/2018 12:35, Tom Psyborg:
> On 30/12/2018, Christoph Krapp via openwrt-devel
> <openwrt-devel@lists.openwrt.org> wrote:
>> The sender domain has a DMARC Reject/Quarantine policy which disallows
>> sending mailing list messages using the original "From" header.
>>
>> To mitigate this problem, the original message has been wrapped
>> automatically by the mailing list software.
>>
>> ---------- Forwarded message ----------
>> From: Christoph Krapp <achterin@googlemail.com>
>> To: openwrt-devel@lists.openwrt.org
>> Cc:
>> Bcc:
>> Date: Sun, 30 Dec 2018 10:53:54 +0100
>> Subject: [PATCH] ath79: add support for GL.iNet GL-AR750S
>> This patch adds supports for GL-AR750S.
>>
>> Specification:
>> - SOC: QCA9563 (775MHz)
>> - Flash: 16 MiB (W25Q128FVSG)
>> - RAM: 128 MiB DDR2
>> - Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN
>> - Wireless: 2.4GHz (bgn) and 5GHz (ac)
>> - USB: 1x USB 2.0 port
>> - Button: 1x switch button, 1x reset button
>> - LED: 3x LEDS (green)
>>
>> Flash instruction:
>> Upload image via uboot web recovery
> 
> Hi
> 
> upgrade procedure from GL firmware via webserver is required and
> missing in your changeset

Nah, it isn't and wasn't ever a hard requirement.

If it's possible to update from the stock firmware via a webinterface, 
it's fine. If not, the way via u-boot works as well.

Mathias
Tom Psyborg Dec. 30, 2018, 1:51 p.m. UTC | #4
On 30/12/2018, Mathias Kresin <dev@kresin.me> wrote:
> 30/12/2018 12:35, Tom Psyborg:
>> On 30/12/2018, Christoph Krapp via openwrt-devel
>> <openwrt-devel@lists.openwrt.org> wrote:
>>> The sender domain has a DMARC Reject/Quarantine policy which disallows
>>> sending mailing list messages using the original "From" header.
>>>
>>> To mitigate this problem, the original message has been wrapped
>>> automatically by the mailing list software.
>>>
>>> ---------- Forwarded message ----------
>>> From: Christoph Krapp <achterin@googlemail.com>
>>> To: openwrt-devel@lists.openwrt.org
>>> Cc:
>>> Bcc:
>>> Date: Sun, 30 Dec 2018 10:53:54 +0100
>>> Subject: [PATCH] ath79: add support for GL.iNet GL-AR750S
>>> This patch adds supports for GL-AR750S.
>>>
>>> Specification:
>>> - SOC: QCA9563 (775MHz)
>>> - Flash: 16 MiB (W25Q128FVSG)
>>> - RAM: 128 MiB DDR2
>>> - Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN
>>> - Wireless: 2.4GHz (bgn) and 5GHz (ac)
>>> - USB: 1x USB 2.0 port
>>> - Button: 1x switch button, 1x reset button
>>> - LED: 3x LEDS (green)
>>>
>>> Flash instruction:
>>> Upload image via uboot web recovery
>>
>> Hi
>>
>> upgrade procedure from GL firmware via webserver is required and
>> missing in your changeset
>
> Nah, it isn't and wasn't ever a hard requirement.
>
> If it's possible to update from the stock firmware via a webinterface,
> it's fine. If not, the way via u-boot works as well.
>
> Mathias
>

Aren't you embarrassed being such a hypocrite liar?
Mathias Kresin Dec. 30, 2018, 1:53 p.m. UTC | #5
30/12/2018 14:51, Tom Psyborg:
> On 30/12/2018, Mathias Kresin <dev@kresin.me> wrote:
>> 30/12/2018 12:35, Tom Psyborg:
>>> On 30/12/2018, Christoph Krapp via openwrt-devel
>>> <openwrt-devel@lists.openwrt.org> wrote:
>>>> The sender domain has a DMARC Reject/Quarantine policy which disallows
>>>> sending mailing list messages using the original "From" header.
>>>>
>>>> To mitigate this problem, the original message has been wrapped
>>>> automatically by the mailing list software.
>>>>
>>>> ---------- Forwarded message ----------
>>>> From: Christoph Krapp <achterin@googlemail.com>
>>>> To: openwrt-devel@lists.openwrt.org
>>>> Cc:
>>>> Bcc:
>>>> Date: Sun, 30 Dec 2018 10:53:54 +0100
>>>> Subject: [PATCH] ath79: add support for GL.iNet GL-AR750S
>>>> This patch adds supports for GL-AR750S.
>>>>
>>>> Specification:
>>>> - SOC: QCA9563 (775MHz)
>>>> - Flash: 16 MiB (W25Q128FVSG)
>>>> - RAM: 128 MiB DDR2
>>>> - Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN
>>>> - Wireless: 2.4GHz (bgn) and 5GHz (ac)
>>>> - USB: 1x USB 2.0 port
>>>> - Button: 1x switch button, 1x reset button
>>>> - LED: 3x LEDS (green)
>>>>
>>>> Flash instruction:
>>>> Upload image via uboot web recovery
>>>
>>> Hi
>>>
>>> upgrade procedure from GL firmware via webserver is required and
>>> missing in your changeset
>>
>> Nah, it isn't and wasn't ever a hard requirement.
>>
>> If it's possible to update from the stock firmware via a webinterface,
>> it's fine. If not, the way via u-boot works as well.
>>
>> Mathias
>>
> 
> Aren't you embarrassed being such a hypocrite liar?

Prove your point or troll somewhere else.

Mathias
Tom Psyborg Dec. 30, 2018, 2:03 p.m. UTC | #6
On 30/12/2018, Mathias Kresin <dev@kresin.me> wrote:
> 30/12/2018 14:51, Tom Psyborg:
>> On 30/12/2018, Mathias Kresin <dev@kresin.me> wrote:
>>> 30/12/2018 12:35, Tom Psyborg:
>>>> On 30/12/2018, Christoph Krapp via openwrt-devel
>>>> <openwrt-devel@lists.openwrt.org> wrote:
>>>>> The sender domain has a DMARC Reject/Quarantine policy which disallows
>>>>> sending mailing list messages using the original "From" header.
>>>>>
>>>>> To mitigate this problem, the original message has been wrapped
>>>>> automatically by the mailing list software.
>>>>>
>>>>> ---------- Forwarded message ----------
>>>>> From: Christoph Krapp <achterin@googlemail.com>
>>>>> To: openwrt-devel@lists.openwrt.org
>>>>> Cc:
>>>>> Bcc:
>>>>> Date: Sun, 30 Dec 2018 10:53:54 +0100
>>>>> Subject: [PATCH] ath79: add support for GL.iNet GL-AR750S
>>>>> This patch adds supports for GL-AR750S.
>>>>>
>>>>> Specification:
>>>>> - SOC: QCA9563 (775MHz)
>>>>> - Flash: 16 MiB (W25Q128FVSG)
>>>>> - RAM: 128 MiB DDR2
>>>>> - Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN
>>>>> - Wireless: 2.4GHz (bgn) and 5GHz (ac)
>>>>> - USB: 1x USB 2.0 port
>>>>> - Button: 1x switch button, 1x reset button
>>>>> - LED: 3x LEDS (green)
>>>>>
>>>>> Flash instruction:
>>>>> Upload image via uboot web recovery
>>>>
>>>> Hi
>>>>
>>>> upgrade procedure from GL firmware via webserver is required and
>>>> missing in your changeset
>>>
>>> Nah, it isn't and wasn't ever a hard requirement.
>>>
>>> If it's possible to update from the stock firmware via a webinterface,
>>> it's fine. If not, the way via u-boot works as well.
>>>
>>> Mathias
>>>
>>
>> Aren't you embarrassed being such a hypocrite liar?
>
> Prove your point or troll somewhere else.
>
> Mathias
>

No u-boot upgrade, remember?
https://github.com/lede-project/source/pull/1246#issuecomment-320228337
Piotr Dymacz Dec. 30, 2018, 2:06 p.m. UTC | #7
Hi Tom,

On 30.12.2018 15:03, Tom Psyborg wrote:

[...]

>>>> If it's possible to update from the stock firmware via a webinterface,
>>>> it's fine. If not, the way via u-boot works as well.
>>>>
>>>> Mathias
>>>>
>>>
>>> Aren't you embarrassed being such a hypocrite liar?
>>
>> Prove your point or troll somewhere else.
>>
>> Mathias
>>
> 
> No u-boot upgrade, remember?
> https://github.com/lede-project/source/pull/1246#issuecomment-320228337

u-boot upgrade != upgrade via u-boot.
Tom Psyborg Dec. 30, 2018, 2:15 p.m. UTC | #8
On 30/12/2018, Piotr Dymacz <pepe2k@gmail.com> wrote:
> Hi Tom,
>
> On 30.12.2018 15:03, Tom Psyborg wrote:
>
> [...]
>
>>>>> If it's possible to update from the stock firmware via a webinterface,
>>>>> it's fine. If not, the way via u-boot works as well.
>>>>>
>>>>> Mathias
>>>>>
>>>>
>>>> Aren't you embarrassed being such a hypocrite liar?
>>>
>>> Prove your point or troll somewhere else.
>>>
>>> Mathias
>>>
>>
>> No u-boot upgrade, remember?
>> https://github.com/lede-project/source/pull/1246#issuecomment-320228337
>
> u-boot upgrade != upgrade via u-boot.
>
> --
> Cheers,
> Piotr
>

Hi

No, there was no misunderstanding. For kresin u-boot upgrade doesn't
lead to a working router even if one knows how to READ documentation
that explains upgrade via u-boot.
Piotr Dymacz Dec. 30, 2018, 2:24 p.m. UTC | #9
Hi Tom,

On 30.12.2018 15:15, Tom Psyborg wrote:
> On 30/12/2018, Piotr Dymacz <pepe2k@gmail.com> wrote:
>> Hi Tom,
>>
>> On 30.12.2018 15:03, Tom Psyborg wrote:
>>
>> [...]
>>
>>>>>> If it's possible to update from the stock firmware via a webinterface,
>>>>>> it's fine. If not, the way via u-boot works as well.
>>>>>>
>>>>>> Mathias
>>>>>>
>>>>>
>>>>> Aren't you embarrassed being such a hypocrite liar?
>>>>
>>>> Prove your point or troll somewhere else.
>>>>
>>>> Mathias
>>>>
>>>
>>> No u-boot upgrade, remember?
>>> https://github.com/lede-project/source/pull/1246#issuecomment-320228337
>>
>> u-boot upgrade != upgrade via u-boot.
>>
>> --
>> Cheers,
>> Piotr
>>
> 
> Hi
> 
> No, there was no misunderstanding. For kresin u-boot upgrade doesn't
> lead to a working router even if one knows how to READ documentation
> that explains upgrade via u-boot.

Please stop insulting others, you are actively violating rule 12: [0]. 
If you have a problem with someone else opinion, discuss that using 
private channel, not a public mailing list.

And next time read e-mails more carefully because you are simply wrong 
here. There is nothing about upgrading U-Boot on the device from this 
e-mail topic.

[0] https://openwrt.org/rules
Mathias Kresin Dec. 30, 2018, 2:27 p.m. UTC | #10
30/12/2018 15:15, Tom Psyborg:
> On 30/12/2018, Piotr Dymacz <pepe2k@gmail.com> wrote:
>> Hi Tom,
>>
>> On 30.12.2018 15:03, Tom Psyborg wrote:
>>
>> [...]
>>
>>>>>> If it's possible to update from the stock firmware via a webinterface,
>>>>>> it's fine. If not, the way via u-boot works as well.
>>>>>>
>>>>>> Mathias
>>>>>>
>>>>>
>>>>> Aren't you embarrassed being such a hypocrite liar?
>>>>
>>>> Prove your point or troll somewhere else.
>>>>
>>>> Mathias
>>>>
>>>
>>> No u-boot upgrade, remember?
>>> https://github.com/lede-project/source/pull/1246#issuecomment-320228337
>>
>> u-boot upgrade != upgrade via u-boot.
>>
>> --
>> Cheers,
>> Piotr
>>
> 
> Hi
> 
> No, there was no misunderstanding. For kresin u-boot upgrade doesn't
> lead to a working router even if one knows how to READ documentation
> that explains upgrade via u-boot.
> 
Are you on a vendetta?

The install instructions from this patch recommends to do the initial 
OpenWrt installation via bootloader recovery. Nowhere a replacement of 
the preinstalled bootloader is mentioned.

My linked comment rather proves my point, as I asked to test the 
provided instructions to do the initial OpenWrt installation via 
bootloader commandline instead of using the stock webinterface hack 
(which I asked to add to the wiki instead).

Anyway, thanks for the chat
Mathias
Tom Psyborg Dec. 30, 2018, 2:58 p.m. UTC | #11
>There is nothing about upgrading U-Boot on the device from this e-mail topic.

but there is about upgrading firmware via u-boot and according to the
above linked kresin comment that procedure is unreliable

On 30/12/2018, Mathias Kresin <dev@kresin.me> wrote:
> 30/12/2018 15:15, Tom Psyborg:
>> On 30/12/2018, Piotr Dymacz <pepe2k@gmail.com> wrote:
>>> Hi Tom,
>>>
>>> On 30.12.2018 15:03, Tom Psyborg wrote:
>>>
>>> [...]
>>>
>>>>>>> If it's possible to update from the stock firmware via a
>>>>>>> webinterface,
>>>>>>> it's fine. If not, the way via u-boot works as well.
>>>>>>>
>>>>>>> Mathias
>>>>>>>
>>>>>>
>>>>>> Aren't you embarrassed being such a hypocrite liar?
>>>>>
>>>>> Prove your point or troll somewhere else.
>>>>>
>>>>> Mathias
>>>>>
>>>>
>>>> No u-boot upgrade, remember?
>>>> https://github.com/lede-project/source/pull/1246#issuecomment-320228337
>>>
>>> u-boot upgrade != upgrade via u-boot.
>>>
>>> --
>>> Cheers,
>>> Piotr
>>>
>>
>> Hi
>>
>> No, there was no misunderstanding. For kresin u-boot upgrade doesn't
>> lead to a working router even if one knows how to READ documentation
>> that explains upgrade via u-boot.
>>
> Are you on a vendetta?
>
> The install instructions from this patch recommends to do the initial
> OpenWrt installation via bootloader recovery. Nowhere a replacement of
> the preinstalled bootloader is mentioned.
>
> My linked comment rather proves my point, as I asked to test the
> provided instructions to do the initial OpenWrt installation via
> bootloader commandline instead of using the stock webinterface hack
> (which I asked to add to the wiki instead).
>

it proves exactly what i replied in this mail to pope2k

> Anyway, thanks for the chat
> Mathias
>

what chat? i do not use chatrooms, ever
diff mbox series

Patch

diff --git a/target/linux/ath79/base-files/etc/board.d/02_network b/target/linux/ath79/base-files/etc/board.d/02_network
index 004ab59573..b9a0f356bf 100755
--- a/target/linux/ath79/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/base-files/etc/board.d/02_network
@@ -93,6 +93,10 @@  ath79_setup_interfaces()
 	glinet,gl-x750)
 		ucidef_set_interfaces_lan_wan "eth1" "eth0"
 		;;
+	glinet,ar750s)
+		ucidef_add_switch "switch0" \
+			"0@eth0" "2:lan:2" "3:lan:1" "1:wan"
+		;;
 	nec,wg800hp)
 		ucidef_add_switch "switch0" \
 			"0@eth0" "2:lan" "3:lan" "4:lan" "1:wan"
diff --git a/target/linux/ath79/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ath79/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index 53f57be824..2118d2b06b 100644
--- a/target/linux/ath79/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ath79/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -92,6 +92,11 @@  case "$FIRMWARE" in
 		ath10kcal_extract "art" 20480 2116
 		ath10kcal_patch_mac_crc $(macaddr_add $(mtd_get_mac_binary art 0) -1)
 		;;
+	glinet,ar750s|\
+	tplink,re450-v2)
+		ath10kcal_extract "art" 20480 2116
+		ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +1)
+		;;
 	glinet,gl-x750)
 		ath10kcal_extract "art" 20480 2116
 		ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +1)
@@ -122,10 +127,6 @@  case "$FIRMWARE" in
 		ath10kcal_extract "art" 20480 2116
 		ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -1)
 		;;
-	tplink,re450-v2)
-		ath10kcal_extract "art" 20480 2116
-		ath10kcal_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) +1)
-		;;
 	ubnt,unifiac-lite|\
 	ubnt,unifiac-mesh|\
 	ubnt,unifiac-mesh-pro|\
diff --git a/target/linux/ath79/dts/qca9563_glinet_ar750s.dts b/target/linux/ath79/dts/qca9563_glinet_ar750s.dts
new file mode 100644
index 0000000000..64b346ae9c
--- /dev/null
+++ b/target/linux/ath79/dts/qca9563_glinet_ar750s.dts
@@ -0,0 +1,153 @@ 
+// 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 "qca956x.dtsi"
+
+/ {
+	compatible = "glinet,ar750s", "qca,qca9563";
+	model = "GL.iNet GL-AR750S";
+
+  chosen {
+		bootargs = "console=ttyS0,115200n8";
+	};
+
+	keys {
+		compatible = "gpio-keys-polled";
+		poll-interval = <20>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&jtag_disable_pins>;
+
+		button0 {
+			label = "reset";
+			linux,code = <KEY_RESTART>;
+			gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
+		};
+
+    button1 {
+			label = "button right";
+			linux,code = <BTN_0>;
+			gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
+		};
+
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		power {
+			label = "gl-ar750s:green:power";
+			gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
+			default-state = "keep";
+		};
+
+    usbpower {
+			label = "gl-ar750s:green:wan";
+			gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
+		};
+
+		wlan2g {
+			label = "gl-ar750s:green:wlan2g";
+			gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
+			linux,default-trigger = "phy1tpt";
+		};
+
+		wlan5g {
+			label = "gl-ar750s:green:wlan5g";
+			gpios = <&gpio 20 GPIO_ACTIVE_HIGH>;
+			linux,default-trigger = "phy0tpt";
+		};
+	};
+};
+
+&spi {
+	status = "okay";
+	num-cs = <0>;
+
+	flash@0 {
+		compatible = "jedec,spi-nor";
+		reg = <0>;
+		spi-max-frequency = <25000000>;
+
+		partitions {
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition@0 {
+				label = "u-boot";
+				reg = <0x000000 0x040000>;
+				read-only;
+			};
+
+			partition@40000 {
+				label = "u-boot-env";
+				reg = <0x040000 0x010000>;
+			};
+
+      art: partition@50000 {
+        label = "art";
+        reg = <0x050000 0x010000>;
+      };
+
+			partition@60000 {
+				compatible = "denx,uimage";
+				label = "firmware";
+				reg = <0x060000 0xfa0000>;
+			};
+
+		};
+	};
+};
+
+&pcie {
+	status = "okay";
+};
+
+&uart {
+	status = "okay";
+};
+
+&usb0 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	status = "okay";
+
+	hub_port: port@1 {
+		reg = <1>;
+		#trigger-source-cells = <0>;
+	};
+};
+
+&usb_phy0 {
+	status = "okay";
+};
+
+&mdio0 {
+	status = "okay";
+	phy-mask = <0>;
+
+	phy0: ethernet-phy@0 {
+		reg = <0>;
+		phy-mode = "sgmii";
+		qca,ar8327-initvals = <
+			0x04 0x00080080 /* PORT0 PAD MODE CTRL */
+			0x7c 0x0000007e /* PORT0_STATUS */
+		>;
+	};
+};
+
+&eth0 {
+	status = "okay";
+
+	mtd-mac-address = <&art 0x0>;
+	phy-handle = <&phy0>;
+};
+
+&wmac {
+	status = "okay";
+	mtd-cal-data = <&art 0x1000>;
+	mtd-mac-address = <&art 0x1002>;
+};
diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk
index b2f83ba58c..1a53618f5c 100644
--- a/target/linux/ath79/image/generic.mk
+++ b/target/linux/ath79/image/generic.mk
@@ -237,6 +237,18 @@  define Device/glinet_ar300m-nor
 endef
 TARGET_DEVICES += glinet_ar300m-nor
 
+define Device/glinet_ar750s
+  ATH_SOC := qca9563
+  DEVICE_TITLE := GL.iNet GL-AR750S
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb-core \
+	kmod-usb2 kmod-usb-storage
+  IMAGE_SIZE := 16000k
+  SUPPORTED_DEVICES += gl-ar750s
+  IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
+	append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
+endef
+TARGET_DEVICES += glinet_ar750s
+
 define Device/glinet_gl-x750
   ATH_SOC := qca9531
   DEVICE_TITLE := GL.iNet GL-X750