aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clk/clk.c
AgeCommit message (Expand)AuthorFilesLines
2024-04-07clk: Get runtime PM before walking tree for clk_summaryStephen Boyd1-2/+12
2024-04-07clk: Get runtime PM before walking tree during disable_unusedStephen Boyd1-12/+105
2024-04-07clk: Initialize struct clk_core kref earlierStephen Boyd1-15/+13
2024-04-07clk: Don't hold prepare_lock when calling kref_put()Stephen Boyd1-7/+5
2024-04-07clk: Remove prepare_lock hold assertion in __clk_release()Stephen Boyd1-2/+0
2024-03-13Merge branches 'clk-samsung', 'clk-imx', 'clk-rockchip', 'clk-clkdev' and 'cl...Stephen Boyd1-0/+19
2024-03-08clk: Fix clk_core_get NULL dereferenceBryan O'Donoghue1-0/+3
2024-02-28clk: Add a devm variant of clk_rate_exclusive_get()Uwe Kleine-König1-0/+19
2023-10-30Merge branches 'clk-debugfs', 'clk-spreadtrum', 'clk-sifive', 'clk-counted' a...Stephen Boyd1-11/+54
2023-10-23clk: Allow phase adjustment from debugfsJohn Keeping1-1/+30
2023-10-23clk: Show active consumers of clocks in debugfsVishal Badole1-10/+24
2023-10-12clk: Sanitize possible_parent_show to Handle Return Value of of_clk_get_paren...Alessandro Carminati1-9/+12
2023-06-26Merge branches 'clk-imx', 'clk-microchip', 'clk-cleanup', 'clk-bindings', 'cl...Stephen Boyd1-0/+1
2023-06-20clk: Fix memory leak in devm_clk_notifier_register()Fei Shao1-0/+1
2023-06-13clk: Fix best_parent_rate after moving code into a separate functionMarek Szyprowski1-0/+1
2023-06-08clk: Forbid to register a mux without determine_rateMaxime Ripard1-0/+7
2023-06-08clk: nodrv: Add a determine_rate hookMaxime Ripard1-0/+7
2023-06-08clk: Introduce clk_hw_determine_rate_no_reparent()Stephen Boyd1-0/+19
2023-06-08clk: Move no reparent case into a separate functionStephen Boyd1-32/+43
2023-06-08clk: Export clk_hw_forward_rate_request()Maxime Ripard1-0/+1
2023-04-25Merge branches 'clk-cleanup', 'clk-aspeed', 'clk-dt', 'clk-renesas' and 'clk-...Stephen Boyd1-4/+6
2023-03-29clk: Print an info line before disabling unused clocksKonrad Dybcio1-0/+2
2023-03-16clk: remove unnecessary (void*) conversionsYu Zhe1-2/+2
2023-03-14clk: Use of_property_present() for testing DT property presenceRob Herring1-2/+2
2023-02-25Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-0/+11
2023-02-10clk: Honor CLK_OPS_PARENT_ENABLE in clk_core_is_enabled()Chen-Yu Tsai1-0/+11
2023-01-13cpuidle, clk: Remove trace_.*_rcuidle()Peter Zijlstra1-4/+4
2022-12-12Merge branches 'clk-mediatek', 'clk-trace', 'clk-qcom' and 'clk-microchip' in...Stephen Boyd1-0/+32
2022-12-07clk: Add trace events for rate requestsMaxime Ripard1-0/+31
2022-12-07clk: Store clk_core for clk_rate_requestMaxime Ripard1-0/+1
2022-10-27clk: Initialize max_rate in struct clk_rate_requestMaxime Ripard1-0/+1
2022-10-27clk: Initialize the clk_rate_request even if clk_core is NULLMaxime Ripard1-1/+4
2022-10-27clk: Remove WARN_ON NULL parent in clk_core_init_rate_req()Maxime Ripard1-1/+1
2022-10-16Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-65/+221
2022-10-14Merge branch 'clk-rate-range' into clk-nextStephen Boyd1-65/+221
2022-10-10clk: Update req_rate on __clk_recalc_rates()Maxime Ripard1-28/+11
2022-10-08Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-29/+2
2022-09-30clk: Remove never used devm_of_clk_del_provider()Andy Shevchenko1-26/+0
2022-09-15clk: Introduce the clk_hw_get_rate_range functionMaxime Ripard1-0/+16
2022-09-15clk: Zero the clk_rate_request structureMaxime Ripard1-0/+2
2022-09-15clk: Stop forwarding clk_rate_requests to the parentMaxime Ripard1-7/+77
2022-09-15clk: Constify clk_has_parent()Maxime Ripard1-1/+1
2022-09-15clk: Introduce clk_core_has_parent()Maxime Ripard1-15/+22
2022-09-15clk: Switch from __clk_determine_rate to clk_core_round_rate_nolockMaxime Ripard1-3/+10
2022-09-15clk: Add our request boundaries in clk_core_init_rate_reqMaxime Ripard1-6/+1
2022-09-15clk: Introduce clk_hw_init_rate_request()Maxime Ripard1-0/+20
2022-09-15clk: Move clk_core_init_rate_req() from clk_core_round_rate_nolock() to its c...Maxime Ripard1-5/+3
2022-09-15clk: Change clk_core_init_rate_req prototypeMaxime Ripard1-4/+6
2022-09-15clk: Set req_rate on reparentingMaxime Ripard1-0/+22
2022-09-15clk: Take into account uncached clocks in clk_set_rate_range()Maxime Ripard1-1/+5
2022-09-15clk: Clarify clk_get_rate() expectationsMaxime Ripard1-2/+3
2022-09-15clk: Skip clamping when rounding if there's no boundariesMaxime Ripard1-1/+13
2022-09-15clk: Drop the rate range on clk_put()Maxime Ripard1-14/+31
2022-08-31Revert "clk: core: Honor CLK_OPS_PARENT_ENABLE for clk gate ops"Stephen Boyd1-28/+0
2022-08-23clk: do not initialize retClaudiu Beznea1-1/+1
2022-08-23clk: remove extra empty lineClaudiu Beznea1-1/+0
2022-08-22clk: Fix comment typoJason Wang1-1/+1
2022-08-22clk: core: Fix runtime PM sequence in clk_core_unprepare()Chen-Yu Tsai1-2/+1
2022-08-22clk: core: Honor CLK_OPS_PARENT_ENABLE for clk gate opsChen-Yu Tsai1-0/+28
2022-06-22clk: Remove never used devm_clk_*unregister()Andy Shevchenko1-48/+0
2022-04-22clk: using pm_runtime_resume_and_get instead of pm_runtime_get_syncMinghao Chi1-8/+1
2022-04-02Revert "clk: Drop the rate range on clk_put()"Stephen Boyd1-28/+14
2022-03-29Merge branches 'clk-range', 'clk-uniphier', 'clk-apple' and 'clk-qcom' into c...Stephen Boyd1-40/+91
2022-03-25clk: Drop the rate range on clk_put()Maxime Ripard1-14/+28
2022-03-25clk: Initialize orphan req_rateMaxime Ripard1-0/+13
2022-03-11clk: Always set the rate on clk_set_range_rateMaxime Ripard1-22/+23
2022-03-11clk: Use clamp instead of open-coding our ownMaxime Ripard1-5/+1
2022-03-11clk: Always clamp the rounded rateMaxime Ripard1-0/+2
2022-03-11clk: Enforce that disjoints limits are invalidMaxime Ripard1-0/+24
2022-03-11clk: Fix clk_hw_get_clk() when dev is NULLMaxime Ripard1-1/+2
2022-02-25clk: Mark clk_core_evict_parent_cache_subtree() 'target' constStephen Boyd1-1/+1
2022-02-25clk: Mark 'all_lists' as constStephen Boyd1-2/+2
2022-01-12Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-11/+69
2022-01-11Merge branches 'clk-doc', 'clk-renesas', 'clk-at91', 'clk-cleanup' and 'clk-d...Stephen Boyd1-11/+69
2022-01-05clk: Enable/Disable runtime PM for clk_summaryTaniya Das1-0/+2
2021-12-10clk: Emit a stern warning with writable debugfs enabledStephen Boyd1-0/+18
2021-12-09clk: Add write operation for clk_parent debugfs nodeSam Protsenko1-1/+41
2021-12-09clk: __clk_core_init() never takes NULLStephen Boyd1-3/+0
2021-12-09clk: clk_core_get() can also return NULLStephen Boyd1-7/+8
2021-12-07clk: Don't parent clks until the parent is fully registeredMike Tipton1-3/+12
2021-10-26clk: use clk_core_get_rate_recalc() in clk_rate_get()Claudiu Beznea1-1/+4
2021-05-11clk: Skip clk provider registration when np is NULLTudor Ambarus1-0/+9
2021-04-28Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-16/+4
2021-04-14Merge tag 'v5.12-rc7' into driver-core-nextGreg Kroah-Hartman1-26/+21
2021-04-02clk: fix invalid usage of list cursor in unregisterLukasz Bartosik1-17/+13
2021-04-02clk: fix invalid usage of list cursor in registerLukasz Bartosik1-9/+8
2021-03-26clk: Drop double "if" in clk_core_determine_round_nolock() commentGeert Uytterhoeven1-1/+1
2021-03-23clk: Mark fwnodes when their clock provider is addedTudor Ambarus1-0/+2
2021-03-13clk: use clk_core_enable_lock() a bit moreRasmus Villemoes1-15/+3
2021-02-24Merge tag 'driver-core-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-0/+3
2021-02-09clk: Mark fwnodes when their clock provider is added/removedSaravana Kannan1-0/+3
2021-01-27PM: clk: make PM clock layer compatible with clocks that must sleepNicolas Pitre1-0/+21
2020-12-20Merge branches 'clk-ti', 'clk-analog', 'clk-trace', 'clk-at91' and 'clk-silab...Stephen Boyd1-0/+6
2020-12-20Merge branches 'clk-tegra', 'clk-imx', 'clk-sifive', 'clk-mediatek' and 'clk-...Stephen Boyd1-4/+11
2020-12-20Merge branches 'clk-doc', 'clk-qcom', 'clk-simplify', 'clk-hw', 'clk-renesas'...Stephen Boyd1-7/+104
2020-12-17clk: Trace clk_set_rate() "range" functionsMaxime Ripard1-0/+6
2020-12-17clk: Add hardware-enable column to clk summaryDmitry Osipenko1-4/+11
2020-11-14clk: add devm variant of clk_notifier_registerJerome Brunet1-0/+36
2020-11-14clk: add api to get clk consumer from clk_hwJerome Brunet1-0/+61
2020-11-14clk: avoid devm_clk_release name clashJerome Brunet1-6/+6
2020-11-14clk: remove unneeded dead-store initializationLukas Bulwahn1-1/+1
2020-10-25treewide: Convert macro and uses of __section(foo) to __section("foo")Joe Perches1-1/+1
2020-08-03Merge branches 'clk-microchip', 'clk-mmp', 'clk-unused' and 'clk-at91' into c...Stephen Boyd1-6/+0
2020-08-03Merge branches 'clk-actions', 'clk-rockchip', 'clk-iproc', 'clk-intel' and 'c...Stephen Boyd1-0/+29
2020-08-03clk: drop unused function __clk_get_flagsJulia Lawall1-6/+0
2020-07-24clk: Clean up kernel-doc errorsStephen Boyd1-0/+3
2020-07-24clk: Add support for enabling/disabling clocks from debugfsMike Tipton1-0/+29
2020-06-22clk: add function documentation for clk_hw_round_rate()Sarang Mairal1-0/+15
2020-06-10Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-4/+0
2020-05-26PM: runtime: clk: Fix clk_pm_runtime_get() error pathRafael J. Wysocki1-1/+5
2020-05-05clk: Remove unused inline function clk_debug_reparentYueHaibing1-4/+0
2020-05-05clk: Unlink clock if failed to prepare or enableMarc Zyngier1-0/+3
2020-04-05Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-52/+75
2020-04-03Merge branches 'clk-ti', 'clk-ingenic', 'clk-typo', 'clk-at91', 'clk-mmp2' an...Stephen Boyd1-1/+1
2020-04-03Merge branches 'clk-phase-errors', 'clk-amlogic', 'clk-renesas' and 'clk-allw...Stephen Boyd1-49/+72
2020-03-20clk: Fix trivia typo in comment exlusive => exclusiveAndy Shevchenko1-1/+1
2020-02-28clk: Fix phase init checkMaxime Ripard1-2/+4
2020-02-12clk: Fix continuation of of_clk_detect_critical()Geert Uytterhoeven1-2/+2
2020-02-12clk: Bail out when calculating phase fails during clk registrationStephen Boyd1-1/+6
2020-02-12clk: Move rate and accuracy recalc to mostly consumer APIsStephen Boyd1-24/+24
2020-02-12clk: Use 'parent' to shorten lines in __clk_core_init()Stephen Boyd1-11/+11
2020-02-12clk: Don't cache errors from clk_ops::get_phase()Stephen Boyd1-16/+32
2020-02-12of: clk: Make of_clk_get_parent_{count,name}() parameter constGeert Uytterhoeven1-2/+2
2020-02-04Merge branch 'akpm' (patches from Andrew)Linus Torvalds1-1/+1
2020-02-04treewide: remove redundant IS_ERR() before error code checkMasahiro Yamada1-1/+1
2020-01-31Merge branches 'clk-debugfs-danger', 'clk-basic-hw', 'clk-renesas', 'clk-amlo...Stephen Boyd1-1/+37
2020-01-31Merge branches 'clk-uniphier', 'clk-warn-critical', 'clk-ux500', 'clk-kconfig...Stephen Boyd1-24/+53
2020-01-31Merge branches 'clk-init-allocation', 'clk-unused' and 'clk-register-dt-node-...Stephen Boyd1-2/+25
2020-01-05clk: Add support for setting clk_rate via debugfsGeert Uytterhoeven1-1/+37
2020-01-04clk: Warn about critical clks that fail to enableStephen Boyd1-1/+6
2020-01-04clk: Use parent node pointer during registration if necessaryStephen Boyd1-2/+25
2019-12-26clk: Don't try to enable critical clocks if prepare failedGuenter Roeck1-2/+8
2019-12-23clk: add terminate callback to clk_opsJerome Brunet1-1/+6
2019-12-23clk: let init callback return an error codeJerome Brunet1-6/+11
2019-12-23clk: actually call the clock init before any other callback of the clockJerome Brunet1-11/+15
2019-12-18clk: Move clk_core_reparent_orphans() under CONFIG_OFOlof Johansson1-7/+7
2019-12-12clk: walk orphan list on clock provider registrationJerome Brunet1-22/+40
2019-11-27Merge branches 'clk-ingenic', 'clk-init-leak', 'clk-ux500' and 'clk-bitmain' ...Stephen Boyd1-4/+5
2019-11-19clk: mark clk_disable_unused() as __initRasmus Villemoes1-4/+4
2019-11-19clk: Fix memory leak in clk_unregister()Kishon Vijay Abraham I1-0/+1
2019-11-11clk: Add API to get index of the clock parentSowjanya Komatineni1-0/+18
2019-09-20Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-37/+132
2019-09-19Merge branches 'clk-cdce-regulator', 'clk-bcm', 'clk-evict-parent-cache' and ...Stephen Boyd1-6/+36
2019-09-19Merge branches 'clk-init-destroy', 'clk-doc', 'clk-imx' and 'clk-allwinner' i...Stephen Boyd1-15/+54
2019-09-19Merge branches 'clk-qcom', 'clk-mtk', 'clk-armada', 'clk-ingenic' and 'clk-me...Stephen Boyd1-0/+6
2019-09-19clk: Drop !clk checks in debugfs dumpingStephen Boyd1-12/+0
2019-09-17clk: Evict unregistered clks from parent cachesStephen Boyd1-6/+36
2019-09-16Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/socLinus Torvalds1-0/+6
2019-09-05clk: Document of_parse_clkspec() some moreStephen Boyd1-6/+37
2019-08-17clk: Remove extraneous 'for' word in commentsRishi Gupta1-1/+1
2019-08-16clk: Fix potential NULL dereference in clk_fetch_parent_index()Martin Blumenstingl1-1/+2
2019-08-16clk: Fix falling back to legacy parent string matchingStephen Boyd1-12/+34
2019-08-16clk: Overwrite clk_hw::init with NULL during clk_register()Stephen Boyd1-8/+16
2019-08-09clk: core: introduce clk_hw_set_parent()Neil Armstrong1-0/+6
2019-08-08clk: Use seq_puts() in possible_parent_show()Markus Elfring1-5/+5
2019-08-08clk: Assert prepare_lock in clk_core_get_boundariesLeonard Crestez1-0/+2
2019-08-08clk: Add clk_min/max_rate entries in debugfsLeonard Crestez1-0/+36
2019-07-17Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-8/+55
2019-07-12Merge branches 'clk-rpi-cpufreq', 'clk-tegra', 'clk-simplify-provider.h', 'cl...Stephen Boyd1-0/+1
2019-07-12Merge branches 'clk-debugfs', 'clk-unused', 'clk-refactor' and 'clk-qoriq' in...Stephen Boyd1-4/+16
2019-07-12Merge branches 'clk-bulk-optional', 'clk-kirkwood', 'clk-socfpga' and 'clk-do...Stephen Boyd1-2/+2
2019-06-25clk: Add clk_parent entry in debugfsLeonard Crestez1-0/+15
2019-06-25clk: Grammar missing "and", Spelling s/statisfied/satisfied/Geert Uytterhoeven1-2/+2
2019-06-25clk: Simplify clk_core_can_round()Geert Uytterhoeven1-4/+1
2019-06-25clk: Simplify debugfs printing and add a newlineStephen Boyd1-19/+15
2019-06-18clk: Fix debugfs clk_possible_parents for clks without parent string namesChen-Yu Tsai1-3/+41
2019-06-17clk: Do a DT parent lookup even when index < 0Stephen Boyd1-1/+1
2019-05-23clk: Unexport __clk_of_tableStephen Boyd1-0/+1
2019-05-07Merge branch 'clk-parent-rewrite-1' into clk-nextStephen Boyd1-80/+273
2019-05-07Merge branch 'clk-ti' into clk-nextStephen Boyd1-1/+0
2019-05-07Merge branches 'clk-doc', 'clk-more-critical', 'clk-meson' and 'clk-basic-be'...Stephen Boyd1-20/+26
2019-05-03clk: Cache core in clk_fetch_parent_index() without namesStephen Boyd1-10/+27
2019-04-26clk: Remove CLK_IS_BASIC clk flagStephen Boyd1-1/+0
2019-04-19clk: Allow parents to be specified via clkspec indexStephen Boyd1-7/+11
2019-04-19clk: Look for parents with clkdev based clk_lookupsStephen Boyd1-9/+18
2019-04-19clk: Allow parents to be specified without string namesStephen Boyd1-62/+200
2019-04-19clk: Add of_clk_hw_register() API for early clk driversStephen Boyd1-3/+23
2019-04-19clk: Prepare for clk registration API that uses DT nodesStephen Boyd1-13/+18
2019-03-08clk: fixup default index for of_clk_get_by_name()Kuninori Morimoto1-1/+1
2019-03-08Merge branch 'clk-parent-rewrite' (early part) into clk-nextStephen Boyd1-56/+203
2019-03-08Merge branches 'clk-optional', 'clk-devm-clkdev-register', 'clk-allwinner', '...Stephen Boyd1-0/+3
2019-03-01clk: Move of_clk_*() APIs into clk.c from clkdev.cStephen Boyd1-3/+54
2019-03-01clk: Inform the core about consumer devicesStephen Boyd1-2/+5
2019-03-01clk: Introduce of_clk_get_hw_from_clkspec()Stephen Boyd1-5/+41
2019-03-01clk: core: clarify the check for runtime PMMiquel Raynal1-6/+8
2019-03-01clk: Combine __clk_get() and __clk_create_clk()Stephen Boyd1-46/+94
2019-02-02clk: export some clk_hw function symbols for module driversJerome Brunet1-0/+3
2019-02-01clk: Document and simplify clk_core_get_rate_nolock()Stephen Boyd1-15/+10
2019-01-24clk: Document __clk_mux_determine_rate()Stephen Boyd1-0/+6
2019-01-24clk: Document deprecated thingsStephen Boyd1-5/+10
2019-01-24clk: Remove global clk traversal on fetch parent indexDerek Basehore1-2/+12
2019-01-09clk: sysfs: fix invalid JSON in clk_dumpLubomir Rintel1-1/+1
2018-12-14Merge branches 'clk-managed-registration', 'clk-spdx', 'clk-remove-basic' and...Stephen Boyd1-6/+41
2018-12-11clk: Tag clk core files with SPDXStephen Boyd1-4/+1
2018-12-05clk: of-provider: look at parent if registered device has no provider infoMatti Vaittinen1-4/+27
2018-12-04clk: Add kerneldoc to managed of-provider interfacesMatti Vaittinen1-0/+15
2018-10-11clk: Clean up suspend/resume coding styleStephen Boyd1-20/+22
2018-10-03clk: clk: Add clk_gate_restore_context functionKeerthy1-0/+19
2018-10-03clk: Add functions to save/restore clock context en-masseRuss Dill1-0/+74
2018-08-15Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cl...Linus Torvalds1-3/+16