mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-02-14 06:05:07 +07:00
![Linus Torvalds](/assets/img/avatar_default.png)
Most of the commits are for additional hardware support and minor fixes for existing machines for all the usual platforms: qcom, amlogic, at91, gemini, mediatek, ti, socfpga, i.mx, layerscape, uniphier, rockchip, exynos, ux500, mvebu, tegra, stm32, renesas, sunxi, broadcom, omap, and versatile. The conversion of binding files to machine-readable yaml format continues, along with fixes found during the validation. Andre Przywara takes over maintainership for the old Calxeda Highbank platform and provides a number of updates. The OMAP2+ platforms see a continued move from platform data into dts files, for many devices that relied on a mix of auxiliary data in addition to the DT description A moderate number of new SoCs and machines are added, here is a full list: - Two new Qualcomm SoCs with their evaluation boards: Snapdragon 865 (SM8250) is the current high-end phone chip, and IPQ6018 is a new WiFi-6 router chip. - Mediatek MT8516 application processor SoC for voice assistants, along with the "pumpkin" development board - NXP i.MX8M Plus SoC, a variant of the popular i.MX8M, along with an evaluation board. - Kontron "sl28" board family based on NXP LS1028A - Eleven variations of the new i.MX6 TechNexion Pico board, combining the "dwarf", "hobbit", "nymph" and "pi" baseboards with i.MX6/i.MX7 SoM carriers - Three additional variants of the Toradex Colibri board family, all based on versions of the NXP i.MX7. - The Pinebook Pro laptop based on Rockchip RK3399 - Samsung S7710 Galaxy Xcover 2, a 2013 vintage Android phone based on the ST-Ericsson u8500 platform - DH Electronics DHCOM SoM and PDK2 rev. 400 carrier based on STMicroelectronics stm32mp157 - Renesas M3ULCB starter kit for R-Car M3-W+ - Hoperun HiHope development board with Renesas RZ/G2M - Pine64 PineTab tablet and PinePhone phone, both based on Allwinner A64 - Linutronix Testbox v2 for the Lamobo R1 router, based on Allwinner A20 - PocketBook Touch Lux 3 ebook reader, based on Allwinner A13 Signed-off-by: Arnd Bergmann <arnd@arndb.de> -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAl6HpMkACgkQmmx57+YA GNkGsQ/+KRbE74XGQvZww5PleaesqoZZhrt2gbi0pEJZ/JTgNa3dBkT+JwlToe/H x7nFVfMZeEl4O9GO0+/CH2tsmQa5BA8R9JddhFxwnZ48ZYLQAdaukwt94LM2zj3K GFgs47N4DAAF5QJoXNtmmQCXUWbj7A/0S5TTpXe94TYPN9XiJCdsyNNLpW3undTe K1HLnd4yWGforQc/VfRsV/Gsqi1VNHgL34M3belahiG7x0lytJDCHfhsfmIdxdGR n3LVRRJr6NhKcuUw3XtA8MxT4dTAcgHjbbDLkS/b1nHfuXMi0/zW8VPBzD/xyHL7 fbFl8ayUMANB6FD/U7ptUC/0IMXuHDUn4B60CEEzK8ddkEbErrmXlYVGogpFHxvm MqrW8CnO0YEr0YMNAIyZoqHYGq8+8DCq+SRH48brdPzuiKI6OahdV1o07ulGhOjq ihwoZNE+J0NjeaX7C1xBX3DT1XqdcNPCmu3gx6r06u2FVXVm1J19YkIzQnEXQvKy NRIw5LIOfEsxkMSQ0oUuAUUUY1Fq1zuHqD8MmgBd3jqIULQqgfahmPL6Dtwm5QFf R17YsMcQ7ae1Pp7a+D3Jrkbn+s2y8wmJZIqH3eWebps9RvpWmrxzsRfOJ2czhqM1 NY7Z/TGMM7lGM75DZ+xskfk7UCAX+hqMSTiNg9xbRo8946GAbV4= =ye2F -----END PGP SIGNATURE----- Merge tag 'arm-dt-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM devicetree updates from Arnd Bergmann: "Most of the commits are for additional hardware support and minor fixes for existing machines for all the usual platforms: qcom, amlogic, at91, gemini, mediatek, ti, socfpga, i.mx, layerscape, uniphier, rockchip, exynos, ux500, mvebu, tegra, stm32, renesas, sunxi, broadcom, omap, and versatile. The conversion of binding files to machine-readable yaml format continues, along with fixes found during the validation. Andre Przywara takes over maintainership for the old Calxeda Highbank platform and provides a number of updates. The OMAP2+ platforms see a continued move from platform data into dts files, for many devices that relied on a mix of auxiliary data in addition to the DT description A moderate number of new SoCs and machines are added, here is a full list: - Two new Qualcomm SoCs with their evaluation boards: Snapdragon 865 (SM8250) is the current high-end phone chip, and IPQ6018 is a new WiFi-6 router chip. - Mediatek MT8516 application processor SoC for voice assistants, along with the "pumpkin" development board - NXP i.MX8M Plus SoC, a variant of the popular i.MX8M, along with an evaluation board. - Kontron "sl28" board family based on NXP LS1028A - Eleven variations of the new i.MX6 TechNexion Pico board, combining the "dwarf", "hobbit", "nymph" and "pi" baseboards with i.MX6/i.MX7 SoM carriers - Three additional variants of the Toradex Colibri board family, all based on versions of the NXP i.MX7. - The Pinebook Pro laptop based on Rockchip RK3399 - Samsung S7710 Galaxy Xcover 2, a 2013 vintage Android phone based on the ST-Ericsson u8500 platform - DH Electronics DHCOM SoM and PDK2 rev. 400 carrier based on STMicroelectronics stm32mp157 - Renesas M3ULCB starter kit for R-Car M3-W+ - Hoperun HiHope development board with Renesas RZ/G2M - Pine64 PineTab tablet and PinePhone phone, both based on Allwinner A64 - Linutronix Testbox v2 for the Lamobo R1 router, based on Allwinner A20 - PocketBook Touch Lux 3 ebook reader, based on Allwinner A13" * tag 'arm-dt-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (520 commits) ARM: dts: ux500: Fix missing node renames arm64: dts: Revert "specify console via command line" MAINTAINERS: Update Calxeda Highbank maintainership arm: dts: calxeda: Group port-phys and sgpio-gpio items arm: dts: calxeda: Fix interrupt grouping arm: dts: calxeda: Provide UART clock arm: dts: calxeda: Basic DT file fixes arm64: dts: specify console via command line ARM: dts: at91: sama5d27_wlsom1_ek: add USB device node ARM: dts: gemini: Add thermal zone to DIR-685 ARM: dts: gemini: Rename IDE nodes ARM: socfpga: arria10: Add ptp_ref clock to ethernet nodes arm64: dts: ti: k3-j721e-mcu: add scm node and phy-gmii-sel nodes arm64: dts: ti: k3-am65-mcu: add phy-gmii-sel node arm64: dts: ti: k3-am65-mcu: Add DMA entries for ADC arm64: dts: ti: k3-am65-main: Add DMA entries for main_spi0 arm64: dts: ti: k3-j721e-mcu-wakeup: Add DMA entries for ADC arm64: dts: ti: k3-am65: Add clocks to dwc3 nodes arm64: dts: meson-g12b-odroid-n2: add SPIFC controller node arm64: dts: khadas-vim3: add SPIFC controller node ...
617 lines
12 KiB
Plaintext
617 lines
12 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (c) 2019 BayLibre SAS. All rights reserved.
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include "meson-sm1.dtsi"
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/input/input.h>
|
|
#include <dt-bindings/gpio/meson-g12a-gpio.h>
|
|
#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
|
|
|
|
/ {
|
|
compatible = "seirobotics,sei610", "amlogic,sm1";
|
|
model = "SEI Robotics SEI610";
|
|
|
|
aliases {
|
|
serial0 = &uart_AO;
|
|
ethernet0 = ðmac;
|
|
};
|
|
|
|
mono_dac: audio-codec-0 {
|
|
compatible = "maxim,max98357a";
|
|
#sound-dai-cells = <0>;
|
|
sound-name-prefix = "U16";
|
|
sdmode-gpios = <&gpio GPIOX_8 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
dmics: audio-codec-1 {
|
|
#sound-dai-cells = <0>;
|
|
compatible = "dmic-codec";
|
|
num-channels = <2>;
|
|
wakeup-delay-ms = <50>;
|
|
status = "okay";
|
|
sound-name-prefix = "MIC";
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = "serial0:115200n8";
|
|
};
|
|
|
|
emmc_pwrseq: emmc-pwrseq {
|
|
compatible = "mmc-pwrseq-emmc";
|
|
reset-gpios = <&gpio BOOT_12 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
|
|
key1 {
|
|
label = "A";
|
|
linux,code = <BTN_0>;
|
|
gpios = <&gpio GPIOH_6 GPIO_ACTIVE_LOW>;
|
|
interrupt-parent = <&gpio_intc>;
|
|
interrupts = <34 IRQ_TYPE_EDGE_BOTH>;
|
|
};
|
|
|
|
key2 {
|
|
label = "B";
|
|
linux,code = <BTN_1>;
|
|
gpios = <&gpio GPIOH_7 GPIO_ACTIVE_LOW>;
|
|
interrupt-parent = <&gpio_intc>;
|
|
interrupts = <35 IRQ_TYPE_EDGE_BOTH>;
|
|
};
|
|
|
|
key3 {
|
|
label = "C";
|
|
linux,code = <BTN_2>;
|
|
gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>;
|
|
interrupt-parent = <&gpio_intc>;
|
|
interrupts = <2 IRQ_TYPE_EDGE_BOTH>;
|
|
};
|
|
|
|
mic_mute {
|
|
label = "MicMute";
|
|
linux,code = <SW_MUTE_DEVICE>;
|
|
linux,input-type = <EV_SW>;
|
|
gpios = <&gpio_ao GPIOE_2 GPIO_ACTIVE_LOW>;
|
|
interrupt-parent = <&gpio_intc>;
|
|
interrupts = <99 IRQ_TYPE_EDGE_BOTH>;
|
|
};
|
|
|
|
power_key {
|
|
label = "PowerKey";
|
|
linux,code = <KEY_POWER>;
|
|
gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>;
|
|
interrupt-parent = <&gpio_intc>;
|
|
interrupts = <3 IRQ_TYPE_EDGE_BOTH>;
|
|
};
|
|
};
|
|
|
|
hdmi-connector {
|
|
compatible = "hdmi-connector";
|
|
type = "a";
|
|
|
|
port {
|
|
hdmi_connector_in: endpoint {
|
|
remote-endpoint = <&hdmi_tx_tmds_out>;
|
|
};
|
|
};
|
|
};
|
|
|
|
leds {
|
|
compatible = "gpio-leds";
|
|
|
|
bluetooth {
|
|
label = "sei610:blue:bt";
|
|
gpios = <&gpio GPIOC_7 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>;
|
|
default-state = "off";
|
|
};
|
|
};
|
|
|
|
pwmleds {
|
|
compatible = "pwm-leds";
|
|
|
|
power {
|
|
label = "sei610:red:power";
|
|
pwms = <&pwm_AO_ab 0 30518 0>;
|
|
max-brightness = <255>;
|
|
linux,default-trigger = "default-on";
|
|
active-low;
|
|
};
|
|
};
|
|
|
|
memory@0 {
|
|
device_type = "memory";
|
|
reg = <0x0 0x0 0x0 0x40000000>;
|
|
};
|
|
|
|
ao_5v: regulator-ao_5v {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "AO_5V";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
vin-supply = <&dc_in>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
dc_in: regulator-dc_in {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "DC_IN";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
emmc_1v8: regulator-emmc_1v8 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "EMMC_1V8";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
vin-supply = <&vddao_3v3>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
vddao_3v3: regulator-vddao_3v3 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VDDAO_3V3";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
vin-supply = <&dc_in>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
/* Used by Tuner, RGB Led & IR Emitter LED array */
|
|
vddao_3v3_t: regulator-vddao_3v3_t {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VDDAO_3V3_T";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
vin-supply = <&vddao_3v3>;
|
|
gpio = <&gpio GPIOH_8 GPIO_OPEN_DRAIN>;
|
|
enable-active-low;
|
|
regulator-always-on;
|
|
};
|
|
|
|
vddcpu: regulator-vddcpu {
|
|
/*
|
|
* SY8120B1ABC DC/DC Regulator.
|
|
*/
|
|
compatible = "pwm-regulator";
|
|
|
|
regulator-name = "VDDCPU";
|
|
regulator-min-microvolt = <690000>;
|
|
regulator-max-microvolt = <1050000>;
|
|
|
|
vin-supply = <&dc_in>;
|
|
|
|
pwms = <&pwm_AO_cd 1 1500 0>;
|
|
pwm-dutycycle-range = <100 0>;
|
|
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
|
|
vddio_ao1v8: regulator-vddio_ao1v8 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VDDIO_AO1V8";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
vin-supply = <&vddao_3v3>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
reserved-memory {
|
|
/* TEE Reserved Memory */
|
|
bl32_reserved: bl32@5000000 {
|
|
reg = <0x0 0x05300000 0x0 0x2000000>;
|
|
no-map;
|
|
};
|
|
};
|
|
|
|
sdio_pwrseq: sdio-pwrseq {
|
|
compatible = "mmc-pwrseq-simple";
|
|
reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
|
|
clocks = <&wifi32k>;
|
|
clock-names = "ext_clock";
|
|
};
|
|
|
|
sound {
|
|
compatible = "amlogic,axg-sound-card";
|
|
model = "SM1-SEI610";
|
|
audio-aux-devs = <&tdmout_a>, <&tdmout_b>,
|
|
<&tdmin_a>, <&tdmin_b>;
|
|
audio-routing = "TDMOUT_A IN 0", "FRDDR_A OUT 0",
|
|
"TDMOUT_A IN 1", "FRDDR_B OUT 0",
|
|
"TDMOUT_A IN 2", "FRDDR_C OUT 0",
|
|
"TDM_A Playback", "TDMOUT_A OUT",
|
|
"TDMOUT_B IN 0", "FRDDR_A OUT 1",
|
|
"TDMOUT_B IN 1", "FRDDR_B OUT 1",
|
|
"TDMOUT_B IN 2", "FRDDR_C OUT 1",
|
|
"TDM_B Playback", "TDMOUT_B OUT",
|
|
"TODDR_A IN 4", "PDM Capture",
|
|
"TODDR_B IN 4", "PDM Capture",
|
|
"TODDR_C IN 4", "PDM Capture",
|
|
"TDMIN_A IN 0", "TDM_A Capture",
|
|
"TDMIN_A IN 3", "TDM_A Loopback",
|
|
"TDMIN_B IN 0", "TDM_A Capture",
|
|
"TDMIN_B IN 3", "TDM_A Loopback",
|
|
"TDMIN_A IN 1", "TDM_B Capture",
|
|
"TDMIN_A IN 4", "TDM_B Loopback",
|
|
"TDMIN_B IN 1", "TDM_B Capture",
|
|
"TDMIN_B IN 4", "TDM_B Loopback",
|
|
"TODDR_A IN 0", "TDMIN_A OUT",
|
|
"TODDR_B IN 0", "TDMIN_A OUT",
|
|
"TODDR_C IN 0", "TDMIN_A OUT",
|
|
"TODDR_A IN 1", "TDMIN_B OUT",
|
|
"TODDR_B IN 1", "TDMIN_B OUT",
|
|
"TODDR_C IN 1", "TDMIN_B OUT";
|
|
|
|
assigned-clocks = <&clkc CLKID_MPLL2>,
|
|
<&clkc CLKID_MPLL0>,
|
|
<&clkc CLKID_MPLL1>;
|
|
assigned-clock-parents = <0>, <0>, <0>;
|
|
assigned-clock-rates = <294912000>,
|
|
<270950400>,
|
|
<393216000>;
|
|
status = "okay";
|
|
|
|
dai-link-0 {
|
|
sound-dai = <&frddr_a>;
|
|
};
|
|
|
|
dai-link-1 {
|
|
sound-dai = <&frddr_b>;
|
|
};
|
|
|
|
dai-link-2 {
|
|
sound-dai = <&frddr_c>;
|
|
};
|
|
|
|
dai-link-3 {
|
|
sound-dai = <&toddr_a>;
|
|
};
|
|
|
|
dai-link-4 {
|
|
sound-dai = <&toddr_b>;
|
|
};
|
|
|
|
dai-link-5 {
|
|
sound-dai = <&toddr_c>;
|
|
};
|
|
|
|
/* internal speaker interface */
|
|
dai-link-6 {
|
|
sound-dai = <&tdmif_a>;
|
|
dai-format = "i2s";
|
|
dai-tdm-slot-tx-mask-0 = <1 1>;
|
|
mclk-fs = <256>;
|
|
|
|
codec-0 {
|
|
sound-dai = <&mono_dac>;
|
|
};
|
|
|
|
codec-1 {
|
|
sound-dai = <&tohdmitx TOHDMITX_I2S_IN_A>;
|
|
};
|
|
};
|
|
|
|
/* 8ch hdmi interface */
|
|
dai-link-7 {
|
|
sound-dai = <&tdmif_b>;
|
|
dai-format = "i2s";
|
|
dai-tdm-slot-tx-mask-0 = <1 1>;
|
|
dai-tdm-slot-tx-mask-1 = <1 1>;
|
|
dai-tdm-slot-tx-mask-2 = <1 1>;
|
|
dai-tdm-slot-tx-mask-3 = <1 1>;
|
|
mclk-fs = <256>;
|
|
|
|
codec {
|
|
sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
|
|
};
|
|
};
|
|
|
|
/* internal digital mics */
|
|
dai-link-8 {
|
|
sound-dai = <&pdm>;
|
|
|
|
codec {
|
|
sound-dai = <&dmics>;
|
|
};
|
|
};
|
|
|
|
/* hdmi glue */
|
|
dai-link-9 {
|
|
sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
|
|
|
|
codec {
|
|
sound-dai = <&hdmi_tx>;
|
|
};
|
|
};
|
|
};
|
|
|
|
wifi32k: wifi32k {
|
|
compatible = "pwm-clock";
|
|
#clock-cells = <0>;
|
|
clock-frequency = <32768>;
|
|
pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
|
|
};
|
|
};
|
|
|
|
&arb {
|
|
status = "okay";
|
|
};
|
|
|
|
&cec_AO {
|
|
pinctrl-0 = <&cec_ao_a_h_pins>;
|
|
pinctrl-names = "default";
|
|
status = "disabled";
|
|
hdmi-phandle = <&hdmi_tx>;
|
|
};
|
|
|
|
&cecb_AO {
|
|
pinctrl-0 = <&cec_ao_b_h_pins>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
hdmi-phandle = <&hdmi_tx>;
|
|
};
|
|
|
|
&clkc_audio {
|
|
status = "okay";
|
|
};
|
|
|
|
&cpu0 {
|
|
cpu-supply = <&vddcpu>;
|
|
operating-points-v2 = <&cpu_opp_table>;
|
|
clocks = <&clkc CLKID_CPU_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&cpu1 {
|
|
cpu-supply = <&vddcpu>;
|
|
operating-points-v2 = <&cpu_opp_table>;
|
|
clocks = <&clkc CLKID_CPU1_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&cpu2 {
|
|
cpu-supply = <&vddcpu>;
|
|
operating-points-v2 = <&cpu_opp_table>;
|
|
clocks = <&clkc CLKID_CPU2_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&cpu3 {
|
|
cpu-supply = <&vddcpu>;
|
|
operating-points-v2 = <&cpu_opp_table>;
|
|
clocks = <&clkc CLKID_CPU3_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
ðmac {
|
|
status = "okay";
|
|
phy-handle = <&internal_ephy>;
|
|
phy-mode = "rmii";
|
|
};
|
|
|
|
&frddr_a {
|
|
status = "okay";
|
|
};
|
|
|
|
&frddr_b {
|
|
status = "okay";
|
|
};
|
|
|
|
&frddr_c {
|
|
status = "okay";
|
|
};
|
|
|
|
&hdmi_tx {
|
|
status = "okay";
|
|
pinctrl-0 = <&hdmitx_hpd_pins>, <&hdmitx_ddc_pins>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&hdmi_tx_tmds_port {
|
|
hdmi_tx_tmds_out: endpoint {
|
|
remote-endpoint = <&hdmi_connector_in>;
|
|
};
|
|
};
|
|
|
|
&i2c3 {
|
|
status = "okay";
|
|
pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&ir {
|
|
status = "okay";
|
|
pinctrl-0 = <&remote_input_ao_pins>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&pdm {
|
|
pinctrl-0 = <&pdm_din0_z_pins>, <&pdm_dclk_z_pins>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
};
|
|
|
|
&pwm_AO_ab {
|
|
status = "okay";
|
|
pinctrl-0 = <&pwm_ao_a_pins>;
|
|
pinctrl-names = "default";
|
|
clocks = <&xtal>;
|
|
clock-names = "clkin0";
|
|
};
|
|
|
|
&pwm_AO_cd {
|
|
pinctrl-0 = <&pwm_ao_d_e_pins>;
|
|
pinctrl-names = "default";
|
|
clocks = <&xtal>;
|
|
clock-names = "clkin1";
|
|
status = "okay";
|
|
};
|
|
|
|
&pwm_ef {
|
|
status = "okay";
|
|
pinctrl-0 = <&pwm_e_pins>;
|
|
pinctrl-names = "default";
|
|
clocks = <&xtal>;
|
|
clock-names = "clkin0";
|
|
};
|
|
|
|
&saradc {
|
|
status = "okay";
|
|
vref-supply = <&vddio_ao1v8>;
|
|
};
|
|
|
|
/* SDIO */
|
|
&sd_emmc_a {
|
|
status = "okay";
|
|
pinctrl-0 = <&sdio_pins>;
|
|
pinctrl-1 = <&sdio_clk_gate_pins>;
|
|
pinctrl-names = "default", "clk-gate";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
bus-width = <4>;
|
|
cap-sd-highspeed;
|
|
sd-uhs-sdr50;
|
|
max-frequency = <100000000>;
|
|
|
|
non-removable;
|
|
disable-wp;
|
|
|
|
/* WiFi firmware requires power to be kept while in suspend */
|
|
keep-power-in-suspend;
|
|
|
|
mmc-pwrseq = <&sdio_pwrseq>;
|
|
|
|
vmmc-supply = <&vddao_3v3>;
|
|
vqmmc-supply = <&vddio_ao1v8>;
|
|
|
|
brcmf: wifi@1 {
|
|
reg = <1>;
|
|
compatible = "brcm,bcm4329-fmac";
|
|
};
|
|
};
|
|
|
|
/* SD card */
|
|
&sd_emmc_b {
|
|
status = "okay";
|
|
pinctrl-0 = <&sdcard_c_pins>;
|
|
pinctrl-1 = <&sdcard_clk_gate_c_pins>;
|
|
pinctrl-names = "default", "clk-gate";
|
|
|
|
bus-width = <4>;
|
|
cap-sd-highspeed;
|
|
max-frequency = <50000000>;
|
|
disable-wp;
|
|
|
|
cd-gpios = <&gpio GPIOC_6 GPIO_ACTIVE_LOW>;
|
|
vmmc-supply = <&vddao_3v3>;
|
|
vqmmc-supply = <&vddao_3v3>;
|
|
};
|
|
|
|
/* eMMC */
|
|
&sd_emmc_c {
|
|
status = "okay";
|
|
pinctrl-0 = <&emmc_ctrl_pins>, <&emmc_data_8b_pins>, <&emmc_ds_pins>;
|
|
pinctrl-1 = <&emmc_clk_gate_pins>;
|
|
pinctrl-names = "default", "clk-gate";
|
|
|
|
bus-width = <8>;
|
|
cap-mmc-highspeed;
|
|
mmc-ddr-1_8v;
|
|
mmc-hs200-1_8v;
|
|
max-frequency = <200000000>;
|
|
non-removable;
|
|
disable-wp;
|
|
|
|
mmc-pwrseq = <&emmc_pwrseq>;
|
|
vmmc-supply = <&vddao_3v3>;
|
|
vqmmc-supply = <&emmc_1v8>;
|
|
};
|
|
|
|
&tdmif_a {
|
|
pinctrl-0 = <&tdm_a_dout0_pins>, <&tdm_a_fs_pins>, <&tdm_a_sclk_pins>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
|
|
assigned-clocks = <&clkc_audio AUD_CLKID_TDM_SCLK_PAD0>,
|
|
<&clkc_audio AUD_CLKID_TDM_LRCLK_PAD0>;
|
|
assigned-clock-parents = <&clkc_audio AUD_CLKID_MST_A_SCLK>,
|
|
<&clkc_audio AUD_CLKID_MST_A_LRCLK>;
|
|
assigned-clock-rates = <0>, <0>;
|
|
};
|
|
|
|
&tdmif_b {
|
|
status = "okay";
|
|
};
|
|
|
|
&tdmin_a {
|
|
status = "okay";
|
|
};
|
|
|
|
&tdmin_b {
|
|
status = "okay";
|
|
};
|
|
|
|
&tdmout_a {
|
|
status = "okay";
|
|
};
|
|
|
|
&tdmout_b {
|
|
status = "okay";
|
|
};
|
|
|
|
&toddr_a {
|
|
status = "okay";
|
|
};
|
|
|
|
&toddr_b {
|
|
status = "okay";
|
|
};
|
|
|
|
&toddr_c {
|
|
status = "okay";
|
|
};
|
|
|
|
&tohdmitx {
|
|
status = "okay";
|
|
};
|
|
|
|
&uart_A {
|
|
status = "okay";
|
|
pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
|
|
pinctrl-names = "default";
|
|
uart-has-rtscts;
|
|
|
|
bluetooth {
|
|
compatible = "brcm,bcm43438-bt";
|
|
interrupt-parent = <&gpio_intc>;
|
|
interrupts = <95 IRQ_TYPE_LEVEL_HIGH>;
|
|
interrupt-names = "host-wakeup";
|
|
shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
|
|
max-speed = <2000000>;
|
|
clocks = <&wifi32k>;
|
|
clock-names = "lpo";
|
|
vbat-supply = <&vddao_3v3>;
|
|
vddio-supply = <&vddio_ao1v8>;
|
|
};
|
|
};
|
|
|
|
/* Exposed via the on-board USB to Serial FT232RL IC */
|
|
&uart_AO {
|
|
status = "okay";
|
|
pinctrl-0 = <&uart_ao_a_pins>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&usb {
|
|
status = "okay";
|
|
dr_mode = "otg";
|
|
};
|