1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>Chapter 5. API reference</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Voltage and current regulator API"><link rel="up" href="index.html" title="Voltage and current regulator API"><link rel="prev" href="machine-constraint.html" title="Constraints"><link rel="next" href="API-struct-pre-voltage-change-data.html" title="struct pre_voltage_change_data"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 5. API reference</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="machine-constraint.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="API-struct-pre-voltage-change-data.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="api"></a>Chapter 5. API reference</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="refentrytitle"><a href="API-struct-pre-voltage-change-data.html"><span class="phrase">struct pre_voltage_change_data</span></a></span><span class="refpurpose"> — 2 Data sent with PRE_VOLTAGE_CHANGE event 3 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulator-bulk-data.html"><span class="phrase">struct regulator_bulk_data</span></a></span><span class="refpurpose"> — 4 Data used for bulk regulator operations. 5 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulator-state.html"><span class="phrase">struct regulator_state</span></a></span><span class="refpurpose"> — 6 regulator state during low power system states 7 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulation-constraints.html"><span class="phrase">struct regulation_constraints</span></a></span><span class="refpurpose"> — 8 regulator operating constraints. 9 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulator-consumer-supply.html"><span class="phrase">struct regulator_consumer_supply</span></a></span><span class="refpurpose"> — 10 supply -> device mapping 11 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulator-init-data.html"><span class="phrase">struct regulator_init_data</span></a></span><span class="refpurpose"> — 12 regulator platform initialisation data. 13 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulator-linear-range.html"><span class="phrase">struct regulator_linear_range</span></a></span><span class="refpurpose"> — 14 specify linear voltage ranges 15 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulator-ops.html"><span class="phrase">struct regulator_ops</span></a></span><span class="refpurpose"> — 16 regulator operations. 17 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulator-desc.html"><span class="phrase">struct regulator_desc</span></a></span><span class="refpurpose"> — 18 Static regulator descriptor 19 </span></dt><dt><span class="refentrytitle"><a href="API-struct-regulator-config.html"><span class="phrase">struct regulator_config</span></a></span><span class="refpurpose"> — 20 Dynamic regulator descriptor 21 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get.html"><span class="phrase">regulator_get</span></a></span><span class="refpurpose"> — 22 lookup and obtain a reference to a regulator. 23 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get-exclusive.html"><span class="phrase">regulator_get_exclusive</span></a></span><span class="refpurpose"> — 24 obtain exclusive access to a regulator. 25 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get-optional.html"><span class="phrase">regulator_get_optional</span></a></span><span class="refpurpose"> — 26 obtain optional access to a regulator. 27 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-put.html"><span class="phrase">regulator_put</span></a></span><span class="refpurpose"> — 28 "free" the regulator source 29 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-register-supply-alias.html"><span class="phrase">regulator_register_supply_alias</span></a></span><span class="refpurpose"> — 30 Provide device alias for supply lookup 31 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-unregister-supply-alias.html"><span class="phrase">regulator_unregister_supply_alias</span></a></span><span class="refpurpose"> — 32 Remove device alias 33 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-bulk-register-supply-alias.html"><span class="phrase">regulator_bulk_register_supply_alias</span></a></span><span class="refpurpose"> — 34 register multiple aliases 35 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-bulk-unregister-supply-alias.html"><span class="phrase">regulator_bulk_unregister_supply_alias</span></a></span><span class="refpurpose"> — 36 unregister multiple aliases 37 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-enable.html"><span class="phrase">regulator_enable</span></a></span><span class="refpurpose"> — 38 enable regulator output 39 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-disable.html"><span class="phrase">regulator_disable</span></a></span><span class="refpurpose"> — 40 disable regulator output 41 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-force-disable.html"><span class="phrase">regulator_force_disable</span></a></span><span class="refpurpose"> — 42 force disable regulator output 43 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-disable-deferred.html"><span class="phrase">regulator_disable_deferred</span></a></span><span class="refpurpose"> — 44 disable regulator output with delay 45 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-is-enabled.html"><span class="phrase">regulator_is_enabled</span></a></span><span class="refpurpose"> — 46 is the regulator output enabled 47 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-can-change-voltage.html"><span class="phrase">regulator_can_change_voltage</span></a></span><span class="refpurpose"> — 48 check if regulator can change voltage 49 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-count-voltages.html"><span class="phrase">regulator_count_voltages</span></a></span><span class="refpurpose"> — 50 count <code class="function">regulator_list_voltage</code> selectors 51 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-list-voltage.html"><span class="phrase">regulator_list_voltage</span></a></span><span class="refpurpose"> — 52 enumerate supported voltages 53 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get-hardware-vsel-register.html"><span class="phrase">regulator_get_hardware_vsel_register</span></a></span><span class="refpurpose"> — 54 get the HW voltage selector register 55 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-list-hardware-vsel.html"><span class="phrase">regulator_list_hardware_vsel</span></a></span><span class="refpurpose"> — 56 get the HW-specific register value for a selector 57 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get-linear-step.html"><span class="phrase">regulator_get_linear_step</span></a></span><span class="refpurpose"> — 58 return the voltage step size between VSEL values 59 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-is-supported-voltage.html"><span class="phrase">regulator_is_supported_voltage</span></a></span><span class="refpurpose"> — 60 check if a voltage range can be supported 61 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-set-voltage.html"><span class="phrase">regulator_set_voltage</span></a></span><span class="refpurpose"> — 62 set regulator output voltage 63 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-set-voltage-time.html"><span class="phrase">regulator_set_voltage_time</span></a></span><span class="refpurpose"> — 64 get raise/fall time 65 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-set-voltage-time-sel.html"><span class="phrase">regulator_set_voltage_time_sel</span></a></span><span class="refpurpose"> — 66 get raise/fall time 67 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-sync-voltage.html"><span class="phrase">regulator_sync_voltage</span></a></span><span class="refpurpose"> — 68 re-apply last regulator output voltage 69 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get-voltage.html"><span class="phrase">regulator_get_voltage</span></a></span><span class="refpurpose"> — 70 get regulator output voltage 71 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-set-current-limit.html"><span class="phrase">regulator_set_current_limit</span></a></span><span class="refpurpose"> — 72 set regulator output current limit 73 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get-current-limit.html"><span class="phrase">regulator_get_current_limit</span></a></span><span class="refpurpose"> — 74 get regulator output current 75 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-set-mode.html"><span class="phrase">regulator_set_mode</span></a></span><span class="refpurpose"> — 76 set regulator operating mode 77 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get-mode.html"><span class="phrase">regulator_get_mode</span></a></span><span class="refpurpose"> — 78 get regulator operating mode 79 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-set-load.html"><span class="phrase">regulator_set_load</span></a></span><span class="refpurpose"> — 80 set regulator load 81 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-allow-bypass.html"><span class="phrase">regulator_allow_bypass</span></a></span><span class="refpurpose"> — 82 allow the regulator to go into bypass mode 83 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-register-notifier.html"><span class="phrase">regulator_register_notifier</span></a></span><span class="refpurpose"> — 84 register regulator event notifier 85 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-unregister-notifier.html"><span class="phrase">regulator_unregister_notifier</span></a></span><span class="refpurpose"> — 86 unregister regulator event notifier 87 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-bulk-get.html"><span class="phrase">regulator_bulk_get</span></a></span><span class="refpurpose"> — 88 get multiple regulator consumers 89 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-bulk-enable.html"><span class="phrase">regulator_bulk_enable</span></a></span><span class="refpurpose"> — 90 enable multiple regulator consumers 91 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-bulk-disable.html"><span class="phrase">regulator_bulk_disable</span></a></span><span class="refpurpose"> — 92 disable multiple regulator consumers 93 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-bulk-force-disable.html"><span class="phrase">regulator_bulk_force_disable</span></a></span><span class="refpurpose"> — 94 force disable multiple regulator consumers 95 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-bulk-free.html"><span class="phrase">regulator_bulk_free</span></a></span><span class="refpurpose"> — 96 free multiple regulator consumers 97 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-notifier-call-chain.html"><span class="phrase">regulator_notifier_call_chain</span></a></span><span class="refpurpose"> — 98 call regulator event notifier 99 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-mode-to-status.html"><span class="phrase">regulator_mode_to_status</span></a></span><span class="refpurpose"> — 100 convert a regulator mode into a status 101 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-register.html"><span class="phrase">regulator_register</span></a></span><span class="refpurpose"> — 102 register regulator 103 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-unregister.html"><span class="phrase">regulator_unregister</span></a></span><span class="refpurpose"> — 104 unregister regulator 105 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-suspend-prepare.html"><span class="phrase">regulator_suspend_prepare</span></a></span><span class="refpurpose"> — 106 prepare regulators for system wide suspend 107 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-suspend-finish.html"><span class="phrase">regulator_suspend_finish</span></a></span><span class="refpurpose"> — 108 resume regulators from system wide suspend 109 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-has-full-constraints.html"><span class="phrase">regulator_has_full_constraints</span></a></span><span class="refpurpose"> — 110 the system has fully specified constraints 111 </span></dt><dt><span class="refentrytitle"><a href="API-rdev-get-drvdata.html"><span class="phrase">rdev_get_drvdata</span></a></span><span class="refpurpose"> — 112 get rdev regulator driver data 113 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-get-drvdata.html"><span class="phrase">regulator_get_drvdata</span></a></span><span class="refpurpose"> — 114 get regulator driver data 115 </span></dt><dt><span class="refentrytitle"><a href="API-regulator-set-drvdata.html"><span class="phrase">regulator_set_drvdata</span></a></span><span class="refpurpose"> — 116 set regulator driver data 117 </span></dt><dt><span class="refentrytitle"><a href="API-rdev-get-id.html"><span class="phrase">rdev_get_id</span></a></span><span class="refpurpose"> — 118 get regulator ID 119 </span></dt></dl></div><p> 120 Due to limitations of the kernel documentation framework and the 121 existing layout of the source code the entire regulator API is 122 documented here. 123 </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="machine-constraint.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="API-struct-pre-voltage-change-data.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Constraints </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">struct pre_voltage_change_data</span></td></tr></table></div></body></html> 124