Merge tag 'omap-for-v4.21/dt-ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt
Add interconnect target module dts data for omaps for v4.21
This big set of changes adds SoC specific l4 interconnect target module
device tree data for am335x, am437x, omap5 and dra7 SoCs. We also move
existing devices to the right location in the l4 interconnect hierarcy.
This is similar to what we've already done for omap4 l4 interconnects
earlier, and follows what is documented in the ti-sysc driver dts binding
in Documentation/devicetree/bindings/bus/ti-sysc.txt.
These changes will essentially replace the struct ti_sysc and clock
entries in the arch/arm/mach-omap2/omap_hwmod_*_data.c files. Then a few
merge windows later, we can start dropping the built-in platform data
from the omap_hwmod_*_data.c files in favor of the device tree data only.
For now, we verify the device tree data module data against the built-in
data and warn about changes to prevent regressions.
With the device tree data, we are also probing devices with the ti-sysc
interconnect target module instead of omap_device. This fixes up the
handling for multiple device instances in a single interconnect target
module that has caused trouble earlier. A custom wrapper driver has been
needed earlier for such cases.
And as the device tree data is organized by the l4 interconnect instances,
we will be able to use genpd later on. This is because each interconnect
instance is also often also a single power domain.
This series of changes has been brewing for several months now. I did not
want to send a pull request earlier as people were still seeing device
specific issues until recently though. However, it turned out that all the
issues were quite trivial to fix. I had missed adding device tree ranges
for the l3 data port used on some devices, and I had missed converting the
device addresses for a few devices. And some devices like needed fixes for
deferred probe handling such as the EHCI PHY for built-in case on omap5.
Anyways, in case of trouble, we can easily just revert changes for a
single device if needed.
* tag 'omap-for-v4.21/dt-ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
ARM: dts: Cosmetic fix for omap5 USB node names
ARM: dts: Fix wrong address for omap5 sata phy
ARM: dts: Add missing ranges for dra7 mcasp l3 ports
ARM: dts: Fix ranges for am335x epwmss
ARM: dts: Fix hsi gdd range for omap4
ARM: dts: Add am335x mcasp with l3 data port ranges
ARM: dts: Add missing ranges for am437x mcasp l3 ports
ARM: dts: dra7: Move the ti,no-idle quirk on proper gmac node
ARM: dts: Revert am335x mcasp ti-sysc changes
ARM: dts: omap5: Add l4 interconnect hierarchy and ti-sysc data
ARM: dts: Use dra7 mcasp compatible for mcasp instances
ARM: dts: dra7: Move l4 child devices to probe them with ti-sysc
ARM: dts: dra7: Add l4 interconnect hierarchy and ti-sysc data
ARM: dts: am335x: Move l4 child devices to probe them with ti-sysc
ARM: dts: am335x: Add l4 interconnect hierarchy and ti-sysc data
ARM: dts: am437x: Move l4 child devices to probe them with ti-sysc
ARM: dts: am437x: Add l4 interconnect hierarchy and ti-sysc data
ARM: dts: dra7: convert to use new clkctrl layout
ARM: dts: am43xx: convert to use new clkctrl layout
ARM: dts: am33xx: convert to use new clkctrl layout
Signed-off-by: Arnd Bergmann <arnd@arndb.de>