// SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* * Copyright 2022 NXP */ #include "imx93-11x11-evk.dts" / { mic_leds { compatible = "gpio-leds"; mic0 { label = "mic0"; gpios = <&pca9555 5 GPIO_ACTIVE_LOW>; default-state = "off"; }; mic1 { label = "mic1"; gpios = <&pca9555 7 GPIO_ACTIVE_LOW>; default-state = "off"; }; mic2 { label = "mic2"; gpios = <&pca9555 6 GPIO_ACTIVE_LOW>; default-state = "off"; }; mic3 { label = "mic3"; gpios = <&pca9555 2 GPIO_ACTIVE_LOW>; default-state = "off"; }; mic4 { label = "mic4"; gpios = <&pca9555 1 GPIO_ACTIVE_LOW>; default-state = "off"; }; mic5 { label = "mic5"; gpios = <&pca9555 0 GPIO_ACTIVE_LOW>; default-state = "off"; }; mic6 { label = "mic6"; gpios = <&pca9555 4 GPIO_ACTIVE_LOW>; default-state = "off"; }; mic7 { label = "mic7"; gpios = <&pca9555 3 GPIO_ACTIVE_LOW>; default-state = "off"; }; }; sw_keys { compatible = "gpio-keys"; sw4: volume_down { label = "Volume Down"; gpios = <&pca9555 15 GPIO_ACTIVE_LOW>; linux,code = ; interrupt-parent = <&pca9555>; interrupts = <15 IRQ_TYPE_LEVEL_LOW>; }; sw3: volume_up { label = "Volume Up"; gpios = <&pca9555 14 GPIO_ACTIVE_LOW>; linux,code = ; interrupt-parent = <&pca9555>; interrupts = <14 IRQ_TYPE_LEVEL_LOW>; }; sw2: volume_mute { label = "Volume Mute"; gpios = <&pca9555 13 GPIO_ACTIVE_LOW>; linux,code = ; interrupt-parent = <&pca9555>; interrupts = <13 IRQ_TYPE_LEVEL_LOW>; }; sw1: key_act { label = "Key Act"; gpios = <&pca9555 12 GPIO_ACTIVE_LOW>; linux,code = ; interrupt-parent = <&pca9555>; interrupts = <12 IRQ_TYPE_LEVEL_LOW>; }; }; reg_vddext_3v3: regulator-vddext { compatible = "regulator-fixed"; regulator-name = "VDDEXT_3V3"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; }; reg_audio_switch1: regulator-audio-switch1 { compatible = "regulator-fixed"; regulator-name = "audio-switch1"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; gpio = <&adp5585gpio 4 GPIO_ACTIVE_HIGH>; enable-active-high; regulator-always-on; }; reg_audio_pwr: regulator-audio-pwr { compatible = "regulator-fixed"; regulator-name = "cs42448-supply"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; sound-wm8962 { status = "disabled"; }; sound-cs42448 { compatible = "fsl,imx-audio-card"; model = "imx-cs42448"; status = "okay"; pri-dai-link { link-name = "cs42448"; format = "dsp_a"; dai-tdm-slot-num = <8>; dai-tdm-slot-width = <32>; fsl,mclk-equal-bclk; cpu { sound-dai = <&sai3>; }; codec { sound-dai = <&cs42448>; }; }; }; }; &sai3 { #sound-dai-cells = <0>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_sai3audhat>; clocks = <&clk IMX93_CLK_SAI3_IPG>, <&clk IMX93_CLK_DUMMY>, <&clk IMX93_CLK_SAI3_GATE>, <&clk IMX93_CLK_DUMMY>, <&clk IMX93_CLK_DUMMY>, <&clk IMX93_CLK_AUDIO_PLL>; clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k"; assigned-clocks = <&clk IMX93_CLK_SAI3>; assigned-clock-parents = <&clk IMX93_CLK_AUDIO_PLL>; assigned-clock-rates = <12288000>; fsl,sai-asynchronous; status = "okay"; }; &flexcan2 { status = "disabled"; }; &micfil { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pdm2>; status = "okay"; }; &lpi2c4 { #address-cells = <1>; #size-cells = <0>; clock-frequency = <400000>; dmas = <&edma2 10 0 0>, <&edma2 11 0 1>; dma-names = "tx","rx"; pinctrl-names = "default", "sleep"; pinctrl-0 = <&pinctrl_lpi2c4>; pinctrl-1 = <&pinctrl_lpi2c4>; status = "okay"; pca9555: gpio@21 { compatible = "nxp,pca9555"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pushbutton_irq>; reg = <0x21>; gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; interrupt-parent = <&gpio2>; interrupts = <27 IRQ_TYPE_LEVEL_LOW>; vcc-supply = <®_vddext_3v3>; status = "okay"; }; cs42448: cs42448@48 { #sound-dai-cells = <0>; compatible = "cirrus,cs42448"; reg = <0x48>; clocks = <&clk IMX93_CLK_SAI3_GATE>; clock-names = "mclk"; VA-supply = <®_audio_pwr>; VD-supply = <®_audio_pwr>; VLS-supply = <®_audio_pwr>; VLC-supply = <®_audio_pwr>; reset-gpio = <&gpio2 25 GPIO_ACTIVE_LOW>; status = "okay"; }; }; &iomuxc { pinctrl_swpdm_mute_irq: swpdm_mute_grp { fsl,pins = < MX93_PAD_GPIO_IO00__GPIO2_IO00 0x31e >; }; pinctrl_pushbutton_irq: pushbutton_grp { fsl,pins = < MX93_PAD_GPIO_IO27__GPIO2_IO27 0x31e >; }; pinctrl_pdm2: pdm2grp { fsl,pins = < MX93_PAD_GPIO_IO04__PDM_CLK 0x31e MX93_PAD_GPIO_IO05__PDM_BIT_STREAM00 0x31e MX93_PAD_GPIO_IO06__PDM_BIT_STREAM01 0x31e MX93_PAD_GPIO_IO12__PDM_BIT_STREAM02 0x31e MX93_PAD_GPIO_IO13__PDM_BIT_STREAM03 0x31e >; }; pinctrl_lpi2c4: lpi2c4grp { fsl,pins = < MX93_PAD_GPIO_IO03__LPI2C4_SCL 0x40000b9e MX93_PAD_GPIO_IO02__LPI2C4_SDA 0x40000b9e >; }; pinctrl_sai3audhat: sai3audhat { fsl,pins = < MX93_PAD_GPIO_IO17__SAI3_MCLK 0x31e MX93_PAD_GPIO_IO26__SAI3_TX_SYNC 0x31e MX93_PAD_GPIO_IO16__SAI3_TX_BCLK 0x31e MX93_PAD_GPIO_IO19__SAI3_RX_SYNC 0x31e MX93_PAD_GPIO_IO18__SAI3_RX_BCLK 0x31e MX93_PAD_GPIO_IO21__SAI3_TX_DATA00 0x31e MX93_PAD_GPIO_IO20__SAI3_RX_DATA00 0x31e >; }; };