mbox series

[v2,00/14] ARM: dts: imx6ull-colibri: device tree improvements

Message ID 20220425162356.176665-1-marcel@ziswiler.com (mailing list archive)
Headers show
Series ARM: dts: imx6ull-colibri: device tree improvements | expand

Message

Marcel Ziswiler April 25, 2022, 4:23 p.m. UTC
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>


This is a general update of the Colibri iMX6ULL device tree files.

The Toradex Colibri family is composed of a SoM that can be plugged on
various carrier boards, with carrier boards allowing multiple optional
accessories (e.g. display, camera, ...).

The device tree sources are structured into a SoM dtsi and a carrier dts
which then includes the SoM dtsi. The SoM dtsi defines and enables the
functionality self-contained on the SoM and prepares for the
functionality provided by the carrier HW or accessories so that the
carrier dts then can enable or amend nodes provided. Accessories are
enabled in overlays depending on HW configuration.

Please find the following colibri-imx6ull device trees improvements:

- MMC/SD
The original Colibri specification only defined 3.3 volt TTL signaling
and relied on external on-carrier pull-ups for the SD_DATA[0..3] lines.
The latest carrier boards like Iris V2 on the other hand are now UHS-I
compliant by leaving such external on-carrier pull-ups away relying on
module- or even SoC-level ones which pull up to resp. signaling voltage.
In such cases, the carrier board-level device tree may explicitly delete
the no-1-8-v property to enable full UHS-I support.
Also, fix SD/MMC regulator for the carrier boards using UHS-I modes.

- FEC
Provide a proper phy-supply for the FEC, actually switched by the 50 Mhz
RMII interface clock using a regulator-fixed-clock that is now properly
stated. The reference commit for such regulator can be found at commit
8959e5324485 ("regulator: fixed: add possibility to enable by clock").

- I2C
Switched on 22 kOhm pull-ups and lower the I2C frequency to 40 kHz to
get more reliable communication.

- Atmel Touchscreen
The Toradex 7" Capacitive and 10" LVDS touch screens are Atmel MXT
peripherals available on the I2C bus for touchscreen events. Add
atmel_mxt_ts node to the module-level device tree. Also, provide pinmux
configuration for the INT/RST inputs from SODIMM pins 106/107 for most
carrier boards or an external touchscreen adapter inputs configured to
SODIMM pins 28/30.

Changes in v2:
- Fixed pinctrl node names as suggested by Shawn.
- Fixed long line as pointed out by Rob's bot.
- Added V3 to Colibri Evaluation Board as done elsewhere.
- Fix alphabetical node order as suggested by Shawn.
- Dropped [PATCH v1 02/14] ARM: dts: imx6ull-colibri: fix vqmmc
  regulator which already got applied by Shawn. Thanks!
- New commit with pinctrl node name improvements as suggested by Shawn.

Denys Drozdov (5):
  ARM: dts: imx6ull-colibri: add touchscreen device nodes
  ARM: dts: imx6ull-colibri: update device trees to support overlays
  dt-bindings: arm: fsl: add toradex,colibri-imx6ull
  ARM: dts: imx6ull-colibri: add support for toradex iris carrier boards
  ARM: dts: imx6ull-colibri: add support for toradex aster carrier
    boards

Marcel Ziswiler (4):
  ARM: dts: imx6ull-colibri: fix nand bch geometry
  ARM: dts: imx6ull-colibri: add/update some comments
  ARM: dts: imx6ull-colibri: move gpio-keys node to som dtsi
  ARM: dts: imx6ull-colibri: improve pinctrl node names

Max Krummenacher (1):
  ARM: dts: imx6ull-colibri: change touch i2c parameters

Oleksandr Suvorov (1):
  ARM: dts: imx6ull-colibri: add gpio-line-names

