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

Quelle  stm32mp151c-plyaqm.dts   Sprache: unbekannt

 
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
/dts-v1/;

#include <arm/st/stm32mp151.dtsi>
#include <arm/st/stm32mp15xc.dtsi>
#include <arm/st/stm32mp15-pinctrl.dtsi>
#include <arm/st/stm32mp15xxad-pinctrl.dtsi>
#include <arm/st/stm32mp15-scmi.dtsi>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/leds/common.h>

/ {
 model = "Plymovent AQM board";
 compatible = "ply,plyaqm", "st,stm32mp151";

 aliases {
  ethernet0 = ðernet0;
  serial0 = &uart4;
  serial1 = &uart7;
 };

 codec {
  compatible = "invensense,ics43432";

  port {
   codec_endpoint: endpoint {
    remote-endpoint = <&i2s1_endpoint>;
    dai-format = "i2s";
   };
  };
 };

 firmware {
  optee {
   compatible = "linaro,optee-tz";
   method = "smc";
  };
 };

 leds {
  compatible = "gpio-leds";

  led-0 {
   gpios = <&gpioa 3 GPIO_ACTIVE_HIGH>; /* WHITE_EN */
   color = <LED_COLOR_ID_WHITE>;
   default-state = "on";
  };
 };

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

 v5v_sw: fixed-regulator-v5sw {
  compatible = "regulator-fixed";
  regulator-name = "5v-switched";
  regulator-min-microvolt = <5000000>;
  regulator-max-microvolt = <5000000>;
  gpio = <&gpioe 10 GPIO_ACTIVE_HIGH>; /* 5V_SWITCHED_EN */
  startup-delay-us = <100000>;
  enable-active-high;
  regulator-boot-on;
 };

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

  optee@cfd00000 {
   reg = <0xcfd00000 0x300000>;
   no-map;
  };
 };

 sound {
  compatible = "audio-graph-card";
  label = "STM32MP15";
  dais = <&i2s1_port>;
 };

 wifi_pwrseq: wifi-pwrseq {
  compatible = "mmc-pwrseq-simple";
  reset-gpios = <&gpioe 12 GPIO_ACTIVE_LOW>; /* WLAN_REG_ON */
 };
};

&adc {
 pinctrl-names = "default";
 pinctrl-0 = <&adc1_in10_pins_a>;
 vdda-supply = <&v3v3>;
 vref-supply = <&v3v3>;
 status = "okay";

 adc@0 {
  #address-cells = <1>;
  #size-cells = <0>;
  status = "okay";

  channel@10 { /* NTC */
   reg = <10>;
   st,min-sample-time-ns = <10000>;  /* 10µs sampling time */
  };
 };
};

&cpu0 {
 clocks = <&scmi_clk CK_SCMI_MPU>;
};

&cryp1 {
 clocks = <&scmi_clk CK_SCMI_CRYP1>;
 resets = <&scmi_reset RST_SCMI_CRYP1>;
 status = "okay";
};

ðernet0 {
 pinctrl-names = "default", "sleep";
 pinctrl-0 = <ðernet0_rmii_pins_d>;
 pinctrl-1 = <ðernet0_rmii_sleep_pins_d>;
 phy-mode = "rmii";
 max-speed = <100>;
 phy-handle = <ðphy0>;
 status = "okay";

 mdio {
  #address-cells = <1>;
  #size-cells = <0>;
  compatible = "snps,dwmac-mdio";

  /* KSZ8081RNA PHY */
  ethphy0: ethernet-phy@0 {
   reg = <0>;
   interrupts-extended = <&gpiob 0 IRQ_TYPE_LEVEL_LOW>;
   reset-gpios = <&gpiob 1 GPIO_ACTIVE_LOW>;
   reset-assert-us = <10000>;
   reset-deassert-us = <300>;
  };
 };
};

