- 09 Dec, 2020 3 commits
-
-
Arnd Bergmann authored
Merge tag 'omap-for-v5.11/genpd-am437x-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/omap-genpd Update am473x to boot without platform data Similar to am335x, we can now update am437x dts files to boot with genpd and simple-pm-bus, and drop the related platform data. To do that, we need to do the following changes for am437x: - Update the clock driver to keep the l3_main clock always on for suspend and resume to work - Add power domain and reset controller data to omap-prm driver - Configure interconnect clocks for system timers as those are now managed separately by the drivers/clocksource drivers - Update control module, wkup_m3, emif, ocmcram, mpuss and l3_noc for device tree data and drop the legacy platform data - Update the interconnect instances to boot with gendp and simple-pm-bus - Drop the remaining platform data for am437x * tag 'omap-for-v5.11/genpd-am437x-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2+: Drop legacy remaining legacy platform data for am4 ARM: dts: Use simple-pm-bus for genpd for am4 l3 ARM: dts: Move am4 l3 noc to a separate node ARM: dts: Use simple-pm-bus for genpd for am4 l4_per ARM: dts: Use simple-pm-bus for genpd for am4 l4_fast ARM: dts: Use simple-pm-bus for genpd for am4 l4_wkup ARM: OMAP2+: Drop legacy platform data for am4 mpuss ARM: OMAP2+: Drop legacy platform data for am4 ocmcram ARM: OMAP2+: Drop legacy platform data for am4 emif ARM: OMAP2+: Drop legacy platform data for am4 wkup_m3 ARM: dts: Configure interconnect target module for am4 wkup_m3 ARM: dts: Configure RTC powerdomain for am4 ARM: OMAP2+: Drop legacy platform data for am4 control module ARM: dts: Configure also interconnect clocks for am4 system timer ARM: dts: am43xx: add remaining PRM instances soc: ti: omap-prm: am4: add genpd support for remaining PRM instances clk: ti: am437x: Keep am4 l3 main clock always on for genpd Link: https://lore.kernel.org/r/pull-1606806458-694517@atomide.com-3Signed-off-by:
Arnd Bergmann <arnd@arndb.de>
-
Arnd Bergmann authored
Merge tag 'omap-for-v5.11/genpd-am335x-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/omap-genpd Update am335x to boot without platform data With the driver updates done for genpd support, we can now update am335x dts files to boot with genpd and simple-pm-bus, and drop the related platform data. To do that, we need to do the following changes for am335x: - Add the remaining power domain and reset controller instances - Configure interconnect clocks for system timers as those are now managed separately by the drivers/clocksource drivers - Update control module, RTC, gpmc, debugss, emif, ocmcram, instr, and mpuss for device tree data and drop the legacy platform data - Update the interconnect instances to boot with gendp and simple-pm-bus - Drop the remaining platform data for am335x - Add kconfig option for OMAP_HWMOD to build it only for the SoCs that need it * tag 'omap-for-v5.11/genpd-am335x-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2+: Build hwmod related code as needed ARM: OMAP2+: Drop legacy remaining legacy platform data for am3 ARM: dts: Use simple-pm-bus for genpd for am3 l3 ARM: dts: Use simple-pm-bus for genpd for am3 l4_per ARM: dts: Use simple-pm-bus for genpd for am3 l4_fast ARM: dts: Use simple-pm-bus for genpd for am3 l4_wkup ARM: OMAP2+: Drop legacy platform data for am3 mpuss ARM: OMAP2+: Drop legacy platform data for am3 instr ARM: OMAP2+: Drop legacy platform data for am3 ocmcram ARM: OMAP2+: Drop legacy platform data for am3 emif ARM: OMAP2+: Drop legacy platform data for am3 debugss ARM: OMAP2+: Drop legacy platform data for am3 and am4 gpmc ARM: OMAP2+: Drop legacy platform data for am3 wkup_m3 ARM: dts: Configure interconnect target module for am3 wkup_m3 ARM: dts: Configure RTC powerdomain for am3 ARM: OMAP2+: Drop legacy platform data for am3 control module ARM: dts: Configure also interconnect clocks for am4 system timer ARM: dts: am33xx: add remaining PRM instances Link: https://lore.kernel.org/r/pull-1606806458-694517@atomide.com-2Signed-off-by:
Arnd Bergmann <arnd@arndb.de>
-
Arnd Bergmann authored
Merge tag 'omap-for-v5.11/genpd-drivers-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/omap-genpd Driver changes for omaps for genpd for v5.11 merge window This series of changes allows booting am335x with genpd and device tree data without the legacy platform data. Also at least am437x can be booted with gendp with power domain and dts data. The SoC specific dts changes will be a separate pull request. We need the following driver changes merged before the dts changes can be done: - platform code needs a few improvments to probe l4_wkup first for clocks, and to bail out when there is no platform data - ti-sysc driver needs a non-urgent fix for asserting rstctrl reset only after disabling the clocks, to probe modules with no known control registers, and added quirk handling for gpmc devices - omap-prm driver needs a non-urgent fix for reset status bit, support added for pm_clk, and then we add the rest of am335x power domain data - clock driver for am335x needs to keep l3_main clock enabled with genpd for suspend and resume to work - wkup_m3 remoteproc driver needs support added for reset control if available instead of the legacy pdata callbacks - pm33xx driver needs PM runtime support added for genpd The am335x specific driver changes for the clock, wkup_m3, pm33xx and remoteproc drivers are quite trivial and have not caused merge conflicts in Linux next. I did not get acks for these changes except from Santosh but had already pushed out the branch already at that point. So I've added the related driver maintainers to Cc. * tag 'omap-for-v5.11/genpd-drivers-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: remoteproc/wkup_m3: Use reset control driver if available soc: ti: pm33xx: Enable basic PM runtime support for genpd soc: ti: omap-prm: am3: add genpd support for remaining PRM instances soc: ti: omap-prm: Add pm_clk for genpd clk: ti: am33xx: Keep am3 l3 main clock always on for genpd bus: ti-sysc: Implement GPMC debug quirk to drop platform data bus: ti-sysc: Support modules without control registers ARM: OMAP2+: Probe PRCM first to probe l4_wkup with simple-pm-bus ARM: OMAP2+: Check for inited flag bus: ti-sysc: Assert reset only after disabling clocks soc: ti: omap-prm: Do not check rstst bit on deassert if already deasserted bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw bus: ti-sysc: Fix reset status check for modules with quirks ARM: OMAP2+: Fix missing select PM_GENERIC_DOMAINS_OF ARM: OMAP2+: Fix location for select PM_GENERIC_DOMAINS Signed-off-by:
Arnd Bergmann <arnd@arndb.de>
-
- 16 Nov, 2020 37 commits
-
-
Tony Lindgren authored
We can now drop the remaining legacy platform data as we are probing devices with device tree data. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now enable simple-pm-bus to use genpd. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
In preparation for probing l3 with simple-pm-bus and genpd, we must move l3 noc to a separate node to prevent omap_l3_noc.c driver from claiming the whole l3 instance before simple-pm-bus has a chance to probe. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now enable simple-pm-bus to use genpd. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now enable simple-pm-bus to use genpd. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now enable simple-pm-bus to use genpd. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. Note that we need to use "ti,no-idle" here. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. As we're just dropping data, and the early platform data init is based on the custom ti,hwmods property, we want to drop both the platform data and ti,hwmods property in a single patch. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with device tree only configuration using ti-sysc interconnect target module driver. Note that we no longer need ti,no-reset-on-init as the rstctrl resets are properly handled by the reset driver and claimed by the RTC driver. And we need to squash together the module ranges for driver compability. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
For genpd we need the RTC powerdomain configured. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. To drop the legacy platform data for am3 control module, we need to configure the missing functional clock and tag the module to not idle as platform data also had it configured with HWMOD_INIT_NO_IDLE. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We now manage clocksource and clockevent clocks directly with timer-ti-dm-systimer. In order to use genpd with prm_omap, GENPD_FLAG_PM_CLK and simple-pm-bus, we need to keep the system timer related interconnect clocks enabled until clocksource suspend is done. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tero Kristo authored
Add remaining PRM instances for the am43xx SoC. Additionally enable the genpd support for them. Signed-off-by:
Tero Kristo <t-kristo@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tero Kristo authored
Add genpd support for mpu, rtc, tamper, cefuse, per and wkup instances. Cc: Santosh Shilimkar <ssantosh@kernel.org> Signed-off-by:
Tero Kristo <t-kristo@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
In order for suspend and resume to work with genpd on am4, we must keep l3 main clock always on. Otherwise prm_omap driver will shut down the l3 main clock on suspend when simple-pm-bus and GENPD_FLAG_PM_CLK are used. Note that we already keep the l3 main clock always on with the legacy platform code. Later on we may want to start managing the l3 main clock with a dedicated interconnect driver instead of using simple-pm-bus and GENPD_FLAG_PM_CLK. Cc: linux-clk@vger.kernel.org Cc: Michael Turquette <mturquette@baylibre.com> Cc: Stephen Boyd <sboyd@kernel.org> Cc: Tero Kristo <t-kristo@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
If we have only am3 selected, there's no need to build the hwmod related code as we are probing devices with device tree data. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now drop the remaining legacy platform data as we are probing devices with device tree data. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now enable simple-pm-bus to use genpd. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now enable simple-pm-bus to use genpd. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now enable simple-pm-bus to use genpd. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now enable simple-pm-bus to use genpd. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. As we're just dropping data, and the early platform data init is based on the custom ti,hwmods property, we want to drop both the platform data and ti,hwmods property in a single patch. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. Note that we need to use "ti,no-idle" here. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. As we're just dropping data, and the early platform data init is based on the custom ti,hwmods property, we want to drop both the platform data and ti,hwmods property in a single patch. Cc: Roger Quadros <rogerq@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. As we're just dropping data, and the early platform data init is based on the custom ti,hwmods property, we want to drop both the platform data and ti,hwmods property in a single patch. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with device tree only configuration using ti-sysc interconnect target module driver. Note that we no longer need ti,no-reset-on-init as the rstctrl resets are properly handled by the reset driver and claimed by the RTC driver. And we need to squash together the module ranges for driver compability. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
For genpd we need the RTC powerdomain configured. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We can now probe devices with ti-sysc interconnect driver and dts data. Let's drop the related platform data and custom ti,hwmods dts property. To drop the legacy platform data for am3 control module, we need to configure the missing functional clock and tag the module to not idle as platform data also had it configured with HWMOD_INIT_NO_IDLE. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
We now manage clocksource and clockevent clocks directly with timer-ti-dm-systimer. In order to use genpd with prm_omap, GENPD_FLAG_PM_CLK and simple-pm-bus, we need to keep the system timer related interconnect clocks enabled until clocksource suspend is done. Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tero Kristo authored
Add remaining PRM instances for the am33xx SoC. Additionally, enable the genpd support for them. Signed-off-by:
Tero Kristo <t-kristo@ti.com> [tony@atomide.com: fixed a typo for #power-domain-cells] Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
In order to move wkup_m3 to probe without platform data, let's add support for using optional reset control driver if configured in the dts. With this change and the related dts change, we can start dropping the platform data for am335x. And once wkup_m3 no longer needs platform data, we can simply drop the related legacy reset platform data callbacks from wkup_m3 driver later on after also am437x no longer depends on it. Cc: linux-remoteproc@vger.kernel.org Cc: Bjorn Andersson <bjorn.andersson@linaro.org> Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Philipp Zabel <p.zabel@pengutronix.de> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-
Tony Lindgren authored
To prepare for moving to use genpd, let's enable basic PM runtime support. Cc: Dave Gerlach <d-gerlach@ti.com> Cc: Santosh Shilimkar <ssantosh@kernel.org> Cc: Suman Anna <s-anna@ti.com> Signed-off-by:
Tony Lindgren <tony@atomide.com>
-