Philippe Schenker (3):
  ARM: dts: imx6ull-colibri: use pull-down for adc pins
  ARM: dts: imx6ull-colibri: add phy-supply to fec
  ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling

 .../devicetree/bindings/arm/fsl.yaml          |  25 +-
 arch/arm/boot/dts/Makefile                    |   9 +
 arch/arm/boot/dts/imx6ull-colibri-aster.dts   |  20 ++
 arch/arm/boot/dts/imx6ull-colibri-aster.dtsi  | 145 +++++++++
 .../boot/dts/imx6ull-colibri-emmc-aster.dts   |  17 ++
 .../boot/dts/imx6ull-colibri-emmc-iris-v2.dts |  17 ++
 .../boot/dts/imx6ull-colibri-emmc-iris.dts    |  17 ++
 .../dts/imx6ull-colibri-emmc-nonwifi.dtsi     |   8 +-
 arch/arm/boot/dts/imx6ull-colibri-eval-v3.dts |   6 +-
 .../arm/boot/dts/imx6ull-colibri-eval-v3.dtsi |  63 +---
 arch/arm/boot/dts/imx6ull-colibri-iris-v2.dts |  28 ++
 .../arm/boot/dts/imx6ull-colibri-iris-v2.dtsi |  27 ++
 arch/arm/boot/dts/imx6ull-colibri-iris.dts    |  20 ++
 arch/arm/boot/dts/imx6ull-colibri-iris.dtsi   | 132 ++++++++
 .../arm/boot/dts/imx6ull-colibri-nonwifi.dtsi | 145 ++++++++-
 .../boot/dts/imx6ull-colibri-wifi-aster.dts   |  20 ++
 .../boot/dts/imx6ull-colibri-wifi-eval-v3.dts |   4 +-
 .../boot/dts/imx6ull-colibri-wifi-iris-v2.dts |  28 ++
 .../boot/dts/imx6ull-colibri-wifi-iris.dts    |  20 ++
 arch/arm/boot/dts/imx6ull-colibri-wifi.dtsi   | 144 ++++++++-
 arch/arm/boot/dts/imx6ull-colibri.dtsi        | 285 ++++++++++++------
 21 files changed, 1008 insertions(+), 172 deletions(-)
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-aster.dts
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-aster.dtsi
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-emmc-aster.dts
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-emmc-iris-v2.dts
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-emmc-iris.dts
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-iris-v2.dts
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-iris-v2.dtsi
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-iris.dts
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-iris.dtsi
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-wifi-aster.dts
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-wifi-iris-v2.dts
 create mode 100644 arch/arm/boot/dts/imx6ull-colibri-wifi-iris.dts

Comments

