On 5/28/26 7:53 AM, Tomi Valkeinen wrote:
> I have been trying to get BeagleY-AI display support to upstream:
>
> 20260513-beagley-ai-display-v2-0-9e9bcefde6bc@ideasonboard.com
>
> One difficulty has been the handling of the Control Module region, as
> we need access to a single in that region, surrounded by registers for
> other subsystems. In my series I made the related node a syscon, thus
> allowing versatile access to the registers:
>
> https://lore.kernel.org/all/20260513-beagley-ai-display-v2-14-9e9bcefde6bc@ideasonboard.com/
>
> However, that's not a correct way to handle it. I realized we already
> have ti,j721e-system-controller.yaml binding for older SoCs, which has
> syscon but it's not used for the newer TI SoCs. This series takes the
> same binding into use for the newer SoCs.
>
We moved away from this system-controller thing because it was always
a hack to allow us to poke into random control registers from nodes
throughout the DT. This was a mess and also caused issues with multiple
mappings to the same registers (some sub nodes inside the control space
also make their own mappings). If you need access to registers then make
a node with those registers in the `reg` property.
The only reason we didn't get rid of `ti,j721e-system-controller.yaml`
completely from the older SoCs was we were told it would be an ABI
break to correct those DT files. Let's not spread that problem to
new SoCs.
Andrew
> I think this is an ABI change, but I also think this is not an ABI
> break. I hope people with more expertise in this area can confirm my
> thoughts.
>
> I believe we could drop the renaming patches, and just adjust the
> ti,j721e-system-controller.yaml a bit more to accommodate the "wrong"
> node names. But if there's no downside to the renames, I think it's nice
> to have a more consistent naming.
>
> Tomi
>
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
> ---
> Tomi Valkeinen (6):
> arm64: dts: ti: j784s4/j742s2: Rename pcieN-ctrl nodes to pcie-ctrl
> arm64: dts: ti: k3-am62*: Rename 'clock-controller' to 'clock'
> arm64: dts: ti: k3-am62-main: Rename 'oldi-io-controller' to 'dss-oldi-io-ctrl'
> dt-bindings: soc: ti: ti,j721e-system-controller: Relax the bindings
> dt-bindings: soc: ti: ti,j721e-system-controller: Add more compatibles
> arm64: dts: ti: Use syscon and simple-mfd for the main conf region
>
> .../devicetree/bindings/soc/ti/ti,j721e-system-controller.yaml | 10 ++++++----
> arch/arm64/boot/dts/ti/k3-am62-main.dtsi | 9 +++++----
> arch/arm64/boot/dts/ti/k3-am62a-main.dtsi | 7 ++++---
> arch/arm64/boot/dts/ti/k3-am62p-j722s-common-main.dtsi | 6 +++---
> arch/arm64/boot/dts/ti/k3-j784s4-j742s2-main-common.dtsi | 6 +++---
> arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi | 4 ++--
> 6 files changed, 23 insertions(+), 19 deletions(-)
> ---
> base-commit: e7ae89a0c97ce2b68b0983cd01eda67cf373517d
> change-id: 20260528-ti-main-conf-d75aea5e5c2b
>
> Best regards,
> --
> Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
>
>