forked from openwrt/openwrt
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ath79: add support for MikroTik RouterBOARD 962UiGS-5HacT2HnT (hAP ac)
This patch adds support for the MikroTik RouterBOARD 962UiGS-5HacT2HnT (hAP ac) Specifications: - SoC: QCA9558 - RAM: 128 MB - Flash: 16 MB SPI - 2.4GHz WLAN: 3x3:3 802.11n on SoC - 5GHz WLAN: 3x3:3 802.11ac on QCA9880 connected via PCIe - Switch: 5x 1000/100/10 on QCA8337 connected via RGMII - SFP cage: connected via SGMII (tested with genuine & generic GLC-T) - USB: 1x type A, GPIO power switch - PoE: Passive input on Ether1, GPIO switched passthrough to Ether5 - Reset button - "SFP" LED connected to SoC - Ethernet LEDs connected to QCA8337 switch - Green WLAN LED connected to QCA9880 Not working: - Red WLAN LED Installation: TFTP boot initramfs image and then perform sysupgrade. Follow common MikroTik procedure as in https://openwrt.org/toh/mikrotik/common. Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
- Loading branch information
Showing
6 changed files
with
254 additions
and
0 deletions.
There are no files selected for viewing
37 changes: 37 additions & 0 deletions
37
target/linux/ath79/dts/qca9558_mikrotik_routerboard-962uigs-5hact2hnt.dts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT | ||
|
||
#include "qca9558_mikrotik_routerboard-96x.dtsi" | ||
|
||
/ { | ||
compatible = "mikrotik,routerboard-962uigs-5hact2hnt", "qca,qca9558"; | ||
model = "MikroTik RouterBOARD 962UiGS-5HacT2HnT (hAP ac)"; | ||
|
||
gpio-export { | ||
compatible = "gpio-export"; | ||
|
||
port5_poe { | ||
gpio-export,name = "port5-poe"; | ||
gpio-export,output = <1>; | ||
gpios = <&gpio 3 GPIO_ACTIVE_LOW>; | ||
}; | ||
}; | ||
}; | ||
|
||
&gpio { | ||
input-poe-out-compat { | ||
gpio-hog; | ||
gpios = <2 GPIO_ACTIVE_HIGH>; | ||
input; | ||
line-name = "PoE out compat"; | ||
}; | ||
}; | ||
|
||
&wmac { | ||
status = "okay"; | ||
|
||
qca,no-eeprom; | ||
}; | ||
|
||
&pcie1 { | ||
status = "okay"; | ||
}; |
198 changes: 198 additions & 0 deletions
198
target/linux/ath79/dts/qca9558_mikrotik_routerboard-96x.dtsi
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,198 @@ | ||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT | ||
|
||
#include "qca955x.dtsi" | ||
|
||
#include <dt-bindings/gpio/gpio.h> | ||
#include <dt-bindings/input/input.h> | ||
|
||
/ { | ||
aliases { | ||
led-boot = &led_user; | ||
led-failsafe = &led_user; | ||
led-upgrade = &led_user; | ||
serial0 = &uart; | ||
}; | ||
|
||
leds { | ||
compatible = "gpio-leds"; | ||
|
||
led_user: user { | ||
label = "green:user"; | ||
gpios = <&gpio 12 GPIO_ACTIVE_LOW>; | ||
}; | ||
}; | ||
|
||
keys { | ||
compatible = "gpio-keys"; | ||
|
||
reset { | ||
label = "reset"; | ||
linux,code = <KEY_RESTART>; | ||
gpios = <&gpio 20 GPIO_ACTIVE_LOW>; | ||
debounce-interval = <60>; | ||
}; | ||
}; | ||
|
||
gpio-export { | ||
compatible = "gpio-export"; | ||
|
||
buzzer { | ||
/* Beeper requires PWM for frequency selection */ | ||
gpio-export,name = "buzzer"; | ||
gpio-export,output = <0>; | ||
gpios = <&gpio 4 GPIO_ACTIVE_HIGH>; | ||
}; | ||
|
||
usb_power { | ||
gpio-export,name = "usb-power"; | ||
gpio-export,output = <0>; | ||
gpios = <&gpio 13 GPIO_ACTIVE_HIGH>; | ||
}; | ||
}; | ||
|
||
i2c: i2c { | ||
compatible = "i2c-gpio"; | ||
|
||
sda-gpios = <&gpio 18 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; | ||
scl-gpios = <&gpio 19 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; | ||
i2c-gpio,delay-us = <5>; | ||
i2c-gpio,timeout-ms = <1>; | ||
}; | ||
|
||
sfp1: sfp { | ||
compatible = "sff,sfp"; | ||
|
||
i2c-bus = <&i2c>; | ||
maximum-power-milliwatt = <1000>; | ||
los-gpios = <&gpio 21 GPIO_ACTIVE_HIGH>; | ||
mod-def0-gpios = <&gpio 17 GPIO_ACTIVE_LOW>; | ||
tx-disable-gpios = <&gpio 16 GPIO_ACTIVE_HIGH>; | ||
// Toggling GPIO16 actually enables/disables the transmitter, | ||
// but the SFP driver does not seem to be using it. | ||
}; | ||
}; | ||
|
||
&spi { | ||
status = "okay"; | ||
|
||
flash@0 { | ||
compatible = "jedec,spi-nor"; | ||
reg = <0>; | ||
spi-max-frequency = <40000000>; | ||
|
||
partitions { | ||
compatible = "fixed-partitions"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
|
||
partition@0 { | ||
label = "RouterBoot"; | ||
reg = <0x0 0x20000>; | ||
read-only; | ||
compatible = "mikrotik,routerboot-partitions"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
|
||
partition@0 { | ||
label = "bootloader1"; | ||
reg = <0x0 0x0>; | ||
read-only; | ||
}; | ||
|
||
hard_config { | ||
read-only; | ||
}; | ||
|
||
bios { | ||
size = <0x1000>; | ||
read-only; | ||
}; | ||
|
||
partition@10000 { | ||
label = "bootloader2"; | ||
reg = <0x10000 0x0>; | ||
read-only; | ||
}; | ||
|
||
soft_config { | ||
}; | ||
}; | ||
|
||
partition@20000 { | ||
compatible = "mikrotik,minor"; | ||
label = "firmware"; | ||
reg = <0x020000 0xfe0000>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
|
||
&mdio0 { | ||
status = "okay"; | ||
|
||
phy0: ethernet-phy@0 { | ||
reg = <0>; | ||
|
||
qca,ar8327-initvals = < | ||
/* PAD0_MODE from vendor firmware | ||
* RGMII_EN, TX/RXCLK_DELAY_EN, TXCLK_DELAY_SEL=1 | ||
*/ | ||
0x04 0x07400000 /* PAD0_MODE */ | ||
0x50 0xc737c737 /* LED_CTRL0 */ | ||
0x54 0x00000000 /* LED_CTRL1 */ | ||
0x58 0x00000000 /* LED_CTRL2 */ | ||
0x5c 0x0030c300 /* LED_CTRL3 */ | ||
0x7c 0x0000007e /* PORT0_STATUS */ | ||
>; | ||
}; | ||
}; | ||
|
||
ð0 { | ||
status = "okay"; | ||
|
||
phy-handle = <&phy0>; | ||
/* gigabit pll-data from vendor firmware | ||
* TX_INVERT, TX_DELAY=3, GIGE, OFFSET_PHASE | ||
*/ | ||
pll-data = <0x8f000000 0x00000101 0x00001616>; | ||
|
||
gmac-config { | ||
device = <&gmac>; | ||
rgmii-enabled = <1>; | ||
}; | ||
}; | ||
|
||
&mdio1 { | ||
status = "okay"; | ||
|
||
phy_sfp: ethernet-phy@0 { | ||
reg = <0>; | ||
phy-mode = "sgmii"; | ||
sfp = <&sfp1>; | ||
}; | ||
}; | ||
|
||
ð1 { | ||
status = "okay"; | ||
|
||
phy-handle = <&phy_sfp>; | ||
pll-data = <0x03000000 0x00000101 0x00001616>; | ||
qca955x-sgmii-fixup; | ||
|
||
gmac-config { | ||
device = <&gmac>; | ||
}; | ||
|
||
fixed-link { | ||
speed = <1000>; | ||
full-duplex; | ||
}; | ||
}; | ||
|
||
&usb0 { | ||
status = "okay"; | ||
}; | ||
|
||
&usb_phy0 { | ||
status = "okay"; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters