diff options
author | Khasim Syed Mohammed <khasim.mohammed@linaro.org> | 2019-01-29 12:40:21 +0530 |
---|---|---|
committer | Khasim Syed Mohammed <khasim.mohammed@linaro.org> | 2019-01-29 15:27:59 +0530 |
commit | 2c7258f0e60d7e704d3439eb4865f41b3483f886 (patch) | |
tree | 52100fcdcbcdf06154dd2314737f6129722364d6 | |
parent | 51228bae0bf1bd4fd60bedcbf11eb14012a40059 (diff) |
INTERNAL: arm64: dts: qcom: qcs404: Add dts file for EVB with QCA8335
Few EVB-4000 comes with QCA8335 ethernet Phy, as it's not default
this separate dts file is introduced to add the phy node.
Co-developed-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@linaro.org>
-rw-r--r-- | arch/arm64/boot/dts/qcom/Makefile | 1 | ||||
-rw-r--r-- | arch/arm64/boot/dts/qcom/qcs404-evb-4000-qca8k.dts | 138 |
2 files changed, 139 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile index 1eb869d72380..4d45307e065c 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -13,6 +13,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sdm845-cheza-r3.dtb dtb-$(CONFIG_ARCH_QCOM) += sdm845-mtp.dtb dtb-$(CONFIG_ARCH_QCOM) += qcs404-evb-1000.dtb dtb-$(CONFIG_ARCH_QCOM) += qcs404-evb-4000.dtb +dtb-$(CONFIG_ARCH_QCOM) += qcs404-evb-4000-qca8k.dtb always := $(dtb-y) subdir-y := $(dts-dirs) diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb-4000-qca8k.dts b/arch/arm64/boot/dts/qcom/qcs404-evb-4000-qca8k.dts new file mode 100644 index 000000000000..fa82f11e8850 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/qcs404-evb-4000-qca8k.dts @@ -0,0 +1,138 @@ +// SPDX-License-Identifier: GPL-2.0 +// Copyright (c) 2018, Linaro Limited + +/dts-v1/; + +#include <dt-bindings/gpio/gpio.h> +#include "qcs404-evb.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. QCS404 EVB 4000 QCA8K"; + compatible = "qcom,qcs404-evb"; +}; + +ðernet { + status = "ok"; + + snps,reset-gpio = <&tlmm 60 GPIO_ACTIVE_LOW>; + snps,reset-active-low; + snps,reset-delays-us = <0 10000 10000>; + + pinctrl-names = "default"; + pinctrl-0 = <ðernet_defaults>; + + phy-mode = "rgmii"; + + fixed-link { + speed = <1000>; + full-duplex; + }; + + mdio { + #address-cells = <0x1>; + #size-cells = <0x0>; + compatible = "snps,dwmac-mdio"; + + phy_port2: phy@1 { + reg = <1>; + }; + + phy_port3: phy@2 { + reg = <2>; + }; + + switch0@16 { + compatible = "qca,qca8334"; + #address-cells = <1>; + #size-cells = <0>; + + reg = <16>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + cpu_port1: port@0 { + reg = <0>; + label = "cpu"; + ethernet = <ðernet>; + phy-mode = "rgmii"; + fixed-link { + speed = <1000>; + full-duplex; + }; + }; + + port@2 { + reg = <2>; + label = "top"; + cpu = <&cpu_port1>; + phy-handle = <&phy_port2>; + }; + + port@3 { + reg = <3>; + label = "bottom"; + cpu = <&cpu_port1>; + phy-handle = <&phy_port3>; + }; + }; + }; + }; +}; + +&tlmm { + ethernet_defaults: ethernet-defaults { + int { + pins = "gpio61"; + function = "rgmii_int"; + bias-disable; + drive-strength = <2>; + }; + mdc { + pins = "gpio76"; + function = "rgmii_mdc"; + bias-pull-up; + }; + mdio { + pins = "gpio75"; + function = "rgmii_mdio"; + bias-pull-up; + }; + tx { + pins = "gpio67", "gpio66", "gpio65", "gpio64"; + function = "rgmii_tx"; + bias-pull-up; + drive-strength = <16>; + }; + rx { + pins = "gpio73", "gpio72", "gpio71", "gpio70"; + function = "rgmii_rx"; + bias-disable; + drive-strength = <2>; + }; + tx-ctl { + pins = "gpio68"; + function = "rgmii_ctl"; + bias-pull-up; + drive-strength = <16>; + }; + rx-ctl { + pins = "gpio74"; + function = "rgmii_ctl"; + bias-disable; + drive-strength = <2>; + }; + tx-ck { + pins = "gpio63"; + function = "rgmii_ck"; + bias-pull-up; + drive-strength = <16>; + }; + rx-ck { + pins = "gpio69"; + function = "rgmii_ck"; + bias-disable; + drive-strength = <2>; + }; + }; +}; |