Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/arch/arm64/boot/dts/freescale/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 22 kB image not shown  

Quelle  imx8qxp-mek.dts   Sprache: unbekannt

 
// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright 2017~2018 NXP
 */

/dts-v1/;

#include "imx8qxp.dtsi"
#include <dt-bindings/usb/pd.h>

/ {
 model = "Freescale i.MX8QXP MEK";
 compatible = "fsl,imx8qxp-mek", "fsl,imx8qxp";

 bt_sco_codec: audio-codec-bt {
  compatible = "linux,bt-sco";
  #sound-dai-cells = <1>;
 };

 chosen {
  stdout-path = &lpuart0;
 };

 imx8x_cm4: imx8x-cm4 {
  compatible = "fsl,imx8qxp-cm4";
  mbox-names = "tx", "rx", "rxdb";
  mboxes = <&lsio_mu5 0 1
     &lsio_mu5 1 1
     &lsio_mu5 3 1>;
  memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>,
    <&vdev1vring0>, <&vdev1vring1>, <&rsc_table>;
  power-domains = <&pd IMX_SC_R_M4_0_PID0>,
    <&pd IMX_SC_R_M4_0_MU_1A>;
  fsl,entry-address = <0x34fe0000>;
  fsl,resource-id = <IMX_SC_R_M4_0_PID0>;
 };

 memory@80000000 {
  device_type = "memory";
  reg = <0x00000000 0x80000000 0 0x40000000>;
 };

 reg_usdhc2_vmmc: usdhc2-vmmc {
  compatible = "regulator-fixed";
  regulator-name = "SD1_SPWR";
  regulator-min-microvolt = <3000000>;
  regulator-max-microvolt = <3000000>;
  gpio = <&lsio_gpio4 19 GPIO_ACTIVE_HIGH>;
  enable-active-high;
 };

 gpio-sbu-mux {
  compatible = "nxp,cbdtu02043", "gpio-sbu-mux";
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_typec_mux>;
  select-gpios = <&lsio_gpio5 9 GPIO_ACTIVE_HIGH>;
  enable-gpios = <&pca9557_a 7 GPIO_ACTIVE_LOW>;
  orientation-switch;

  port {
   usb3_data_ss: endpoint {
    remote-endpoint = <&typec_con_ss>;
   };
  };
 };

 i2c-mux {
  compatible = "i2c-mux-gpio";
  mux-gpios = <&lsio_gpio5 0 GPIO_ACTIVE_HIGH>; /* needs to be an unused GPIO */
  i2c-parent = <&cm40_i2c>;
  #address-cells = <1>;
  #size-cells = <0>;

  i2c@0 {
   reg = <0>;
   #address-cells = <1>;
   #size-cells = <0>;

   wm8960: audio-codec@1a {
    compatible = "wlf,wm8960";
    reg = <0x1a>;
    clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
    clock-names = "mclk";
    assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
        <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
        <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
        <&mclkout0_lpcg IMX_LPCG_CLK_0>;
    assigned-clock-rates = <786432000>,
             <49152000>,
             <12288000>,
             <12288000>;
    wlf,shared-lrclk;
    wlf,hp-cfg = <2 2 3>;
    wlf,gpio-cfg = <1 3>;
    AVDD-supply = <®_audio_3v3>;
    DBVDD-supply = <®_audio_1v8>;
    DCVDD-supply = <®_audio_1v8>;
    SPKVDD1-supply = <®_audio_5v>;
    SPKVDD2-supply = <®_audio_5v>;
   };
  };

  i2c@1 {
   reg = <1>;
   #address-cells = <1>;
   #size-cells = <0>;

   wm8962: wm8962@1a {
    compatible = "wlf,wm8962";
    reg = <0x1a>;
    clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
    assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
        <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
        <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
        <&mclkout0_lpcg IMX_LPCG_CLK_0>;
    assigned-clock-rates = <786432000>,
             <49152000>,
             <12288000>,
             <12288000>;
    DCVDD-supply = <®_audio_1v8>;
    DBVDD-supply = <®_audio_1v8>;
    AVDD-supply = <®_audio_1v8>;
    CPVDD-supply = <®_audio_1v8>;
    MICVDD-supply = <®_audio_3v3>;
    PLLVDD-supply = <®_audio_1v8>;
    SPKVDD1-supply = <®_audio_5v>;
    SPKVDD2-supply = <®_audio_5v>;
   };
  };
 };

 reg_1v5: regulator-1v5 {
  compatible = "regulator-fixed";
  regulator-name = "1v5";
  regulator-min-microvolt = <1500000>;
  regulator-max-microvolt = <1500000>;
 };

 reg_1v8: regulator-1v8 {
  compatible = "regulator-fixed";
  regulator-name = "1v8";
  regulator-min-microvolt = <1800000>;
  regulator-max-microvolt = <1800000>;
 };

 reg_2v8: regulator-2v8 {
  compatible = "regulator-fixed";
  regulator-name = "2v8";
  regulator-min-microvolt = <2800000>;
  regulator-max-microvolt = <2800000>;
 };

 reg_pcieb: regulator-pcie {
  compatible = "regulator-fixed";
  regulator-max-microvolt = <3300000>;
  regulator-min-microvolt = <3300000>;
  regulator-name = "mpcie_3v3";
  gpio = <&pca9557_a 2 GPIO_ACTIVE_HIGH>;
  enable-active-high;
 };

 reg_audio: regulator-audio {
  compatible = "regulator-fixed";
  regulator-max-microvolt = <3300000>;
  regulator-min-microvolt = <3300000>;
  regulator-name = "cs42888_supply";
 };

 reg_audio_5v: regulator-audio-pwr {
  compatible = "regulator-fixed";
  regulator-name = "audio-5v";
  regulator-min-microvolt = <5000000>;
  regulator-max-microvolt = <5000000>;
  regulator-always-on;
  regulator-boot-on;
 };

 reg_audio_3v3: regulator-audio-3v3 {
  compatible = "regulator-fixed";
  regulator-name = "audio-3v3";
  regulator-min-microvolt = <3300000>;
  regulator-max-microvolt = <3300000>;
  regulator-always-on;
  regulator-boot-on;
 };

 reg_audio_1v8: regulator-audio-1v8 {
  compatible = "regulator-fixed";
  regulator-name = "audio-1v8";
  regulator-min-microvolt = <1800000>;
  regulator-max-microvolt = <1800000>;
  regulator-always-on;
  regulator-boot-on;
 };

 reg_can_en: regulator-can-en {
  compatible = "regulator-fixed";
  regulator-max-microvolt = <3300000>;
  regulator-min-microvolt = <3300000>;
  regulator-name = "can-en";
  gpio = <&pca6416 3 GPIO_ACTIVE_HIGH>;
  enable-active-high;
 };

 reg_can_stby: regulator-can-stby {
  compatible = "regulator-fixed";
  regulator-max-microvolt = <3300000>;
  regulator-min-microvolt = <3300000>;
  regulator-name = "can-stby";
  gpio = <&pca6416 5 GPIO_ACTIVE_HIGH>;
  enable-active-high;
  vin-supply = <®_can_en>;
 };

 reg_usb_otg1_vbus: regulator-usbotg1-vbus {
  compatible = "regulator-fixed";
  regulator-max-microvolt = <5000000>;
  regulator-min-microvolt = <5000000>;
  regulator-name = "usb_otg1_vbus";
  gpio = <&pca9557_b 2 GPIO_ACTIVE_HIGH>;
  enable-active-high;
 };

 reserved-memory {
  #address-cells = <2>;
  #size-cells = <2>;
  ranges;

  vdev0vring0: memory@90000000 {
   reg = <0 0x90000000 0 0x8000>;
   no-map;
  };

  vdev0vring1: memory@90008000 {
   reg = <0 0x90008000 0 0x8000>;
   no-map;
  };

  vdev1vring0: memory@90010000 {
   reg = <0 0x90010000 0 0x8000>;
   no-map;
  };

  vdev1vring1: memory@90018000 {
   reg = <0 0x90018000 0 0x8000>;
   no-map;
  };

  rsc_table: memory@900ff000 {
   reg = <0 0x900ff000 0 0x1000>;
   no-map;
  };

  vdevbuffer: memory@90400000 {
   compatible = "shared-dma-pool";
   reg = <0 0x90400000 0 0x100000>;
   no-map;
  };

  dsp_vdev0vring0: memory@942f0000 {
   reg = <0 0x942f0000 0 0x8000>;
   no-map;
  };

  dsp_vdev0vring1: memory@942f8000 {
   reg = <0 0x942f8000 0 0x8000>;
   no-map;
  };

  dsp_vdev0buffer: memory@94300000 {
   compatible = "shared-dma-pool";
   reg = <0 0x94300000 0 0x100000>;
   no-map;
  };

  /* global autoconfigured region for contiguous allocations */
  linux,cma {
   compatible = "shared-dma-pool";
   alloc-ranges = <0 0xc0000000 0 0x3c000000>;
   size = <0 0x3c000000>;
   linux,cma-default;
   reusable;
  };

  gpu_reserved: memory@880000000 {
   no-map;
   reg = <0x8 0x80000000 0 0x10000000>;
  };
 };

 sound-bt-sco {
  compatible = "simple-audio-card";
  simple-audio-card,bitclock-inversion;
  simple-audio-card,bitclock-master = <&btcpu>;
  simple-audio-card,format = "dsp_a";
  simple-audio-card,frame-master = <&btcpu>;
  simple-audio-card,name = "bt-sco-audio";

  simple-audio-card,codec {
   sound-dai = <&bt_sco_codec 1>;
  };

  btcpu: simple-audio-card,cpu {
   dai-tdm-slot-num = <2>;
   dai-tdm-slot-width = <16>;
   sound-dai = <&sai0>;
  };
 };

 sound-cs42888 {
  compatible = "fsl,imx-audio-cs42888";
  audio-asrc = <&asrc0>;
  audio-codec = <&cs42888>;
  audio-cpu = <&esai0>;
  audio-routing =
   "Line Out Jack", "AOUT1L",
   "Line Out Jack", "AOUT1R",
   "Line Out Jack", "AOUT2L",
   "Line Out Jack", "AOUT2R",
   "Line Out Jack", "AOUT3L",
   "Line Out Jack", "AOUT3R",
   "Line Out Jack", "AOUT4L",
   "Line Out Jack", "AOUT4R",
   "AIN1L", "Line In Jack",
   "AIN1R", "Line In Jack",
   "AIN2L", "Line In Jack",
   "AIN2R", "Line In Jack";
  model = "imx-cs42888";
 };

 sound-wm8960 {
  compatible = "fsl,imx-audio-wm8960";
  model = "wm8960-audio";
  audio-cpu = <&sai1>;
  audio-codec = <&wm8960>;
  hp-det-gpio = <&lsio_gpio1 0 GPIO_ACTIVE_HIGH>;
  audio-routing = "Headphone Jack", "HP_L",
    "Headphone Jack", "HP_R",
    "Ext Spk", "SPK_LP",
    "Ext Spk", "SPK_LN",
    "Ext Spk", "SPK_RP",
    "Ext Spk", "SPK_RN",
    "LINPUT1", "Mic Jack",
    "Mic Jack", "MICB";
 };

 sound-wm8962 {
  compatible = "fsl,imx-audio-wm8962";
  model = "wm8962-audio";
  audio-cpu = <&sai1>;
  audio-codec = <&wm8962>;
  hp-det-gpios = <&lsio_gpio1 0 GPIO_ACTIVE_HIGH>;
  audio-routing = "Headphone Jack", "HPOUTL",
    "Headphone Jack", "HPOUTR",
    "Ext Spk", "SPKOUTL",
    "Ext Spk", "SPKOUTR",
    "AMIC", "MICBIAS",
    "IN3R", "AMIC",
    "IN1R", "AMIC";
 };
};

