mirror of https://github.com/hak5/openwrt.git
ath79: add support for Xiaomi Mi Router 4Q
Hardware -------- CPU: Qualcomm Atheros QCA9561 RAM: 64M DDR2 FLASH: 16M SPI-NOR ETH: 1x WAN - 2x LAN WiFi: QCA9561 3T3R BTN: 1x Reset - 1x WPS LED: 1x Blue - 1x Red - 1x Yellow UART: TX - GND - RX - VCC (From ethernet port) 115200n8 - 3.3V Installation ------------ 1. Connect to the device via UART. 2. Interrupt the U-Boot on power-on by pressing enter when prompted. 3. Connect you computer to one of the routers LAN ports. Assign yourself the IP 192.168.31.10/24. Copy the OpenWRT initramfs image to a tftp server root directory. Rename the image to 'x4q.bin'. 4. Load the initramfs image to the router by executing following command in U-Boot. The image will boot afterwards. > tftpboot 0x81000000 x4q.bin; bootm 5. SCP the sysupgrade-image into '/tmp'. Remember to assign yourself an IP in 192.168.1.0/24 for this step! 6. Install OpenWRT permanently by executing > sysupgrade -n /tmp/<OpenWRT-sysupgrade-image> Signed-off-by: David Bauer <mail@david-bauer.net>openwrt-19.07
parent
4130e24326
commit
0c24b363a6
|
@ -216,6 +216,11 @@ ath79_setup_interfaces()
|
|||
ucidef_add_switch "switch0" \
|
||||
"0@eth0" "2:lan" "3:wan"
|
||||
;;
|
||||
xiaomi,mi-router-4q)
|
||||
ucidef_set_interface_wan "eth0"
|
||||
ucidef_add_switch "switch0" \
|
||||
"0@eth1" "3:lan:1" "4:lan:2"
|
||||
;;
|
||||
*)
|
||||
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
||||
;;
|
||||
|
|
|
@ -0,0 +1,153 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+ OR MIT
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
|
||||
#include "qca956x.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "xiaomi,mi-router-4q", "qca,qca9560";
|
||||
model = "Xiaomi Mi Router 4Q";
|
||||
|
||||
aliases {
|
||||
led-boot = &led_yellow;
|
||||
led-failsafe = &led_red;
|
||||
led-running = &led_blue;
|
||||
led-upgrade = &led_red;
|
||||
};
|
||||
|
||||
chosen {
|
||||
bootargs = "console=ttyS0,115200n8";
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys-polled";
|
||||
poll-interval = <100>;
|
||||
|
||||
reset {
|
||||
label = "Reset button";
|
||||
linux,code = <KEY_RESTART>;
|
||||
gpios = <&gpio 21 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
wps {
|
||||
label = "WPS/MI button";
|
||||
linux,code = <KEY_WPS_BUTTON>;
|
||||
gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led_red: led_red {
|
||||
label = "mi-router-4q:red:led";
|
||||
gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led_yellow: led_yellow {
|
||||
label = "mi-router-4q:yellow:led";
|
||||
gpios = <&gpio 22 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led_blue: led_blue {
|
||||
label = "mi-router-4q:blue:led";
|
||||
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&uart {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&spi {
|
||||
status = "okay";
|
||||
num-cs = <1>;
|
||||
|
||||
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 0x30000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@30000 {
|
||||
label = "nvram";
|
||||
reg = <0x030000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@40000 {
|
||||
label = "boarddata";
|
||||
reg = <0x40000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@50000 {
|
||||
label = "crash";
|
||||
reg = <0x50000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
art: partition@60000 {
|
||||
label = "art";
|
||||
reg = <0x60000 0x10000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@70000 {
|
||||
label = "cfg_bak";
|
||||
reg = <0x70000 0x20000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@90000 {
|
||||
label = "overlay";
|
||||
reg = <0x90000 0x170000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@200000 {
|
||||
compatible = "denx,uimage";
|
||||
label = "firmware";
|
||||
reg = <0x200000 0xe00000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ð0 {
|
||||
status = "okay";
|
||||
|
||||
phy-handle = <&swphy4>;
|
||||
mtd-mac-address = <&art 0x0>;
|
||||
};
|
||||
|
||||
ð1 {
|
||||
status = "okay";
|
||||
|
||||
mtd-mac-address = <&art 0x6>;
|
||||
};
|
||||
|
||||
&wmac {
|
||||
status = "okay";
|
||||
|
||||
mtd-cal-data = <&art 0x1000>;
|
||||
mtd-mac-address = <&art 0x0>;
|
||||
mtd-mac-address-increment = <1>;
|
||||
};
|
|
@ -528,3 +528,10 @@ define Device/winchannel_wb2000
|
|||
DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 kmod-usb-ledtrig-usbport
|
||||
endef
|
||||
TARGET_DEVICES += winchannel_wb2000
|
||||
|
||||
define Device/xiaomi_mi-router-4q
|
||||
ATH_SOC := qca9561
|
||||
DEVICE_TITLE := Xiaomi Mi Router 4Q
|
||||
IMAGE_SIZE := 14336k
|
||||
endef
|
||||
TARGET_DEVICES += xiaomi_mi-router-4q
|
||||
|
|
Loading…
Reference in New Issue