Shawn Guo May 5, 2022, 2:47 a.m. UTC | #1
On Mon, Apr 25, 2022 at 06:23:42PM +0200, Marcel Ziswiler wrote:
> From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
> 
> 
> This is a general update of the Colibri iMX6ULL device tree files.
> 
> The Toradex Colibri family is composed of a SoM that can be plugged on
> various carrier boards, with carrier boards allowing multiple optional
> accessories (e.g. display, camera, ...).
> 
> The device tree sources are structured into a SoM dtsi and a carrier dts
> which then includes the SoM dtsi. The SoM dtsi defines and enables the
> functionality self-contained on the SoM and prepares for the
> functionality provided by the carrier HW or accessories so that the
> carrier dts then can enable or amend nodes provided. Accessories are
> enabled in overlays depending on HW configuration.
> 
> Please find the following colibri-imx6ull device trees improvements:
> 
> - MMC/SD
> The original Colibri specification only defined 3.3 volt TTL signaling
> and relied on external on-carrier pull-ups for the SD_DATA[0..3] lines.
> The latest carrier boards like Iris V2 on the other hand are now UHS-I
> compliant by leaving such external on-carrier pull-ups away relying on
> module- or even SoC-level ones which pull up to resp. signaling voltage.
> In such cases, the carrier board-level device tree may explicitly delete
> the no-1-8-v property to enable full UHS-I support.
> Also, fix SD/MMC regulator for the carrier boards using UHS-I modes.
> 
> - FEC
> Provide a proper phy-supply for the FEC, actually switched by the 50 Mhz
> RMII interface clock using a regulator-fixed-clock that is now properly
> stated. The reference commit for such regulator can be found at commit
> 8959e5324485 ("regulator: fixed: add possibility to enable by clock").
> 
> - I2C
> Switched on 22 kOhm pull-ups and lower the I2C frequency to 40 kHz to
> get more reliable communication.
> 
> - Atmel Touchscreen
> The Toradex 7" Capacitive and 10" LVDS touch screens are Atmel MXT
> peripherals available on the I2C bus for touchscreen events. Add
> atmel_mxt_ts node to the module-level device tree. Also, provide pinmux
> configuration for the INT/RST inputs from SODIMM pins 106/107 for most
> carrier boards or an external touchscreen adapter inputs configured to
> SODIMM pins 28/30.
> 
> Changes in v2:
> - Fixed pinctrl node names as suggested by Shawn.
> - Fixed long line as pointed out by Rob's bot.
> - Added V3 to Colibri Evaluation Board as done elsewhere.
> - Fix alphabetical node order as suggested by Shawn.
> - Dropped [PATCH v1 02/14] ARM: dts: imx6ull-colibri: fix vqmmc
>   regulator which already got applied by Shawn. Thanks!
> - New commit with pinctrl node name improvements as suggested by Shawn.
> 
> Denys Drozdov (5):
>   ARM: dts: imx6ull-colibri: add touchscreen device nodes
>   ARM: dts: imx6ull-colibri: update device trees to support overlays
>   dt-bindings: arm: fsl: add toradex,colibri-imx6ull
>   ARM: dts: imx6ull-colibri: add support for toradex iris carrier boards
>   ARM: dts: imx6ull-colibri: add support for toradex aster carrier
>     boards
> 
> Marcel Ziswiler (4):
>   ARM: dts: imx6ull-colibri: fix nand bch geometry
>   ARM: dts: imx6ull-colibri: add/update some comments
>   ARM: dts: imx6ull-colibri: move gpio-keys node to som dtsi
>   ARM: dts: imx6ull-colibri: improve pinctrl node names
> 
> Max Krummenacher (1):
>   ARM: dts: imx6ull-colibri: change touch i2c parameters
> 
> Oleksandr Suvorov (1):
>   ARM: dts: imx6ull-colibri: add gpio-line-names
> 
> Philippe Schenker (3):
>   ARM: dts: imx6ull-colibri: use pull-down for adc pins
>   ARM: dts: imx6ull-colibri: add phy-supply to fec
>   ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling

The dts series doesn't apply to my branch.

Applying: ARM: dts: imx6ull-colibri: use pull-down for adc pins
Applying: ARM: dts: imx6ull-colibri: change touch i2c parameters
Applying: ARM: dts: imx6ull-colibri: add phy-supply to fec
Applying: ARM: dts: imx6ull-colibri: add touchscreen device nodes
Applying: ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling
error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:35
error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
Patch failed at 0005 ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling
hint: Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

Applying: ARM: dts: imx6ull-colibri: update device trees to support overlays
Applying: ARM: dts: imx6ull-colibri: add gpio-line-names
Applying: ARM: dts: imx6ull-colibri: add support for toradex iris carrier boards
Applying: ARM: dts: imx6ull-colibri: add support for toradex aster carrier boards
Applying: ARM: dts: imx6ull-colibri: fix nand bch geometry
Applying: ARM: dts: imx6ull-colibri: add/update some comments
error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:251
error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
Patch failed at 0011 ARM: dts: imx6ull-colibri: add/update some comments
hint: Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

Applying: ARM: dts: imx6ull-colibri: move gpio-keys node to som dtsi
Applying: ARM: dts: imx6ull-colibri: improve pinctrl node names
error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:292
error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
Patch failed at 0013 ARM: dts: imx6ull-colibri: improve pinctrl node names
hint: Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.

Shawn
Marcel Ziswiler May 5, 2022, 8:56 a.m. UTC | #2
Hi Shawn