&amix {
 status = "okay";
};

&asrc0 {
 fsl,asrc-rate = <48000>;
 status = "okay";
};

&dsp {
 memory-region = <&dsp_vdev0buffer>, <&dsp_vdev0vring0>,
   <&dsp_vdev0vring1>, <&dsp_reserved>;
 status = "okay";
};

&dsp_reserved {
 status = "okay";
};

&esai0 {
 assigned-clocks = <&acm IMX_ADMA_ACM_ESAI0_MCLK_SEL>,
   <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
   <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
   <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
   <&esai0_lpcg IMX_LPCG_CLK_0>;
 assigned-clock-parents = <&aud_pll_div0_lpcg IMX_LPCG_CLK_0>;
 assigned-clock-rates = <0>, <786432000>, <49152000>, <12288000>, <49152000>;
 pinctrl-0 = <&pinctrl_esai0>;
 pinctrl-names = "default";
 status = "okay";
};

&fec1 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_fec1>;
 phy-mode = "rgmii-id";
 phy-handle = <ðphy0>;
 fsl,magic-packet;
 status = "okay";

 mdio {
  #address-cells = <1>;
  #size-cells = <0>;

  ethphy0: ethernet-phy@0 {
   compatible = "ethernet-phy-ieee802.3-c22";
   reg = <0>;
  };
 };
};

