aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/opp/core.c
AgeCommit message (Expand)AuthorFilesLines
10 daysOPP: Fix required_opp_tables for multiple genpds using same tableViresh Kumar1-1/+30
2024-03-11OPP: Extend dev_pm_opp_data with turbo supportSibi Sankar1-0/+1
2024-01-05OPP: Rename 'rate_clk_single'Viresh Kumar1-2/+2
2024-01-05OPP: Pass rounded rate to _set_opp()Viresh Kumar1-3/+3
2024-01-05OPP: Relocate dev_pm_opp_sync_regulators()Viresh Kumar1-41/+41
2023-12-28OPP: Fix _set_required_opps when opp is NULLBryan O'Donoghue1-1/+4
2023-12-27OPP: The level field is always of unsigned int typeViresh Kumar1-2/+7
2023-11-28OPP: Check for invalid OPP in dev_pm_opp_find_level_ceil()Viresh Kumar1-0/+2
2023-11-28OPP: Don't set OPP recursively for a parent genpdViresh Kumar1-1/+15
2023-11-28OPP: Call dev_pm_opp_set_opp() for required OPPsViresh Kumar1-86/+82
2023-11-28OPP: Use _set_opp_level() for single genpd caseViresh Kumar1-2/+4
2023-11-28OPP: Level zero is validViresh Kumar1-4/+20
2023-10-17OPP: No need to defer probe from _opp_attach_genpd()Viresh Kumar1-8/+0
2023-10-17OPP: Remove genpd_virt_dev_lockViresh Kumar1-33/+6
2023-10-17OPP: Reorder code in _opp_set_required_opps_genpd()Viresh Kumar1-14/+18
2023-10-06OPP: Remove doc style comments for internal routinesViresh Kumar1-72/+7
2023-10-06OPP: Add dev_pm_opp_find_level_floor()Krishna chaitanya chundru1-0/+25
2023-10-06OPP: Extend support for the opp-level beyond required-oppsUlf Hansson1-0/+35
2023-10-06OPP: Switch to use dev_pm_domain_set_performance_state()Ulf Hansson1-1/+1
2023-10-06OPP: Extend dev_pm_opp_data with a levelUlf Hansson1-0/+1
2023-10-06OPP: Add dev_pm_opp_add_dynamic() to allow more flexibilityUlf Hansson1-12/+10
2023-07-24OPP: Fix passing 0 to PTR_ERR in _opp_attach_genpd()Manivannan Sadhasivam1-1/+1
2023-07-24OPP: Fix potential null ptr dereference in dev_pm_opp_get_required_pstate()Manivannan Sadhasivam1-5/+3
2023-07-24OPP: Reuse dev_pm_opp_get_freq_indexed()Viresh Kumar1-21/+0
2023-07-24OPP: Update _read_freq() to return the correct frequencyViresh Kumar1-1/+1
2023-07-24OPP: Add dev_pm_opp_find_freq_exact_indexed()Viresh Kumar1-0/+28
2023-07-24OPP: Introduce dev_pm_opp_get_freq_indexed() APIManivannan Sadhasivam1-0/+20
2023-07-21OPP: Introduce dev_pm_opp_find_freq_{ceil/floor}_indexed() APIsManivannan Sadhasivam1-0/+56
2023-06-19OPP: Simplify the over-designed pstate <-> level danceViresh Kumar1-4/+4
2023-06-19OPP: pstate is only valid for genpd OPP tablesViresh Kumar1-2/+16
2023-06-14OPP: don't drop performance constraint on OPP table removalViresh Kumar1-9/+1
2023-06-08OPP: Staticize `lazy_opp_tables` in of.cViresh Kumar1-3/+0
2023-05-31opp: Fix use-after-free in lazy_opp_tables after probe deferralStephan Gerhold1-0/+3
2023-05-22OPP: rate-limit debug messages when no change in OPP is requiredAdrián Larumbe1-1/+1
2023-04-03OPP: Move required opps configuration to specialized callbackViresh Kumar1-27/+42
2023-04-03OPP: Handle all genpd cases together in _set_required_opps()Viresh Kumar1-7/+2
2022-08-16OPP: Fix an un-initialized variable usageChristophe JAILLET1-1/+1
2022-07-19OPP: Don't drop opp->np reference while it is still in useLiang He1-1/+1
2022-07-12OPP: Allow config_clks helper for single clk caseViresh Kumar1-4/+4
2022-07-12OPP: Provide a simple implementation to configure multiple clocksViresh Kumar1-0/+34
2022-07-12OPP: Assert clk_count == 1 for single clk helpersViresh Kumar1-6/+39
2022-07-12OPP: Add key specific assert() method to key finding helpersViresh Kumar1-19/+33
2022-07-12OPP: Compare bandwidths for all paths in _opp_compare_key()Viresh Kumar1-3/+17
2022-07-12OPP: Allow multiple clocks for a deviceViresh Kumar1-58/+155
2022-07-08OPP: Make dev_pm_opp_set_opp() independent of frequencyViresh Kumar1-14/+38
2022-07-08OPP: Reuse _opp_compare_key() in _opp_add_static_v2()Viresh Kumar1-0/+6
2022-07-08OPP: Remove rate_not_available parameter to _opp_add()Viresh Kumar1-2/+2
2022-07-08OPP: Use consistent names for OPP table instancesViresh Kumar1-3/+4
2022-07-08OPP: Use generic key finding helpers for bandwidth keyViresh Kumar1-68/+15
2022-07-08OPP: Use generic key finding helpers for level keyViresh Kumar1-53/+10
2022-07-08OPP: Add generic key finding helpers and use them for freq APIsViresh Kumar1-99/+130
2022-07-08OPP: Remove dev_pm_opp_find_freq_ceil_by_volt()Viresh Kumar1-54/+0
2022-07-08OPP: Remove custom OPP helper supportViresh Kumar1-130/+2
2022-07-08OPP: Add dev_pm_opp_get_supplies()Viresh Kumar1-0/+25
2022-07-08OPP: Make _generic_set_opp_regulator() a config_regulators() interfaceViresh Kumar1-39/+12
2022-07-08OPP: Add support for config_regulators() helperViresh Kumar1-1/+67
2022-07-08OPP: Migrate set-prop-name helper API to use set-config helpersViresh Kumar1-37/+18
2022-07-08OPP: Migrate attach-genpd API to use set-config helpersViresh Kumar1-67/+18
2022-07-08OPP: Migrate set-opp-helper API to use set-config helpersViresh Kumar1-69/+20
2022-07-08OPP: Migrate set-clk-name API to use set-config helpersViresh Kumar1-99/+43
2022-07-08OPP: Migrate set-supported-hw API to use set-config helpersViresh Kumar1-67/+20
2022-07-08OPP: Migrate set-regulators API to use set-config helpersViresh Kumar1-72/+19
2022-07-08OPP: Add dev_pm_opp_set_config() and friendsViresh Kumar1-1/+228
2022-07-08OPP: Make dev_pm_opp_set_regulators() accept NULL terminated listViresh Kumar1-6/+12
2022-06-09OPP: Track if clock name is configured by platformViresh Kumar1-0/+7
2022-06-09OPP: Fix typo in commentViresh Kumar1-1/+1
2022-06-06opp: Fix some kernel-doc commentsYang Li1-2/+2
2022-06-06opp: Fix error check in dev_pm_opp_attach_genpd()Tang Bin1-2/+2
2022-05-04opp: Reorder definition of ceil/floor helpersViresh Kumar1-97/+97
2022-05-04opp: Add apis to retrieve opps with interconnect bandwidthKrzysztof Kozlowski1-0/+120
2022-04-11opp: replace usage of found with dedicated list iterator variableJakob Koschel1-6/+5
2022-04-11PM: opp: simplify with dev_err_probe()Krzysztof Kozlowski1-9/+5
2022-03-03OPP: Add "opp-microwatt" supporting codeLukasz Luba1-0/+25
2021-10-04opp: Change type of dev_pm_opp_attach_genpd(names) argumentDmitry Osipenko1-3/+3
2021-08-23opp: core: Check for pending links before reading required_opp pointersMarijn Suijten1-4/+4
2021-08-16opp: Drop empty-table checks from _put functionsDmitry Osipenko1-15/+0
2021-06-18opp: Allow required-opps to be used for non genpd use casesHsin-Yi Wang1-0/+10
2021-03-16opp: Change return type of devm_pm_opp_attach_genpd()Dmitry Osipenko1-12/+6
2021-03-16opp: Change return type of devm_pm_opp_register_set_opp_helper()Dmitry Osipenko1-12/+6
2021-03-15opp: Add devres wrapper for dev_pm_opp_set_supported_hwYangtao Li1-0/+29
2021-03-15opp: Add devres wrapper for dev_pm_opp_set_regulatorsYangtao Li1-0/+30
2021-03-15opp: Add devres wrapper for dev_pm_opp_set_clknameYangtao Li1-0/+27
2021-03-12opp: Don't drop extra references to OPPs accidentallyBeata Michalska1-23/+25
2021-02-18opp: Don't skip freq update for different frequencyJonathan Marek1-3/+5
2021-02-04OPP: Add function to look up required OPP's for a given OPPSaravana Kannan1-0/+55
2021-02-02opp: Don't ignore clk_get() errors other than -ENOENTViresh Kumar1-7/+11
2021-02-02opp: Update bandwidth requirements based on scaling up/downViresh Kumar1-13/+27
2021-02-02opp: Allow lazy-linking of required-oppsViresh Kumar1-9/+36
2021-02-02opp: Remove dev_pm_opp_set_bw()Viresh Kumar1-36/+5
2021-02-02opp: Implement dev_pm_opp_set_opp()Viresh Kumar1-0/+28
2021-02-02opp: Update parameters of _set_opp_custom()Viresh Kumar1-13/+9
2021-02-02opp: Allow _generic_set_opp_clk_only() to work for non-freq devicesViresh Kumar1-0/+4
2021-02-02opp: Allow _generic_set_opp_regulator() to work for non-freq devicesViresh Kumar1-13/+12
2021-02-02opp: Allow _set_opp() to work for non-freq devicesViresh Kumar1-5/+11
2021-02-02opp: Split _set_opp() out of dev_pm_opp_set_rate()Viresh Kumar1-55/+71
2021-02-02opp: Keep track of currently programmed OPPViresh Kumar1-31/+53
2021-02-02opp: No need to check clk for errorsViresh Kumar1-13/+4
2021-02-02opp: Rename _opp_set_rate_zero()Viresh Kumar1-2/+2
2021-02-02opp: Make _set_opp_custom() work without regulatorsDmitry Osipenko1-11/+18
2021-02-02opp: Prepare for ->set_opp() helper to work without regulatorsViresh Kumar1-38/+46
2021-02-02opp: Handle missing OPP table in dev_pm_opp_xlate_performance_state()Dmitry Osipenko1-1/+1
2021-02-02opp: Add devm_pm_opp_attach_genpdDmitry Osipenko1-0/+36
2021-02-02opp: Add devm_pm_opp_register_set_opp_helperDmitry Osipenko1-0/+34
2021-02-02opp: Defer acquiring the clk until OPPs are addedViresh Kumar1-28/+45
2021-02-02opp: Add dev_pm_opp_sync_regulators()Dmitry Osipenko1-0/+41
2021-02-02opp: Add dev_pm_opp_get_required_pstate()Dmitry Osipenko1-0/+22
2021-02-02opp: Add dev_pm_opp_find_level_ceil()Dmitry Osipenko1-0/+49
2021-02-02opp: Staticize _add_opp_table()Viresh Kumar1-1/+1
2021-02-02opp: Filter out OPPs based on availability of a required-OPPDmitry Osipenko1-0/+11
2021-02-02opp: Fix adding OPP entries in a wrong order if rate is unavailableDmitry Osipenko1-6/+4
2020-12-28opp: Call the missing clk_put() on errorViresh Kumar1-1/+4
2020-12-28opp: fix memory leak in _allocate_opp_tableQuanyang Wang1-2/+4
2020-12-09opp: Allow dev_pm_opp_put_*() APIs to accept NULL opp_tableViresh Kumar1-0/+18
2020-12-09opp: Don't create an OPP table from dev_pm_opp_get_opp_table()Viresh Kumar1-14/+13
2020-12-09opp: Reduce the size of critical section in _opp_kref_release()Viresh Kumar1-47/+47
2020-11-06opp: Don't return opp_dev from _find_opp_dev()Viresh Kumar1-12/+10
2020-11-06opp: Allocate the OPP table outside of opp_table_lockViresh Kumar1-5/+42
2020-11-02opp: Always add entries in dev_list with opp_table->lock heldViresh Kumar1-15/+5
2020-10-27opp: Reduce the size of critical section in _opp_table_kref_release()Viresh Kumar1-3/+4
2020-10-27opp: Fix early exit from dev_pm_opp_register_set_opp_helper()Viresh Kumar1-1/+1
2020-10-05Merge branch 'opp/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/gi...Rafael J. Wysocki1-110/+121
2020-09-16opp: Allow opp-level to be set to 0Viresh Kumar1-3/+0
2020-09-16opp: Prevent memory leak in dev_pm_opp_attach_genpd()Viresh Kumar1-0/+6
2020-09-16opp: Set required OPPs in reverse order when scaling downStephan Gerhold1-8/+19
2020-09-16opp: Reduce code duplication in _set_required_opps()Stephan Gerhold1-21/+22
2020-09-16opp: Drop unnecessary check from dev_pm_opp_attach_genpd()Viresh Kumar1-6/+0
2020-09-16Merge branch 'opp/defer-probe' into HEADViresh Kumar1-22/+31
2020-09-01Merge branch 'opp/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Rafael J. Wysocki1-6/+16
2020-08-31opp: Don't drop reference for an OPP table that was never parsedViresh Kumar1-6/+16
2020-08-25opp: Allow dev_pm_opp_get_opp_table() to return -EPROBE_DEFERStephan Gerhold1-22/+31
2020-08-24opp: Remove _dev_pm_opp_find_and_remove_table() wrapperViresh Kumar1-13/+8
2020-08-24opp: Split out _opp_set_rate_zero()Viresh Kumar1-23/+29
2020-08-24opp: Reuse the enabled flag in !target_freq pathViresh Kumar1-18/+11
2020-08-24opp: Rename regulator_enabled and use it as status of all resourcesViresh Kumar1-10/+9
2020-08-20opp: Enable resources again if they were disabled earlierRajendra Nayak1-4/+7
2020-08-17opp: Put opp table in dev_pm_opp_set_rate() if _set_opp_bw() failsStephen Boyd1-1/+1
2020-08-17opp: Put opp table in dev_pm_opp_set_rate() for empty tablesStephen Boyd1-2/+4
2020-08-04Merge branch 'cpufreq/arm/linux-next' of git://git.kernel.org/pub/scm/linux/k...Rafael J. Wysocki1-0/+31
2020-07-30OPP: Add and export helper to set bandwidthSibi Sankar1-0/+31
2020-07-24opp: Allow disabled OPPs in dev_pm_opp_get_freq()Andrew-sh.Cheng1-1/+1
2020-07-24opp: core: Add missing export for dev_pm_opp_adjust_voltageValdis Klētnieks1-0/+1
2020-05-29opp: Remove bandwidth votes when target_freq is zeroViresh Kumar1-12/+37
2020-05-29opp: core: add regulators enable and disableKamil Konieczny1-2/+26
2020-05-29opp: Reorder the code for !target_freq caseViresh Kumar1-4/+10
2020-05-29opp: Update the bandwidth on OPP frequency changesGeorgi Djakov1-1/+12
2020-05-29opp: Add support for parsing interconnect bandwidthGeorgi Djakov1-4/+24
2020-05-13OPP: Add helpers for reading the binding propertiesSaravana Kannan1-2/+13
2020-04-13opp: Manage empty OPP tables with clk handleRajendra Nayak1-0/+14
2019-12-10opp: Replace list_kref with a local counterViresh Kumar1-29/+19
2019-11-11PM / OPP: Support adjusting OPP voltages at runtimeStephen Boyd1-0/+69
2019-10-21opp: core: Revert "add regulators enable and disable"Marek Szyprowski1-13/+3
2019-07-26opp: core: add regulators enable and disablek.konieczny@partner.samsung.com1-3/+13
2019-07-26opp: Don't decrement uninitialized list_krefViresh Kumar1-0/+1
2019-07-26opp: Add dev_pm_opp_find_level_exact()Niklas Cassel1-0/+48
2019-07-26opp: Return genpd virtual devices from dev_pm_opp_attach_genpd()Viresh Kumar1-1/+5
2019-07-26opp: Not all power-domains are scalableViresh Kumar1-9/+5
2019-06-26Merge branch 'opp/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/gi...Rafael J. Wysocki1-59/+115
2019-06-24opp: Don't use IS_ERR on invalid suppliesDmitry Osipenko1-1/+1
2019-06-19treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500Thomas Gleixner1-4/+1
2019-06-17opp: Make dev_pm_opp_set_rate() handle freq = 0 to drop performance votesRajendra Nayak1-8/+13
2019-06-17opp: Don't overwrite rounded clk rateStephen Boyd1-5/+10
2019-05-20opp: Allocate genpd_virt_devs from dev_pm_opp_attach_genpd()Viresh Kumar1-0/+10
2019-05-20opp: Attach genpds to devices from within OPP coreViresh Kumar1-46/+82
2019-04-10OPP: Introduce dev_pm_opp_find_freq_ceil_by_volt()Andrew-sh.Cheng1-0/+54
2019-03-12PM / OPP: Update performance state when freq == old_freqViresh Kumar1-1/+1
2019-03-06Merge tag 'pm-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafae...Linus Torvalds1-15/+7
2019-02-15Merge tag 'qcom-drivers-for-5.1' of git://git.kernel.org/pub/scm/linux/kernel...Arnd Bergmann1-0/+18
2019-02-12Merge branch 'opp/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/gi...Rafael J. Wysocki1-15/+7
2019-02-07opp: no need to check return value of debugfs_create functionsGreg Kroah-Hartman1-9/+2
2019-02-07PM / OPP: Remove unused parameter of _generic_set_opp_clk_only()Viresh Kumar1-6/+5
2019-01-22OPP: Add support for parsing the 'opp-level' propertyRajendra Nayak1-0/+18
2019-01-04cpufreq: scpi/scmi: Fix freeing of dynamic OPPsViresh Kumar1-5/+58
2018-12-14Merge branch 'opp/genpd/propagation' into opp/linux-nextViresh Kumar1-70/+254
2018-12-14OPP: Add dev_pm_opp_xlate_performance_state() helperViresh Kumar1-0/+63
2018-12-11OPP: Fix missing debugfs supply directory for OPPsViresh Kumar1-3/+9
2018-12-11OPP: Use opp_table->regulators to verify no regulator caseViresh Kumar1-4/+7
2018-11-05OPP: Configure all required OPPsViresh Kumar1-48/+65
2018-11-05OPP: Add dev_pm_opp_{set|put}_genpd_virt_dev() helperViresh Kumar1-0/+88
2018-11-05OPP: Populate OPPs from "required-opps" propertyViresh Kumar1-0/+1
2018-11-05OPP: Populate required opp tables from "required-opps" propertyViresh Kumar1-0/+2
2018-11-05OPP: Separate out custom OPP handler specific codeViresh Kumar1-27/+40
2018-10-04OPP: Return error on error from dev_pm_opp_get_opp_count()Viresh Kumar1-1/+1
2018-10-01OPP: Prevent creating multiple OPP tables for devices sharing OPP nodesViresh Kumar1-3/+22
2018-09-19OPP: Use a single mechanism to free the OPP tableViresh Kumar1-38/+16
2018-09-19OPP: Don't remove dynamic OPPs from _dev_pm_opp_remove_table()Viresh Kumar1-15/+5
2018-09-19OPP: Create separate kref for static OPPs listViresh Kumar1-1/+32
2018-09-19OPP: Don't take OPP table's kref for static OPPsViresh Kumar1-5/+6
2018-09-19OPP: Pass index to _of_init_opp_table()Viresh Kumar1-4/+15
2018-09-19OPP: Protect dev_list with opp_table lockViresh Kumar1-2/+19
2018-06-19PM / OPP: Update voltage in case freq == old_freqWaldemar Rymarkiewicz1-1/+1
2018-05-22PM / OPP: Fix shared OPP table support in dev_pm_opp_register_set_opp_helper()Viresh Kumar1-22/+5
2018-05-22PM / OPP: Fix shared OPP table support in dev_pm_opp_set_regulators()Viresh Kumar1-9/+6
2018-05-22PM / OPP: Fix shared OPP table support in dev_pm_opp_set_prop_name()Viresh Kumar1-20/+5
2018-05-22PM / OPP: Fix shared OPP table support in dev_pm_opp_set_supported_hw()Viresh Kumar1-21/+5
2018-05-09PM / OPP: Remove dev_pm_opp_{un}register_get_pstate_helper()Viresh Kumar1-75/+0
2018-05-09PM / OPP: Get performance state using genpd helperViresh Kumar1-3/+0
2018-05-09PM / OPP: Implement of_dev_pm_opp_find_required_opp()Viresh Kumar1-3/+1
2018-05-09PM / OPP: "opp-hz" is optional for power domainsViresh Kumar1-35/+57
2017-10-14PM / OPP: Add dev_pm_opp_{un}register_get_pstate_helper()Viresh Kumar1-0/+78
2017-10-14PM / OPP: Support updating performance state of device's power domainViresh Kumar1-1/+56