devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/30] ARM: OMAP2+: hwmod module clock type support
@ 2016-04-11  8:18 Tero Kristo
  2016-04-11  8:18 ` [PATCH 02/30] clk: ti: dpll: use ti_clk_get to fetch ref/bypass clocks Tero Kristo
                   ` (20 more replies)
  0 siblings, 21 replies; 38+ messages in thread
From: Tero Kristo @ 2016-04-11  8:18 UTC (permalink / raw)
  To: linux-omap, tony, paul, mturquette, sboyd
  Cc: linux-arm-kernel, devicetree, linux-clk

Hi,

This series transfers the hwmod clkctrl handling from the hwmod core
under clock driver, the data is also transferred from hwmod data to
devicetree. Done for most of the OMAP2+ platforms, except OMAP2 / OMAP3,
where work is still under progress.

Major part of this set is also to add support function ti_clk_get, which
when used, allows us to get rid of number of clock aliases under TI
clock driver.

The ordering on this set is kind of tricky to avoid any boot issues,
and it still currently causes a boot breakage between the DTS data
introduction and removal of hwmod data; this generates duplicate
entries for clocks which is prone to cause issues (both DT and hwmod
have the same entries in place under the hwmod data is removed.) I
didn't quite figure out a good way to avoid this, and could use some
guidance here. Shall we squash the DT + hwmod data patches together?
This avoids the boot breakage but creates pretty large patches. Also,
AMx3xx data needs to be grouped together as part of their data is
re-used commonly by both SoCs.

Another issue with the set is with patch #18 which introduces the
hwmod clock driver itself; the startup / shutdown latencies for
clocks are tricky to handle within a spinlocked region (and really
early boot also where ktime_get doesn't work yet) so I ended up
writing a timeout function which uses alternate implementations
for early vs. late boot. It doesn't look that neat but it works.

Set built on top of the DT warning fix set:

http://comments.gmane.org/gmane.linux.drivers.devicetree/162659

Boot tested on following boards:
am33xx-bone, am33xx-boneblack, am437x-gp-evm, am437x-sk-evm, am57xx-beagle,
omap5-uevm, dra7-evm, dra72x-evm, omap4-panda-es, omap4430-sdp. Also,
omap4 suspend-resume seems to be fine still after this set.

Test branch pushed also:
Tree: https://github.com/t-kristo/linux-pm.git
Branch: 4.6-rc2-hwmod-clks-v1

-Tero


^ permalink raw reply	[flat|nested] 38+ messages in thread

end of thread, other threads:[~2016-04-13 15:49 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-11  8:18 [PATCH 00/30] ARM: OMAP2+: hwmod module clock type support Tero Kristo
2016-04-11  8:18 ` [PATCH 02/30] clk: ti: dpll: use ti_clk_get to fetch ref/bypass clocks Tero Kristo
2016-04-11  8:18 ` [PATCH 04/30] ARM: OMAP2+: hwmod: use new ti_clk_get API to search for clock handles Tero Kristo
2016-04-11  8:18 ` [PATCH 05/30] ARM: OMAP2+: clock: use the new ti_clk_get for fetching clocks Tero Kristo
2016-04-11  8:18 ` [PATCH 06/30] clk: ti: omap2: transition to usage of ti_clk_get Tero Kristo
2016-04-11  8:18 ` [PATCH 08/30] clk: ti: omap3: " Tero Kristo
2016-04-11  8:19 ` [PATCH 09/30] clk: ti: am43xx: " Tero Kristo
     [not found] ` <1460362761-4842-1-git-send-email-t-kristo-l0cyMroinI0@public.gmane.org>
2016-04-11  8:18   ` [PATCH 01/30] clk: ti: add ti_clk_get helper API Tero Kristo
2016-04-11  8:18   ` [PATCH 03/30] ARM: OMAP2+: omap_device: create clock alias purely from DT data Tero Kristo
2016-04-11  8:18   ` [PATCH 07/30] clk: ti: am33xx: transition to usage of ti_clk_get Tero Kristo
2016-04-11  8:19   ` [PATCH 10/30] clk: ti: omap4: " Tero Kristo
2016-04-11  8:19   ` [PATCH 11/30] clk: ti: omap5: " Tero Kristo
2016-04-11  8:19   ` [PATCH 13/30] clk: ti: dm814x: " Tero Kristo
2016-04-11  8:19   ` [PATCH 14/30] clk: ti: dm816x: cleanup any unnecessary clock aliases Tero Kristo
2016-04-11  8:19   ` [PATCH 15/30] clk: ti: remove un-used definitions from public clk_hw_omap struct Tero Kristo
2016-04-11  8:19   ` [PATCH 17/30] dt-bindings: clk: ti: Document module clock type Tero Kristo
2016-04-11  8:19   ` [PATCH 21/30] ARM: OMAP4: hwmod_data: use module clocks from DT Tero Kristo
2016-04-11  8:19   ` [PATCH 23/30] ARM: dts: am33xx: add hwmod module clocks Tero Kristo
2016-04-11 17:40   ` [PATCH 00/30] ARM: OMAP2+: hwmod module clock type support Tony Lindgren
2016-04-12 13:55     ` Tero Kristo
2016-04-12 16:42       ` Tony Lindgren
2016-04-11  8:19 ` [PATCH 12/30] clk: ti: dra7: transition to usage of ti_clk_get Tero Kristo
2016-04-11  8:19 ` [PATCH 16/30] clk: ti: mux: export mux clock APIs locally Tero Kristo
2016-04-11  8:19 ` [PATCH 18/30] clk: ti: add support for omap4 module clocks Tero Kristo
2016-04-11  8:19 ` [PATCH 19/30] ARM: dts: omap4: add hwmod " Tero Kristo
2016-04-11  8:19 ` [PATCH 20/30] ARM: OMAP2+: clockdomain: add usecounting support to autoidle APIs Tero Kristo
2016-04-11  8:19 ` [PATCH 22/30] ARM: AM33xx: fix module_wait_ready without clkctrl register Tero Kristo
2016-04-11  8:19 ` [PATCH 24/30] ARM: dts: am43xx: add hwmod module clocks Tero Kristo
2016-04-11  8:19 ` [PATCH 25/30] clk: ti: am33xx: fix init time clock setup Tero Kristo
2016-04-11  8:19 ` [PATCH 26/30] ARM: AMx3xx: hwmod_data: use module clocks from DT Tero Kristo
2016-04-11  8:19 ` [PATCH 27/30] ARM: dts: omap5: add hwmod module clocks Tero Kristo
2016-04-11  8:19 ` [PATCH 28/30] ARM: OMAP5: hwmod_data: use module clocks from DT Tero Kristo
2016-04-11  8:19 ` [PATCH 29/30] ARM: dts: dra7: add hwmod module clocks Tero Kristo
2016-04-11  8:19 ` [PATCH 30/30] ARM: DRA7: hwmod_data: use module clocks from DT Tero Kristo
2016-04-12 14:58 ` [PATCH 00/30] ARM: OMAP2+: hwmod module clock type support Rob Herring
2016-04-12 15:58   ` Tony Lindgren
2016-04-13  6:59     ` Tero Kristo
2016-04-13 15:49       ` Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).