162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2017 Texas Instruments Incorporated - https://www.ti.com/ 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#include "dra74-ipu-dsp-common.dtsi" 762306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h> 862306a36Sopenharmony_ci#include <dt-bindings/clock/ti-dra7-atl.h> 962306a36Sopenharmony_ci#include <dt-bindings/input/input.h> 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci/ { 1262306a36Sopenharmony_ci chosen { 1362306a36Sopenharmony_ci stdout-path = &uart1; 1462306a36Sopenharmony_ci }; 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci extcon_usb1: extcon_usb1 { 1762306a36Sopenharmony_ci compatible = "linux,extcon-usb-gpio"; 1862306a36Sopenharmony_ci id-gpio = <&pcf_gpio_21 1 GPIO_ACTIVE_HIGH>; 1962306a36Sopenharmony_ci }; 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci extcon_usb2: extcon_usb2 { 2262306a36Sopenharmony_ci compatible = "linux,extcon-usb-gpio"; 2362306a36Sopenharmony_ci id-gpio = <&pcf_gpio_21 2 GPIO_ACTIVE_HIGH>; 2462306a36Sopenharmony_ci }; 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ci sound0: sound0 { 2762306a36Sopenharmony_ci compatible = "simple-audio-card"; 2862306a36Sopenharmony_ci simple-audio-card,name = "DRA7xx-EVM"; 2962306a36Sopenharmony_ci simple-audio-card,widgets = 3062306a36Sopenharmony_ci "Headphone", "Headphone Jack", 3162306a36Sopenharmony_ci "Line", "Line Out", 3262306a36Sopenharmony_ci "Microphone", "Mic Jack", 3362306a36Sopenharmony_ci "Line", "Line In"; 3462306a36Sopenharmony_ci simple-audio-card,routing = 3562306a36Sopenharmony_ci "Headphone Jack", "HPLOUT", 3662306a36Sopenharmony_ci "Headphone Jack", "HPROUT", 3762306a36Sopenharmony_ci "Line Out", "LLOUT", 3862306a36Sopenharmony_ci "Line Out", "RLOUT", 3962306a36Sopenharmony_ci "MIC3L", "Mic Jack", 4062306a36Sopenharmony_ci "MIC3R", "Mic Jack", 4162306a36Sopenharmony_ci "Mic Jack", "Mic Bias", 4262306a36Sopenharmony_ci "LINE1L", "Line In", 4362306a36Sopenharmony_ci "LINE1R", "Line In"; 4462306a36Sopenharmony_ci simple-audio-card,format = "dsp_b"; 4562306a36Sopenharmony_ci simple-audio-card,bitclock-master = <&sound0_master>; 4662306a36Sopenharmony_ci simple-audio-card,frame-master = <&sound0_master>; 4762306a36Sopenharmony_ci simple-audio-card,bitclock-inversion; 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci sound0_master: simple-audio-card,cpu { 5062306a36Sopenharmony_ci sound-dai = <&mcasp3>; 5162306a36Sopenharmony_ci system-clock-frequency = <5644800>; 5262306a36Sopenharmony_ci }; 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci simple-audio-card,codec { 5562306a36Sopenharmony_ci sound-dai = <&tlv320aic3106>; 5662306a36Sopenharmony_ci clocks = <&atl_clkin2_ck>; 5762306a36Sopenharmony_ci }; 5862306a36Sopenharmony_ci }; 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci leds { 6162306a36Sopenharmony_ci compatible = "gpio-leds"; 6262306a36Sopenharmony_ci led0 { 6362306a36Sopenharmony_ci label = "dra7:usr1"; 6462306a36Sopenharmony_ci gpios = <&pcf_lcd 4 GPIO_ACTIVE_LOW>; 6562306a36Sopenharmony_ci default-state = "off"; 6662306a36Sopenharmony_ci }; 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci led1 { 6962306a36Sopenharmony_ci label = "dra7:usr2"; 7062306a36Sopenharmony_ci gpios = <&pcf_lcd 5 GPIO_ACTIVE_LOW>; 7162306a36Sopenharmony_ci default-state = "off"; 7262306a36Sopenharmony_ci }; 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ci led2 { 7562306a36Sopenharmony_ci label = "dra7:usr3"; 7662306a36Sopenharmony_ci gpios = <&pcf_lcd 6 GPIO_ACTIVE_LOW>; 7762306a36Sopenharmony_ci default-state = "off"; 7862306a36Sopenharmony_ci }; 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci led3 { 8162306a36Sopenharmony_ci label = "dra7:usr4"; 8262306a36Sopenharmony_ci gpios = <&pcf_lcd 7 GPIO_ACTIVE_LOW>; 8362306a36Sopenharmony_ci default-state = "off"; 8462306a36Sopenharmony_ci }; 8562306a36Sopenharmony_ci }; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci gpio_keys { 8862306a36Sopenharmony_ci compatible = "gpio-keys"; 8962306a36Sopenharmony_ci #address-cells = <1>; 9062306a36Sopenharmony_ci #size-cells = <0>; 9162306a36Sopenharmony_ci autorepeat; 9262306a36Sopenharmony_ci 9362306a36Sopenharmony_ci USER1 { 9462306a36Sopenharmony_ci label = "btnUser1"; 9562306a36Sopenharmony_ci linux,code = <BTN_0>; 9662306a36Sopenharmony_ci gpios = <&pcf_lcd 2 GPIO_ACTIVE_LOW>; 9762306a36Sopenharmony_ci }; 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_ci USER2 { 10062306a36Sopenharmony_ci label = "btnUser2"; 10162306a36Sopenharmony_ci linux,code = <BTN_1>; 10262306a36Sopenharmony_ci gpios = <&pcf_lcd 3 GPIO_ACTIVE_LOW>; 10362306a36Sopenharmony_ci }; 10462306a36Sopenharmony_ci }; 10562306a36Sopenharmony_ci}; 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci&i2c3 { 10862306a36Sopenharmony_ci status = "okay"; 10962306a36Sopenharmony_ci clock-frequency = <400000>; 11062306a36Sopenharmony_ci}; 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci&mcspi1 { 11362306a36Sopenharmony_ci status = "okay"; 11462306a36Sopenharmony_ci}; 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ci&mcspi2 { 11762306a36Sopenharmony_ci status = "okay"; 11862306a36Sopenharmony_ci}; 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci&uart1 { 12162306a36Sopenharmony_ci status = "okay"; 12262306a36Sopenharmony_ci interrupts-extended = <&crossbar_mpu GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, 12362306a36Sopenharmony_ci <&dra7_pmx_core 0x3e0>; 12462306a36Sopenharmony_ci}; 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci&uart2 { 12762306a36Sopenharmony_ci status = "okay"; 12862306a36Sopenharmony_ci}; 12962306a36Sopenharmony_ci 13062306a36Sopenharmony_ci&uart3 { 13162306a36Sopenharmony_ci status = "okay"; 13262306a36Sopenharmony_ci}; 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ci&qspi { 13562306a36Sopenharmony_ci status = "okay"; 13662306a36Sopenharmony_ci 13762306a36Sopenharmony_ci spi-max-frequency = <76800000>; 13862306a36Sopenharmony_ci flash@0 { 13962306a36Sopenharmony_ci compatible = "s25fl256s1"; 14062306a36Sopenharmony_ci spi-max-frequency = <76800000>; 14162306a36Sopenharmony_ci reg = <0>; 14262306a36Sopenharmony_ci spi-tx-bus-width = <1>; 14362306a36Sopenharmony_ci spi-rx-bus-width = <4>; 14462306a36Sopenharmony_ci #address-cells = <1>; 14562306a36Sopenharmony_ci #size-cells = <1>; 14662306a36Sopenharmony_ci 14762306a36Sopenharmony_ci /* MTD partition table. 14862306a36Sopenharmony_ci * The ROM checks the first four physical blocks 14962306a36Sopenharmony_ci * for a valid file to boot and the flash here is 15062306a36Sopenharmony_ci * 64KiB block size. 15162306a36Sopenharmony_ci */ 15262306a36Sopenharmony_ci partition@0 { 15362306a36Sopenharmony_ci label = "QSPI.SPL"; 15462306a36Sopenharmony_ci reg = <0x00000000 0x00010000>; 15562306a36Sopenharmony_ci }; 15662306a36Sopenharmony_ci partition@1 { 15762306a36Sopenharmony_ci label = "QSPI.SPL.backup1"; 15862306a36Sopenharmony_ci reg = <0x00010000 0x00010000>; 15962306a36Sopenharmony_ci }; 16062306a36Sopenharmony_ci partition@2 { 16162306a36Sopenharmony_ci label = "QSPI.SPL.backup2"; 16262306a36Sopenharmony_ci reg = <0x00020000 0x00010000>; 16362306a36Sopenharmony_ci }; 16462306a36Sopenharmony_ci partition@3 { 16562306a36Sopenharmony_ci label = "QSPI.SPL.backup3"; 16662306a36Sopenharmony_ci reg = <0x00030000 0x00010000>; 16762306a36Sopenharmony_ci }; 16862306a36Sopenharmony_ci partition@4 { 16962306a36Sopenharmony_ci label = "QSPI.u-boot"; 17062306a36Sopenharmony_ci reg = <0x00040000 0x00100000>; 17162306a36Sopenharmony_ci }; 17262306a36Sopenharmony_ci partition@5 { 17362306a36Sopenharmony_ci label = "QSPI.u-boot-spl-os"; 17462306a36Sopenharmony_ci reg = <0x00140000 0x00080000>; 17562306a36Sopenharmony_ci }; 17662306a36Sopenharmony_ci partition@6 { 17762306a36Sopenharmony_ci label = "QSPI.u-boot-env"; 17862306a36Sopenharmony_ci reg = <0x001c0000 0x00010000>; 17962306a36Sopenharmony_ci }; 18062306a36Sopenharmony_ci partition@7 { 18162306a36Sopenharmony_ci label = "QSPI.u-boot-env.backup1"; 18262306a36Sopenharmony_ci reg = <0x001d0000 0x0010000>; 18362306a36Sopenharmony_ci }; 18462306a36Sopenharmony_ci partition@8 { 18562306a36Sopenharmony_ci label = "QSPI.kernel"; 18662306a36Sopenharmony_ci reg = <0x001e0000 0x0800000>; 18762306a36Sopenharmony_ci }; 18862306a36Sopenharmony_ci partition@9 { 18962306a36Sopenharmony_ci label = "QSPI.file-system"; 19062306a36Sopenharmony_ci reg = <0x009e0000 0x01620000>; 19162306a36Sopenharmony_ci }; 19262306a36Sopenharmony_ci }; 19362306a36Sopenharmony_ci}; 19462306a36Sopenharmony_ci 19562306a36Sopenharmony_ci&omap_dwc3_1 { 19662306a36Sopenharmony_ci extcon = <&extcon_usb1>; 19762306a36Sopenharmony_ci}; 19862306a36Sopenharmony_ci 19962306a36Sopenharmony_ci&usb1 { 20062306a36Sopenharmony_ci dr_mode = "otg"; 20162306a36Sopenharmony_ci extcon = <&extcon_usb1>; 20262306a36Sopenharmony_ci}; 20362306a36Sopenharmony_ci 20462306a36Sopenharmony_ci&omap_dwc3_2 { 20562306a36Sopenharmony_ci extcon = <&extcon_usb2>; 20662306a36Sopenharmony_ci}; 20762306a36Sopenharmony_ci 20862306a36Sopenharmony_ci&usb2 { 20962306a36Sopenharmony_ci dr_mode = "host"; 21062306a36Sopenharmony_ci extcon = <&extcon_usb2>; 21162306a36Sopenharmony_ci}; 21262306a36Sopenharmony_ci 21362306a36Sopenharmony_ci&atl { 21462306a36Sopenharmony_ci assigned-clocks = <&abe_dpll_sys_clk_mux>, 21562306a36Sopenharmony_ci <&atl_clkctrl DRA7_ATL_ATL_CLKCTRL 26>, 21662306a36Sopenharmony_ci <&dpll_abe_ck>, 21762306a36Sopenharmony_ci <&dpll_abe_m2x2_ck>, 21862306a36Sopenharmony_ci <&atl_clkin2_ck>; 21962306a36Sopenharmony_ci assigned-clock-parents = <&sys_clkin2>, <&dpll_abe_m2_ck>; 22062306a36Sopenharmony_ci assigned-clock-rates = <0>, <0>, <180633600>, <361267200>, <5644800>; 22162306a36Sopenharmony_ci 22262306a36Sopenharmony_ci status = "okay"; 22362306a36Sopenharmony_ci 22462306a36Sopenharmony_ci atl2 { 22562306a36Sopenharmony_ci bws = <DRA7_ATL_WS_MCASP2_FSX>; 22662306a36Sopenharmony_ci aws = <DRA7_ATL_WS_MCASP3_FSX>; 22762306a36Sopenharmony_ci }; 22862306a36Sopenharmony_ci}; 22962306a36Sopenharmony_ci 23062306a36Sopenharmony_ci&mcasp3 { 23162306a36Sopenharmony_ci #sound-dai-cells = <0>; 23262306a36Sopenharmony_ci 23362306a36Sopenharmony_ci assigned-clocks = <&l4per2_clkctrl DRA7_L4PER2_MCASP3_CLKCTRL 24>; 23462306a36Sopenharmony_ci assigned-clock-parents = <&atl_clkin2_ck>; 23562306a36Sopenharmony_ci 23662306a36Sopenharmony_ci status = "okay"; 23762306a36Sopenharmony_ci 23862306a36Sopenharmony_ci op-mode = <0>; /* MCASP_IIS_MODE */ 23962306a36Sopenharmony_ci tdm-slots = <2>; 24062306a36Sopenharmony_ci /* 4 serializer */ 24162306a36Sopenharmony_ci serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 24262306a36Sopenharmony_ci 1 2 0 0 24362306a36Sopenharmony_ci >; 24462306a36Sopenharmony_ci tx-num-evt = <32>; 24562306a36Sopenharmony_ci rx-num-evt = <32>; 24662306a36Sopenharmony_ci}; 24762306a36Sopenharmony_ci 24862306a36Sopenharmony_ci&pcie1_rc { 24962306a36Sopenharmony_ci status = "okay"; 25062306a36Sopenharmony_ci}; 25162306a36Sopenharmony_ci 25262306a36Sopenharmony_ci&mmc4 { 25362306a36Sopenharmony_ci bus-width = <4>; 25462306a36Sopenharmony_ci cap-power-off-card; 25562306a36Sopenharmony_ci keep-power-in-suspend; 25662306a36Sopenharmony_ci non-removable; 25762306a36Sopenharmony_ci #address-cells = <1>; 25862306a36Sopenharmony_ci #size-cells = <0>; 25962306a36Sopenharmony_ci wifi@2 { 26062306a36Sopenharmony_ci compatible = "ti,wl1835"; 26162306a36Sopenharmony_ci reg = <2>; 26262306a36Sopenharmony_ci interrupt-parent = <&gpio5>; 26362306a36Sopenharmony_ci interrupts = <7 IRQ_TYPE_EDGE_RISING>; 26462306a36Sopenharmony_ci }; 26562306a36Sopenharmony_ci}; 266