271 lines
4.5 KiB
Devicetree
271 lines
4.5 KiB
Devicetree
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
|
/*
|
|
* Copyright (c) Toradex
|
|
*
|
|
* Common dtsi for Verdin iMX95 SoM on Dahlia carrier board
|
|
*
|
|
* https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx95
|
|
* https://www.toradex.com/products/carrier-board/dahlia-carrier-board-kit
|
|
*/
|
|
|
|
/ {
|
|
aliases {
|
|
eeprom1 = &carrier_eeprom;
|
|
};
|
|
|
|
reg_1v8_sw: regulator-1v8-sw {
|
|
compatible = "regulator-fixed";
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-name = "On-carrier +V1.8_SW";
|
|
};
|
|
|
|
reg_pcie: regulator-pcie {
|
|
compatible = "regulator-fixed";
|
|
/* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */
|
|
gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
regulator-boot-on;
|
|
regulator-name = "PCIE_1_PWR_EN";
|
|
};
|
|
|
|
reg_usb_hub: regulator-usb-hub {
|
|
compatible = "regulator-fixed";
|
|
/* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */
|
|
gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
regulator-boot-on;
|
|
regulator-name = "HUB_PWR_EN";
|
|
};
|
|
|
|
sound {
|
|
compatible = "simple-audio-card";
|
|
simple-audio-card,bitclock-master = <&codec_dai>;
|
|
simple-audio-card,format = "i2s";
|
|
simple-audio-card,frame-master = <&codec_dai>;
|
|
simple-audio-card,mclk-fs = <256>;
|
|
simple-audio-card,name = "verdin-wm8904";
|
|
simple-audio-card,routing =
|
|
"Headphone Jack", "HPOUTL",
|
|
"Headphone Jack", "HPOUTR",
|
|
"IN2L", "Line In Jack",
|
|
"IN2R", "Line In Jack",
|
|
"Microphone Jack", "MICBIAS",
|
|
"IN1L", "Microphone Jack";
|
|
simple-audio-card,widgets =
|
|
"Microphone", "Microphone Jack",
|
|
"Headphone", "Headphone Jack",
|
|
"Line", "Line In Jack";
|
|
|
|
codec_dai: simple-audio-card,codec {
|
|
sound-dai = <&wm8904_1a>;
|
|
};
|
|
|
|
simple-audio-card,cpu {
|
|
sound-dai = <&sai3>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/* Verdin ADC_1, ADC_2, ADC_3 and ADC_4 */
|
|
&adc1 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin ETH_1 (On-module PHY) */
|
|
&enetc_port0 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin CAN_1 */
|
|
&flexcan1 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin CAN_2 */
|
|
&flexcan2 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin QSPI_1 */
|
|
&flexspi1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&gpio1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_ctrl_sleep_moci>;
|
|
};
|
|
|
|
&gpio2 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_gpio1>,
|
|
<&pinctrl_gpio2>,
|
|
<&pinctrl_gpio3>;
|
|
};
|
|
|
|
&gpio3 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_gpio6>;
|
|
};
|
|
|
|
&gpio4 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_gpio5>;
|
|
};
|
|
|
|
&gpio5 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_gpio4>;
|
|
};
|
|
|
|
/* Verdin I2C_3_HDMI */
|
|
&i3c2 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin I2C_2_DSI */
|
|
&lpi2c3 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin I2C_1 */
|
|
&lpi2c4 {
|
|
status = "okay";
|
|
|
|
wm8904_1a: audio-codec@1a {
|
|
compatible = "wlf,wm8904";
|
|
reg = <0x1a>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_sai3_mclk>;
|
|
clocks = <&scmi_clk IMX95_CLK_SAI3>;
|
|
clock-names = "mclk";
|
|
#sound-dai-cells = <0>;
|
|
AVDD-supply = <®_1v8_sw>;
|
|
CPVDD-supply = <®_1v8_sw>;
|
|
DBVDD-supply = <®_1v8_sw>;
|
|
DCVDD-supply = <®_1v8_sw>;
|
|
MICVDD-supply = <®_1v8_sw>;
|
|
};
|
|
|
|
/* Current measurement into module VCC */
|
|
hwmon@40 {
|
|
compatible = "ti,ina219";
|
|
reg = <0x40>;
|
|
shunt-resistor = <10000>;
|
|
};
|
|
|
|
temperature-sensor@4f {
|
|
compatible = "ti,tmp75c";
|
|
reg = <0x4f>;
|
|
};
|
|
|
|
carrier_eeprom: eeprom@57 {
|
|
compatible = "st,24c02", "atmel,24c02";
|
|
reg = <0x57>;
|
|
pagesize = <16>;
|
|
};
|
|
};
|
|
|
|
/* Verdin I2C_4_CSI */
|
|
&lpi2c5 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin UART_3, used as the Linux console */
|
|
&lpuart1 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin UART_4 */
|
|
&lpuart2 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin UART_1 */
|
|
&lpuart7 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin UART_2 */
|
|
&lpuart8 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin PCIE_1 */
|
|
&pcie0 {
|
|
vpcie-supply = <®_pcie>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
/* We support turning off sleep moci on Dahlia */
|
|
®_force_sleep_moci {
|
|
status = "disabled";
|
|
};
|
|
|
|
/* Verdin I2S_1 */
|
|
&sai3 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin PWM_1 */
|
|
&tpm4 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin PWM_2 */
|
|
&tpm5 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin PWM_3_DSI */
|
|
&tpm6 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin USB_1 */
|
|
&usb2 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin USB_2 */
|
|
&usb3 {
|
|
fsl,permanently-attached;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb3_dwc3 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
usb_hub_3_0: usb-hub@1 {
|
|
compatible = "usb424,5744";
|
|
reg = <1>;
|
|
peer-hub = <&usb_hub_2_0>;
|
|
vdd-supply = <®_usb_hub>;
|
|
};
|
|
|
|
usb_hub_2_0: usb-hub@2 {
|
|
compatible = "usb424,2744";
|
|
reg = <2>;
|
|
peer-hub = <&usb_hub_3_0>;
|
|
vdd-supply = <®_usb_hub>;
|
|
};
|
|
};
|
|
|
|
&usb3_phy {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin SD_1 */
|
|
&usdhc2 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Verdin CTRL_WAKE1_MICO# */
|
|
&verdin_gpio_keys {
|
|
status = "okay";
|
|
};
|