&gpioa {
 gpio-line-names =
  "", "", "", "", "", "", "", "",
  "", "", "", "", "", "HWID_PL_N", "HWID_CP", "";
};

&gpiob {
 gpio-line-names =
  "", "", "", "", "", "", "LED_LATCH", "",
  "", "RELAY1_EN", "", "", "", "", "", "";
};

&gpioc {
 gpio-line-names =
  "", "", "", "", "", "", "", "",
  "", "", "", "", "", "HWID_Q7", "", "";
};

&gpioe {
 gpio-line-names =
  "", "", "", "", "RELAY2_EN", "", "", "",
  "", "", "", "", "", "", "", "";
};

&gpiog {
 gpio-line-names =
  "", "", "", "", "", "", "", "SW1",
  "", "", "", "", "", "", "", "";
};

&gpioz {
 clocks = <&scmi_clk CK_SCMI_GPIOZ>;
};

&hash1 {
 clocks = <&scmi_clk CK_SCMI_HASH1>;
 resets = <&scmi_reset RST_SCMI_HASH1>;
};

&i2c1 {
 pinctrl-names = "default", "sleep";
 pinctrl-0 = <&i2c1_pins_c>;
 pinctrl-1 = <&i2c1_sleep_pins_c>;
 i2c-scl-rising-time-ns = <185>;
 i2c-scl-falling-time-ns = <20>;
 status = "okay";
 /delete-property/dmas;
 /delete-property/dma-names;
};

&i2c4 {
 clocks = <&scmi_clk CK_SCMI_I2C4>;
 resets = <&scmi_reset RST_SCMI_I2C4>;
};

&i2c6 {
 pinctrl-names = "default", "sleep";
 pinctrl-0 = <&i2c6_pins_b>;
 pinctrl-1 = <&i2c6_sleep_pins_b>;
 i2c-scl-rising-time-ns = <185>;
 i2c-scl-falling-time-ns = <20>;
 clocks = <&scmi_clk CK_SCMI_I2C6>;
 resets = <&scmi_reset RST_SCMI_I2C6>;
 status = "okay";
 /delete-property/dmas;
 /delete-property/dma-names;

 pressure-sensor@47 {
  compatible = "bosch,bmp580";
  reg = <0x47>;
  vdda-supply = <&v5v_sw>;
  vddd-supply = <&v5v_sw>;
 };

 co2-sensor@62 {
  compatible = "sensirion,scd41";
  reg = <0x62>;
  vdd-supply = <&v5v_sw>;
 };

 pm-sensor@69 {
  compatible = "sensirion,sps30";
  reg = <0x69>;
 };
};

&i2s1 {
 pinctrl-names = "default", "sleep";
 pinctrl-0 = <&i2s1_pins_a>;
 pinctrl-1 = <&i2s1_sleep_pins_a>;
 clocks = <&rcc SPI1>, <&rcc SPI1_K>, <&rcc PLL3_Q>, <&rcc PLL3_R>;
 clock-names = "pclk", "i2sclk", "x8k", "x11k";
 #clock-cells = <0>; /* Set I2S2 as master clock provider */
 status = "okay";

 i2s1_port: port {
  i2s1_endpoint: endpoint {
   dai-format = "i2s";
   mclk-fs = <256>;
   remote-endpoint = <&codec_endpoint>;
  };
 };
};

&iwdg2 {
 clocks = <&rcc IWDG2>, <&scmi_clk CK_SCMI_LSI>;
 status = "okay";
};

&m4_rproc {
 /delete-property/ st,syscfg-holdboot;
 resets = <&scmi_reset RST_SCMI_MCU>,
   <&scmi_reset RST_SCMI_MCU_HOLD_BOOT>;
 reset-names =  "mcu_rst", "hold_boot";
};

&mdma1 {
 resets = <&scmi_reset RST_SCMI_MDMA>;
};

