openwrt/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-ea6350v3.dts

274 lines
4.6 KiB
Plaintext
Raw Normal View History

ipq40xx: add support for Linksys EA6350v3 Specifications: SOC: Qualcomm IPQ4018 RAM: 256 MiB Samsung K4B2G1646F-BYK0 FLASH1: MX25L1605D 2 MB FLASH2: Winbond W25N01GV 128Mb ETH: Qualcomm QCA8075 WLAN0: Qualcomm Atheros QCA4018 2.4GHz 802.11b/g/n 2x2 WLAN1: Qualcomm Atheros QCA4018 5GHz 802.11n/ac W2 2x2 INPUT: WPS, Reset LED: Status - Green SERIAL: Header at J19, Beneath DC Power Jack 1-VCC ; 2-TX ; 3-RX; 4-GND; Serial 115200-8-N-1. Tested and working: - USB (requires extra packages) - LAN Ethernet (Correct MAC-address) - WAN Ethernet (Correct MAC-address) - 2.4 GHz WiFi (Correct MAC-address) - 5 GHz WiFi (Correct MAC-address) - Factory installation from Web UI - OpenWRT sysupgrade - LED - Reset Button Need Testing: - WPS button Install via Web UI: - Attach to a LAN port on the router. - Connect to the Linksys Smart WiFi Page (default 192.168.1.1) and login - Select the connectivity tab on the left - In the manual update box on the right - Select browse, and browse to openwrt-ipq40xx-linksys_ea6350v3-squashfs-factory.bin - Click update. - Read and accept the warning - The router LED will start blinking. When the router LED goes solid, you can now navigate to 192.168.1.1 to your new OpenWrt installation. Sysupgrade: - Flash the sysupgrade image as usual. Please: try to do a reset everytime you can (doing it with LuCI is easy and can be done in the same step). Recovery (Automatic): - If the device fails to boot after install or upgrade, whilst the unit is turned on: 1 - Wait 15 seconds 2 - Switch Off and Wait 10 seconds 3 - Switch on 4 - Repeat steps 1 to 3, 3 times then go to 5. 5 - U-boot will have now erased the failed update and switched back to the last working firmware - you should be able to access your router on LAN. Recovery (Manual): - The steps for manual recovery are the same as the generic u-boot tftp client method. Back To Stock: - Use the generic recovery using the tftp client method to flash the "civic.img". Also you can strip-and-pad the original image and use the generic "mtd" method by flashing over the "kernel" partition. * Just be careful to flash in the partition that the device is currently booted. Signed-off-by: Ryan Pannell <ryan@osukl.com> Signed-off-by: Oever González <notengobattery@gmail.com> [minor edits, removed second compatible of nand, added dtb entry to 4.19] Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-24 03:20:55 +00:00
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "qcom-ipq4019.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/soc/qcom,tcsr.h>
/ {
model = "Linksys EA6350v3";
compatible = "linksys,ea6350v3", "qcom,ipq4019";
aliases {
led-boot = &power;
led-failsafe = &power;
led-running = &power;
led-upgrade = &power;
};
soc {
mdio@90000 {
status = "okay";
};
ess-psgmii@98000 {
status = "okay";
};
tcsr@1949000 {
compatible = "qcom,tcsr";
reg = <0x1949000 0x100>;
qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
};
tcsr@194b000 {
compatible = "qcom,tcsr";
reg = <0x194b000 0x100>;
qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
};
ess_tcsr@1953000 {
compatible = "qcom,tcsr";
reg = <0x1953000 0x1000>;
qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
};
tcsr@1957000 {
compatible = "qcom,tcsr";
reg = <0x1957000 0x100>;
qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
};
usb2@60f8800 {
status = "okay";
};
usb3@8af8800 {
status = "okay";
};
crypto@8e3a000 {
status = "okay";
};
watchdog@b017000 {
status = "okay";
};
ess-switch@c000000 {
status = "okay";
};
edma@c080000 {
status = "okay";
};
};
keys {
compatible = "gpio-keys";
reset {
label = "reset";
gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
wps {
label = "wps";
gpios = <&tlmm 0 GPIO_ACTIVE_LOW>;
linux,code = <KEY_WPS_BUTTON>;
};
};
leds {
compatible = "gpio-leds";
power: status {
label = "EA6350v3:green:status";
gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>;
};
};
};
&blsp1_uart1 {
pinctrl-0 = <&serial_pins>;
pinctrl-names = "default";
status = "okay";
};
&cryptobam {
status = "okay";
};
&wifi0 {
status = "okay";
qcom,ath10k-calibration-variant = "linksys-ea6350v3";
};
&wifi1 {
status = "okay";
qcom,ath10k-calibration-variant = "linksys-ea6350v3";
};
&blsp_dma {
status = "okay";
};
&tlmm {
serial_pins: serial_pinmux {
mux {
pins = "gpio60", "gpio61";
function = "blsp_uart0";
bias-disable;
};
};
spi_0_pins: spi_0_pinmux {
mux {
function = "blsp_spi0";
pins = "gpio55", "gpio56", "gpio57";
drive-strength = <12>;
bias-disable;
};
mux_cs {
function = "gpio";
pins = "gpio54", "gpio59";
drive-strength = <2>;
bias-disable;
output-high;
};
};
};
&blsp1_spi1 { /* BLSP1 QUP1 */
pinctrl-0 = <&spi_0_pins>;
pinctrl-names = "default";
status = "okay";
cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>,
<&tlmm 59 GPIO_ACTIVE_HIGH>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <24000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
SBL1@0 {
label = "SBL1";
reg = <0x00000000 0x00040000>;
read-only;
};
MBIB@40000 {
label = "MIBIB";
reg = <0x00040000 0x00020000>;
read-only;
};
QSEE@60000 {
label = "QSEE";
reg = <0x00060000 0x00060000>;
read-only;
};
CDT@c0000 {
label = "CDT";
reg = <0x000c0000 0x00010000>;
read-only;
};
APPSBLENV@d0000 {
label = "APPSBLENV";
reg = <0x000d0000 0x00010000>;
read-only;
};
APPSBL@e0000 {
label = "APPSBL"; /* uboot */
reg = <0x000e0000 0x00080000>;
read-only;
};
ART@160000 {
label = "ART";
reg = <0x00160000 0x00010000>;
read-only;
};
u_env@170000 {
label = "u_env";
reg = <0x00170000 0x00020000>;
};
s_env@190000 {
label = "s_env";
reg = <0x00190000 0x00020000>;
};
devinfo@1b0000 {
label = "devinfo";
reg = <0x001b0000 0x00010000>;
};
/* 0x001c0000 - 0x00200000 unused */
};
};
flash@1 {
status = "okay";
compatible = "spinand,mt29f", "w25n01gv";
reg = <1>;
spi-max-frequency = <24000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
kernel@0 {
label = "kernel";
reg = <0x00000000 0x02800000>;
};
rootfs@300000 {
label = "rootfs";
reg = <0x00300000 0x02500000>;
};
alt_kernel@2800000 {
label = "alt_kernel";
reg = <0x02800000 0x02800000>;
};
alt_rootfs@2b00000 {
label = "alt_rootfs";
reg = <0x02b00000 0x02500000>;
};
sysdiag@5000000 {
label = "sysdiag";
reg = <0x05000000 0x00100000>;
};
syscfg@5100000 {
label = "syscfg";
reg = <0x05100000 0x02F00000>;
};
/* 0x00000000 - 0x08000000: 128 MiB */
};
};
};
&usb3_ss_phy {
status = "okay";
};
&usb3_hs_phy {
status = "okay";
};
&usb2_hs_phy {
status = "okay";
};