Qxwlan E2600AC C1 based on IPQ4019 Specifications: SOC: Qualcomm IPQ4019 DRAM: 256 MiB FLASH: 32 MiB Winbond W25Q256 ETH: Qualcomm QCA8075 WLAN: 5G + 5G/2.4G * 2T2R 2.4/5 GHz - QCA4019 hw1.0 (SoC) * 2T2R 5 GHz - QCA4019 hw1.0 (SoC) INPUT: Reset buutton LED: 1x Power ,6 driven by gpio SERIAL: UART (J5) UUSB: USB3.0 POWER: 1x DC jack for main power input (9-24 V) SLOT: Pcie (J25), sim card (J11), SD card (J51) Flash instruction (using U-Boot CLI and tftp server): - Configure PC with static IP 192.168.1.10 and tftp server. - Rename "sysupgrade" filename to "firmware.bin" and place it in tftp server directory. - Connect PC with one of RJ45 ports, power up the board and press "enter" key to access U-Boot CLI. - Use the following command to update the device to OpenWrt: "run lfw". Flash instruction (using U-Boot web-based recovery): - Configure PC with static IP 192.168.1.xxx(2-254)/24. - Connect PC with one of RJ45 ports, press the reset button, power up the board and keep button pressed for around 6-7 seconds, until LEDs start flashing. - Open your browser and enter 192.168.1.1, select "sysupgrade" image and click the upgrade button. Qxwlan E2600AC C2 based on IPQ4019 Specifications: SOC: Qualcomm IPQ4019 DRAM: 256 MiB NOR: 16 MiB Winbond W25Q128 NAND: 128MiB Micron MT29F1G08ABAEAWP ETH: Qualcomm QCA8075 WLAN: 5G + 5G/2.4G * 2T2R 2.4/5 GHz - QCA4019 hw1.0 (SoC) * 2T2R 5 GHz - QCA4019 hw1.0 (SoC) INPUT: Reset buutton LED: 1x Power, 6 driven by gpio SERIAL: UART (J5) USB: USB3.0 POWER: 1x DC jack for main power input (9-24 V) SLOT: Pcie (J25), sim card (J11), SD card (J51) Flash instruction (using U-Boot CLI and tftp server): - Configure PC with static IP 192.168.1.10 and tftp server. - Rename "ubi" filename to "ubi-firmware.bin" and place it in tftp server directory. - Connect PC with one of RJ45 ports, power up the board and press "enter" key to access U-Boot CLI. - Use the following command to update the device to OpenWrt: "run lfw". Flash instruction (using U-Boot web-based recovery): - Configure PC with static IP 192.168.1.xxx(2-254)/24. - Connect PC with one of RJ45 ports, press the reset button, power up the board and keep button pressed for around 6-7 seconds, until LEDs start flashing. - Open your browser and enter 192.168.1.1, select "ubi" image and click the upgrade button. Signed-off-by: 张鹏 <sd20@qxwlan.com> [ added rng node. whitespace fixes, ported 02_network, ipq-wifi Makefile, misc dts fixes, trivial message changes ] Signed-off-by: Christian Lamparter <chunkeey@gmail.com>master
parent
59c2f8af8c
commit
bbab33724d
Binary file not shown.
@ -0,0 +1,80 @@ |
||||
/* SPDX-License-Identifier: GPL-2.0-or-later OR MIT |
||||
* |
||||
* Copyright (c) 2018 Peng Zhang <sd20@qxwlan.com> |
||||
* |
||||
*/ |
||||
|
||||
#include "qcom-ipq4019-qxwlan-e2600ac.dtsi" |
||||
#include <dt-bindings/gpio/gpio.h> |
||||
#include <dt-bindings/input/input.h> |
||||
|
||||
/ { |
||||
model = "Qxwlan E2600AC c1"; |
||||
compatible = "qxwlan,e2600ac-c1", "qcom,ipq4019"; |
||||
}; |
||||
|
||||
&blsp1_spi1 { |
||||
pinctrl-0 = <&spi_0_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
cs-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>; |
||||
|
||||
flash@0 { |
||||
reg = <0>; |
||||
compatible = "jedec,spi-nor"; |
||||
spi-max-frequency = <24000000>; |
||||
|
||||
partitions { |
||||
compatible = "fixed-partitions"; |
||||
#address-cells = <1>; |
||||
#size-cells = <1>; |
||||
|
||||
partition@0 { |
||||
label = "0:SBL1"; |
||||
reg = <0x0 0x40000>; |
||||
read-only; |
||||
}; |
||||
partition@40000 { |
||||
label = "0:MIBIB"; |
||||
reg = <0x40000 0x20000>; |
||||
read-only; |
||||
}; |
||||
partition@60000 { |
||||
label = "0:QSEE"; |
||||
reg = <0x60000 0x60000>; |
||||
read-only; |
||||
}; |
||||
partition@c0000 { |
||||
label = "0:CDT"; |
||||
reg = <0xc0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@d0000 { |
||||
label = "0:DDRPARAMS"; |
||||
reg = <0xd0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@e0000 { |
||||
label = "0:APPSBLENV"; |
||||
reg = <0xe0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@f0000 { |
||||
label = "0:APPSBL"; |
||||
reg = <0xf0000 0x80000>; |
||||
read-only; |
||||
}; |
||||
partition@170000 { |
||||
label = "0:ART"; |
||||
reg = <0x170000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@180000 { |
||||
compatible = "denx,fit"; |
||||
label = "firmware"; |
||||
reg = <0x180000 0x1e80000>; |
||||
}; |
||||
}; |
||||
}; |
||||
}; |
||||
|
@ -0,0 +1,115 @@ |
||||
/* SPDX-License-Identifier: GPL-2.0-or-later OR MIT |
||||
* |
||||
* Copyright (c) 2018 Peng Zhang <sd20@qxwlan.com> |
||||
* |
||||
*/ |
||||
|
||||
#include "qcom-ipq4019-qxwlan-e2600ac.dtsi" |
||||
#include <dt-bindings/gpio/gpio.h> |
||||
#include <dt-bindings/input/input.h> |
||||
|
||||
/ { |
||||
model = "Qxwlan E2600AC c2"; |
||||
compatible = "qxwlan,e2600ac-c2", "qcom,ipq4019"; |
||||
}; |
||||
|
||||
&blsp1_spi1 { |
||||
pinctrl-0 = <&spi_0_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
cs-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>; |
||||
|
||||
flash@0 { |
||||
reg = <0>; |
||||
compatible = "jedec,spi-nor"; |
||||
spi-max-frequency = <24000000>; |
||||
|
||||
partitions { |
||||
compatible = "fixed-partitions"; |
||||
#address-cells = <1>; |
||||
#size-cells = <1>; |
||||
|
||||
partition@0 { |
||||
label = "0:SBL1"; |
||||
reg = <0x0 0x40000>; |
||||
read-only; |
||||
}; |
||||
partition@40000 { |
||||
label = "0:MIBIB"; |
||||
reg = <0x40000 0x20000>; |
||||
read-only; |
||||
}; |
||||
partition@60000 { |
||||
label = "0:QSEE"; |
||||
reg = <0x60000 0x60000>; |
||||
read-only; |
||||
}; |
||||
partition@c0000 { |
||||
label = "0:CDT"; |
||||
reg = <0xc0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@d0000 { |
||||
label = "0:DDRPARAMS"; |
||||
reg = <0xd0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@e0000 { |
||||
label = "0:APPSBLENV"; |
||||
reg = <0xe0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@f0000 { |
||||
label = "0:APPSBL"; |
||||
reg = <0xf0000 0x80000>; |
||||
read-only; |
||||
}; |
||||
partition@170000 { |
||||
label = "0:ART"; |
||||
reg = <0x170000 0x10000>; |
||||
read-only; |
||||
}; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
&nand { |
||||
pinctrl-0 = <&nand_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
|
||||
nand@0 { |
||||
partitions { |
||||
compatible = "fixed-partitions"; |
||||
#address-cells = <1>; |
||||
#size-cells = <1>; |
||||
|
||||
partition@0 { |
||||
label = "ubi"; |
||||
reg = <0x00000000 0x04000000>; |
||||
}; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
&tlmm { |
||||
nand_pins: nand-pins { |
||||
|
||||
pullups { |
||||
pins = "gpio53", "gpio58", "gpio59"; |
||||
function = "qpic"; |
||||
bias-pull-up; |
||||
}; |
||||
|
||||
pulldowns { |
||||
pins = "gpio54", "gpio55", "gpio56", |
||||
"gpio57", "gpio60", "gpio61", |
||||
"gpio62", "gpio63", "gpio64", |
||||
"gpio65", "gpio66", "gpio67", |
||||
"gpio68", "gpio69"; |
||||
function = "qpic"; |
||||
bias-pull-down; |
||||
}; |
||||
}; |
||||
}; |
||||
|
@ -0,0 +1,262 @@ |
||||
/* SPDX-License-Identifier: GPL-2.0-or-later OR MIT |
||||
* |
||||
* Copyright (c) 2018 Peng Zhang <sd20@qxwlan.com> |
||||
* |
||||
*/ |
||||
|
||||
#include "qcom-ipq4019.dtsi" |
||||
#include <dt-bindings/gpio/gpio.h> |
||||
#include <dt-bindings/input/input.h> |
||||
#include <dt-bindings/soc/qcom,tcsr.h> |
||||
|
||||
/ { |
||||
|
||||
model = "Qxwlan E2600AC"; |
||||
compatible = "qcom,ipq4019"; |
||||
|
||||
memory { |
||||
device_type = "memory"; |
||||
reg = <0x80000000 0x10000000>; /* 256MB */ |
||||
}; |
||||
|
||||
soc { |
||||
mdio@90000 { |
||||
status = "okay"; |
||||
pinctrl-0 = <&mdio_pins>; |
||||
pinctrl-names = "default"; |
||||
}; |
||||
|
||||
ess-psgmii@98000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
tcsr@1949000 { |
||||
compatible = "qcom,tcsr"; |
||||
reg = <0x1949000 0x100>; |
||||
qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>; |
||||
}; |
||||
|
||||
tcsr@194b000 { |
||||
/* select hostmode */ |
||||
compatible = "qcom,tcsr"; |
||||
reg = <0x194b000 0x100>; |
||||
qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>; |
||||
status = "okay"; |
||||
}; |
||||
|
||||
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: usb2@60f8800 { |
||||
status = "okay"; |
||||
|
||||
dwc3@6000000 { |
||||
#address-cells = <1>; |
||||
#size-cells = <0>; |
||||
|
||||
usb2_port1: port@1 { |
||||
reg = <1>; |
||||
#trigger-source-cells = <0>; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
serial@78af000 { |
||||
pinctrl-0 = <&serial_0_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
}; |
||||
|
||||
serial@78b0000 { |
||||
pinctrl-0 = <&serial_1_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
}; |
||||
|
||||
i2c@78b7000 { /* BLSP1 QUP2 */ |
||||
pinctrl-0 = <&i2c_0_pins>; |
||||
pinctrl-names = "default"; |
||||
|
||||
status = "okay"; |
||||
}; |
||||
|
||||
usb3: usb3@8af8800 { |
||||
status = "okay"; |
||||
|
||||
dwc3@8a00000 { |
||||
#address-cells = <1>; |
||||
#size-cells = <0>; |
||||
|
||||
usb3_port1: port@1 { |
||||
reg = <1>; |
||||
#trigger-source-cells = <0>; |
||||
}; |
||||
|
||||
usb3_port2: port@2 { |
||||
reg = <2>; |
||||
#trigger-source-cells = <0>; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
crypto@8e3a000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
watchdog@b017000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
ess-switch@c000000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
edma@c080000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
leds { |
||||
compatible = "gpio-leds"; |
||||
|
||||
led1 { |
||||
label = "e2600ac:green:wlan0"; |
||||
gpios = <&tlmm 50 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
|
||||
led2 { |
||||
label = "e2600ac:green:wlan1"; |
||||
gpios = <&tlmm 36 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
|
||||
led3 { |
||||
label = "e2600ac:green:usb"; |
||||
gpios = <&tlmm 32 GPIO_ACTIVE_LOW>; |
||||
trigger-sources = <&usb2_port1>, <&usb3_port1>, <&usb3_port2>; |
||||
linux,default-trigger = "usbport"; |
||||
}; |
||||
|
||||
led4 { |
||||
label = "e2600ac:green:ctrl1"; |
||||
gpios = <&tlmm 51 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
|
||||
led5 { |
||||
label = "e2600ac:green:ctrl2"; |
||||
gpios = <&tlmm 30 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
|
||||
led6 { |
||||
label = "e2600ac:green:ctrl3"; |
||||
gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
}; |
||||
|
||||
keys { |
||||
compatible = "gpio-keys"; |
||||
|
||||
reset { |
||||
label = "reset"; |
||||
gpios = <&tlmm 18 GPIO_ACTIVE_LOW>; |
||||
linux,code = <KEY_RESTART>; |
||||
}; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
&blsp_dma { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&cryptobam { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&qpic_bam { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&tlmm { |
||||
i2c_0_pins: i2c-0-pinmux { |
||||
mux { |
||||
pins = "gpio20", "gpio21"; |
||||
function = "blsp_i2c0"; |
||||
bias-disable; |
||||
}; |
||||
}; |
||||
|
||||
mdio_pins: mdio_pinmux { |
||||
mux_1 { |
||||
pins = "gpio6"; |
||||
function = "mdio"; |
||||
bias-pull-up; |
||||
}; |
||||
mux_2 { |
||||
pins = "gpio7"; |
||||
function = "mdc"; |
||||
bias-pull-up; |
||||
}; |
||||
}; |
||||
|
||||
serial_0_pins: serial0-pinmux { |
||||
mux { |
||||
pins = "gpio16", "gpio17"; |
||||
function = "blsp_uart0"; |
||||
bias-disable; |
||||
}; |
||||
}; |
||||
|
||||
serial_1_pins: serial1_pinmux { |
||||
mux { |
||||
pins = "gpio8", "gpio9"; |
||||
function = "blsp_uart1"; |
||||
bias-disable; |
||||
}; |
||||
}; |
||||
|
||||
spi_0_pins: spi_0_pinmux { |
||||
pinmux { |
||||
function = "blsp_spi0"; |
||||
pins = "gpio13", "gpio14", "gpio15"; |
||||
drive-strength = <12>; |
||||
bias-disable; |
||||
}; |
||||
pinmux_cs { |
||||
function = "gpio"; |
||||
pins = "gpio12"; |
||||
drive-strength = <2>; |
||||
bias-disable; |
||||
output-high; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
&usb3_ss_phy { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&usb3_hs_phy { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&usb2_hs_phy { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&wifi0 { |
||||
status = "okay"; |
||||
qcom,ath10k-calibration-variant = "Qxwlan-E2600AC"; |
||||
}; |
||||
|
||||
&wifi1 { |
||||
status = "okay"; |
||||
qcom,ath10k-calibration-variant = "Qxwlan-E2600AC"; |
||||
}; |
@ -0,0 +1,80 @@ |
||||
/* SPDX-License-Identifier: GPL-2.0-or-later OR MIT |
||||
* |
||||
* Copyright (c) 2018 Peng Zhang <sd20@qxwlan.com> |
||||
* |
||||
*/ |
||||
|
||||
#include "qcom-ipq4019-qxwlan-e2600ac.dtsi" |
||||
#include <dt-bindings/gpio/gpio.h> |
||||
#include <dt-bindings/input/input.h> |
||||
|
||||
/ { |
||||
model = "Qxwlan E2600AC c1"; |
||||
compatible = "qxwlan,e2600ac-c1"; |
||||
}; |
||||
|
||||
&blsp1_spi1 { |
||||
pinctrl-0 = <&spi_0_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
cs-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>; |
||||
|
||||
flash@0 { |
||||
reg = <0>; |
||||
compatible = "jedec,spi-nor"; |
||||
spi-max-frequency = <24000000>; |
||||
|
||||
partitions { |
||||
compatible = "fixed-partitions"; |
||||
#address-cells = <1>; |
||||
#size-cells = <1>; |
||||
|
||||
partition@0 { |
||||
label = "0:SBL1"; |
||||
reg = <0x0 0x40000>; |
||||
read-only; |
||||
}; |
||||
partition@40000 { |
||||
label = "0:MIBIB"; |
||||
reg = <0x40000 0x20000>; |
||||
read-only; |
||||
}; |
||||
partition@60000 { |
||||
label = "0:QSEE"; |
||||
reg = <0x60000 0x60000>; |
||||
read-only; |
||||
}; |
||||
partition@c0000 { |
||||
label = "0:CDT"; |
||||
reg = <0xc0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@d0000 { |
||||
label = "0:DDRPARAMS"; |
||||
reg = <0xd0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@e0000 { |
||||
label = "0:APPSBLENV"; |
||||
reg = <0xe0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@f0000 { |
||||
label = "0:APPSBL"; |
||||
reg = <0xf0000 0x80000>; |
||||
read-only; |
||||
}; |
||||
partition@170000 { |
||||
label = "0:ART"; |
||||
reg = <0x170000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@180000 { |
||||
compatible = "denx,fit"; |
||||
label = "firmware"; |
||||
reg = <0x180000 0x1e80000>; |
||||
}; |
||||
}; |
||||
}; |
||||
}; |
||||
|
@ -0,0 +1,115 @@ |
||||
/* SPDX-License-Identifier: GPL-2.0-or-later OR MIT |
||||
* |
||||
* Copyright (c) 2018 Peng Zhang <sd20@qxwlan.com> |
||||
* |
||||
*/ |
||||
|
||||
#include "qcom-ipq4019-qxwlan-e2600ac.dtsi" |
||||
#include <dt-bindings/gpio/gpio.h> |
||||
#include <dt-bindings/input/input.h> |
||||
|
||||
/ { |
||||
model = "Qxwlan E2600AC c2"; |
||||
compatible = "qxwlan,e2600ac-c2"; |
||||
}; |
||||
|
||||
&blsp1_spi1 { |
||||
pinctrl-0 = <&spi_0_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
cs-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>; |
||||
|
||||
flash@0 { |
||||
reg = <0>; |
||||
compatible = "jedec,spi-nor"; |
||||
spi-max-frequency = <24000000>; |
||||
|
||||
partitions { |
||||
compatible = "fixed-partitions"; |
||||
#address-cells = <1>; |
||||
#size-cells = <1>; |
||||
|
||||
partition@0 { |
||||
label = "0:SBL1"; |
||||
reg = <0x0 0x40000>; |
||||
read-only; |
||||
}; |
||||
partition@40000 { |
||||
label = "0:MIBIB"; |
||||
reg = <0x40000 0x20000>; |
||||
read-only; |
||||
}; |
||||
partition@60000 { |
||||
label = "0:QSEE"; |
||||
reg = <0x60000 0x60000>; |
||||
read-only; |
||||
}; |
||||
partition@c0000 { |
||||
label = "0:CDT"; |
||||
reg = <0xc0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@d0000 { |
||||
label = "0:DDRPARAMS"; |
||||
reg = <0xd0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@e0000 { |
||||
label = "0:APPSBLENV"; |
||||
reg = <0xe0000 0x10000>; |
||||
read-only; |
||||
}; |
||||
partition@f0000 { |
||||
label = "0:APPSBL"; |
||||
reg = <0xf0000 0x80000>; |
||||
read-only; |
||||
}; |
||||
partition@170000 { |
||||
label = "0:ART"; |
||||
reg = <0x170000 0x10000>; |
||||
read-only; |
||||
}; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
&nand { |
||||
pinctrl-0 = <&nand_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
|
||||
nand@0 { |
||||
partitions { |
||||
compatible = "fixed-partitions"; |
||||
#address-cells = <1>; |
||||
#size-cells = <1>; |
||||
|
||||
partition@0 { |
||||
label = "ubi"; |
||||
reg = <0x00000000 0x04000000>; |
||||
}; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
&tlmm { |
||||
nand_pins: nand-pins { |
||||
|
||||
pullups { |
||||
pins = "gpio53", "gpio58", "gpio59"; |
||||
function = "qpic"; |
||||
bias-pull-up; |
||||
}; |
||||
|
||||
pulldowns { |
||||
pins = "gpio54", "gpio55", "gpio56", |
||||
"gpio57", "gpio60", "gpio61", |
||||
"gpio62", "gpio63", "gpio64", |
||||
"gpio65", "gpio66", "gpio67", |
||||
"gpio68", "gpio69"; |
||||
function = "qpic"; |
||||
bias-pull-down; |
||||
}; |
||||
}; |
||||
}; |
||||
|
@ -0,0 +1,266 @@ |
||||
/* SPDX-License-Identifier: GPL-2.0-or-later OR MIT |
||||
* |
||||
* Copyright (c) 2018 Peng Zhang <sd20@qxwlan.com> |
||||
* |
||||
*/ |
||||
|
||||
#include "qcom-ipq4019.dtsi" |
||||
#include <dt-bindings/gpio/gpio.h> |
||||
#include <dt-bindings/input/input.h> |
||||
#include <dt-bindings/soc/qcom,tcsr.h> |
||||
|
||||
/ { |
||||
|
||||
model = "Qxwlan E2600AC"; |
||||
compatible = "qcom,ipq4019"; |
||||
|
||||
memory { |
||||
device_type = "memory"; |
||||
reg = <0x80000000 0x10000000>; /* 256MB */ |
||||
}; |
||||
|
||||
soc { |
||||
rng@22000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
mdio@90000 { |
||||
status = "okay"; |
||||
pinctrl-0 = <&mdio_pins>; |
||||
pinctrl-names = "default"; |
||||
}; |
||||
|
||||
ess-psgmii@98000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
tcsr@1949000 { |
||||
compatible = "qcom,tcsr"; |
||||
reg = <0x1949000 0x100>; |
||||
qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>; |
||||
}; |
||||
|
||||
tcsr@194b000 { |
||||
/* select hostmode */ |
||||
compatible = "qcom,tcsr"; |
||||
reg = <0x194b000 0x100>; |
||||
qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>; |
||||
status = "okay"; |
||||
}; |
||||
|
||||
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: usb2@60f8800 { |
||||
status = "okay"; |
||||
|
||||
dwc3@6000000 { |
||||
#address-cells = <1>; |
||||
#size-cells = <0>; |
||||
|
||||
usb2_port1: port@1 { |
||||
reg = <1>; |
||||
#trigger-source-cells = <0>; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
serial@78af000 { |
||||
pinctrl-0 = <&serial_0_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
}; |
||||
|
||||
serial@78b0000 { |
||||
pinctrl-0 = <&serial_1_pins>; |
||||
pinctrl-names = "default"; |
||||
status = "okay"; |
||||
}; |
||||
|
||||
i2c@78b7000 { /* BLSP1 QUP2 */ |
||||
pinctrl-0 = <&i2c_0_pins>; |
||||
pinctrl-names = "default"; |
||||
|
||||
status = "okay"; |
||||
}; |
||||
|
||||
usb3: usb3@8af8800 { |
||||
status = "okay"; |
||||
|
||||
dwc3@8a00000 { |
||||
#address-cells = <1>; |
||||
#size-cells = <0>; |
||||
|
||||
usb3_port1: port@1 { |
||||
reg = <1>; |
||||
#trigger-source-cells = <0>; |
||||
}; |
||||
|
||||
usb3_port2: port@2 { |
||||
reg = <2>; |
||||
#trigger-source-cells = <0>; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
crypto@8e3a000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
watchdog@b017000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
ess-switch@c000000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
edma@c080000 { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
leds { |
||||
compatible = "gpio-leds"; |
||||
|
||||
led1 { |
||||
label = "e2600ac:green:wlan0"; |
||||
gpios = <&tlmm 50 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
|
||||
led2 { |
||||
label = "e2600ac:green:wlan1"; |
||||
gpios = <&tlmm 36 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
|
||||
led3 { |
||||
label = "e2600ac:green:usb"; |
||||
gpios = <&tlmm 32 GPIO_ACTIVE_LOW>; |
||||
trigger-sources = <&usb2_port1>, <&usb3_port1>, <&usb3_port2>; |
||||
linux,default-trigger = "usbport"; |
||||
}; |
||||
|
||||
led4 { |
||||
label = "e2600ac:green:ctrl1"; |
||||
gpios = <&tlmm 51 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
|
||||
led5 { |
||||
label = "e2600ac:green:ctrl2"; |
||||
gpios = <&tlmm 30 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
|
||||
led6 { |
||||
label = "e2600ac:green:ctrl3"; |
||||
gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; |
||||
}; |
||||
}; |
||||
|
||||
keys { |
||||
compatible = "gpio-keys"; |
||||
|
||||
reset { |
||||
label = "reset"; |
||||
gpios = <&tlmm 18 GPIO_ACTIVE_LOW>; |
||||
linux,code = <KEY_RESTART>; |
||||
}; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
&blsp_dma { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&cryptobam { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&qpic_bam { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&tlmm { |
||||
i2c_0_pins: i2c-0-pinmux { |
||||
mux { |
||||
pins = "gpio20", "gpio21"; |
||||
function = "blsp_i2c0"; |
||||
bias-disable; |
||||
}; |
||||
}; |
||||
|
||||
mdio_pins: mdio_pinmux { |
||||
mux_1 { |
||||
pins = "gpio6"; |
||||
function = "mdio"; |
||||
bias-pull-up; |
||||
}; |
||||
mux_2 { |
||||
pins = "gpio7"; |
||||
function = "mdc"; |
||||
bias-pull-up; |
||||
}; |
||||
}; |
||||
|
||||
serial_0_pins: serial0-pinmux { |
||||
mux { |
||||
pins = "gpio16", "gpio17"; |
||||
function = "blsp_uart0"; |
||||
bias-disable; |
||||
}; |
||||
}; |
||||
|
||||
serial_1_pins: serial1_pinmux { |
||||
mux { |
||||
pins = "gpio8", "gpio9"; |
||||
function = "blsp_uart1"; |
||||
bias-disable; |
||||
}; |
||||
}; |
||||
|
||||
spi_0_pins: spi_0_pinmux { |
||||
pinmux { |
||||
function = "blsp_spi0"; |
||||
pins = "gpio13", "gpio14", "gpio15"; |
||||
drive-strength = <12>; |
||||
bias-disable; |
||||
}; |
||||
pinmux_cs { |
||||
function = "gpio"; |
||||
pins = "gpio12"; |
||||
drive-strength = <2>; |
||||
bias-disable; |
||||
output-high; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
&usb3_ss_phy { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&usb3_hs_phy { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&usb2_hs_phy { |
||||
status = "okay"; |
||||
}; |
||||
|
||||
&wifi0 { |
||||
status = "okay"; |
||||
qcom,ath10k-calibration-variant = "Qxwlan-E2600AC"; |
||||
}; |
||||
|
||||
&wifi1 { |
||||
status = "okay"; |
||||
qcom,ath10k-calibration-variant = "Qxwlan-E2600AC"; |
||||
}; |
Loading…
Reference in new issue