On Thu, 2022-05-05 at 10:47 +0800, Shawn Guo wrote:
> On Mon, Apr 25, 2022 at 06:23:42PM +0200, Marcel Ziswiler wrote:
> > From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
> > 
> > 
> > This is a general update of the Colibri iMX6ULL device tree files.
> > 
> > The Toradex Colibri family is composed of a SoM that can be plugged on
> > various carrier boards, with carrier boards allowing multiple optional
> > accessories (e.g. display, camera, ...).
> > 
> > The device tree sources are structured into a SoM dtsi and a carrier dts
> > which then includes the SoM dtsi. The SoM dtsi defines and enables the
> > functionality self-contained on the SoM and prepares for the
> > functionality provided by the carrier HW or accessories so that the
> > carrier dts then can enable or amend nodes provided. Accessories are
> > enabled in overlays depending on HW configuration.
> > 
> > Please find the following colibri-imx6ull device trees improvements:
> > 
> > - MMC/SD
> > The original Colibri specification only defined 3.3 volt TTL signaling
> > and relied on external on-carrier pull-ups for the SD_DATA[0..3] lines.
> > The latest carrier boards like Iris V2 on the other hand are now UHS-I
> > compliant by leaving such external on-carrier pull-ups away relying on
> > module- or even SoC-level ones which pull up to resp. signaling voltage.
> > In such cases, the carrier board-level device tree may explicitly delete
> > the no-1-8-v property to enable full UHS-I support.
> > Also, fix SD/MMC regulator for the carrier boards using UHS-I modes.
> > 
> > - FEC
> > Provide a proper phy-supply for the FEC, actually switched by the 50 Mhz
> > RMII interface clock using a regulator-fixed-clock that is now properly
> > stated. The reference commit for such regulator can be found at commit
> > 8959e5324485 ("regulator: fixed: add possibility to enable by clock").
> > 
> > - I2C
> > Switched on 22 kOhm pull-ups and lower the I2C frequency to 40 kHz to
> > get more reliable communication.
> > 
> > - Atmel Touchscreen
> > The Toradex 7" Capacitive and 10" LVDS touch screens are Atmel MXT
> > peripherals available on the I2C bus for touchscreen events. Add
> > atmel_mxt_ts node to the module-level device tree. Also, provide pinmux
> > configuration for the INT/RST inputs from SODIMM pins 106/107 for most
> > carrier boards or an external touchscreen adapter inputs configured to
> > SODIMM pins 28/30.
> > 
> > Changes in v2:
> > - Fixed pinctrl node names as suggested by Shawn.
> > - Fixed long line as pointed out by Rob's bot.
> > - Added V3 to Colibri Evaluation Board as done elsewhere.
> > - Fix alphabetical node order as suggested by Shawn.
> > - Dropped [PATCH v1 02/14] ARM: dts: imx6ull-colibri: fix vqmmc
> >   regulator which already got applied by Shawn. Thanks!
> > - New commit with pinctrl node name improvements as suggested by Shawn.
> > 
> > Denys Drozdov (5):
> >   ARM: dts: imx6ull-colibri: add touchscreen device nodes
> >   ARM: dts: imx6ull-colibri: update device trees to support overlays
> >   dt-bindings: arm: fsl: add toradex,colibri-imx6ull
> >   ARM: dts: imx6ull-colibri: add support for toradex iris carrier boards
> >   ARM: dts: imx6ull-colibri: add support for toradex aster carrier
> >     boards
> > 
> > Marcel Ziswiler (4):
> >   ARM: dts: imx6ull-colibri: fix nand bch geometry
> >   ARM: dts: imx6ull-colibri: add/update some comments
> >   ARM: dts: imx6ull-colibri: move gpio-keys node to som dtsi
> >   ARM: dts: imx6ull-colibri: improve pinctrl node names
> > 
> > Max Krummenacher (1):
> >   ARM: dts: imx6ull-colibri: change touch i2c parameters
> > 
> > Oleksandr Suvorov (1):
> >   ARM: dts: imx6ull-colibri: add gpio-line-names
> > 
> > Philippe Schenker (3):
> >   ARM: dts: imx6ull-colibri: use pull-down for adc pins
> >   ARM: dts: imx6ull-colibri: add phy-supply to fec
> >   ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling
> 
> The dts series doesn't apply to my branch.
> 
> Applying: ARM: dts: imx6ull-colibri: use pull-down for adc pins
> Applying: ARM: dts: imx6ull-colibri: change touch i2c parameters
> Applying: ARM: dts: imx6ull-colibri: add phy-supply to fec
> Applying: ARM: dts: imx6ull-colibri: add touchscreen device nodes
> Applying: ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling
> error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:35
> error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
> Patch failed at 0005 ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling
> hint: Use 'git am --show-current-patch' to see the failed patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
> 
> Applying: ARM: dts: imx6ull-colibri: update device trees to support overlays
> Applying: ARM: dts: imx6ull-colibri: add gpio-line-names
> Applying: ARM: dts: imx6ull-colibri: add support for toradex iris carrier boards
> Applying: ARM: dts: imx6ull-colibri: add support for toradex aster carrier boards
> Applying: ARM: dts: imx6ull-colibri: fix nand bch geometry
> Applying: ARM: dts: imx6ull-colibri: add/update some comments
> error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:251
> error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
> Patch failed at 0011 ARM: dts: imx6ull-colibri: add/update some comments
> hint: Use 'git am --show-current-patch' to see the failed patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
> 
> Applying: ARM: dts: imx6ull-colibri: move gpio-keys node to som dtsi
> Applying: ARM: dts: imx6ull-colibri: improve pinctrl node names
> error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:292
> error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
> Patch failed at 0013 ARM: dts: imx6ull-colibri: improve pinctrl node names
> hint: Use 'git am --show-current-patch' to see the failed patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> 
> Shawn