&i2c1 {
 #address-cells = <1>;
 #size-cells = <0>;
 clock-frequency = <100000>;
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_lpi2c1 &pinctrl_ioexp_rst>;
 status = "okay";

 i2c-mux@71 {
  compatible = "nxp,pca9646", "nxp,pca9546";
  #address-cells = <1>;
  #size-cells = <0>;
  reg = <0x71>;
  reset-gpios = <&lsio_gpio1 1 GPIO_ACTIVE_LOW>;

  i2c@0 {
   #address-cells = <1>;
   #size-cells = <0>;
   reg = <0>;

   max7322: gpio@68 {
    compatible = "maxim,max7322";
    reg = <0x68>;
    gpio-controller;
    #gpio-cells = <2>;
   };
  };

  i2c@1 {
   #address-cells = <1>;
   #size-cells = <0>;
   reg = <1>;
  };

  i2c@2 {
   #address-cells = <1>;
   #size-cells = <0>;
   reg = <2>;

   pressure-sensor@60 {
    compatible = "fsl,mpl3115";
    reg = <0x60>;
   };
  };

  i2c@3 {
   #address-cells = <1>;
   #size-cells = <0>;
   reg = <3>;

   pca9557_a: gpio@1a {
    compatible = "nxp,pca9557";
    reg = <0x1a>;
    gpio-controller;
    #gpio-cells = <2>;
   };

   pca9557_b: gpio@1d {
    compatible = "nxp,pca9557";
    reg = <0x1d>;
    gpio-controller;
    #gpio-cells = <2>;
   };

   light-sensor@44 {
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_isl29023>;
    compatible = "isil,isl29023";
    reg = <0x44>;
    interrupt-parent = <&lsio_gpio1>;
    interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
   };
  };
 };

 ptn5110: tcpc@50 {
  compatible = "nxp,ptn5110", "tcpci";
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_typec>;
  reg = <0x50>;
  interrupt-parent = <&lsio_gpio1>;
  interrupts = <3 IRQ_TYPE_LEVEL_LOW>;

  usb_con1: connector {
   compatible = "usb-c-connector";
   label = "USB-C";
   power-role = "source";
   data-role = "dual";
   source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;

   ports {
    #address-cells = <1>;
    #size-cells = <0>;

    port@0 {
     reg = <0>;

     typec_dr_sw: endpoint {
      remote-endpoint = <&usb3_drd_sw>;
     };
    };

    port@1 {
     reg = <1>;

     typec_con_ss: endpoint {
      remote-endpoint = <&usb3_data_ss>;
     };
    };
   };
  };
 };

};

