--- /dev/null
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "ar9344.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+ model = "MikroTik RouterBOARD 2011UiAS-2HnD";
+ compatible = "mikrotik,routerboard-2011uias-2hnd", "qca,ar9344";
+
+ aliases {
+ led-boot = &led_user;
+ led-failsafe = &led_user;
+ led-running = &led_user;
+ led-upgrade = &led_user;
+ };
+
+ keys {
+ compatible = "gpio-keys";
+
+ reset {
+ label = "reset";
+ linux,code = <KEY_RESTART>;
+ gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
+ debounce-interval = <60>;
+ };
+
+ poe-in {
+ label = "poe-in";
+ linux,input-type = <EV_SW>;
+ linux,code = <BTN_1>;
+ gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
+ debounce-interval = <60>;
+ };
+ };
+
+ beeper {
+ compatible = "gpio-beeper";
+ gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
+ };
+
+ sfp_i2c: i2c-gpio {
+ compatible = "i2c-gpio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pictrl-names = "default";
+ pinctrl-0 = <&pmx_sfp_i2c>;
+
+ sda-gpios = <&gpio 11 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ scl-gpios = <&gpio 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ i2c-gpio,delay-us = <2>;
+ };
+
+ sfp {
+ /*
+ * SFP port attached throug AR8327 port 6 isn't functional for now
+ * The module detects sucessfully, but lacks some GPIO definitions,
+ * and proper SGMII configuration isn't known yet.
+ */
+ compatible = "sff,sfp";
+ i2c-bus = <&sfp_i2c>;
+ los-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
+ maximum-power-milliwatt = <1000>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-0 {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_WLAN_2GHZ;
+ gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "phy0tpt";
+ };
+ };
+};
+
+&ref {
+ clock-frequency = <25000000>;
+};
+
+&gpio {
+ nand-nce {
+ gpio-hog;
+ gpios = <14 GPIO_ACTIVE_LOW>;
+ output-high;
+ line-name = "nand-nce";
+ };
+};
+
+&nand {
+ status = "okay";
+
+ nand-ecc-mode = "soft";
+ nand-ecc-step-size = <2048>;
+ qca,nand-swap-dma;
+ qca,nand-scan-fixup;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "booter";
+ reg = <0x0000000 0x0040000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "kernel";
+ reg = <0x0040000 0x03c0000>;
+ };
+
+ partition@400000 {
+ label = "ubi";
+ reg = <0x0400000 0x0>;
+ };
+ };
+};
+
+&pinmux {
+ pmx_sfp_i2c: pinmux_sfp_i2c {
+ pinctrl-single,bits = <0x8 0x00000000 0xff000000>; /* set GPIO11 back as GPIO */
+ };
+};
+
+&spi {
+ status = "okay";
+
+ flash@0 {
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <25000000>;
+
+ partitions {
+ compatible = "mikrotik,routerboot-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "routerboot";
+ reg = <0x0 0x0>;
+ read-only;
+ };
+
+ hard_config {
+ read-only;
+
+ nvmem-layout {
+ compatible = "fixed-layout";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ macaddr_hardconfig_10: macaddr@10 {
+ compatible = "mac-base";
+ reg = <0x10 0x6>;
+ #nvmem-cell-cells = <1>;
+ };
+ };
+ };
+
+ bios {
+ size = <0x1000>;
+ read-only;
+ };
+
+ soft_config {
+ };
+ };
+ };
+};
+
+&mdio0 {
+ status = "okay";
+ switch@1f {
+ compatible = "qca,ar8327";
+ reg = <0x1f>;
+
+ qca,ar8327-initvals = <
+ 0x04 0x07c00000 /* PORT0 PAD MODE CTRL: Mac0_rgmii_en | Mac0_rgmii_txclk_delay_en | Mac0_rgmii_rxclk_delay_en | Mac0_rgmii_txclk_delay_sel3 | Mac0_rgmii_rxclk_delay_sel0 */
+ 0x0c 0x00000080 /* PORT6 PAD MODE CTRL: Mac6_sgmii_en */
+ 0x10 0x81000000 /* PWS_REG: POWER_ON_STRAP | LED_OPEN_EN_CSR */
+ 0x50 0xc731c731 /* LED_CTRL0 */
+ 0x54 0x00000000 /* LED_CTRL1 */
+ 0x5c 0x0230c300 /* LED_CTRL3: 5C: enable SFP power */
+ 0x7c 0x0000007e /* PORT0_STATUS: DUPLEX_MODE_0 | RX_FLOW_EN_0 | TX_FLOW_EN_0 | RXMAC_EN_0 | TXMAC_EN_0 | SPEED_0 1000M */
+ 0x94 0x0000007e /* PORT6_STATUS: DUPLEX_MODE_0 | RX_FLOW_EN_0 | TX_FLOW_EN_0 | RXMAC_EN_0 | TXMAC_EN_0 | SPEED_0 1000M */
+ 0xe0 0xc701e7d0 /* SGMII_CTRL */
+ >;
+
+ leds {
+ led@0 {
+ reg = <0>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <1>;
+ qca,led-mode = <0>;
+ };
+
+ led@1 {
+ reg = <1>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <6>;
+ qca,led-mode = <1>;
+ };
+
+ lcd_backlight: led@2 {
+ reg = <2>;
+ color = <LED_COLOR_ID_WHITE>;
+ function = LED_FUNCTION_BACKLIGHT;
+ linux,default-trigger = "backlight";
+ active-low;
+ qca,led-mode = <1>;
+ };
+
+ led@3 {
+ reg = <3>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <2>;
+ qca,led-mode = <0>;
+ };
+
+ led@4 {
+ reg = <4>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <7>;
+ qca,led-mode = <1>;
+ };
+
+ led@6 {
+ reg = <6>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <3>;
+ qca,led-mode = <0>;
+ };
+
+ led@7 {
+ reg = <7>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <8>;
+ qca,led-mode = <1>;
+ };
+
+ led@9 {
+ reg = <9>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <4>;
+ qca,led-mode = <0>;
+ };
+
+ led@10 {
+ reg = <10>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <9>;
+ qca,led-mode = <1>;
+ };
+
+ led@12 {
+ reg = <12>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <5>;
+ qca,led-mode = <0>;
+ };
+
+ led@13 {
+ reg = <13>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "eth";
+ function-enumerator = <10>;
+ qca,led-mode = <1>;
+ };
+
+ led_user: led@14 {
+ reg = <14>;
+ color = <LED_COLOR_ID_GREEN>;
+ function = "user";
+ qca,led-mode = <1>;
+ };
+ };
+ };
+};
+
+ð0 {
+ status = "okay";
+
+ /* default for ar934x, except for 1000M */
+ pll-data = <0x6f000000 0x00000101 0x00001616>;
+
+ phy-mode = "rgmii";
+
+ nvmem-cells = <&macaddr_hardconfig_10 0>;
+ nvmem-cell-names = "mac-address";
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+
+ gmac-config {
+ device = <&gmac>;
+ rgmii-gmac0 = <1>;
+ switch-phy-swap = <0>;
+ switch-only-mode = <1>;
+ rxd-delay = <1>;
+ rxdv-delay = <1>;
+ };
+};
+
+&builtin_switch {
+ /delete-property/ qca,phy4-mii-enable;
+};
+
+ð1 {
+ status = "okay";
+
+ nvmem-cells = <&macaddr_hardconfig_10 5>;
+ nvmem-cell-names = "mac-address";
+};
+
+&usb {
+ status = "okay";
+};
+
+&usb_phy {
+ status = "okay";
+};
+
+&wmac {
+ status = "okay";
+
+ qca,no-eeprom;
+};