Driver changes for omaps for genpd support
From: "Tony Lindgren" <[email protected]>
The following changes since commit e7ae08d398e094e1305dee823435b1f996d39106:
bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw (2020-10-26 10:08:53 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap tags/omap-for-v5.11/genpd-drivers-signed
for you to fetch changes up to 57df7e370d2ab83a64c07acd157acfed4169f114:
remoteproc/wkup_m3: Use reset control driver if available (2020-11-16 12:57:40 +0200)
----------------------------------------------------------------
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.
----------------------------------------------------------------
Tero Kristo (1):
soc: ti: omap-prm: am3: add genpd support for remaining PRM instances
Tony Lindgren (10):
soc: ti: omap-prm: Do not check rstst bit on deassert if already deasserted
bus: ti-sysc: Assert reset only after disabling clocks
ARM: OMAP2+: Check for inited flag
ARM: OMAP2+: Probe PRCM first to probe l4_wkup with simple-pm-bus
bus: ti-sysc: Support modules without control registers
bus: ti-sysc: Implement GPMC debug quirk to drop platform data
clk: ti: am33xx: Keep am3 l3 main clock always on for genpd
soc: ti: omap-prm: Add pm_clk for genpd
soc: ti: pm33xx: Enable basic PM runtime support for genpd remoteproc/wkup_m3: Use reset control driver if available
arch/arm/mach-omap2/omap_hwmod.c | 6 +++ arch/arm/mach-omap2/pdata-quirks.c | 11 +++++ drivers/bus/ti-sysc.c | 41 ++++++++++++----- drivers/clk/ti/clk-33xx.c | 2 + drivers/remoteproc/wkup_m3_rproc.c | 41 +++++++++++------ drivers/soc/ti/omap_prm.c | 84 +++++++++++++++++++++++++++++++++-- drivers/soc/ti/pm33xx.c | 17 ++++++- include/linux/platform_data/ti-sysc.h | 1 + 8 files changed, 174 insertions(+), 29 deletions(-)
[GIT PULL 2/4] Update am335x to boot without platform data
From: "Tony Lindgren" <[email protected]>
The following changes since commit 57df7e370d2ab83a64c07acd157acfed4169f114:
remoteproc/wkup_m3: Use reset control driver if available (2020-11-16 12:57:40 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap tags/omap-for-v5.11/genpd-am335x-signed
for you to fetch changes up to 133ad7ab7005dc951fb66d3de9e29a8259fe9744:
ARM: OMAP2+: Build hwmod related code as needed (2020-11-16 12:58:21 +0200)
----------------------------------------------------------------
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
----------------------------------------------------------------
Tero Kristo (1):
ARM: dts: am33xx: add remaining PRM instances
Tony Lindgren (17):
ARM: dts: Configure also interconnect clocks for am4 system timer
ARM: OMAP2+: Drop legacy platform data for am3 control module
ARM: dts: Configure RTC powerdomain for am3
ARM: dts: Configure interconnect target module for am3 wkup_m3
ARM: OMAP2+: Drop legacy platform data for am3 wkup_m3
ARM: OMAP2+: Drop legacy platform data for am3 and am4 gpmc
ARM: OMAP2+: Drop legacy platform data for am3 debugss
ARM: OMAP2+: Drop legacy platform data for am3 emif
ARM: OMAP2+: Drop legacy platform data for am3 ocmcram
ARM: OMAP2+: Drop legacy platform data for am3 instr
ARM: OMAP2+: Drop legacy platform data for am3 mpuss
ARM: dts: Use simple-pm-bus for genpd for am3 l4_wkup
ARM: dts: Use simple-pm-bus for genpd for am3 l4_fast
ARM: dts: Use simple-pm-bus for genpd for am3 l4_per
ARM: dts: Use simple-pm-bus for genpd for am3 l3
ARM: OMAP2+: Drop legacy remaining legacy platform data for am3
ARM: OMAP2+: Build hwmod related code as needed
arch/arm/boot/dts/am335x-nano.dts | 1 - arch/arm/boot/dts/am33xx-l4.dtsi | 75 ++++-- arch/arm/boot/dts/am33xx.dtsi | 185 ++++++++----- arch/arm/boot/dts/am4372.dtsi | 49 ++-- arch/arm/mach-omap2/Kconfig | 9 + arch/arm/mach-omap2/Makefile | 14 +- arch/arm/mach-omap2/io.c | 2 - .../mach-omap2/omap_hwmod_33xx_43xx_common_data.h | 2 - .../omap_hwmod_33xx_43xx_interconnect_data.c | 8 - .../mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c | 36 --- arch/arm/mach-omap2/omap_hwmod_33xx_data.c | 294 --------------------- arch/arm/mach-omap2/omap_hwmod_43xx_data.c | 1 - arch/arm/mach-omap2/pdata-quirks.c | 12 +- 13 files changed, 236 insertions(+), 452 deletions(-) delete mode 100644 arch/arm/mach-omap2/omap_hwmod_33xx_data.c
Arnd Bergmann
AppliedRe: [GIT PULL 2/4] Update am335x to boot without platform data
From: Arnd Bergmann <[email protected]>
Quoted 9 lines · Tony Lindgren
The following changes since commit
57df7e370d2ab83a64c07acd157acfed4169f114:remoteproc/wkup_m3: Use reset control driver if available (2020-11-16 12:57:40 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omaptags/omap-for-v5.11/genpd-am335x-signed[...]
I ended up making a top-level branch "arm/omap-genpd" for the omap genpd changes, as they touch both code and DT files.
Merged into arm/omap-genpd, thanks!
merge commit: d36edb048f48babb3fbf9a4b249df115b7fab152
Arnd
[GIT PULL 3/4] Update am437x to boot without platform data
In reply to Tony LindgrenFrom: "Tony Lindgren" <[email protected]>
The following changes since commit 133ad7ab7005dc951fb66d3de9e29a8259fe9744:
ARM: OMAP2+: Build hwmod related code as needed (2020-11-16 12:58:21 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap tags/omap-for-v5.11/genpd-am437x-signed
for you to fetch changes up to df6c2ec872a62cf81dff86ef62818dea89cc9d98:
ARM: OMAP2+: Drop legacy remaining legacy platform data for am4 (2020-11-16 13:11:17 +0200)
----------------------------------------------------------------
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
----------------------------------------------------------------
Tero Kristo (2):
soc: ti: omap-prm: am4: add genpd support for remaining PRM instances
ARM: dts: am43xx: add remaining PRM instances
Tony Lindgren (15):
clk: ti: am437x: Keep am4 l3 main clock always on for genpd
ARM: dts: Configure also interconnect clocks for am4 system timer
ARM: OMAP2+: Drop legacy platform data for am4 control module
ARM: dts: Configure RTC powerdomain for am4
ARM: dts: Configure interconnect target module for am4 wkup_m3
ARM: OMAP2+: Drop legacy platform data for am4 wkup_m3
ARM: OMAP2+: Drop legacy platform data for am4 emif
ARM: OMAP2+: Drop legacy platform data for am4 ocmcram
ARM: OMAP2+: Drop legacy platform data for am4 mpuss
ARM: dts: Use simple-pm-bus for genpd for am4 l4_wkup
ARM: dts: Use simple-pm-bus for genpd for am4 l4_fast
ARM: dts: Use simple-pm-bus for genpd for am4 l4_per
ARM: dts: Move am4 l3 noc to a separate node
ARM: dts: Use simple-pm-bus for genpd for am4 l3
ARM: OMAP2+: Drop legacy remaining legacy platform data for am4
arch/arm/boot/dts/am4372.dtsi | 124 ++++++---- arch/arm/boot/dts/am437x-l4.dtsi | 79 +++++-- arch/arm/mach-omap2/Kconfig | 1 - arch/arm/mach-omap2/Makefile | 5 +- arch/arm/mach-omap2/io.c | 1 - .../mach-omap2/omap_hwmod_33xx_43xx_common_data.h | 55 ----- .../omap_hwmod_33xx_43xx_interconnect_data.c | 82 ------- .../mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c | 254 --------------------- arch/arm/mach-omap2/omap_hwmod_43xx_data.c | 166 -------------- drivers/clk/ti/clk-43xx.c | 8 + drivers/soc/ti/omap_prm.c | 36 ++- 11 files changed, 184 insertions(+), 627 deletions(-) delete mode 100644 arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h delete mode 100644 arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c delete mode 100644 arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c delete mode 100644 arch/arm/mach-omap2/omap_hwmod_43xx_data.c
Arnd Bergmann
AppliedRe: [GIT PULL 3/4] Update am437x to boot without platform data
From: Arnd Bergmann <[email protected]>
Quoted 9 lines · Tony Lindgren
The following changes since commit
133ad7ab7005dc951fb66d3de9e29a8259fe9744:ARM: OMAP2+: Build hwmod related code as needed (2020-11-16 12:58:21 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omaptags/omap-for-v5.11/genpd-am437x-signed[...]
Merged into arm/omap-genpd, thanks!
merge commit: 3614fb09f998c8f710142fb722ba216ddc79db24
Arnd
[GIT PULL 4/4] Remaining genpd changes for omaps for v5.11
In reply to Tony LindgrenFrom: "Tony Lindgren" <[email protected]>
The following changes since commit df6c2ec872a62cf81dff86ef62818dea89cc9d98:
ARM: OMAP2+: Drop legacy remaining legacy platform data for am4 (2020-11-16 13:11:17 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap tags/omap-for-v5.11/genpd-rest-signed
for you to fetch changes up to b62168e516dab1b7cb7bb90976755b08d273cc3a:
ARM: OMAP2+: Fix am4 only build after genpd changes (2020-11-27 08:13:25 +0200)
----------------------------------------------------------------
Remaining genpd changes for omaps for v5.11
This series contains the remaining genpd changes for omap4/5, and dra7 to add the power domain and reset control data to omap-prm driver. We also update several devices to probe without platform data to get us closer to booting omap4/5, and dra7 without platform data.
There is also a build fix for the earlier am437x series that I should have applied into a separate branch on top of the am437x breaking commit. It ended here as I was originally planning to send out a single pull request for all the genpd changes, but then decided to break it down to smaller chunks. It's all really a larger single git branch though, so this should be OK and I really did not want to start reorganizing the branch after testing it and having it sit in Linux next.
The changes done here are:
- Clock driver needs idlest check dropped for IVA for omap4 and dra7
- Add remaining power domain and reset control data to omap-prm driver for omap4/5 and dra7
- Add device tree data for remaining power domains and reset control for omap4/5 and dra7 dts files
- Update dss, dsp, iva and gpmc dts files to use genpd and to drop the remaining platform data
- Update dss for omap5 to use genpd
- Update dra7 iva to to use genpd and to drop the remaining platform data
----------------------------------------------------------------
Tero Kristo (6):
soc: ti: omap-prm: omap4: add genpd support for remaining PRM instances
ARM: dts: omap4: add remaining PRM instances
soc: ti: omap-prm: dra7: add genpd support for remaining PRM instances
ARM: dts: dra7: add remaining PRM instances
soc: ti: omap-prm: omap5: add genpd support for remaining PRM instances
ARM: dts: omap5: add remaining PRM instances
Tony Lindgren (10):
clk: ti: omap4: Drop idlest polling from IVA clkctrl clocks
ARM: dts: Configure power domain for omap4 dss
ARM: dts: Configure power domain for omap4 dsp
ARM: OMAP2+: Drop legacy platform data for omap4 iva
ARM: OMAP2+: Drop legacy platform data for omap4 gpmc
clk: ti: dra7: Drop idlest polling from IVA clkctrl clocks
ARM: dts: Configure interconnect target module for dra7 iva
ARM: OMAP2+: Drop legacy platform data for dra7 gpmc
ARM: dts: Configure power domain for omap5 dss
ARM: OMAP2+: Fix am4 only build after genpd changes
arch/arm/boot/dts/dra7.dtsi | 151 ++++++++++++++++-- arch/arm/boot/dts/dra7xx-clocks.dtsi | 14 ++ arch/arm/boot/dts/omap4-l4.dtsi | 1 + arch/arm/boot/dts/omap4.dtsi | 150 +++++++++++++++--- arch/arm/boot/dts/omap5.dtsi | 58 +++++++ arch/arm/mach-omap2/io.c | 1 - arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 114 -------------- arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 49 ------ arch/arm/mach-omap2/pdata-quirks.c | 12 -- drivers/clk/ti/clk-44xx.c | 2 +- drivers/clk/ti/clk-7xx.c | 7 + drivers/soc/ti/omap_prm.c | 238 ++++++++++++++++++++++++++--- include/dt-bindings/clock/dra7.h | 4 + 13 files changed, 571 insertions(+), 230 deletions(-)
Stephen Boyd
Acked-byRe: [GIT PULL 4/4] Remaining genpd changes for omaps for v5.11
Quoting Tony Lindgren (2020-11-30 23:18:49)
Quoted 9 lines
The changes done here are:
- Clock driver needs idlest check dropped for IVA for omap4 and dra7
drivers/clk/ti/clk-44xx.c | 2 +- drivers/clk/ti/clk-7xx.c | 7 + include/dt-bindings/clock/dra7.h | 4 +
Arnd Bergmann
AppliedRe: [GIT PULL 4/4] Remaining genpd changes for omaps for v5.11
In reply to Tony LindgrenFrom: Arnd Bergmann <[email protected]>
Quoted 9 lines · Tony Lindgren
The following changes since commit
df6c2ec872a62cf81dff86ef62818dea89cc9d98:ARM: OMAP2+: Drop legacy remaining legacy platform data for am4 (2020-11-16 13:11:17 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omaptags/omap-for-v5.11/genpd-rest-signed[...]
Merged into arm/omap-genpd, thanks!
merge commit: 7fbee7e3386cb51e5ebc60c4d7cea13ffeab31d6
Arnd
Arnd Bergmann
AppliedFrom: Arnd Bergmann <[email protected]>
Quoted 9 lines · Tony Lindgren
The following changes since commit
e7ae08d398e094e1305dee823435b1f996d39106:bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw (2020-10-26 10:08:53 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omaptags/omap-for-v5.11/genpd-drivers-signed[...]
Merged into arm/drivers, thanks!
merge commit: e5b14e46a2ad023fbb388c42e24ff7117d0f135a
Arnd
This pull request was applied to soc/soc.git (refs/heads/for-next):
Hello:
This pull request was applied to soc/soc.git (refs/heads/for-next):
Quoted 9 lines · On Tue, 1 Dec 2020 09:18:46 +0200 you wrote:
From: "Tony Lindgren" <[email protected]>
The following changes since commit
e7ae08d398e094e1305dee823435b1f996d39106:bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw (2020-10-26 10:08:53 +0200)
are available in the Git repository at:
[...]
Here is the summary with links:
- [GIT,PULL,1/4] Driver changes for omaps for genpd support
https://git.kernel.org/soc/soc/c/80c25006bc97 - [GIT,PULL,2/4] Update am335x to boot without platform data https://git.kernel.org/soc/soc/c/07dd966db740 - [GIT,PULL,3/4] Update am437x to boot without platform data https://git.kernel.org/soc/soc/c/eb672def8b9d - [GIT,PULL,4/4] Remaining genpd changes for omaps for v5.11 https://git.kernel.org/soc/soc/c/7fbee7e3386c
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html