&cm40_i2c {
 #address-cells = <1>;
 #size-cells = <0>;
 clock-frequency = <100000>;
 pinctrl-names = "default", "gpio";
 pinctrl-0 = <&pinctrl_cm40_i2c>;
 pinctrl-1 = <&pinctrl_cm40_i2c_gpio>;
 scl-gpios = <&lsio_gpio1 10 GPIO_ACTIVE_HIGH>;
 sda-gpios = <&lsio_gpio1 9 GPIO_ACTIVE_HIGH>;
 status = "okay";

 pca6416: gpio@20 {
  compatible = "ti,tca6416";
  reg = <0x20>;
  gpio-controller;
  #gpio-cells = <2>;
 };

 cs42888: audio-codec@48 {
  compatible = "cirrus,cs42888";
  reg = <0x48>;
  clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
  clock-names = "mclk";
  assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
    <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
    <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
    <&mclkout0_lpcg IMX_LPCG_CLK_0>;
  assigned-clock-rates = <786432000>, <49152000>, <12288000>, <12288000>;
  reset-gpios = <&pca9557_b 1 GPIO_ACTIVE_LOW>;
  VA-supply = <®_audio>;
  VD-supply = <®_audio>;
  VLC-supply = <®_audio>;
  VLS-supply = <®_audio>;
 };
};