&rcc {
 compatible = "st,stm32mp1-rcc-secure", "syscon";
 clock-names = "hse", "hsi", "csi", "lse", "lsi";
 clocks = <&scmi_clk CK_SCMI_HSE>,
   <&scmi_clk CK_SCMI_HSI>,
   <&scmi_clk CK_SCMI_CSI>,
   <&scmi_clk CK_SCMI_LSE>,
   <&scmi_clk CK_SCMI_LSI>;
};

&rng1 {
 clocks = <&scmi_clk CK_SCMI_RNG1>;
 resets = <&scmi_reset RST_SCMI_RNG1>;
 status = "okay";
};

&rtc {
 clocks = <&scmi_clk CK_SCMI_RTCAPB>, <&scmi_clk CK_SCMI_RTC>;
};

/* SD card without Card-detect */
&sdmmc1 {
 pinctrl-names = "default", "opendrain", "sleep";
 pinctrl-0 = <&sdmmc1_b4_pins_a>;
 pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
 pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
 broken-cd;
 no-sdio;
 no-1-8-v;
 st,neg-edge;
 bus-width = <4>;
 vmmc-supply = <&v3v3>;
 status = "okay";
};

/* EMMC */
&sdmmc2 {
 pinctrl-names = "default", "opendrain", "sleep";
 pinctrl-0 = <&sdmmc2_b4_pins_c &sdmmc2_d47_pins_b>;
 pinctrl-1 = <&sdmmc2_b4_od_pins_c &sdmmc2_d47_pins_b>;
 pinctrl-2 = <&sdmmc2_b4_sleep_pins_c &sdmmc2_d47_sleep_pins_b>;
 non-removable;
 no-sd;
 no-sdio;
 no-1-8-v;
 st,neg-edge;
 bus-width = <8>;
 vmmc-supply = <&v3v3>;
 status = "okay";
};

/* Wifi */
&sdmmc3 {
 pinctrl-names = "default", "opendrain", "sleep";
 pinctrl-0 = <&sdmmc3_b4_pins_c>;
 pinctrl-1 = <&sdmmc3_b4_od_pins_c>;
 pinctrl-2 = <&sdmmc3_b4_sleep_pins_c>;
 non-removable;
 st,neg-edge;
 bus-width = <4>;
 vmmc-supply = <&v3v3>;
 mmc-pwrseq = <&wifi_pwrseq>;
 #address-cells = <1>;
 #size-cells = <0>;
 status = "okay";

 wifi@1 {
  reg = <1>;
  compatible = "brcm,bcm4329-fmac";
 };
};

&timers5 {
 status = "okay";
 /delete-property/dmas;
 /delete-property/dma-names;

 pwm {
  pinctrl-0 = <&pwm1_pins_d>;
  pinctrl-1 = <&pwm1_sleep_pins_d>;
  pinctrl-names = "default", "sleep";
  status = "okay";
 };
};

&uart4 {
 pinctrl-names = "default", "sleep", "idle";
 pinctrl-0 = <&uart4_pins_e>;
 pinctrl-1 = <&uart4_idle_pins_e>;
 pinctrl-2 = <&uart4_sleep_pins_e>;
 /delete-property/dmas;
 /delete-property/dma-names;
 status = "okay";
};

&uart7 {
 pinctrl-names = "default";
 pinctrl-0 = <&uart7_pins_d>;
 uart-has-rtscts;
 status = "okay";

 bluetooth {
  compatible = "brcm,bcm43438-bt";
  shutdown-gpios = <&gpioe 11 GPIO_ACTIVE_HIGH>; /* BT_REG_ON */
  max-speed = <4000000>;
  vbat-supply = <&v3v3>;
  vddio-supply = <&v3v3>;
  interrupt-parent = <&gpiog>;
  interrupts = <12 IRQ_TYPE_EDGE_RISING>; /* BT_HOST_WAKE */
  interrupt-names = "host-wakeup";
 };
};

[ Dauer der Verarbeitung: 0.4 Sekunden  (vorverarbeitet)  ]