i.MX ARM device tree changes for 6.19:

- A bunch of dt-schema warning cleanup patches from Frank Li
 - A couple of imx6dl-yapp4 board update from Michal Vokáč to enable
   pwm-beeper and model the RGB LED as a single multi-led part
 - Enable PMIC RTC on imx53-qsrb board
 - Correct rtc compatible for imx6q-evi board
 - Add sy7636 support for e70k02 board
 - Replace license text comment with SPDX identifier for imx53-usbarmory
   board
 - Add I2S audio support for imx28-amarula-rmm board
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmkbD7kACgkQUFdYWoew
 fM5/zgf+N1SsNaLVnVvOYb2wt1CJw6yJhFm6/xGgCj8Xdg2rUSYlAVEeKb7DI4Fp
 n0ziuRAoGqse6XUyeYLjPzIzoHmS6oEBpiNyw9mt3JysRDW2CuQh6keslPxP07ng
 QcxK/CSwax5wtnzRsDeIm0fJw6o821rG0XP8BIMEutrUycgwUsscpZ2qQ4dwVjif
 /dhRDg/2SWG+9/rAS4C79bz5hmLbkKHyza/Dy9qN8L+hLxfb61XgMSdbVlmzJLx+
 bZK1GP7mioE2s37dZA0ysiTUrbY8kL1z0vGovr/EDR32Orepk2k7vGg+AwBiGSFs
 Fjqong3fUiwpN1FZUZhegvgq1ORqUA==
 =hFql
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmkgjYsACgkQmmx57+YA
 GNkT8BAAhQ1n621YEwuiflNytmNt+GxrZke3DQ1jxl1hkzxKWLZZeUi0++aEQ0hK
 w9C+q4uKqmks64cQrgfzacUK0/ynkp6Iw7K819uo7c3Y4Ls3p3Y0OFHHzKrZKd0e
 XXYVVtg+rbxUzxj0YKM5irxEhJC5NqKlwREXZyvqu3oWl1yGdRoZhl0e7aFYOqfV
 NG4Era+ezjpfec8wTkf4LZjLgEH4CRB0ibxsEwEwK8J7kI/VJJ5DjsOzC5qM6lqu
 eHP1mY3KT3mAvAHdlluErg4BlazMSMEkyAF58aMtAaJ3xic0zeZPvYGd9JBQRb2e
 kSyw/Vr1epUxe3kfTpwwfKcuSO2VAX9tiFVqy6CrNwjRrSgnoxOmntdtTvchNSYT
 N+TqO7uPrm4pr6fZQHCGZhsa+k6o/FLDl5x4ZlkwjI+EQEo//7duOcsIH/JHnbWC
 u0v/47du0NWA61Feke5LMHLd1PxmkdhiWh7adxp5+J+6wOyAMw1bDoEMQplIO6ar
 ZjkMYn25JDzTEKrDNY8arh68g6uDTEpgijC0l6x7sZO+mOk1jPUfsDVep+hcs998
 8CyorlNEaQTf9jdeqIPYkbAoXwGx9QcVO+eY9pXBc+SyhVlg7u3OUTV1FDT12bB/
 SLS43bOAaxDDiyHDzeSHbbPd5i+MfKmWzOv9dh3CKQTF6Q66W3w=
 =McSM
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt-6.19' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into soc/dt

i.MX ARM device tree changes for 6.19:

- A bunch of dt-schema warning cleanup patches from Frank Li
- A couple of imx6dl-yapp4 board update from Michal Vokáč to enable
  pwm-beeper and model the RGB LED as a single multi-led part
- Enable PMIC RTC on imx53-qsrb board
- Correct rtc compatible for imx6q-evi board
- Add sy7636 support for e70k02 board
- Replace license text comment with SPDX identifier for imx53-usbarmory
  board
- Add I2S audio support for imx28-amarula-rmm board

* tag 'imx-dt-6.19' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (29 commits)
  ARM: dts: imx6qdl: make VAR-SOM SoM SoC-agnostic
  ARM: dts: imx6dl-yapp4: Model the RGB LED as a single multi-led part
  ARM: dts: imx6dl-yapp43: Enable pwm-beeper on boards with speaker
  ARM: dts: imx: e70k02: add sy7636
  ARM: dts: imx28-amarula-rmm: add I2S audio
  ARM: dts: imx: add vdd-supply and vddio-supply for fsl,mpl3115
  ARM: dts: imx7ulp: remove bias-pull-up
  ARM: dts: remove undocumented clock-names for ov5642
  ARM: dts: add device_type for memory node
  ARM: dts: Add bus type for parallel ov5640
  ARM: dts: imx6q-cm-fx6.dts: add supplies for wm8731
  ARM: dts: imx6qdl-skov-cpu fix typo interrupt
  ARM: dts: imx: remove redundant linux,phandle
  ARM: dts: imx6ull-dhcom-pdk2: rename power-supply to vcc-supply for touchscreen
  ARM: dts: imx: add power-supply for lcd panel
  ARM: dts: imx6qdl-nitrogen6_max: rename i2c<n>mux to i2c
  ARM: dts: imx6ull-phytec-tauri: remove extra space before jedec,spi-nor
  ARM: dts: imx6q-utilite-pro: add missing required property for pci
  ARM: dts: imx6-tbs2910: rename ir_recv to ir-receiver
  ARM: dts: imx6: remove pinctrl-name if pinctrl-0 doesn't exist
  ...

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2025-11-21 17:04:25 +01:00
commit e5060380e0
56 changed files with 388 additions and 122 deletions

