// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause /* * Copyright (C) 2023 DH electronics GmbH * * DHCOM iMX6ULL variant: * DHCM-iMX6ULL-C080-R051-F0409-SPI-E2-CAN2-RTC-WBT-ADC-I-01D2 * DHCOR PCB number: 578-200 or newer * DHCOM PCB number: 579-200 or newer * PDK2 PCB number: 516-400 or newer */ /dts-v1/; #include "imx6ull-dhcom-som.dtsi" / { model = "DH electronics i.MX6ULL DHCOM on Premium Developer Kit (2)"; compatible = "dh,imx6ull-dhcom-pdk2", "dh,imx6ull-dhcom-som", "dh,imx6ull-dhcor-som", "fsl,imx6ull"; clk_ext_audio_codec: clock-codec { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <24000000>; }; display_bl: display-bl { compatible = "pwm-backlight"; brightness-levels = <0 16 22 30 40 55 75 102 138 188 255>; default-brightness-level = <8>; enable-gpios = <&gpio5 8 GPIO_ACTIVE_HIGH>; /* GPIO G */ power-supply = <®_panel_3v3>; pwms = <&pwm1 0 50000 PWM_POLARITY_INVERTED>; }; gpio-keys { compatible = "gpio-keys"; button-0 { gpios = <&gpio5 0 GPIO_ACTIVE_LOW>; /* GPIO A */ label = "TA1-GPIO-A"; linux,code = ; wakeup-source; }; button-1 { gpios = <&gpio5 1 GPIO_ACTIVE_LOW>; /* GPIO B */ label = "TA2-GPIO-B"; linux,code = ; wakeup-source; }; button-2 { gpios = <&gpio5 2 GPIO_ACTIVE_LOW>; /* GPIO C */ label = "TA3-GPIO-C"; linux,code = ; wakeup-source; }; button-3 { gpios = <&gpio5 3 GPIO_ACTIVE_LOW>; /* GPIO D */ label = "TA4-GPIO-D"; linux,code = ; wakeup-source; }; }; led: led { compatible = "gpio-leds"; /* * Disable PDK2 LED5, because GPIO E is * already used as touch interrupt. */ led-0 { color = ; default-state = "off"; function = LED_FUNCTION_INDICATOR; function-enumerator = <5>; /* PDK2 LED5 */ gpios = <&gpio5 4 GPIO_ACTIVE_HIGH>; /* GPIO E */ status = "disabled"; }; led-1 { color = ; default-state = "off"; function = LED_FUNCTION_INDICATOR; function-enumerator = <6>; /* PDK2 LED6 */ gpios = <&gpio5 7 GPIO_ACTIVE_HIGH>; /* GPIO F */ }; /* * Disable PDK2 LED7, because GPIO H is * already used for WiFi pin WL_REG_ON. */ led-2 { color = ; default-state = "off"; function = LED_FUNCTION_INDICATOR; function-enumerator = <7>; /* PDK2 LED7 */ gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>; /* GPIO H */ status = "disabled"; }; /* * Disable PDK2 LED8, because GPIO I is * already used for BT pin BT_REG_ON. */ led-3 { color = ; default-state = "off"; function = LED_FUNCTION_INDICATOR; function-enumerator = <8>; /* PDK2 LED8 */ gpios = <&gpio1 18 GPIO_ACTIVE_HIGH>; /* GPIO I */ status = "disabled"; }; }; panel { compatible = "edt,etm0700g0edh6"; backlight = <&display_bl>; power-supply = <®_panel_3v3>; port { lcd_panel_in: endpoint { remote-endpoint = <&lcd_display_out>; }; }; }; /* Filtered supply voltage */ reg_pdk2_24v: regulator-pdk2-24v { compatible = "regulator-fixed"; regulator-always-on; regulator-max-microvolt = <24000000>; regulator-min-microvolt = <24000000>; regulator-name = "24V_PDK2"; }; /* PDK2 U35 */ reg_pdk2_3v3: regulator-pdk2-3v3 { compatible = "regulator-fixed"; regulator-always-on; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-name = "3V3_PDK2"; vin-supply = <®_pdk2_24v>; }; /* 560-200 U1 */ reg_panel_3v3: regulator-panel-3v3 { compatible = "regulator-fixed"; regulator-always-on; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-name = "3V3_PANEL"; vin-supply = <®_pdk2_24v>; }; sound { compatible = "simple-audio-card"; simple-audio-card,bitclock-master = <&dailink_master>; simple-audio-card,format = "i2s"; simple-audio-card,frame-master = <&dailink_master>; simple-audio-card,name = "sgtl5000"; simple-audio-card,routing = "MIC_IN", "Mic Jack", "Mic Jack", "Mic Bias", "LINE_IN", "Line In Jack", "Headphone Jack", "HP_OUT"; simple-audio-card,widgets = "Microphone", "Mic Jack", "Line", "Line In Jack", "Headphone", "Headphone Jack"; simple-audio-card,cpu { sound-dai = <&sai2>; }; dailink_master: simple-audio-card,codec { clocks = <&clk_ext_audio_codec>; sound-dai = <&sgtl5000>; }; }; }; /* DHCOM I2C1 */ &i2c2 { sgtl5000: audio-codec@a { compatible = "fsl,sgtl5000"; reg = <0x0a>; #sound-dai-cells = <0>; clocks = <&clk_ext_audio_codec>; VDDA-supply = <®_pdk2_3v3>; VDDIO-supply = <®_pdk2_3v3>; }; touchscreen@38 { compatible = "edt,edt-ft5406"; reg = <0x38>; interrupt-parent = <&gpio5>; interrupts = <4 IRQ_TYPE_EDGE_FALLING>; /* GPIO E */ power-supply = <®_panel_3v3>; }; }; &lcdif { status = "okay"; port { lcd_display_out: endpoint { remote-endpoint = <&lcd_panel_in>; }; }; }; &pwm1 { status = "okay"; }; &sai2 { status = "okay"; };