&cm40_intmux {
 status = "okay";
};

&hsio_phy {
 fsl,hsio-cfg = "pciea-x2-pcieb";
 fsl,refclk-pad-mode = "input";
 status = "okay";
};

&flexcan1 {
 pinctrl-0 = <&pinctrl_flexcan1>;
 pinctrl-names = "default";
 xceiver-supply = <®_can_stby>;
 status = "okay";
};

&flexcan2 {
 pinctrl-0 = <&pinctrl_flexcan2>;
 pinctrl-names = "default";
 xceiver-supply = <®_can_stby>;
 status = "okay";
};

&jpegdec {
 status = "okay";
};

&jpegenc {
 status = "okay";
};

&lpuart0 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_lpuart0>;
 status = "okay";
};

&lpuart2 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_lpuart2>;
 status = "okay";
};

&lpuart3 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_lpuart3>;
 status = "okay";
};

&lsio_mu5 {
 status = "okay";
};

&mu_m0 {
 status = "okay";
};

&mu1_m0 {
 status = "okay";
};

&pcie0 {
 phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>;
 phy-names = "pcie-phy";
 pinctrl-0 = <&pinctrl_pcieb>;
 pinctrl-names = "default";
 reset-gpios = <&lsio_gpio4 0 GPIO_ACTIVE_LOW>;
 vpcie-supply = <®_pcieb>;
 status = "okay";
};

&pcie0_ep {
 phys = <&hsio_phy 0 PHY_TYPE_PCIE 0>;
 phy-names = "pcie-phy";
 pinctrl-0 = <&pinctrl_pcieb>;
 pinctrl-names = "default";
 vpcie-supply = <®_pcieb>;
 status = "disabled";
};

&scu_key {
 status = "okay";
};

&sai0 {
 #sound-dai-cells = <0>;
 assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
     <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
     <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
     <&sai0_lpcg IMX_LPCG_CLK_0>;
 assigned-clock-rates = <786432000>, <49152000>, <12288000>, <49152000>;
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_sai0>;
 status = "okay";
};

&sai1 {
 assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
     <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
     <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
     <&sai1_lpcg IMX_LPCG_CLK_0>;
 assigned-clock-rates = <786432000>, <49152000>, <12288000>, <49152000>;
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_sai1>;
 status = "okay";
};

&sai4 {
 assigned-clocks = <&acm IMX_ADMA_ACM_SAI4_MCLK_SEL>,
     <&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_PLL>,
     <&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_SLV_BUS>,
     <&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_MST_BUS>,
     <&sai4_lpcg IMX_LPCG_CLK_0>;
 assigned-clock-parents = <&aud_pll_div1_lpcg IMX_LPCG_CLK_0>;
 assigned-clock-rates = <0>, <786432000>, <98304000>, <12288000>, <98304000>;
 fsl,sai-asynchronous;
 status = "okay";
};

&sai5 {
 assigned-clocks = <&acm IMX_ADMA_ACM_SAI5_MCLK_SEL>,
     <&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_PLL>,
     <&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_SLV_BUS>,
     <&clk IMX_SC_R_AUDIO_PLL_1 IMX_SC_PM_CLK_MST_BUS>,
     <&sai5_lpcg IMX_LPCG_CLK_0>;
 assigned-clock-parents = <&aud_pll_div1_lpcg IMX_LPCG_CLK_0>;
 assigned-clock-rates = <0>, <786432000>, <98304000>, <12288000>, <98304000>;
 fsl,sai-asynchronous;
 status = "okay";
};

&thermal_zones {
 pmic-thermal {
  polling-delay-passive = <250>;
  polling-delay = <2000>;
  thermal-sensors = <&tsens IMX_SC_R_PMIC_0>;

  trips {
   pmic_alert0: trip0 {
    temperature = <110000>;
    hysteresis = <2000>;
    type = "passive";
   };

   pmic_crit0: trip1 {
    temperature = <125000>;
    hysteresis = <2000>;
    type = "critical";
   };
  };

  cooling-maps {
   map0 {
    trip = <&pmic_alert0>;
    cooling-device =
     <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
     <&A35_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
     <&A35_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
     <&A35_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
   };
  };
 };
};

