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 7 kB image not shown  

Quelle  imx93-phyboard-segin.dts   Sprache: unbekannt

 
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (C) 2023 PHYTEC Messtechnik GmbH
 * Author: Wadim Egorov <w.egorov@phytec.de>, Christoph Stoidner <c.stoidner@phytec.de>
 * Copyright (C) 2024 Mathieu Othacehe <m.othacehe@gmail.com>
 *
 * Product homepage:
 * phyBOARD-Segin carrier board is reused for the i.MX93 design.
 * https://www.phytec.eu/en/produkte/single-board-computer/phyboard-segin-imx6ul/
 */
/dts-v1/;

#include "imx93-phycore-som.dtsi"

/{
 model = "PHYTEC phyBOARD-Segin-i.MX93";
 compatible = "phytec,imx93-phyboard-segin", "phytec,imx93-phycore-som",
       "fsl,imx93";

 aliases {
  ethernet1 = &eqos;
  rtc0 = &i2c_rtc;
  rtc1 = &bbnsm_rtc;
 };

 chosen {
  stdout-path = &lpuart1;
 };

 flexcan1_tc: can-phy0 {
  compatible = "ti,tcan1043";
  #phy-cells = <0>;
  max-bitrate = <1000000>;
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_flexcan1_tc>;
  enable-gpios = <&gpio4 16 GPIO_ACTIVE_HIGH>;
 };

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

 reg_sound_3v3: regulator-sound-3v3 {
  compatible = "regulator-fixed";
  regulator-max-microvolt = <3300000>;
  regulator-min-microvolt = <3300000>;
  regulator-name = "VCC3V3_ANALOG";
 };

 reg_usdhc2_vmmc: regulator-usdhc2 {
  compatible = "regulator-fixed";
  enable-active-high;
  gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>;
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>;
  regulator-min-microvolt = <3300000>;
  regulator-max-microvolt = <3300000>;
  regulator-name = "VCC_SD";
 };

 sound: sound {
  compatible = "simple-audio-card";
  simple-audio-card,name = "phyBOARD-Segin-TLV320AIC3007";
  simple-audio-card,format = "i2s";
  simple-audio-card,bitclock-master = <&dailink_master>;
  simple-audio-card,frame-master = <&dailink_master>;
  simple-audio-card,widgets =
   "Line", "Line In",
   "Line", "Line Out",
   "Speaker", "Speaker";
  simple-audio-card,routing =
   "Line Out", "LLOUT",
   "Line Out", "RLOUT",
   "Speaker", "SPOP",
   "Speaker", "SPOM",
   "LINE1L", "Line In",
   "LINE1R", "Line In";

  simple-audio-card,cpu {
   sound-dai = <&sai1>;
  };

  dailink_master: simple-audio-card,codec {
   sound-dai = <&audio_codec>;
   clocks = <&clk IMX93_CLK_SAI1>;
  };
 };
};

/* Ethernet */
&eqos {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_eqos>;
 phy-mode = "rmii";
 phy-handle = <ðphy2>;
 assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>,
     <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>;
 assigned-clock-rates = <100000000>, <50000000>;
 status = "okay";
};

&mdio {
 ethphy2: ethernet-phy@2 {
  compatible = "ethernet-phy-id0022.1561";
  reg = <2>;
  clocks = <&clk IMX93_CLK_ENET_REF_PHY>;
  clock-names = "rmii-ref";
  micrel,led-mode = <1>;
 };
};

/* CAN */
&flexcan1 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_flexcan1>;
 phys = <&flexcan1_tc>;
 status = "okay";
};

/* I2C2 */
&lpi2c2 {
 clock-frequency = <400000>;
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_lpi2c2>;
 status = "okay";

 /* Codec */
 audio_codec: audio-codec@18 {
  compatible = "ti,tlv320aic3007";
  reg = <0x18>;
  #sound-dai-cells = <0>;
  AVDD-supply = <®_sound_3v3>;
  IOVDD-supply = <®_sound_3v3>;
  DRVDD-supply = <®_sound_3v3>;
  DVDD-supply = <®_sound_1v8>;
 };

 /* RTC */
 i2c_rtc: rtc@68 {
  compatible = "microcrystal,rv4162";
  reg = <0x68>;
  pinctrl-names = "default";
  pinctrl-0 = <&pinctrl_rtc>;
  interrupt-parent = <&gpio4>;
  interrupts = <26 IRQ_TYPE_LEVEL_LOW>;
 };
};

/* Console */
&lpuart1 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_uart1>;
 status = "okay";
};

/* Audio */
&sai1 {
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_sai1>;
 assigned-clocks = <&clk IMX93_CLK_SAI1>;
 assigned-clock-parents = <&clk IMX93_CLK_AUDIO_PLL>;
 assigned-clock-rates = <19200000>;
 fsl,sai-mclk-direction-output;
 status = "okay";
};

/* USB  */
&usbotg1 {
 disable-over-current;
 dr_mode = "otg";
 status = "okay";
};

&usbotg2 {
 disable-over-current;
 dr_mode = "host";
 status = "okay";
};

/* SD-Card */
&usdhc2 {
 pinctrl-names = "default", "state_100mhz", "state_200mhz";
 pinctrl-0 = <&pinctrl_usdhc2_default>, <&pinctrl_usdhc2_cd>;
 pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_cd>;
 pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_cd>;
 bus-width = <4>;
 cd-gpios = <&gpio3 0 GPIO_ACTIVE_LOW>;
 disable-wp;
 no-mmc;
 no-sdio;
 vmmc-supply = <®_usdhc2_vmmc>;
 status = "okay";
};

&iomuxc {
 pinctrl_eqos: eqosgrp {
  fsl,pins = <
   MX93_PAD_ENET1_TD2__CCM_ENET_QOS_CLOCK_GENERATE_REF_CLK 0x4000050e
   MX93_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0  0x57e
   MX93_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1  0x57e
   MX93_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0  0x50e
   MX93_PAD_ENET1_TD1__ENET_QOS_RGMII_TD1  0x50e
   MX93_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL 0x57e
   MX93_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL 0x50e
   MX93_PAD_ENET1_RXC__ENET_QOS_RX_ER  0x57e
  >;
 };

 pinctrl_flexcan1: flexcan1grp {
  fsl,pins = <
   MX93_PAD_PDM_BIT_STREAM0__CAN1_RX 0x139e
   MX93_PAD_PDM_CLK__CAN1_TX  0x139e
  >;
 };

 pinctrl_flexcan1_tc: flexcan1tcgrp {
  fsl,pins = <
   MX93_PAD_ENET2_TD3__GPIO4_IO16  0x31e
  >;
 };

 pinctrl_lpi2c2: lpi2c2grp {
  fsl,pins = <
   MX93_PAD_I2C2_SCL__LPI2C2_SCL  0x40000b9e
   MX93_PAD_I2C2_SDA__LPI2C2_SDA  0x40000b9e
  >;
 };

 pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp {
  fsl,pins = <
   MX93_PAD_SD2_RESET_B__GPIO3_IO07 0x31e
  >;
 };

 pinctrl_rtc: rtcgrp {
  fsl,pins = <
   MX93_PAD_ENET2_RD2__GPIO4_IO26  0x31e
  >;
 };

 pinctrl_sai1: sai1grp {
  fsl,pins = <
   MX93_PAD_UART2_RXD__SAI1_MCLK  0x1202
   MX93_PAD_SAI1_TXFS__SAI1_TX_SYNC 0x1202
   MX93_PAD_SAI1_TXC__SAI1_TX_BCLK  0x1202
   MX93_PAD_SAI1_TXD0__SAI1_TX_DATA00 0x1402
   MX93_PAD_SAI1_RXD0__SAI1_RX_DATA00 0x1402
  >;
 };

 pinctrl_uart1: uart1grp {
  fsl,pins = <
   MX93_PAD_UART1_RXD__LPUART1_RX  0x31e
   MX93_PAD_UART1_TXD__LPUART1_TX  0x30e
  >;
 };

 pinctrl_usdhc2_cd: usdhc2cdgrp {
  fsl,pins = <
   MX93_PAD_SD2_CD_B__GPIO3_IO00  0x31e
  >;
 };

 /* need to config the SION for data and cmd pad, refer to ERR052021 */
 pinctrl_usdhc2_default: usdhc2grp {
  fsl,pins = <
   MX93_PAD_SD2_CLK__USDHC2_CLK  0x159e
   MX93_PAD_SD2_CMD__USDHC2_CMD  0x4000139e
   MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x4000138e
   MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x4000138e
   MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x4000138e
   MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x4000139e
   MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e
  >;
 };

 /* need to config the SION for data and cmd pad, refer to ERR052021 */
 pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
  fsl,pins = <
   MX93_PAD_SD2_CLK__USDHC2_CLK  0x159e
   MX93_PAD_SD2_CMD__USDHC2_CMD  0x4000139e
   MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x4000138e
   MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x4000138e
   MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x4000139e
   MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x4000139e
   MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e
  >;
 };

 /* need to config the SION for data and cmd pad, refer to ERR052021 */
 pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
  fsl,pins = <
   MX93_PAD_SD2_CLK__USDHC2_CLK  0x158e
   MX93_PAD_SD2_CMD__USDHC2_CMD  0x4000139e
   MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x4000139e
   MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x4000139e
   MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x4000139e
   MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x4000139e
   MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e
  >;
 };
};

[ Dauer der Verarbeitung: 0.48 Sekunden  (vorverarbeitet)  ]