View File

@ -69,6 +69,14 @@ memory@80000000 {
reg = <0x80000000 0x20000000>;
};
epd_pmic_supply: regulator-epd-pmic-in {
compatible = "regulator-fixed";
regulator-name = "epd_pmic_supply";
gpio = <&gpio2 14 GPIO_ACTIVE_HIGH>;
enable-active-high;
startup-delay-us = <20000>;
};
reg_wifi: regulator-wifi {
compatible = "regulator-fixed";
regulator-name = "SD3_SPWR";
@ -133,7 +141,22 @@ touchscreen@24 {
vdd-supply = <&ldo5_reg>;
};
/* TODO: SY7636 PMIC for E Ink at 0x62 */
sy7636: pmic@62 {
compatible = "silergy,sy7636a";
reg = <0x62>;
enable-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>;
vcom-en-gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>;
epd-pwr-good-gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
vin-supply = <&epd_pmic_supply>;
#thermal-sensor-cells = <0>;
regulators {
reg_epdpmic: vcom {
regulator-name = "vcom";
};
};
};
};

View File

@ -537,6 +537,8 @@ mma8453q: accelerometer@1c {
mpl3115: pressure-sensor@60 {
compatible = "fsl,mpl3115";
reg = <0x60>;
vdd-supply = <&reg_3v3>;
vddio-supply = <&reg_3v3>;
};
eeprom: eeprom@50 {

View File

@ -28,6 +28,7 @@ pmic: mc34708@8 {
reg = <0x08>;
interrupt-parent = <&gpio5>;
interrupts = <23 IRQ_TYPE_LEVEL_HIGH>;
fsl,mc13xxx-uses-rtc;
regulators {
sw1_reg: sw1a {
regulator-name = "SW1";

View File

@ -1,47 +1,10 @@
// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
/*
* USB armory MkI device tree file
* https://inversepath.com/usbarmory
*
* Copyright (C) 2015, Inverse Path
* Andrej Rosano <andrej@inversepath.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;

View File

@ -20,6 +20,7 @@ memory@10000000 {
panel: panel {
compatible = "lg,lb070wv8";
backlight = <&backlight>;
power-supply = <&reg_3p3v>;
enable-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
port {

View File

@ -47,7 +47,8 @@ &i2c5 {
mpl3115a2: pressure-sensor@60 {
compatible = "fsl,mpl3115";
reg = <0x60>;
vdd-supply = <&reg_3v3>;
vddio-supply = <&reg_3v3>;
/*
* The MPL3115 interrupts are connected to pin 22 and 23
* of &tca6424a, but the binding does not yet support

View File

@ -72,6 +72,7 @@ led-0 {
panel {
compatible = "edt,etm0700g0bdh6";
backlight = <&backlight>;
power-supply = <&reg_panel>;
port {
panel_in: endpoint {
@ -89,6 +90,13 @@ reg_otg_vbus: regulator-otg-vbus {
enable-active-high;
};
reg_panel: regulator-panel {
compatible = "regulator-fixed";
regulator-name = "panel";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
usdhc2_wifi_pwrseq: usdhc2-wifi-pwrseq {
compatible = "mmc-pwrseq-simple";
pinctrl-names = "default";

View File

@ -123,7 +123,7 @@ alert {
};
};
touch-thermal0 {
touch-0-thermal {
polling-delay = <20000>;
polling-delay-passive = <0>;
thermal-sensors = <&touch_temp0>;
@ -137,7 +137,7 @@ alert {
};
};
touch-thermal1 {
touch-1-thermal {
polling-delay = <20000>;
polling-delay-passive = <0>;
thermal-sensors = <&touch_temp1>;

View File

@ -55,7 +55,7 @@ display_out: endpoint {
iio-hwmon {
compatible = "iio-hwmon";
io-channels = <&vdiv_vaccu>;
io-channels = <&vdiv_vaccu 0>;
};
keys {
@ -256,7 +256,7 @@ alert {
};
};
touch-thermal0 {
touch-0-thermal {
polling-delay = <20000>;
polling-delay-passive = <0>;
thermal-sensors = <&touch_temp0>;
@ -270,7 +270,7 @@ alert {
};
};
touch-thermal1 {
touch-1-thermal {
polling-delay = <20000>;
polling-delay-passive = <0>;
thermal-sensors = <&touch_temp1>;
@ -318,7 +318,7 @@ vdiv_vaccu: voltage-divider-vaccu {
io-channels = <&adc_ts 2>;
output-ohms = <2500>;
full-ohms = <64000>;
#io-channel-cells = <0>;
#io-channel-cells = <1>;
};
};

View File

@ -14,6 +14,7 @@
/ {
memory@10000000 {
reg = <0x10000000 0x40000000>;
device_type = "memory";
};
reg_3p3v: 3p3v {

View File

@ -35,7 +35,7 @@ key-enter {
iio-hwmon {
compatible = "iio-hwmon";
io-channels = <&vdiv_vaccu>, <&vdiv_hitch_pos>;
io-channels = <&vdiv_vaccu 0>, <&vdiv_hitch_pos 0>;
};
panel {
@ -84,7 +84,7 @@ alert {
};
};
touch-thermal0 {
touch-0-thermal {
polling-delay = <20000>;
polling-delay-passive = <0>;
thermal-sensors = <&touch_temp0>;
@ -98,7 +98,7 @@ alert {
};
};
touch-thermal1 {
touch-1-thermal {
polling-delay = <20000>;
polling-delay-passive = <0>;
thermal-sensors = <&touch_temp1>;
@ -147,7 +147,7 @@ vdiv_vaccu: voltage-divider-vaccu {
io-channels = <&adc_ts 2>;
output-ohms = <2500>;
full-ohms = <64000>;
#io-channel-cells = <0>;
#io-channel-cells = <1>;
};
vdiv_hitch_pos: voltage-divider-hitch-pos {
@ -155,7 +155,7 @@ vdiv_hitch_pos: voltage-divider-hitch-pos {
io-channels = <&adc_ts 6>;
output-ohms = <3300>;
full-ohms = <13300>;
#io-channel-cells = <0>;
#io-channel-cells = <1>;
};
};

View File

@ -279,28 +279,32 @@ leds: led-controller@30 {
#size-cells = <0>;
status = "disabled";
led@0 {
chan-name = "R";
led-cur = /bits/ 8 <0x20>;
max-cur = /bits/ 8 <0x60>;
reg = <0>;
color = <LED_COLOR_ID_RED>;
};
multi-led@0 {
#address-cells = <1>;
#size-cells = <0>;
color = <LED_COLOR_ID_RGB>;
function = LED_FUNCTION_INDICATOR;
led@1 {
chan-name = "G";
led-cur = /bits/ 8 <0x20>;
max-cur = /bits/ 8 <0x60>;
reg = <1>;
color = <LED_COLOR_ID_GREEN>;
};
led@0 {
led-cur = /bits/ 8 <0x20>;
max-cur = /bits/ 8 <0x60>;
reg = <0>;
color = <LED_COLOR_ID_RED>;
};
led@2 {
chan-name = "B";
led-cur = /bits/ 8 <0x20>;
max-cur = /bits/ 8 <0x60>;
reg = <2>;
color = <LED_COLOR_ID_BLUE>;
led@1 {
led-cur = /bits/ 8 <0x20>;
max-cur = /bits/ 8 <0x60>;
reg = <1>;
color = <LED_COLOR_ID_GREEN>;
};
led@2 {
led-cur = /bits/ 8 <0x20>;
max-cur = /bits/ 8 <0x60>;
reg = <2>;
color = <LED_COLOR_ID_BLUE>;
};
};
};

View File

@ -21,6 +21,10 @@ &backlight {
status = "okay";
};
&beeper {
status = "okay";
};
&lcd_display {
status = "okay";
};
@ -37,6 +41,10 @@ &pwm1 {
status = "okay";
};
&pwm3 {
status = "okay";
};
&reg_usb_h1_vbus {
status = "okay";
};

View File

@ -26,6 +26,12 @@ backlight: backlight {
status = "disabled";
};
beeper: beeper {
compatible = "pwm-beeper";
pwms = <&pwm3 0 500000 0>;
status = "disabled";
};
gpio_keys: gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
@ -272,28 +278,32 @@ leds: led-controller@30 {
#size-cells = <0>;
status = "disabled";
led@0 {
chan-name = "R";
led-cur = /bits/ 8 <0x6e>;
max-cur = /bits/ 8 <0xc8>;
reg = <0>;
color = <LED_COLOR_ID_RED>;
};
multi-led@0 {
#address-cells = <1>;
#size-cells = <0>;
color = <LED_COLOR_ID_RGB>;
function = LED_FUNCTION_INDICATOR;
led@1 {
chan-name = "G";
led-cur = /bits/ 8 <0xbe>;
max-cur = /bits/ 8 <0xc8>;
reg = <1>;
color = <LED_COLOR_ID_GREEN>;
};
led@0 {
led-cur = /bits/ 8 <0x6e>;
max-cur = /bits/ 8 <0xc8>;
reg = <0>;
color = <LED_COLOR_ID_RED>;
};
led@2 {
chan-name = "B";
led-cur = /bits/ 8 <0xbe>;
max-cur = /bits/ 8 <0xc8>;
reg = <2>;
color = <LED_COLOR_ID_BLUE>;
led@1 {
led-cur = /bits/ 8 <0xbe>;
max-cur = /bits/ 8 <0xc8>;
reg = <1>;
color = <LED_COLOR_ID_GREEN>;
};
led@2 {
led-cur = /bits/ 8 <0xbe>;
max-cur = /bits/ 8 <0xc8>;
reg = <2>;
color = <LED_COLOR_ID_BLUE>;
};
};
};
@ -466,6 +476,13 @@ MX6QDL_PAD_GPIO_9__PWM1_OUT 0x8
>;
};
pinctrl_sound: soundgrp {
fsl,pins = <
MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x1b0b0
MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x8
>;
};
pinctrl_touch: touchgrp {
fsl,pins = <
MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x1b098
@ -551,6 +568,12 @@ &pwm1 {
status = "disabled";
};
&pwm3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sound>;
status = "disabled";
};
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>;

View File

@ -46,6 +46,7 @@ backlight_lvds: backlight-lvds {
panel {
compatible = "dataimage,fg1001l0dsswmg01";
backlight = <&backlight_lvds>;
power-supply = <&reg_lcd>;
port {
panel_in: endpoint {

View File

@ -195,6 +195,8 @@ ads7830: ads7830@48 {
mma8453: mma8453@1c {
compatible = "fsl,mma8453";
reg = <0x1c>;
vdd-supply = <&reg_3p3v>;
vddio-supply = <&reg_3p3v>;
};
};
@ -211,6 +213,8 @@ eeprom: eeprom@50 {
mpl3115: mpl3115@60 {
compatible = "fsl,mpl3115";
reg = <0x60>;
vdd-supply = <&reg_3p3v>;
vddio-supply = <&reg_3p3v>;
};
};

View File

@ -73,7 +73,7 @@ awnh387_pwrseq: pwrseq {
reset-gpios = <&gpio6 16 GPIO_ACTIVE_HIGH>;
};
reg_pcie_power_on_gpio: regulator-pcie-power-on-gpio {
reg_pcie_power_on_gpio: regulator-pcie-power-on {
compatible = "regulator-fixed";
regulator-name = "regulator-pcie-power-on-gpio";
regulator-min-microvolt = <3300000>;
@ -99,6 +99,34 @@ reg_usb_otg_vbus: usb_otg_vbus {
enable-active-high;
};
avdd_reg: regulator-avdd {
compatible = "regulator-fixed";
regulator-name = "avdd";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
hpvdd_reg: regulator-hpvdd {
compatible = "regulator-fixed";
regulator-name = "hpvdd";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
dcvdd_reg: regulator-dcvdd {
compatible = "regulator-fixed";
regulator-name = "dcvdd";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
dbvdd_reg: regulator-dbvdd {
compatible = "regulator-fixed";
regulator-name = "dbvdd";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
sound-analog {
compatible = "simple-audio-card";
simple-audio-card,name = "On-board analog audio";
@ -307,6 +335,10 @@ wm8731: codec@1a {
#sound-dai-cells = <0>;
compatible = "wlf,wm8731";
reg = <0x1a>;
AVDD-supply = <&avdd_reg>;
HPVDD-supply = <&hpvdd_reg>;
DCVDD-supply = <&dcvdd_reg>;
DBVDD-supply = <&dbvdd_reg>;
};
};

View File

@ -236,9 +236,12 @@ stmpe1: stmpe1601@40 {
vcc-supply = <&sw2_reg>;
vio-supply = <&sw2_reg>;
stmpe_gpio1: stmpe_gpio {
stmpe_gpio1: gpio {
#gpio-cells = <2>;
compatible = "st,stmpe-gpio";
gpio-controller;
#interrupt-cells = <2>;
interrupt-controller;
};
};
@ -250,9 +253,12 @@ stmpe2: stmpe1601@44 {
vcc-supply = <&sw2_reg>;
vio-supply = <&sw2_reg>;
stmpe_gpio2: stmpe_gpio {
stmpe_gpio2: gpio {
#gpio-cells = <2>;
compatible = "st,stmpe-gpio";
gpio-controller;
#interrupt-cells = <2>;
interrupt-controller;
};
};

View File

@ -55,6 +55,13 @@ memory@10000000 {
reg = <0x10000000 0x40000000>;
};
reg_3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
reg_usbh1_vbus: regulator-usbhubreset {
compatible = "regulator-fixed";
regulator-name = "usbh1_vbus";
@ -81,6 +88,7 @@ reg_usb_otg_vbus: regulator-usbotgvbus {
panel {
compatible = "sharp,lq101k1ly04";
power-supply = <&reg_3v3>;
port {
panel_in: endpoint {
@ -124,7 +132,7 @@ &ecspi5 {
pinctrl-0 = <&pinctrl_ecspi5 &pinctrl_ecspi5cs>;
status = "okay";
eeprom: m95m02@1 {
eeprom: eeprom@1 {
compatible = "st,m95m02", "atmel,at25";
size = <262144>;
pagesize = <256>;
@ -134,7 +142,7 @@ eeprom: m95m02@1 {
};
pb_rtc: rtc@3 {
compatible = "nxp,rtc-pcf2123";
compatible = "nxp,pcf2123";
spi-max-frequency = <2450000>;
spi-cs-high;
reg = <3>;

View File

@ -16,6 +16,7 @@ / {
panel {
compatible = "ampire,am-1280800n3tzqw-t00h";
backlight = <&backlight_lvds>;
power-supply = <&reg_3p3v>;
port {
panel_in: endpoint {

View File

@ -16,6 +16,7 @@ / {
panel {
compatible = "koe,tx31d200vm0baa";
backlight = <&backlight_lvds>;
power-supply = <&reg_3p3v>;
port {
panel_in: endpoint {

View File

@ -145,6 +145,7 @@ backlight_lvds: backlight-lvds {
panel {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds>;
power-supply = <&reg_3p3v>;
port {
panel_in: endpoint {
@ -324,8 +325,6 @@ &i2c3 {
};
&iomuxc {
pinctrl-names = "default";
pinctrl_hog: hoggrp {
fsl,pins = <
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0 /*pcie power*/

View File

@ -57,6 +57,7 @@ led-debug1 {
panel {
compatible = "kyo,tcg121xglp";
backlight = <&backlight_lcd>;
power-supply = <&reg_3v3>;
port {
panel_in: endpoint {
@ -72,6 +73,13 @@ reg_1v8: regulator-1v8 {
regulator-max-microvolt = <1800000>;
};
reg_3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
reg_wifi: regulator-wifi {
compatible = "regulator-fixed";
pinctrl-names = "default";

View File

@ -37,7 +37,7 @@ fan {
3000 1>;
};
ir_recv {
ir-receiver {
compatible = "gpio-ir-receiver";
gpios = <&gpio3 18 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";

View File

@ -326,11 +326,14 @@ &ipu1_di0_disp0 {
&pcie {
pcie@0,0 {
reg = <0x000000 0 0 0 0>;
device_type = "pci";
#address-cells = <3>;
#size-cells = <2>;
bus-range = <0x00 0xff>;
ranges;
/* non-removable i211 ethernet card */
eth1: intel,i211@pcie0,0 {
eth1: ethernet@0,0 {
reg = <0x010000 0 0 0 0>;
};
};

View File

@ -8,6 +8,7 @@
/dts-v1/;
#include "imx6q.dtsi"
#include "imx6qdl-var-som.dtsi"
#include <dt-bindings/pwm/pwm.h>

View File

@ -17,6 +17,10 @@ memory@10000000 {
};
};
&beeper {
status = "okay";
};
&gpio_oled {
status = "okay";
};
@ -37,6 +41,10 @@ &oled_1309 {
status = "okay";
};
&pwm3 {
status = "okay";
};
&reg_pu {
regulator-always-on;
};

View File

@ -589,7 +589,7 @@ stmpe_ts: touchscreen {
st,touch-det-delay = <5>;
};
stmpe_adc: stmpe_adc {
stmpe_adc: adc {
compatible = "st,stmpe-adc";
/* forbid to use ADC channels 3-0 (touch) */
st,norequest-mask = <0x0F>;

View File

@ -462,7 +462,6 @@ reg_vdd_arm: sw3 {
regulator-ramp-delay = <7000>;
regulator-boot-on;
regulator-always-on;
linux,phandle = <&reg_vdd_arm>;
};
/* VDD_1P8 (1+R1/R2 = 2.505): GPS/VideoIn/ENET-PHY */

View File

@ -360,7 +360,6 @@ reg_vdd_arm: sw3 {
regulator-ramp-delay = <7000>;
regulator-boot-on;
regulator-always-on;
linux,phandle = <&reg_vdd_arm>;
};
/* VDD_SOC (1+R1/R2 = 1.635) */
@ -372,7 +371,6 @@ reg_vdd_soc: sw4 {
regulator-ramp-delay = <7000>;
regulator-boot-on;
regulator-always-on;
linux,phandle = <&reg_vdd_soc>;
};
/* VDD_1P0 (1+R1/R2 = 1.38): */

View File

@ -127,6 +127,7 @@ backlight_lvds0: backlight-lvds0 {
panel-lvds0 {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds0>;
power-supply = <&reg_3p3v>;
port {
panel_in_lvds0: endpoint {

View File

@ -135,13 +135,13 @@ i2c-mux-2 {
i2c-parent = <&i2c2>;
idle-state = <0>;
i2c2mux@1 {
i2c@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
};
i2c2mux@2 {
i2c@2 {
reg = <2>;
#address-cells = <1>;
#size-cells = <0>;
@ -158,7 +158,7 @@ i2c-mux-3 {
i2c-parent = <&i2c3>;
idle-state = <0>;
i2c3mux@1 {
i2c@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
@ -237,6 +237,7 @@ lcd_display_out: endpoint {
panel-lcd {
compatible = "okaya,rs800480t-7x0gp";
backlight = <&backlight_lcd>;
power-supply = <&reg_3p3v>;
port {
lcd_panel_in: endpoint {
@ -248,6 +249,7 @@ lcd_panel_in: endpoint {
panel-lvds0 {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds0>;
power-supply = <&reg_3p3v>;
port {
panel_in_lvds0: endpoint {
@ -259,6 +261,7 @@ panel_in_lvds0: endpoint {
panel-lvds1 {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds1>;
power-supply = <&reg_3p3v>;
port {
panel_in_lvds1: endpoint {

View File

@ -114,6 +114,7 @@ lcd_display_out: endpoint {
panel-lcd {
compatible = "okaya,rs800480t-7x0gp";
backlight = <&backlight_lcd>;
power-supply = <&reg_3p3v>;
port {
lcd_panel_in: endpoint {
@ -125,6 +126,7 @@ lcd_panel_in: endpoint {
panel-lvds0 {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds0>;
power-supply = <&reg_3p3v>;
port {
panel_in_lvds0: endpoint {
@ -136,6 +138,7 @@ panel_in_lvds0: endpoint {
panel-lvds1 {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds1>;
power-supply = <&reg_3p3v>;
port {
panel_in_lvds1: endpoint {

View File

@ -179,6 +179,7 @@ lcd_display_out: endpoint {
panel-lcd {
compatible = "okaya,rs800480t-7x0gp";
backlight = <&backlight_lcd>;
power-supply = <&reg_3p3v>;
port {
lcd_panel_in: endpoint {
@ -190,6 +191,7 @@ lcd_panel_in: endpoint {
panel-lvds0 {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds>;
power-supply = <&reg_3p3v>;
port {
panel_in: endpoint {

View File

@ -8,6 +8,7 @@
#include <dt-bindings/clock/imx6qdl-clock.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/media/video-interfaces.h>
/ {
chosen {
@ -207,6 +208,7 @@ lcd_display_out: endpoint {
panel-lcd {
compatible = "okaya,rs800480t-7x0gp";
backlight = <&backlight_lcd>;
power-supply = <&reg_3p3v>;
port {
lcd_panel_in: endpoint {
@ -218,6 +220,7 @@ lcd_panel_in: endpoint {
panel-lvds0 {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds>;
power-supply = <&reg_3p3v>;
port {
panel_in: endpoint {
@ -360,7 +363,6 @@ ov5642: camera@42 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ov5642>;
clocks = <&clks IMX6QDL_CLK_CKO2>;
clock-names = "xclk";
reg = <0x42>;
reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
powerdown-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
@ -370,6 +372,7 @@ ov5642: camera@42 {
port {
ov5642_to_ipu1_csi0_mux: endpoint {
remote-endpoint = <&ipu1_csi0_mux_from_parallel_sensor>;
bus-type = <MEDIA_BUS_TYPE_PARALLEL>;
bus-width = <8>;
hsync-active = <1>;
vsync-active = <1>;

View File

@ -6,6 +6,7 @@
#include <dt-bindings/clock/imx6qdl-clock.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/media/video-interfaces.h>
/ {
chosen {
@ -17,6 +18,13 @@ memory@10000000 {
reg = <0x10000000 0x40000000>;
};
reg_3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "reg-3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
reg_usb_otg_vbus: regulator-usb-otg-vbus {
compatible = "regulator-fixed";
regulator-name = "usb_otg_vbus";
@ -139,6 +147,7 @@ led-red {
panel {
compatible = "hannstar,hsd100pxn1";
backlight = <&backlight_lvds>;
power-supply = <&reg_3v3>;
port {
panel_in: endpoint {
@ -278,7 +287,6 @@ ov5642: camera@3c {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ov5642>;
clocks = <&clks IMX6QDL_CLK_CKO>;
clock-names = "xclk";
reg = <0x3c>;
DOVDD-supply = <&vgen4_reg>; /* 1.8v */
AVDD-supply = <&vgen3_reg>; /* 2.8v, rev C board is VGEN3
@ -291,6 +299,7 @@ rev B board is VGEN5 */
port {
ov5642_to_ipu1_csi0_mux: endpoint {
remote-endpoint = <&ipu1_csi0_mux_from_parallel_sensor>;
bus-type = <MEDIA_BUS_TYPE_PARALLEL>;
bus-width = <8>;
hsync-active = <1>;
vsync-active = <1>;

View File

@ -69,7 +69,7 @@ switch: switch@0 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_switch>;
interrupt-parent = <&gpio3>;
interrupt = <30 IRQ_TYPE_LEVEL_HIGH>;
interrupts = <30 IRQ_TYPE_LEVEL_HIGH>;
reset-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
reg = <0>;

View File

@ -140,7 +140,7 @@ gpio8: gpio@28 {
reg = <0x28>;
#gpio-cells = <2>;
gpio-controller;
ngpio = <32>;
ngpios = <32>;
};
};

View File

@ -16,16 +16,19 @@ backlight1 {
lcd-panel {
compatible = "edt,et057090dhu";
power-supply = <&reg_lcd1_pwr>;
pixelclk-active = <0>;
};
lvds0-panel {
compatible = "edt,etml1010g0dka";
power-supply = <&reg_lcd1_pwr>;
pixelclk-active = <0>;
};
lvds1-panel {
compatible = "edt,etml1010g0dka";
power-supply = <&reg_lcd1_pwr>;
pixelclk-active = <0>;
};
};

View File

@ -9,9 +9,6 @@
* Copyright 2022 Bootlin
*/
/dts-v1/;
#include "imx6q.dtsi"
#include <dt-bindings/clock/imx6qdl-clock.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/sound/fsl-imx-audmux.h>

View File

@ -17,6 +17,10 @@ memory@10000000 {
};
};
&beeper {
status = "okay";
};
&gpio_oled {
status = "okay";
};
@ -37,6 +41,10 @@ &oled_1309 {
status = "okay";
};
&pwm3 {
status = "okay";
};
&reg_pu {
regulator-always-on;
};

View File

@ -227,7 +227,6 @@ &usdhc4 {
};
&usbotg1 {
pinctrl-names = "default";
disable-over-current;
srp-disable;
hnp-disable;

View File

@ -26,6 +26,11 @@ / {
compatible = "kobo,tolino-vision5", "fsl,imx6sl";
};
&epd_pmic_supply {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_epd_pmic_supply>;
};
&gpio_keys {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
@ -59,6 +64,12 @@ MX6SL_PAD_FEC_RXD1__GPIO4_IO18 0x10059 /* TP_RST */
>;
};
pinctrl_epd_pmic_supply: epd-pmic-supplygrp {
fsl,pins = <
MX6SL_PAD_EPDC_PWRWAKEUP__GPIO2_IO14 0x40010059
>;
};
pinctrl_gpio_keys: gpio-keysgrp {
fsl,pins = <
MX6SL_PAD_FEC_CRS_DV__GPIO4_IO25 0x17059 /* PWR_SW */
@ -159,6 +170,14 @@ MX6SL_PAD_KEY_COL2__GPIO3_IO28 0x1b8b1 /* ricoh619 bat_low_int */
>;
};
pinctrl_sy7636_gpio: sy7636-gpiogrp {
fsl,pins = <
MX6SL_PAD_EPDC_VCOM0__GPIO2_IO03 0x40010059 /* VCOM_CTRL */
MX6SL_PAD_EPDC_PWRCTRL1__GPIO2_IO08 0x40010059 /* EN */
MX6SL_PAD_EPDC_PWRSTAT__GPIO2_IO13 0x17059 /* PWR_GOOD */
>;
};
pinctrl_uart1: uart1grp {
fsl,pins = <
MX6SL_PAD_UART1_TXD__UART1_TX_DATA 0x1b0b1
@ -329,6 +348,11 @@ &ricoh619 {
pinctrl-0 = <&pinctrl_ricoh_gpio>;
};
&sy7636 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sy7636_gpio>;
};
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>;

View File

@ -36,6 +36,11 @@ &cpu0 {
soc-supply = <&dcdc1_reg>;
};
&epd_pmic_supply {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_epd_pmic_supply>;
};
&gpio_keys {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
@ -69,6 +74,12 @@ MX6SLL_PAD_GPIO4_IO18__GPIO4_IO18 0x10059 /* TP_RST */
>;
};
pinctrl_epd_pmic_supply: epd-pmic-supplygrp {
fsl,pins = <
MX6SLL_PAD_EPDC_PWR_WAKE__GPIO2_IO14 0x40010059
>;
};
pinctrl_gpio_keys: gpio-keysgrp {
fsl,pins = <
MX6SLL_PAD_GPIO4_IO25__GPIO4_IO25 0x17059 /* PWR_SW */
@ -169,6 +180,14 @@ MX6SLL_PAD_KEY_COL2__GPIO3_IO28 0x1b8b1 /* ricoh619 bat_low_int */
>;
};
pinctrl_sy7636_gpio: sy7636-gpiogrp {
fsl,pins = <
MX6SLL_PAD_EPDC_VCOM0__GPIO2_IO03 0x40010059 /* VCOM_CTRL */
MX6SLL_PAD_EPDC_PWR_CTRL1__GPIO2_IO08 0x40010059 /* EN */
MX6SLL_PAD_EPDC_PWR_STAT__GPIO2_IO13 0x17059 /* PWR_GOOD */
>;
};
pinctrl_uart1: uart1grp {
fsl,pins = <
MX6SLL_PAD_UART1_TXD__UART1_DCE_TX 0x1b0b1
@ -319,6 +338,11 @@ &ricoh619 {
pinctrl-0 = <&pinctrl_ricoh_gpio>;
};
&sy7636 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sy7636_gpio>;
};
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>;

View File

@ -119,7 +119,7 @@ reg_enet_3v3: regulator-enet-3v3 {
regulator-always-on;
};
reg_pcie_gpio: regulator-pcie-gpio {
reg_pcie_gpio: regulator-pcie {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie_reg>;

View File

@ -43,6 +43,13 @@ reg_2v8: regulator-2v8 {
regulator-max-microvolt = <2800000>;
};
reg_3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
reg_sd1_vmmc: regulator-sd1-vmmc {
compatible = "regulator-fixed";
regulator-name = "VSD_3V3";
@ -157,6 +164,7 @@ gpio_spi: gpio@0 {
panel {
compatible = "innolux,at043tn24";
backlight = <&backlight_display>;
power-supply = <&reg_3v3>;
port {
panel_in: endpoint {

View File

@ -122,15 +122,21 @@ sgtl5000: codec@a {
VDDD-supply = <&reg_1p8v>;
};
stmpe811: gpio-expander@44 {
gpio-expander@44 {
compatible = "st,stmpe811";
reg = <0x44>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_stmpe>;
interrupt-parent = <&gpio1>;
interrupts = <18 IRQ_TYPE_EDGE_FALLING>;
interrupt-controller;
#interrupt-cells = <2>;
gpio {
compatible = "st,stmpe-gpio";
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <2>;
};
stmpe: touchscreen {
compatible = "st,stmpe-ts";

View File

@ -49,5 +49,7 @@ sgtl5000: audio-codec@a {
pressure-sensor@60 {
compatible = "fsl,mpl3115";
reg = <0x60>;
vdd-supply = <&reg_3p3v>;
vddio-supply = <&reg_3p3v>;
};
};

View File

@ -199,7 +199,7 @@ touchscreen@38 {
reg = <0x38>;
interrupt-parent = <&gpio5>;
interrupts = <4 IRQ_TYPE_EDGE_FALLING>; /* GPIO E */
power-supply = <&reg_panel_3v3>;
vcc-supply = <&reg_panel_3v3>;
};
};

View File

@ -126,7 +126,7 @@ tpm_tis: tpm@1 {
s25fl064: flash@2 {
#address-cells = <1>;
#size-cells = <1>;
compatible = " jedec,spi-nor";
compatible = "jedec,spi-nor";
reg = <2>;
spi-max-frequency = <40000000>;
m25p,fast-read;

View File

@ -35,6 +35,7 @@ backlight_lcd: backlight-j20 {
panel-lcd {
compatible = "okaya,rs800480t-7x0gp";
backlight = <&backlight_lcd>;
power-supply = <&reg_3v3>;
port {
panel_in: endpoint {
@ -61,6 +62,13 @@ reg_usb_otg2_vbus: regulator-usb-otg2-vbus {
enable-active-high;
};
reg_3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "reg-3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
reg_can2_3v3: regulator-can2-3v3 {
compatible = "regulator-fixed";
regulator-name = "can2-3v3";

View File

@ -49,6 +49,8 @@ sgtl5000: audio-codec@a {
pressure-sensor@60 {
compatible = "fsl,mpl3115";
reg = <0x60>;
vdd-supply = <&reg_3p3v>;
vddio-supply = <&reg_3p3v>;
};
};

View File

@ -406,6 +406,8 @@ &i2c2 {
mpl3115@60 {
compatible = "fsl,mpl3115";
reg = <0x60>;
vdd-supply = <&reg_audio_3v3>;
vddio-supply = <&reg_audio_3v3>;
};
};

View File

@ -31,6 +31,13 @@ key-back {
};
};
reg_3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
reg_peri_3p15v: regulator-peri-3p15v {
compatible = "regulator-fixed";
regulator-name = "peri_3p15v_reg";
@ -228,6 +235,8 @@ codec: sgtl5000@a {
mpl3115@60 {
compatible = "fsl,mpl3115";
reg = <0x60>;
vdd-supply = <&reg_3v3>;
vddio-supply = <&reg_3v3>;
};
};

View File

@ -92,7 +92,6 @@ pinctrl_lpuart4: lpuart4grp {
IMX7ULP_PAD_PTC3__LPUART4_RX 0x3
IMX7ULP_PAD_PTC2__LPUART4_TX 0x3
>;
bias-pull-up;
};
pinctrl_pwm0: pwm0grp {

View File

@ -112,6 +112,29 @@ reg_usb1_vbus: regulator-usb1-vbus {
enable-active-high;
regulator-always-on;
};
sound {
compatible = "simple-audio-card";
simple-audio-card,name = "imx28-mrmmi-tlv320aic3x-audio";
simple-audio-card,format = "i2s";
simple-audio-card,bitclock-master = <&cpu_dai>;
simple-audio-card,frame-master = <&cpu_dai>;
simple-audio-card,widgets =
"Headphone", "Headphone Jack";
simple-audio-card,routing =
"Headphone Jack", "HPROUT",
"Headphone Jack", "HPRCOM";
simple-audio-card,mclk-fs = <512>;
cpu_dai: simple-audio-card,cpu {
sound-dai = <&saif0>;
clocks = <&saif0>;
};
codec_dai: simple-audio-card,codec {
sound-dai = <&tlv320aic3x>;
};
};
};
&auart0 {
@ -154,6 +177,19 @@ &i2c0 {
pinctrl-0 = <&i2c0_pins_a>;
status = "okay";
tlv320aic3x: audio-codec@18 {
compatible = "ti,tlv320aic3x";
pinctrl-names = "default";
pinctrl-0 = <&tlv320aic3x_pins>;
reg = <0x18>;
reset-gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
#sound-dai-cells = <0>;
DVDD-supply = <&reg_1v8>;
IOVDD-supply = <&reg_3v3>;
AVDD-supply = <&reg_3v3>;
DRVDD-supply = <&reg_3v3>;
};
touchscreen: touchscreen@38 {
compatible = "edt,edt-ft5306";
reg = <0x38>;
@ -246,6 +282,14 @@ MX28_PAD_PWM1__GPIO_3_17
fsl,voltage = <MXS_VOLTAGE_HIGH>;
};
tlv320aic3x_pins: tlv320aic3x-pins@0 {
reg = <0>;
fsl,pinmux-ids = <MX28_PAD_SSP0_DATA4__GPIO_2_4>;
fsl,drive-strength = <MXS_DRIVE_4mA>;
fsl,pull-up = <MXS_PULL_ENABLE>;
fsl,voltage = <MXS_VOLTAGE_HIGH>;
};
usb0_vbus_enable_pin: usb0-vbus-enable@0 {
reg = <0>;
fsl,pinmux-ids = <MX28_PAD_SSP0_DATA5__GPIO_2_5>;
@ -269,6 +313,12 @@ &pwm {
status = "okay";
};
&saif0 {
pinctrl-names = "default";
pinctrl-0 = <&saif0_pins_a>;
status = "okay";
};
/* microSD */
&ssp0 {
compatible = "fsl,imx28-mmc";