mbox series

[00/10] AM64x Disable Incomplete DT Nodes

Message ID 20221017192532.23825-1-afd@ti.com (mailing list archive)
Headers show
Series AM64x Disable Incomplete DT Nodes | expand

Message

Andrew Davis Oct. 17, 2022, 7:25 p.m. UTC
Hello all,

This series goes through the AM64x dtsi and disables the set of nodes
that are not functional without additional board level information.
This is usually pinmux data, but can also be inernal device resources.

Only when the node is completed in the board file should the node be
enabled. This helps prevents nodes that represent IP that are not
pinned-out on a given board from being left enabled.

This also reduces the effort needed to add a new board, one no longer
needs to manually disable all the extra IP. For instance TI J784s4 has
20(!) MCAN instances. It is much easier to enable the one you pin out,
vs disabling the 19 that you did not.

Thanks,
Andrew

Andrew Davis (10):
  arm64: dts: ti: k3-am64: Enable UART nodes at the board level
  arm64: dts: ti: k3-am64: Enable I2C nodes at the board level
  arm64: dts: ti: k3-am64: Enable SPI nodes at the board level
  arm64: dts: ti: k3-am64: Enable EPWM nodes at the board level
  arm64: dts: ti: k3-am64: Enable ECAP nodes at the board level
  arm64: dts: ti: k3-am64: Enable PCIe nodes at the board level
  arm64: dts: ti: k3-am64: MDIO pinmux should belong to the MDIO node
  arm64: dts: ti: k3-am64: Enable MDIO nodes at the board level
  arm64: dts: ti: k3-am64: Enable MCAN nodes at the board level
  arm64: dts: ti: k3-am64: Enable GPMC and ELM nodes at the board level

 arch/arm64/boot/dts/ti/k3-am64-main.dtsi |  37 ++++++
 arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi  |   6 +
 arch/arm64/boot/dts/ti/k3-am642-evm.dts  | 119 ++-----------------
 arch/arm64/boot/dts/ti/k3-am642-sk.dts   | 142 ++---------------------
 4 files changed, 63 insertions(+), 241 deletions(-)

Comments

Bryan Brattlof Oct. 18, 2022, 3:24 p.m. UTC | #1
On October 17, 2022 thus sayeth Andrew Davis:
> Hello all,
> 
> This series goes through the AM64x dtsi and disables the set of nodes
> that are not functional without additional board level information.
> This is usually pinmux data, but can also be inernal device resources.
> 
> Only when the node is completed in the board file should the node be
> enabled. This helps prevents nodes that represent IP that are not
> pinned-out on a given board from being left enabled.
> 
> This also reduces the effort needed to add a new board, one no longer
> needs to manually disable all the extra IP. For instance TI J784s4 has
> 20(!) MCAN instances. It is much easier to enable the one you pin out,
> vs disabling the 19 that you did not.
> 
> Thanks,
> Andrew
> 
> Andrew Davis (10):
>   arm64: dts: ti: k3-am64: Enable UART nodes at the board level
>   arm64: dts: ti: k3-am64: Enable I2C nodes at the board level
>   arm64: dts: ti: k3-am64: Enable SPI nodes at the board level
>   arm64: dts: ti: k3-am64: Enable EPWM nodes at the board level
>   arm64: dts: ti: k3-am64: Enable ECAP nodes at the board level
>   arm64: dts: ti: k3-am64: Enable PCIe nodes at the board level
>   arm64: dts: ti: k3-am64: MDIO pinmux should belong to the MDIO node
>   arm64: dts: ti: k3-am64: Enable MDIO nodes at the board level
>   arm64: dts: ti: k3-am64: Enable MCAN nodes at the board level
>   arm64: dts: ti: k3-am64: Enable GPMC and ELM nodes at the board level
> 
>  arch/arm64/boot/dts/ti/k3-am64-main.dtsi |  37 ++++++
>  arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi  |   6 +
>  arch/arm64/boot/dts/ti/k3-am642-evm.dts  | 119 ++-----------------
>  arch/arm64/boot/dts/ti/k3-am642-sk.dts   | 142 ++---------------------
>  4 files changed, 63 insertions(+), 241 deletions(-)
> 