I did rebase this V2 on top of your for-next branch which as of today still applies cleanly. However, it looks
like you now try to apply it without them fixes which are already upstream. How exactly is this supposed to
work?

In particular it is the following commit which already got applied upstream:

commit 45974e4276a8 ("ARM: dts: imx6ull-colibri: fix vqmmc regulator")

If I do re-base a V3 on top of your dt branch (without upstream already applied fixes) then it likely fails
again when it eventually gets applied on top of them fixes, not?

Anyway, just let me know on top of what I should re-base this series and I will do so. Thanks!

Cheers

Marcel
Marcel Ziswiler May 6, 2022, 1:44 p.m. UTC | #3
Hi Shawn

On Thu, 2022-05-05 at 10:47 +0800, Shawn Guo wrote:

[snip]

> The dts series doesn't apply to my branch.
> 
> Applying: ARM: dts: imx6ull-colibri: use pull-down for adc pins
> Applying: ARM: dts: imx6ull-colibri: change touch i2c parameters
> Applying: ARM: dts: imx6ull-colibri: add phy-supply to fec
> Applying: ARM: dts: imx6ull-colibri: add touchscreen device nodes
> Applying: ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling
> error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:35
> error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
> Patch failed at 0005 ARM: dts: imx6ull-colibri: update usdhc1 pixmux and signaling
> hint: Use 'git am --show-current-patch' to see the failed patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
> 
> Applying: ARM: dts: imx6ull-colibri: update device trees to support overlays
> Applying: ARM: dts: imx6ull-colibri: add gpio-line-names
> Applying: ARM: dts: imx6ull-colibri: add support for toradex iris carrier boards
> Applying: ARM: dts: imx6ull-colibri: add support for toradex aster carrier boards
> Applying: ARM: dts: imx6ull-colibri: fix nand bch geometry
> Applying: ARM: dts: imx6ull-colibri: add/update some comments
> error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:251
> error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
> Patch failed at 0011 ARM: dts: imx6ull-colibri: add/update some comments
> hint: Use 'git am --show-current-patch' to see the failed patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
> 
> Applying: ARM: dts: imx6ull-colibri: move gpio-keys node to som dtsi
> Applying: ARM: dts: imx6ull-colibri: improve pinctrl node names
> error: patch failed: arch/arm/boot/dts/imx6ull-colibri.dtsi:292
> error: arch/arm/boot/dts/imx6ull-colibri.dtsi: patch does not apply
> Patch failed at 0013 ARM: dts: imx6ull-colibri: improve pinctrl node names
> hint: Use 'git am --show-current-patch' to see the failed patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> 
> Shawn

I just now sent a v3 re-based on your imx/dt. I hope that applies now. Thanks!

Cheers

Marcel