123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856 |
- /* SPDX-License-Identifier: GPL-2.0 */
- /*
- * Copyright (C) 2021-2022 Alibaba Group Holding Limited.
- */
- /dts-v1/;
- #include "fire.dtsi"
- #include <dt-bindings/input/linux-event-codes.h>
- #include <dt-bindings/gpio/gpio.h>
- #include "light-vi-devices.dtsi"
- / {
- model = "T-HEAD fire fpga board";
- compatible = "thead,fire-emu", "thead,fire";
- chosen {
- bootargs = "console=ttyS0,115200 earlycon";
- stdout-path = "serial0:115200n8";
- };
- leds {
- compatible = "gpio-leds";
- status = "disabled";
- led0 {
- label = "SYS_STATUS";
- gpios = <&gpio1_porta 15 0>; /* GPIO_ACTIVE_HIGH: 0 */
- default-state = "off";
- };
- };
- display-subsystem {
- status = "okay";
- };
- lcd0_backlight: pwm-backlight@0 {
- status = "disabled";
- compatible = "pwm-backlight";
- pwms = <&pwm 0 5000000>;
- brightness-levels = <0 4 8 16 32 64 128 255>;
- default-brightness-level = <7>;
- };
- light_iopmp: iopmp {
- status = "disabled";
- compatible = "thead,light-iopmp";
- /* config#1: multiple valid regions */
- iopmp_emmc: IOPMP_EMMC {
- regions = <0x000000 0x100000>,
- <0x100000 0x200000>;
- attr = <0xFFFFFFFF>;
- dummy_slave= <0x800000>;
- };
- /* config#2: iopmp bypass */
- iopmp_sdio0: IOPMP_SDIO0 {
- bypass_en;
- };
- /* config#3: iopmp default region set */
- iopmp_sdio1: IOPMP_SDIO1 {
- attr = <0xFFFFFFFF>;
- is_default_region;
- };
- iopmp_usb0: IOPMP_USB0 {
- attr = <0xFFFFFFFF>;
- is_default_region;
- };
- iopmp_ao: IOPMP_AO {
- is_default_region;
- };
- iopmp_aud: IOPMP_AUD {
- is_default_region;
- };
- iopmp_chip_dbg: IOPMP_CHIP_DBG {
- is_default_region;
- };
- iopmp_eip120i: IOPMP_EIP120I {
- is_default_region;
- };
- iopmp_eip120ii: IOPMP_EIP120II {
- is_default_region;
- };
- iopmp_eip120iii: IOPMP_EIP120III {
- is_default_region;
- };
- iopmp_isp0: IOPMP_ISP0 {
- is_default_region;
- };
- iopmp_isp1: IOPMP_ISP1 {
- is_default_region;
- };
- iopmp_dw200: IOPMP_DW200 {
- is_default_region;
- };
- iopmp_vipre: IOPMP_VIPRE {
- is_default_region;
- };
- iopmp_venc: IOPMP_VENC {
- is_default_region;
- };
- iopmp_vdec: IOPMP_VDEC {
- is_default_region;
- };
- iopmp_g2d: IOPMP_G2D {
- is_default_region;
- };
- iopmp0_dpu: IOPMP0_DPU {
- bypass_en;
- };
- iopmp1_dpu: IOPMP1_DPU {
- bypass_en;
- };
- iopmp_gpu: IOPMP_GPU {
- is_default_region;
- };
- iopmp_gmac1: IOPMP_GMAC1 {
- is_default_region;
- };
- iopmp_gmac2: IOPMP_GMAC2 {
- is_default_region;
- };
- iopmp_dmac: IOPMP_DMAC {
- is_default_region;
- };
- iopmp_tee_dmac: IOPMP_TEE_DMAC {
- is_default_region;
- };
- iopmp_dsp0: IOPMP_DSP0 {
- is_default_region;
- };
- iopmp_dsp1: IOPMP_DSP1 {
- is_default_region;
- };
- };
- mbox_910t_client1: mbox_910t_client1 {
- compatible = "thead,light-mbox-client";
- mbox-names = "902";
- mboxes = <&mbox_910t 1 0>;
- status = "disabled";
- };
- mbox_910t_client2: mbox_910t_client2 {
- compatible = "thead,light-mbox-client";
- mbox-names = "906";
- mboxes = <&mbox_910t 2 0>;
- status = "disabled";
- };
- lightsound: lightsound@1 {
- compatible = "simple-audio-card";
- simple-audio-card,name = "Light-Sound-Card";
- #address-cells = <1>;
- #size-cells = <0>;
- status = "disabled";
- };
- dummy_codec: dummy_codec {
- #sound-dai-cells = <1>;
- compatible = "linux,bt-sco";
- status = "okay";
- };
- wcn_wifi: wireless-wlan {
- compatible = "wlan-platdata";
- clock-names = "clk_wifi";
- ref-clock-frequency = <24000000>;
- keep_wifi_power_on;
- pinctrl-names = "default";
- wifi_chip_type = "rtl8723ds";
- WIFI,poweren_gpio = <&gpio2_porta 26 0>;
- WIFI,reset_n = <&gpio2_porta 28 0>;
- status = "disabled";
- };
- wcn_bt: wireless-bluetooth {
- compatible = "bluetooth-platdata";
- pinctrl-names = "default", "rts_gpio";
- BT,power_gpio = <&gpio2_porta 29 0>;
- status = "disabled";
- };
- gpio_keys: gpio_keys{
- compatible = "gpio-keys";
- pinctrl-names = "default";
- status = "disabled";
- key-volumedown {
- label = "Volume Down Key";
- linux,code = <KEY_1>;
- debounce-interval = <2>;
- gpios = <&ao_gpio_porta 4 GPIO_ACTIVE_LOW>;
- };
- key-volumeup {
- label = "Volume Up Key";
- linux,code = <KEY_2>;
- debounce-interval = <2>;
- gpios = <&ao_gpio_porta 5 GPIO_ACTIVE_LOW>;
- };
- };
- aon: light-aon {
- compatible = "thead,light-aon";
- mbox-names = "aon";
- mboxes = <&mbox_910t 1 0>;
- status = "disabled";
- pd: light-aon-pd {
- compatible = "thead,light-aon-pd";
- #power-domain-cells = <1>;
- status = "disabled";
- };
- aon_reg_dialog: light-dialog-reg {
- compatible = "thead,light-dialog-pmic";
- status = "disabled";
- };
- c910_cpufreq {
- compatible = "thead,light-mpw-cpufreq";
- status = "disabled";
- };
- test: light-aon-test {
- compatible = "thead,light-aon-test";
- status = "disabled";
- };
- };
- };
- &resmem {
- #address-cells = <2>;
- #size-cells = <2>;
- ranges;
- tee_mem: memory@1a000000 {
- reg = <0x0 0x1a000000 0 0x4000000>;
- no-map;
- };
- dsp0_mem: memory@20000000 { /**0x2000_0000~0x2040_0000 4M**/
- reg = <0x0 0x20000000 0x0 0x00280000 /* DSP FW code&data section 2.5M*/
- 0x0 0x20280000 0x0 0x00001000 /* DSP communication area 4K*/
- 0x0 0x20281000 0x0 0x00007000 /* Panic/log page 28K */
- 0x0 0x20288000 0x0 0x00178000>; /* DSP shared memory 1.5M-32K*/
- no-map;
- };
- dsp1_mem: memory@20400000 { /**0x2040_0000~0x2080_0000 4M**/
- reg = <0x0 0x20400000 0x0 0x00280000 /* DSP FW code&data section */
- 0x0 0x20680000 0x0 0x00001000 /* DSP communication area */
- 0x0 0x20681000 0x0 0x00007000 /* Panic/log page*/
- 0x0 0x20688000 0x0 0x00178000>; /* DSP shared memory */
- no-map;
- };
- vi_mem: framebuffer@0f800000 {
- reg = <0x0 0x0F800000 0x0 0x05400000 /* vi_mem_pool_region[0] 84 MB (default) */
- 0x0 0x14C00000 0x0 0x01D00000 /* vi_mem_pool_region[1] 29 MB */
- 0x0 0x16900000 0x0 0x03200000>; /* vi_mem_pool_region[2] 50 MB */
- no-map;
- };
- facelib_mem: memory@22000000 {
- reg = <0x0 0x22000000 0x0 0x10000000>;
- no-map;
- };
- };
- &clk {
- status = "disabled";
- };
- &i2c0 {
- clock-frequency = <400000>;
- status = "okay";
- eeprom@50 {
- compatible = "atmel,24c32";
- reg = <0x50>;
- pagesize = <32>;
- };
- codec: wm8960@1a {
- #sound-dai-cells = <0>;
- compatible = "wlf,wm8960";
- reg = <0x1a>;
- wlf,shared-lrclk;
- wlf,hp-cfg = <3 2 3>;
- wlf,gpio-cfg = <1 3>;
- };
- touch@5d {
- #gpio-cells = <2>;
- compatible = "goodix,gt911";
- status = "disabled";
- reg = <0x5d>;
- interrupt-parent = <&gpio1_porta>;
- interrupts = <8 0>;
- irq-gpios = <&gpio1_porta 8 0>;
- reset-gpios = <&gpio1_porta 7 0>;
- touchscreen-size-x = <800>;
- touchscreen-size-y = <1280>;
- };
- };
- &audio_i2c0 {
- clock-frequency = <100000>;
- status = "disabled";
- es8156_audio_codec: es8156@8 {
- #sound-dai-cells = <0>;
- compatible = "everest,es8156";
- reg = <0x08>;
- };
- es7210_audio_codec: es7210@40 {
- #sound-dai-cells = <0>;
- compatible = "MicArray_0";
- reg = <0x40>;
- };
- };
- &i2c1 {
- clock-frequency = <400000>;
- status = "disabled";
- touch1@5d {
- #gpio-cells = <2>;
- compatible = "goodix,gt911";
- reg = <0x5d>;
- interrupt-parent = <&gpio1_porta>;
- interrupts = <12 0>;
- irq-gpios = <&gpio1_porta 12 0>;
- reset-gpios = <&gpio1_porta 11 0>;
- touchscreen-size-x = <800>;
- touchscreen-size-y = <1280>;
- };
- };
- &spi0 {
- num-cs = <1>;
- cs-gpios = <&gpio2_porta 15 0>; // GPIO_ACTIVE_HIGH: 0
- rx-sample-delay-ns = <10>;
- status = "okay";
- spi_norflash@0 {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "winbond,w25q64jwm", "jedec,spi-nor";
- reg = <0>;
- spi-max-frequency = <50000000>;
- w25q,fast-read;
- status = "disabled";
- };
- spidev@1 {
- compatible = "spidev";
- #address-cells = <0x1>;
- #size-cells = <0x1>;
- reg = <0x1>;
- spi-max-frequency = <50000000>;
- };
- };
- &qspi0 {
- num-cs = <1>;
- cs-gpios = <&gpio2_porta 3 0>;
- rx-sample-dly = <4>;
- status = "disabled";
- spi-flash@0 {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "spi-nand";
- spi-max-frequency = <100000000>;
- spi-tx-bus-width = <4>;
- spi-rx-bus-width = <4>;
- reg = <0>;
- partition@0 {
- label = "ubi1";
- reg = <0x00000000 0x08000000>;
- };
- };
- };
- &qspi1 {
- num-cs = <1>;
- cs-gpios = <&gpio0_porta 1 0>;
- status = "disabled";
- spi-flash@0 {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "spi-nand";
- spi-max-frequency = <66000000>;
- spi-tx-bus-width = <4>;
- spi-rx-bus-width = <4>;
- reg = <0>;
- partition@0 {
- label = "ubi2";
- reg = <0x00000000 0x08000000>;
- };
- };
- };
- &gmac0 {
- phy-mode = "rgmii-id";
- rx-clk-delay = <0x00>; /* for RGMII */
- tx-clk-delay = <0x00>; /* for RGMII */
- phy-handle = <&phy_88E1111_0>;
- status = "okay";
- mdio0 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "snps,dwmac-mdio";
- phy_88E1111_0: ethernet-phy@0 {
- reg = <0x1>;
- };
- phy_88E1111_1: ethernet-phy@1 {
- reg = <0x2>;
- };
- };
- };
- &emmc {
- max-frequency = <198000000>;
- non-removable;
- mmc-hs400-1_8v;
- io_fixed_1v8;
- is_emmc;
- no-sdio;
- no-sd;
- pull_up;
- bus-width = <8>;
- status = "okay";
- };
- &sdhci0 {
- max-frequency = <198000000>;
- bus-width = <4>;
- pull_up;
- wprtn_ignore;
- status = "okay";
- };
- &sdhci1 {
- max-frequency = <100000000>;
- bus-width = <4>;
- pull_up;
- no-sd;
- no-mmc;
- non-removable;
- io_fixed_1v8;
- post-power-on-delay-ms = <50>;
- wprtn_ignore;
- cap-sd-highspeed;
- keep-power-in-suspend;
- wakeup-source;
- status = "disabled";
- };
- &padctrl0_apsys { /* right-pinctrl */
- light-evb-padctrl0 {
- /*
- * Pin Configuration Node:
- * Format: <pin_id mux_node config>
- */
- pinctrl_uart0: uart0grp {
- thead,pins = <
- FM_UART0_TXD 0x0 0x72
- FM_UART0_RXD 0x0 0x72
- >;
- };
- pinctrl_spi0: spi0grp {
- thead,pins = <
- FM_SPI_CSN 0x3 0x20a
- FM_SPI_SCLK 0x0 0x20a
- FM_SPI_MISO 0x0 0x23a
- FM_SPI_MOSI 0x0 0x23a
- >;
- };
- pinctrl_qspi0: qspi0grp {
- thead,pins = <
- FM_QSPI0_SCLK 0x0 0x20f
- FM_QSPI0_CSN0 0x3 0x20f
- FM_QSPI0_CSN1 0x0 0x20f
- FM_QSPI0_D0_MOSI 0x0 0x23f
- FM_QSPI0_D1_MISO 0x0 0x23f
- FM_QSPI0_D2_WP 0x0 0x23f
- FM_QSPI0_D3_HOLD 0x0 0x23f
- >;
- };
- pinctrl_audio_i2s0: i2s0grp {
- thead,pins = <
- FM_QSPI0_SCLK 0x2 0x208
- FM_QSPI0_CSN0 0x2 0x238
- FM_QSPI0_CSN1 0x2 0x208
- FM_QSPI0_D0_MOSI 0x2 0x238
- FM_QSPI0_D1_MISO 0x2 0x238
- FM_QSPI0_D2_WP 0x2 0x238
- FM_QSPI0_D3_HOLD 0x2 0x238
- >;
- };
- pinctrl_pwm: pwmgrp {
- thead,pins = <
- FM_GPIO3_2 0x1 0x208 /* pwm0 */
- FM_GPIO3_3 0x1 0x208 /* pwm1 */
- >;
- };
- };
- };
- &padctrl1_apsys { /* left-pinctrl */
- light-evb-padctrl1 {
- /*
- * Pin Configuration Node:
- * Format: <pin_id mux_node config>
- */
- pinctrl_uart3: uart3grp {
- thead,pins = <
- FM_UART3_TXD 0x0 0x72
- FM_UART3_RXD 0x0 0x72
- >;
- };
- pinctrl_uart4: uart4grp {
- thead,pins = <
- FM_UART4_TXD 0x0 0x72
- FM_UART4_RXD 0x0 0x72
- FM_UART4_CTSN 0x0 0x72
- FM_UART4_RTSN 0x0 0x72
- >;
- };
- pinctrl_qspi1: qspi1grp {
- thead,pins = <
- FM_QSPI1_SCLK 0x0 0x20a
- FM_QSPI1_CSN0 0x3 0x20a
- FM_QSPI1_D0_MOSI 0x0 0x23a
- FM_QSPI1_D1_MISO 0x0 0x23a
- FM_QSPI1_D2_WP 0x0 0x23a
- FM_QSPI1_D3_HOLD 0x0 0x23a
- >;
- };
- pinctrl_iso7816: iso7816grp {
- thead,pins = <
- FM_QSPI1_SCLK 0x1 0x208
- FM_QSPI1_D0_MOSI 0x1 0x238
- FM_QSPI1_D1_MISO 0x1 0x238
- FM_QSPI1_D2_WP 0x1 0x238
- FM_QSPI1_D3_HOLD 0x1 0x238
- >;
- };
- };
- };
- &i2c2 {
- clock-frequency = <400000>;
- status = "okay";
- eeprom@50 {
- compatible = "atmel,24c32";
- reg = <0x50>;
- pagesize = <32>;
- };
- };
- &i2c3 {
- clock-frequency = <400000>;
- status = "okay";
- eeprom@50 {
- compatible = "atmel,24c32";
- reg = <0x50>;
- pagesize = <32>;
- };
- };
- &i2c4 {
- clock-frequency = <400000>;
- status = "okay";
- eeprom@50 {
- compatible = "atmel,24c32";
- reg = <0x50>;
- pagesize = <32>;
- };
- pcal6408ahk_a: gpio@20 {
- compatible = "nxp,pcal9554b";
- reg = <0x20>;
- gpio-controller;
- #gpio-cells = <2>;
- };
- };
- &isp0 {
- status = "disabled";
- };
- &isp1 {
- status = "disabled";
- };
- &isp_ry0 {
- status = "disabled";
- };
- &dewarp {
- status = "disabled";
- };
- &dec400_isp0 {
- status = "disabled";
- };
- &dec400_isp1 {
- status = "disabled";
- };
- &dec400_isp2 {
- status = "disabled";
- };
- &bm_visys {
- status = "disabled";
- };
- &bm_csi0 {
- status = "disabled";
- };
- &bm_csi1 {
- status = "disabled";
- };
- &bm_csi2 {
- status = "disabled";
- };
- &vi_pre {
- //vi_pre_irq_en = <1>;
- status = "disabled";
- };
- &xtensa_dsp {
- status = "disabled";
- };
- &xtensa_dsp0 {
- status = "disabled";
- memory-region = <&dsp0_mem>;
- };
- &xtensa_dsp1{
- status = "disabled";
- memory-region = <&dsp1_mem>;
- };
- &vvcam_flash_led0{
- flash_led_name = "aw36413_aw36515";
- floodlight_i2c_bus = /bits/ 8 <2>;
- floodlight_en_pin = <&gpio1_porta 25 0>;
- //projection_i2c_bus = /bits/ 8 <2>;
- flash_led_touch_pin = <&gpio1_porta 27 0>; //flash led touch pin
- status = "disabled";
- };
- &vvcam_sensor1 {
- status = "disabled";
- };
- &vvcam_sensor2 {
- status = "disabled";
- };
- &vvcam_sensor3 {
- status = "disabled";
- };
- &vvcam_sensor4 {
- status = "disabled";
- };
- &vvcam_sensor5 {
- status = "disabled";
- };
- &video0{
- status = "disabled";
- };
- &video1{
- status = "disabled";
- };
- &video2{
- status = "disabled";
- };
- &video3{
- status = "disabled";
- };
- &video4{
- status = "disabled";
- };
- &video5{
- status = "disabled";
- };
- &video6{
- status = "disabled";
- };
- &video7{
- status = "disabled";
- };
- &video8{
- status = "disabled";
- };
- &video9{
- status = "disabled";
- };
- &video10{
- status = "disabled";
- };
- &video11{
- status = "disabled";
- };
- &video12{
- status = "disabled";
- };
- &trng {
- status = "disabled";
- };
- &eip_28 {
- status = "disabled";
- };
- &vdec {
- status = "disabled";
- };
- &venc {
- status = "disabled";
- };
- &isp_venc_shake {
- status = "disabled";
- };
- &vidmem {
- status = "disabled";
- };
- &gpu {
- status = "disabled";
- };
- &dpu_enc0 {
- status = "disabled";
- };
- &dpu_enc1 {
- status = "disabled";
- };
- &dpu {
- status = "disabled";
- };
- &dsi0 {
- status = "disabled";
- };
- &dhost_0 {
- status = "disabled";
- };
- &disp1_out {
- status = "disabled";
- };
- &hdmi_tx {
- status = "disabled";
- };
- &lightsound {
- status = "disabled";
- };
- &light_i2s {
- status = "disabled";
- };
- &i2s0 {
- status = "disabled";
- };
- &i2s1 {
- status = "disabled";
- };
- &i2s3 {
- status = "disabled";
- };
- &khvhost {
- status = "disabled";
- };
|