&usdhc1 {
 assigned-clocks = <&clk IMX_SC_R_SDHC_0 IMX_SC_PM_CLK_PER>;
 assigned-clock-rates = <200000000>;
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_usdhc1>;
 bus-width = <8>;
 no-sd;
 no-sdio;
 non-removable;
 status = "okay";
};

&usdhc2 {
 assigned-clocks = <&clk IMX_SC_R_SDHC_1 IMX_SC_PM_CLK_PER>;
 assigned-clock-rates = <200000000>;
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_usdhc2>;
 bus-width = <4>;
 vmmc-supply = <®_usdhc2_vmmc>;
 cd-gpios = <&lsio_gpio4 22 GPIO_ACTIVE_LOW>;
 wp-gpios = <&lsio_gpio4 21 GPIO_ACTIVE_HIGH>;
 status = "okay";
};

&usb3_phy {
 status = "okay";
};

&usbphy1 {
 status = "okay";
};

&usbotg1 {
 adp-disable;
 hnp-disable;
 srp-disable;
 disable-over-current;
 power-active-high;
 vbus-supply = <®_usb_otg1_vbus>;
 status = "okay";
};

&usbotg3 {
 status = "okay";
};

&usbotg3_cdns3 {
 dr_mode = "otg";
 usb-role-switch;
 status = "okay";

 port {
  usb3_drd_sw: endpoint {
   remote-endpoint = <&typec_dr_sw>;
  };
 };
};


&vpu {
 compatible = "nxp,imx8qxp-vpu";
 status = "okay";
};

&vpu_core0 {
 reg = <0x2d040000 0x10000>;
 memory-region = <&decoder_boot>, <&decoder_rpc>;
 status = "okay";
};

&vpu_core1 {
 reg = <0x2d050000 0x10000>;
 memory-region = <&encoder_boot>, <&encoder_rpc>;
 status = "okay";
};