Reviewed-by: Bryan Brattlof <bb@ti.com>

I wholeheartedly agree! This looks great to me!

~Bryan
Vignesh Raghavendra Oct. 27, 2022, 6:33 a.m. UTC | #2
On 18/10/22 00:55, Andrew Davis wrote:
> Andrew Davis (10):
>   arm64: dts: ti: k3-am64: Enable UART nodes at the board level
>   arm64: dts: ti: k3-am64: Enable I2C nodes at the board level
>   arm64: dts: ti: k3-am64: Enable SPI nodes at the board level
>   arm64: dts: ti: k3-am64: Enable EPWM nodes at the board level
>   arm64: dts: ti: k3-am64: Enable ECAP nodes at the board level
>   arm64: dts: ti: k3-am64: Enable PCIe nodes at the board level
>   arm64: dts: ti: k3-am64: MDIO pinmux should belong to the MDIO node
>   arm64: dts: ti: k3-am64: Enable MDIO nodes at the board level
>   arm64: dts: ti: k3-am64: Enable MCAN nodes at the board level
>   arm64: dts: ti: k3-am64: Enable GPMC and ELM nodes at the board level
> 
>  arch/arm64/boot/dts/ti/k3-am64-main.dtsi |  37 ++++++
>  arch/arm64/boot/dts/ti/k3-am64-mcu.dtsi  |   6 +
>  arch/arm64/boot/dts/ti/k3-am642-evm.dts  | 119 ++-----------------
>  arch/arm64/boot/dts/ti/k3-am642-sk.dts   | 142 ++---------------------
>  4 files changed, 63 insertions(+), 241 deletions(-)

Acked-by: Vignesh Raghavendra <vigneshr@ti.com>
Nishanth Menon Oct. 28, 2022, 1:30 p.m. UTC | #3
Hi Andrew Davis,

On Mon, 17 Oct 2022 14:25:22 -0500, Andrew Davis wrote:
> This series goes through the AM64x dtsi and disables the set of nodes
> that are not functional without additional board level information.
> This is usually pinmux data, but can also be inernal device resources.
> 
> Only when the node is completed in the board file should the node be
> enabled. This helps prevents nodes that represent IP that are not
> pinned-out on a given board from being left enabled.
> 
> [...]

I have applied the following to branch ti-k3-dts-next on [1].
Thank you!

[01/10] arm64: dts: ti: k3-am64: Enable UART nodes at the board level
        commit: dacf4705cee54eef4406a886a0a50a6f445969f8
[02/10] arm64: dts: ti: k3-am64: Enable I2C nodes at the board level
        commit: b80f75d8f68cad4efa250e4a3152932f59c756cc
[03/10] arm64: dts: ti: k3-am64: Enable SPI nodes at the board level
        commit: 79d4aa623f6c9d47aa29b6b4a3fa46c09f74bfae
[04/10] arm64: dts: ti: k3-am64: Enable EPWM nodes at the board level
        commit: ebc0ed718da346d651b356cb71dddfb747c934fa
[05/10] arm64: dts: ti: k3-am64: Enable ECAP nodes at the board level
        commit: dcac8eaaa90fe2c84761cf55a3e989ca5774d2f5
[06/10] arm64: dts: ti: k3-am64: Enable PCIe nodes at the board level
        commit: 3e21ec289c76dbc88dc306802122214b6b053a99
[07/10] arm64: dts: ti: k3-am64: MDIO pinmux should belong to the MDIO node
        commit: aa62d661247f180d0fc534e880cb6bc7fb50b4a1
[08/10] arm64: dts: ti: k3-am64: Enable MDIO nodes at the board level
        commit: f572888b3c10bf12436423e854f6ee6e3872c570
[09/10] arm64: dts: ti: k3-am64: Enable MCAN nodes at the board level
        commit: 4a57988707d7c7502842de07d6c8649da5a844fc
[10/10] arm64: dts: ti: k3-am64: Enable GPMC and ELM nodes at the board level
        commit: 4eb7aa3befa33c05a03d11fd3b4bb8b74d3c68c0

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent up the chain during
the next merge window (or sooner if it is a relevant bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

[1] git://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git