&iomuxc {

 pinctrl_cm40_i2c: cm40i2cgrp {
  fsl,pins = <
   IMX8QXP_ADC_IN1_M40_I2C0_SDA                            0x0600004c
   IMX8QXP_ADC_IN0_M40_I2C0_SCL                            0x0600004c
  >;
 };

 pinctrl_cm40_i2c_gpio: cm40i2cgpio-grp {
  fsl,pins = <
   IMX8QXP_ADC_IN1_LSIO_GPIO1_IO09    0xc600004c
   IMX8QXP_ADC_IN0_LSIO_GPIO1_IO10    0xc600004c
  >;
 };

 pinctrl_esai0: esai0grp {
  fsl,pins = <
   IMX8QXP_ESAI0_FSR_ADMA_ESAI0_FSR           0xc6000040
   IMX8QXP_ESAI0_FST_ADMA_ESAI0_FST           0xc6000040
   IMX8QXP_ESAI0_SCKR_ADMA_ESAI0_SCKR         0xc6000040
   IMX8QXP_ESAI0_SCKT_ADMA_ESAI0_SCKT         0xc6000040
   IMX8QXP_ESAI0_TX0_ADMA_ESAI0_TX0           0xc6000040
   IMX8QXP_ESAI0_TX1_ADMA_ESAI0_TX1           0xc6000040
   IMX8QXP_ESAI0_TX2_RX3_ADMA_ESAI0_TX2_RX3   0xc6000040
   IMX8QXP_ESAI0_TX3_RX2_ADMA_ESAI0_TX3_RX2   0xc6000040
   IMX8QXP_ESAI0_TX4_RX1_ADMA_ESAI0_TX4_RX1   0xc6000040
   IMX8QXP_ESAI0_TX5_RX0_ADMA_ESAI0_TX5_RX0   0xc6000040
  >;
 };

 pinctrl_fec1: fec1grp {
  fsl,pins = <
   IMX8QXP_ENET0_MDC_CONN_ENET0_MDC   0x06000020
   IMX8QXP_ENET0_MDIO_CONN_ENET0_MDIO   0x06000020
   IMX8QXP_ENET0_RGMII_TX_CTL_CONN_ENET0_RGMII_TX_CTL 0x06000020
   IMX8QXP_ENET0_RGMII_TXC_CONN_ENET0_RGMII_TXC  0x06000020
   IMX8QXP_ENET0_RGMII_TXD0_CONN_ENET0_RGMII_TXD0  0x06000020
   IMX8QXP_ENET0_RGMII_TXD1_CONN_ENET0_RGMII_TXD1  0x06000020
   IMX8QXP_ENET0_RGMII_TXD2_CONN_ENET0_RGMII_TXD2  0x06000020
   IMX8QXP_ENET0_RGMII_TXD3_CONN_ENET0_RGMII_TXD3  0x06000020
   IMX8QXP_ENET0_RGMII_RXC_CONN_ENET0_RGMII_RXC  0x06000020
   IMX8QXP_ENET0_RGMII_RX_CTL_CONN_ENET0_RGMII_RX_CTL 0x06000020
   IMX8QXP_ENET0_RGMII_RXD0_CONN_ENET0_RGMII_RXD0  0x06000020
   IMX8QXP_ENET0_RGMII_RXD1_CONN_ENET0_RGMII_RXD1  0x06000020
   IMX8QXP_ENET0_RGMII_RXD2_CONN_ENET0_RGMII_RXD2  0x06000020
   IMX8QXP_ENET0_RGMII_RXD3_CONN_ENET0_RGMII_RXD3  0x06000020
  >;
 };

 pinctrl_flexcan1: flexcan0grp {
  fsl,pins = <
   IMX8QXP_FLEXCAN0_TX_ADMA_FLEXCAN0_TX   0x21
   IMX8QXP_FLEXCAN0_RX_ADMA_FLEXCAN0_RX   0x21
  >;
 };

 pinctrl_flexcan2: flexcan1grp {
  fsl,pins = <
   IMX8QXP_FLEXCAN1_TX_ADMA_FLEXCAN1_TX   0x21
   IMX8QXP_FLEXCAN1_RX_ADMA_FLEXCAN1_RX   0x21
  >;
 };

 pinctrl_i2c_mipi_csi0: i2c-mipi-csi0grp {
  fsl,pins = <
   IMX8QXP_MIPI_CSI0_I2C0_SCL_MIPI_CSI0_I2C0_SCL  0xc2000020
   IMX8QXP_MIPI_CSI0_I2C0_SDA_MIPI_CSI0_I2C0_SDA  0xc2000020
  >;
 };

 pinctrl_ioexp_rst: ioexprstgrp {
  fsl,pins = <
   IMX8QXP_SPI2_SDO_LSIO_GPIO1_IO01   0x06000021
  >;
 };

 pinctrl_isl29023: isl29023grp {
  fsl,pins = <
   IMX8QXP_SPI2_SDI_LSIO_GPIO1_IO02   0x00000021
  >;
 };

 pinctrl_lpi2c1: lpi2c1grp {
  fsl,pins = <
   IMX8QXP_USB_SS3_TC1_ADMA_I2C1_SCL   0x06000021
   IMX8QXP_USB_SS3_TC3_ADMA_I2C1_SDA   0x06000021
  >;
 };

 pinctrl_lpuart0: lpuart0grp {
  fsl,pins = <
   IMX8QXP_UART0_RX_ADMA_UART0_RX    0x06000020
   IMX8QXP_UART0_TX_ADMA_UART0_TX    0x06000020
  >;
 };

 pinctrl_lpuart2: lpuart2grp {
  fsl,pins = <
   IMX8QXP_UART2_TX_ADMA_UART2_TX          0x06000020
   IMX8QXP_UART2_RX_ADMA_UART2_RX          0x06000020
  >;
 };

 pinctrl_lpuart3: lpuart3grp {
  fsl,pins = <
   IMX8QXP_FLEXCAN2_TX_ADMA_UART3_TX       0x06000020
   IMX8QXP_FLEXCAN2_RX_ADMA_UART3_RX       0x06000020
  >;
 };

 pinctrl_mipi_csi0: mipi-csi0grp {
  fsl,pins = <
   IMX8QXP_MIPI_CSI0_GPIO0_01_LSIO_GPIO3_IO07  0xC0000041
   IMX8QXP_MIPI_CSI0_GPIO0_00_LSIO_GPIO3_IO08  0xC0000041
   IMX8QXP_MIPI_CSI0_MCLK_OUT_MIPI_CSI0_ACM_MCLK_OUT 0xC0000041
  >;
 };

 pinctrl_pcieb: pcieagrp {
  fsl,pins = <
   IMX8QXP_PCIE_CTRL0_PERST_B_LSIO_GPIO4_IO00  0x06000021
   IMX8QXP_PCIE_CTRL0_CLKREQ_B_HSIO_PCIE0_CLKREQ_B  0x06000021
   IMX8QXP_PCIE_CTRL0_WAKE_B_LSIO_GPIO4_IO02  0x04000021
  >;
 };

 pinctrl_typec: typecgrp {
  fsl,pins = <
   IMX8QXP_SPI2_SCK_LSIO_GPIO1_IO03                        0x06000021
  >;
 };

 pinctrl_typec_mux: typecmuxgrp {
  fsl,pins = <
   IMX8QXP_ENET0_REFCLK_125M_25M_LSIO_GPIO5_IO09           0x60
  >;
 };

 pinctrl_sai0: sai0grp {
  fsl,pins = <
   IMX8QXP_SAI0_TXD_ADMA_SAI0_TXD  0x06000060
   IMX8QXP_SAI0_RXD_ADMA_SAI0_RXD  0x06000040
   IMX8QXP_SAI0_TXC_ADMA_SAI0_TXC  0x06000040
   IMX8QXP_SAI0_TXFS_ADMA_SAI0_TXFS 0x06000040
  >;
 };

 pinctrl_sai1: sai1grp {
  fsl,pins = <
   IMX8QXP_SAI1_RXD_ADMA_SAI1_RXD     0x06000040
   IMX8QXP_SAI1_RXC_ADMA_SAI1_TXC     0x06000040
   IMX8QXP_SAI1_RXFS_ADMA_SAI1_TXFS   0x06000040
   IMX8QXP_SPI0_CS1_ADMA_SAI1_TXD     0x06000060
   IMX8QXP_SPI2_CS0_LSIO_GPIO1_IO00   0x06000040
  >;
 };

 pinctrl_usdhc1: usdhc1grp {
  fsl,pins = <
   IMX8QXP_EMMC0_CLK_CONN_EMMC0_CLK   0x06000041
   IMX8QXP_EMMC0_CMD_CONN_EMMC0_CMD   0x00000021
   IMX8QXP_EMMC0_DATA0_CONN_EMMC0_DATA0   0x00000021
   IMX8QXP_EMMC0_DATA1_CONN_EMMC0_DATA1   0x00000021
   IMX8QXP_EMMC0_DATA2_CONN_EMMC0_DATA2   0x00000021
   IMX8QXP_EMMC0_DATA3_CONN_EMMC0_DATA3   0x00000021
   IMX8QXP_EMMC0_DATA4_CONN_EMMC0_DATA4   0x00000021
   IMX8QXP_EMMC0_DATA5_CONN_EMMC0_DATA5   0x00000021
   IMX8QXP_EMMC0_DATA6_CONN_EMMC0_DATA6   0x00000021
   IMX8QXP_EMMC0_DATA7_CONN_EMMC0_DATA7   0x00000021
   IMX8QXP_EMMC0_STROBE_CONN_EMMC0_STROBE   0x00000041
  >;
 };

 pinctrl_usdhc2: usdhc2grp {
  fsl,pins = <
   IMX8QXP_USDHC1_CLK_CONN_USDHC1_CLK   0x06000041
   IMX8QXP_USDHC1_CMD_CONN_USDHC1_CMD   0x00000021
   IMX8QXP_USDHC1_DATA0_CONN_USDHC1_DATA0   0x00000021
   IMX8QXP_USDHC1_DATA1_CONN_USDHC1_DATA1   0x00000021
   IMX8QXP_USDHC1_DATA2_CONN_USDHC1_DATA2   0x00000021
   IMX8QXP_USDHC1_DATA3_CONN_USDHC1_DATA3   0x00000021
   IMX8QXP_USDHC1_VSELECT_CONN_USDHC1_VSELECT  0x00000021
  >;
 };
};

[ Dauer der Verarbeitung: 0.6 Sekunden  (vorverarbeitet)  ]