€•eŒsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ(/translations/zh_CN/driver-api/regulator”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ(/translations/zh_TW/driver-api/regulator”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ(/translations/it_IT/driver-api/regulator”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ(/translations/ja_JP/driver-api/regulator”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ(/translations/ko_KR/driver-api/regulator”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ(/translations/pt_BR/driver-api/regulator”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ(/translations/sp_SP/driver-api/regulator”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)�”}”(hŒ,Copyright 2007-2008 Wolfson Microelectronics”h]”hŒ,Copyright 2007-2008 Wolfson Microelectronics”…”�”}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒB/var/lib/git/docbuild/linux/Documentation/driver-api/regulator.rst”h´Kubh¶)�”}”(hŒ9This documentation is free software; you can redistribute”h]”hŒ9This documentation is free software; you can redistribute”…”�”}”hhÈsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1hµhhh²hh³hÇh´Kubh¶)�”}”(hŒ=it and/or modify it under the terms of the GNU General Public”h]”hŒ=it and/or modify it under the terms of the GNU General Public”…”�”}”hhÖsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1hµhhh²hh³hÇh´Kubh¶)�”}”(hŒ?License version 2 as published by the Free Software Foundation.”h]”hŒ?License version 2 as published by the Free Software Foundation.”…”�”}”hhäsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1hµhhh²hh³hÇh´KubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒ!Voltage and current regulator API”h]”hŒ!Voltage and current regulator API”…”�”}”(hhùh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hhôh²hh³hÇh´K ubhŒ field_list”“”)�”}”(hhh]”(hŒfield”“”)�”}”(hhh]”(hŒ field_name”“”)�”}”(hŒAuthor”h]”hŒAuthor”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjh³hÇh´KubhŒ field_body”“”)�”}”(hŒ Liam Girdwood”h]”hŒ paragraph”“”)�”}”(hj%h]”hŒ Liam Girdwood”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K hj#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÇh´K hj h²hubj )�”}”(hhh]”(j)�”}”(hŒAuthor”h]”hŒAuthor”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjBh³hÇh´Kubj")�”}”(hŒ Mark Brown ”h]”j()�”}”(hŒ Mark Brown”h]”hŒ Mark Brown”…”�”}”(hjWh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K hjSubah}”(h]”h ]”h"]”h$]”h&]”uh1j!hjBubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÇh´K hj h²hubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhhôh²hh³hÇh´K ubhó)�”}”(hhh]”(hø)�”}”(hŒ Introduction”h]”hŒ Introduction”…”�”}”(hjzh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hjwh²hh³hÇh´Kubj()�”}”(hŒlThis framework is designed to provide a standard kernel interface to control voltage and current regulators.”h]”hŒlThis framework is designed to provide a standard kernel interface to control voltage and current regulators.”…”�”}”(hjˆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´Khjwh²hubj()�”}”(hXThe intention is to allow systems to dynamically control regulator power output in order to save power and prolong battery life. This applies to both voltage regulators (where voltage output is controllable) and current sinks (where current limit is controllable).”h]”hXThe intention is to allow systems to dynamically control regulator power output in order to save power and prolong battery life. This applies to both voltage regulators (where voltage output is controllable) and current sinks (where current limit is controllable).”…”�”}”(hj–h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´Khjwh²hubj()�”}”(hŒ‘Note that additional (and currently more complete) documentation is available in the Linux kernel source under ``Documentation/power/regulator``.”h]”(hŒoNote that additional (and currently more complete) documentation is available in the Linux kernel source under ”…”�”}”(hj¤h²hh³Nh´NubhŒliteral”“”)�”}”(hŒ!``Documentation/power/regulator``”h]”hŒDocumentation/power/regulator”…”�”}”(hj®h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¤ubhŒ.”…”�”}”(hj¤h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´Khjwh²hubhó)�”}”(hhh]”(hø)�”}”(hŒGlossary”h]”hŒGlossary”…”�”}”(hjÉh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hjÆh²hh³hÇh´Kubj()�”}”(hŒCThe regulator API uses a number of terms which may not be familiar:”h]”hŒCThe regulator API uses a number of terms which may not be familiar:”…”�”}”(hj×h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K hjÆh²hubj()�”}”(hŒ Regulator”h]”hŒ Regulator”…”�”}”(hjåh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K"hjÆh²hubhŒ block_quote”“”)�”}”(hŒ§Electronic device that supplies power to other devices. Most regulators can enable and disable their output and some can also control their output voltage or current. ”h]”j()�”}”(hŒ¦Electronic device that supplies power to other devices. Most regulators can enable and disable their output and some can also control their output voltage or current.”h]”hŒ¦Electronic device that supplies power to other devices. Most regulators can enable and disable their output and some can also control their output voltage or current.”…”�”}”(hjùh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K$hjõubah}”(h]”h ]”h"]”h$]”h&]”uh1jóh³hÇh´K$hjÆh²hubj()�”}”(hŒConsumer”h]”hŒConsumer”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K(hjÆh²hubjô)�”}”(hŒÀElectronic device which consumes power provided by a regulator. These may either be static, requiring only a fixed supply, or dynamic, requiring active management of the regulator at runtime. ”h]”j()�”}”(hŒ¿Electronic device which consumes power provided by a regulator. These may either be static, requiring only a fixed supply, or dynamic, requiring active management of the regulator at runtime.”h]”hŒ¿Electronic device which consumes power provided by a regulator. These may either be static, requiring only a fixed supply, or dynamic, requiring active management of the regulator at runtime.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K*hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jóh³hÇh´K*hjÆh²hubj()�”}”(hŒ Power Domain”h]”hŒ Power Domain”…”�”}”(hj3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K.hjÆh²hubjô)�”}”(hŒÀThe electronic circuit supplied by a given regulator, including the regulator and all consumer devices. The configuration of the regulator is shared between all the components in the circuit. ”h]”j()�”}”(hŒ¿The electronic circuit supplied by a given regulator, including the regulator and all consumer devices. The configuration of the regulator is shared between all the components in the circuit.”h]”hŒ¿The electronic circuit supplied by a given regulator, including the regulator and all consumer devices. The configuration of the regulator is shared between all the components in the circuit.”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K0hjAubah}”(h]”h ]”h"]”h$]”h&]”uh1jóh³hÇh´K0hjÆh²hubj()�”}”(hŒ*Power Management Integrated Circuit (PMIC)”h]”hŒ*Power Management Integrated Circuit (PMIC)”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K4hjÆh²hubjô)�”}”(hŒÆAn IC which contains numerous regulators and often also other subsystems. In an embedded system the primary PMIC is often equivalent to a combination of the PSU and southbridge in a desktop system. ”h]”j()�”}”(hŒÅAn IC which contains numerous regulators and often also other subsystems. In an embedded system the primary PMIC is often equivalent to a combination of the PSU and southbridge in a desktop system.”h]”hŒÅAn IC which contains numerous regulators and often also other subsystems. In an embedded system the primary PMIC is often equivalent to a combination of the PSU and southbridge in a desktop system.”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K6hjgubah}”(h]”h ]”h"]”h$]”h&]”uh1jóh³hÇh´K6hjÆh²hubeh}”(h]”Œglossary”ah ]”h"]”Œglossary”ah$]”h&]”uh1hòhjwh²hh³hÇh´Kubeh}”(h]”Œ introduction”ah ]”h"]”Œ introduction”ah$]”h&]”uh1hòhhôh²hh³hÇh´Kubhó)�”}”(hhh]”(hø)�”}”(hŒConsumer driver interface”h]”hŒConsumer driver interface”…”�”}”(hj’h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hj�h²hh³hÇh´K;ubj()�”}”(hXiThis offers a similar API to the kernel clock framework. Consumer drivers use `get <#API-regulator-get>`__ and `put <#API-regulator-put>`__ operations to acquire and release regulators. Functions are provided to `enable <#API-regulator-enable>`__ and `disable <#API-regulator-disable>`__ the regulator and to get and set the runtime parameters of the regulator.”h]”(hŒNThis offers a similar API to the kernel clock framework. Consumer drivers use ”…”�”}”(hj h²hh³Nh´NubhŒ reference”“”)�”}”(hŒ`get <#API-regulator-get>`__”h]”hŒget”…”�”}”(hjªh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œname”Œget”Œrefuri”Œ#API-regulator-get”uh1j¨hj ubhŒ and ”…”�”}”(hj h²hh³Nh´Nubj©)�”}”(hŒ`put <#API-regulator-put>`__”h]”hŒput”…”�”}”(hjÀh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œname”Œput”jºŒ#API-regulator-put”uh1j¨hj ubhŒI operations to acquire and release regulators. Functions are provided to ”…”�”}”(hj h²hh³Nh´Nubj©)�”}”(hŒ"`enable <#API-regulator-enable>`__”h]”hŒenable”…”�”}”(hjÕh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œname”Œenable”jºŒ#API-regulator-enable”uh1j¨hj ubhŒ and ”…”�”}”(hj h²hh³Nh´Nubj©)�”}”(hŒ$`disable <#API-regulator-disable>`__”h]”hŒdisable”…”�”}”(hjêh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œname”Œdisable”jºŒ#API-regulator-disable”uh1j¨hj ubhŒJ the regulator and to get and set the runtime parameters of the regulator.”…”�”}”(hj h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K=hj�h²hubj()�”}”(hŒ£When requesting regulators consumers use symbolic names for their supplies, such as "Vcc", which are mapped into actual regulator devices by the machine interface.”h]”hŒ§When requesting regulators consumers use symbolic names for their supplies, such as “Vccâ€�, which are mapped into actual regulator devices by the machine interface.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´KDhj�h²hubj()�”}”(hŒ~A stub version of this API is provided when the regulator framework is not in use in order to minimise the need to use ifdefs.”h]”hŒ~A stub version of this API is provided when the regulator framework is not in use in order to minimise the need to use ifdefs.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´KHhj�h²hubhó)�”}”(hhh]”(hø)�”}”(hŒEnabling and disabling”h]”hŒEnabling and disabling”…”�”}”(hj$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hj!h²hh³hÇh´KLubj()�”}”(hXThe regulator API provides reference counted enabling and disabling of regulators. Consumer devices use the :c:func:`regulator_enable()` and :c:func:`regulator_disable()` functions to enable and disable regulators. Calls to the two functions must be balanced.”h]”(hŒlThe regulator API provides reference counted enabling and disabling of regulators. Consumer devices use the ”…”�”}”(hj2h²hh³Nh´Nubh)�”}”(hŒ:c:func:`regulator_enable()`”h]”j­)�”}”(hj<h]”hŒregulator_enable()”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”(Œxref”Œc”Œc-func”eh"]”h$]”h&]”uh1j¬hj:ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”Œdriver-api/regulator”Œ refdomain”jIŒreftype”Œfunc”Œ refexplicit”‰Œrefwarn”‰Œ reftarget”Œregulator_enable”uh1hh³hÇh´KNhj2ubhŒ and ”…”�”}”(hj2h²hh³Nh´Nubh)�”}”(hŒ:c:func:`regulator_disable()`”h]”j­)�”}”(hjch]”hŒregulator_disable()”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-func”eh"]”h$]”h&]”uh1j¬hjaubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œfunc”Œ refexplicit”‰Œrefwarn”‰j[Œregulator_disable”uh1hh³hÇh´KNhj2ubhŒY functions to enable and disable regulators. Calls to the two functions must be balanced.”…”�”}”(hj2h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´KNhj!h²hubj()�”}”(hXWNote that since multiple consumers may be using a regulator and machine constraints may not allow the regulator to be disabled there is no guarantee that calling :c:func:`regulator_disable()` will actually cause the supply provided by the regulator to be disabled. Consumer drivers should assume that the regulator may be enabled at all times.”h]”(hŒ¢Note that since multiple consumers may be using a regulator and machine constraints may not allow the regulator to be disabled there is no guarantee that calling ”…”�”}”(hjŠh²hh³Nh´Nubh)�”}”(hŒ:c:func:`regulator_disable()`”h]”j­)�”}”(hj”h]”hŒregulator_disable()”…”�”}”(hj–h²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-func”eh"]”h$]”h&]”uh1j¬hj’ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œfunc”Œ refexplicit”‰Œrefwarn”‰j[Œregulator_disable”uh1hh³hÇh´KShjŠubhŒ˜ will actually cause the supply provided by the regulator to be disabled. Consumer drivers should assume that the regulator may be enabled at all times.”…”�”}”(hjŠh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´KShj!h²hubeh}”(h]”Œenabling-and-disabling”ah ]”h"]”Œenabling and disabling”ah$]”h&]”uh1hòhj�h²hh³hÇh´KLubhó)�”}”(hhh]”(hø)�”}”(hŒ Configuration”h]”hŒ Configuration”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hjÃh²hh³hÇh´KZubj()�”}”(hŒêSome consumer devices may need to be able to dynamically configure their supplies. For example, MMC drivers may need to select the correct operating voltage for their cards. This may be done while the regulator is enabled or disabled.”h]”hŒêSome consumer devices may need to be able to dynamically configure their supplies. For example, MMC drivers may need to select the correct operating voltage for their cards. This may be done while the regulator is enabled or disabled.”…”�”}”(hjÔh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K\hjÃh²hubj()�”}”(hXçThe :c:func:`regulator_set_voltage()` and :c:func:`regulator_set_current_limit()` functions provide the primary interface for this. Both take ranges of voltages and currents, supporting drivers that do not require a specific value (eg, CPU frequency scaling normally permits the CPU to use a wider range of supply voltages at lower frequencies but does not require that the supply voltage be lowered). Where an exact value is required both minimum and maximum values should be identical.”h]”(hŒThe ”…”�”}”(hjâh²hh³Nh´Nubh)�”}”(hŒ!:c:func:`regulator_set_voltage()`”h]”j­)�”}”(hjìh]”hŒregulator_set_voltage()”…”�”}”(hjîh²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-func”eh"]”h$]”h&]”uh1j¬hjêubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œfunc”Œ refexplicit”‰Œrefwarn”‰j[Œregulator_set_voltage”uh1hh³hÇh´KahjâubhŒ and ”…”�”}”(hjâh²hh³Nh´Nubh)�”}”(hŒ':c:func:`regulator_set_current_limit()`”h]”j­)�”}”(hjh]”hŒregulator_set_current_limit()”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-func”eh"]”h$]”h&]”uh1j¬hj ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œfunc”Œ refexplicit”‰Œrefwarn”‰j[Œregulator_set_current_limit”uh1hh³hÇh´KahjâubhX– functions provide the primary interface for this. Both take ranges of voltages and currents, supporting drivers that do not require a specific value (eg, CPU frequency scaling normally permits the CPU to use a wider range of supply voltages at lower frequencies but does not require that the supply voltage be lowered). Where an exact value is required both minimum and maximum values should be identical.”…”�”}”(hjâh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´KahjÃh²hubeh}”(h]”Œ configuration”ah ]”h"]”Œ configuration”ah$]”h&]”uh1hòhj�h²hh³hÇh´KZubhó)�”}”(hhh]”(hø)�”}”(hŒ Callbacks”h]”hŒ Callbacks”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hj>h²hh³hÇh´Kkubj()�”}”(hŒHCallbacks may also be registered for events such as regulation failures.”h]”hŒHCallbacks may also be registered for events such as regulation failures.”…”�”}”(hjOh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´Kmhj>h²hubeh}”(h]”Œ callbacks”ah ]”h"]”Œ callbacks”ah$]”h&]”uh1hòhj�h²hh³hÇh´Kkubeh}”(h]”Œconsumer-driver-interface”ah ]”h"]”Œconsumer driver interface”ah$]”h&]”uh1hòhhôh²hh³hÇh´K;ubhó)�”}”(hhh]”(hø)�”}”(hŒRegulator driver interface”h]”hŒRegulator driver interface”…”�”}”(hjph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hjmh²hh³hÇh´Kpubj()�”}”(hŒÂDrivers for regulator chips register the regulators with the regulator core, providing operations structures to the core. A notifier interface allows error conditions to be reported to the core.”h]”hŒÂDrivers for regulator chips register the regulators with the regulator core, providing operations structures to the core. A notifier interface allows error conditions to be reported to the core.”…”�”}”(hj~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´Krhjmh²hubj()�”}”(hŒ¯Registration should be triggered by explicit setup done by the platform, supplying a struct regulator_init_data for the regulator containing constraint and supply information.”h]”hŒ¯Registration should be triggered by explicit setup done by the platform, supplying a struct regulator_init_data for the regulator containing constraint and supply information.”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´Kvhjmh²hubeh}”(h]”Œregulator-driver-interface”ah ]”h"]”Œregulator driver interface”ah$]”h&]”uh1hòhhôh²hh³hÇh´Kpubhó)�”}”(hhh]”(hø)�”}”(hŒMachine interface”h]”hŒMachine interface”…”�”}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hj¢h²hh³hÇh´K{ubj()�”}”(hŒŸThis interface provides a way to define how regulators are connected to consumers on a given system and what the valid operating parameters are for the system.”h]”hŒŸThis interface provides a way to define how regulators are connected to consumers on a given system and what the valid operating parameters are for the system.”…”�”}”(hj³h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K}hj¢h²hubhó)�”}”(hhh]”(hø)�”}”(hŒSupplies”h]”hŒSupplies”…”�”}”(hjÄh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hjÁh²hh³hÇh´K‚ubj()�”}”(hŒŸRegulator supplies are specified using struct :c:type:`regulator_consumer_supply`. This is done at driver registration time as part of the machine constraints.”h]”(hŒ.Regulator supplies are specified using struct ”…”�”}”(hjÒh²hh³Nh´Nubh)�”}”(hŒ#:c:type:`regulator_consumer_supply`”h]”j­)�”}”(hjÜh]”hŒregulator_consumer_supply”…”�”}”(hjÞh²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-type”eh"]”h$]”h&]”uh1j¬hjÚubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j[Œregulator_consumer_supply”uh1hh³hÇh´K„hjÒubhŒN. This is done at driver registration time as part of the machine constraints.”…”�”}”(hjÒh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K„hjÁh²hubeh}”(h]”Œsupplies”ah ]”h"]”Œsupplies”ah$]”h&]”uh1hòhj¢h²hh³hÇh´K‚ubhó)�”}”(hhh]”(hø)�”}”(hŒ Constraints”h]”hŒ Constraints”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hj h²hh³hÇh´K‰ubj()�”}”(hX|As well as defining the connections the machine interface also provides constraints defining the operations that clients are allowed to perform and the parameters that may be set. This is required since generally regulator devices will offer more flexibility than it is safe to use on a given system, for example supporting higher supply voltages than the consumers are rated for.”h]”hX|As well as defining the connections the machine interface also provides constraints defining the operations that clients are allowed to perform and the parameters that may be set. This is required since generally regulator devices will offer more flexibility than it is safe to use on a given system, for example supporting higher supply voltages than the consumers are rated for.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K‹hj h²hubj()�”}”(hŒWThis is done at driver registration time` by providing a struct regulation_constraints.”h]”hŒWThis is done at driver registration time` by providing a struct regulation_constraints.”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K’hj h²hubj()�”}”(hŒ›The constraints may also specify an initial configuration for the regulator in the constraints, which is particularly useful for use with static consumers.”h]”hŒ›The constraints may also specify an initial configuration for the regulator in the constraints, which is particularly useful for use with static consumers.”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´K•hj h²hubeh}”(h]”Œ constraints”ah ]”h"]”Œ constraints”ah$]”h&]”uh1hòhj¢h²hh³hÇh´K‰ubeh}”(h]”Œmachine-interface”ah ]”h"]”Œmachine interface”ah$]”h&]”uh1hòhhôh²hh³hÇh´K{ubhó)�”}”(hhh]”(hø)�”}”(hŒ API reference”h]”hŒ API reference”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h÷hjVh²hh³hÇh´Kšubj()�”}”(hŒ�Due to limitations of the kernel documentation framework and the existing layout of the source code the entire regulator API is documented here.”h]”hŒ�Due to limitations of the kernel documentation framework and the existing layout of the source code the entire regulator API is documented here.”…”�”}”(hjgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³hÇh´KœhjVh²hubhŒindex”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(Œsingle”Œ"pre_voltage_change_data (C struct)”Œc.pre_voltage_change_data”hNt”auh1juhjVh²hh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´NubhŒdesc”“”)�”}”(hhh]”(hŒdesc_signature”“”)�”}”(hŒpre_voltage_change_data”h]”hŒdesc_signature_line”“”)�”}”(hŒstruct pre_voltage_change_data”h]”(hŒdesc_sig_keyword”“”)�”}”(hŒstruct”h]”hŒstruct”…”�”}”(hjšh²hh³Nh´Nubah}”(h]”h ]”Œk”ah"]”h$]”h&]”uh1j˜hj”h²hh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´KubhŒdesc_sig_space”“”)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”Œw”ah"]”h$]”h&]”uh1jªhj”h²hh³j©h´KubhŒ desc_name”“”)�”}”(hŒpre_voltage_change_data”h]”hŒ desc_sig_name”“”)�”}”(hj�h]”hŒpre_voltage_change_data”…”�”}”(hjÃh²hh³Nh´Nubah}”(h]”h ]”Œn”ah"]”h$]”h&]”uh1jÁhj½ubah}”(h]”h ]”(Œsig-name”Œdescname”eh"]”h$]”h&]”hÅhÆuh1j»hj”h²hh³j©h´Kubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆŒ add_permalink”ˆuh1j’Œsphinx_line_type”Œ declarator”hjŽh²hh³j©h´Kubah}”(h]”j„ah ]”(Œsig”Œ sig-object”eh"]”h$]”h&]”Œ is_multiline”ˆŒ _toc_parts”)Œ _toc_name”huh1jŒh³j©h´Khj‰h²hubhŒ desc_content”“”)�”}”(hhh]”j()�”}”(hŒ'Data sent with PRE_VOLTAGE_CHANGE event”h]”hŒ'Data sent with PRE_VOLTAGE_CHANGE event”…”�”}”(hjòh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´Kphjïh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj‰h²hh³j©h´Kubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”Œdomain”jIŒobjtype”j Œdesctype”j Œnoindex”‰Œ noindexentry”‰Œnocontentsentry”‰uh1j‡h²hhjVh³j†h´NubhŒ container”“”)�”}”(hX**Definition**:: struct pre_voltage_change_data { unsigned long old_uV; unsigned long min_uV; unsigned long max_uV; }; **Members** ``old_uV`` Current voltage before change. ``min_uV`` Min voltage we'll change to. ``max_uV`` Max voltage we'll change to.”h]”(j()�”}”(hŒ**Definition**::”h]”(hŒstrong”“”)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubhŒ:”…”�”}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´KthjubhŒ literal_block”“”)�”}”(hŒqstruct pre_voltage_change_data { unsigned long old_uV; unsigned long min_uV; unsigned long max_uV; };”h]”hŒqstruct pre_voltage_change_data { unsigned long old_uV; unsigned long min_uV; unsigned long max_uV; };”…”�”}”hj;sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´Kvhjubj()�”}”(hŒ **Members**”h]”j)�”}”(hjLh]”hŒMembers”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjJubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K|hjubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hŒ*``old_uV`` Current voltage before change. ”h]”(hŒterm”“”)�”}”(hŒ ``old_uV``”h]”j­)�”}”(hjqh]”hŒold_uV”…”�”}”(hjsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjoubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´KshjiubhŒ definition”“”)�”}”(hhh]”j()�”}”(hŒCurrent voltage before change.”h]”hŒCurrent voltage before change.”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j†h´Kshj‰ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjiubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j†h´Kshjdubjh)�”}”(hŒ(``min_uV`` Min voltage we'll change to. ”h]”(jn)�”}”(hŒ ``min_uV``”h]”j­)�”}”(hj¬h]”hŒmin_uV”…”�”}”(hj®h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjªubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´Kthj¦ubjˆ)�”}”(hhh]”j()�”}”(hŒMin voltage we'll change to.”h]”hŒMin voltage we’ll change to.”…”�”}”(hjÅh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÁh´KthjÂubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¦ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÁh´Kthjdubjh)�”}”(hŒ'``max_uV`` Max voltage we'll change to.”h]”(jn)�”}”(hŒ ``max_uV``”h]”j­)�”}”(hjåh]”hŒmax_uV”…”�”}”(hjçh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjãubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´Kthjßubjˆ)�”}”(hhh]”j()�”}”(hŒMax voltage we'll change to.”h]”hŒMax voltage we’ll change to.”…”�”}”(hjþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´Kuhjûubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjßubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³júh´Kthjdubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³j†h´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_bulk_data (C struct)”Œc.regulator_bulk_data”hNt”auh1juhjVh²hh³j†h´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_bulk_data”h]”j“)�”}”(hŒstruct regulator_bulk_data”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj;h²hh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K{ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj;h²hh³jLh´K{ubj¼)�”}”(hŒregulator_bulk_data”h]”jÂ)�”}”(hj9h]”hŒregulator_bulk_data”…”�”}”(hj_h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj[ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj;h²hh³jLh´K{ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj7h²hh³jLh´K{ubah}”(h]”j2ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jLh´K{hj4h²hubjî)�”}”(hhh]”j()�”}”(hŒ(Data used for bulk regulator operations.”h]”hŒ(Data used for bulk regulator operations.”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´Khj~h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj4h²hh³jLh´K{ubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjj™jj™j‰j‰j‰uh1j‡h²hhjVh³j†h´Nubj)�”}”(hX**Definition**:: struct regulator_bulk_data { const char *supply; struct regulator *consumer; int init_load_uA; }; **Members** ``supply`` The name of the supply. Initialised by the user before using the bulk regulator APIs. ``consumer`` The regulator consumer for the supply. This will be managed by the bulk API. ``init_load_uA`` After getting the regulator, regulator_set_load() will be called with this load. Initialised by the user before using the bulk regulator APIs.”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¡ubhŒ:”…”�”}”(hj¡h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´Kƒhj�ubj:)�”}”(hŒmstruct regulator_bulk_data { const char *supply; struct regulator *consumer; int init_load_uA; };”h]”hŒmstruct regulator_bulk_data { const char *supply; struct regulator *consumer; int init_load_uA; };”…”�”}”hj¾sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K…hj�ubj()�”}”(hŒ **Members**”h]”j)�”}”(hjÏh]”hŒMembers”…”�”}”(hjÑh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÍubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K‹hj�ubjc)�”}”(hhh]”(jh)�”}”(hŒb``supply`` The name of the supply. Initialised by the user before using the bulk regulator APIs. ”h]”(jn)�”}”(hŒ ``supply``”h]”j­)�”}”(hjîh]”hŒsupply”…”�”}”(hjðh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjìubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´Kƒhjèubjˆ)�”}”(hhh]”j()�”}”(hŒVThe name of the supply. Initialised by the user before using the bulk regulator APIs.”h]”hŒVThe name of the supply. Initialised by the user before using the bulk regulator APIs.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K‚hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjèubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jh´Kƒhjåubjh)�”}”(hŒ[``consumer`` The regulator consumer for the supply. This will be managed by the bulk API. ”h]”(jn)�”}”(hŒ ``consumer``”h]”j­)�”}”(hj(h]”hŒconsumer”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K…hj"ubjˆ)�”}”(hhh]”j()�”}”(hŒMThe regulator consumer for the supply. This will be managed by the bulk API.”h]”hŒMThe regulator consumer for the supply. This will be managed by the bulk API.”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K„hj>ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj"ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j=h´K…hjåubjh)�”}”(hŒ ``init_load_uA`` After getting the regulator, regulator_set_load() will be called with this load. Initialised by the user before using the bulk regulator APIs.”h]”(jn)�”}”(hŒ``init_load_uA``”h]”j­)�”}”(hjbh]”hŒ init_load_uA”…”�”}”(hjdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj`ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K‡hj\ubjˆ)�”}”(hhh]”j()�”}”(hŒ�After getting the regulator, regulator_set_load() will be called with this load. Initialised by the user before using the bulk regulator APIs.”h]”hŒ�After getting the regulator, regulator_set_load() will be called with this load. Initialised by the user before using the bulk regulator APIs.”…”�”}”(hj{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K†hjxubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj\ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jwh´K‡hjåubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj�ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³j†h´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hj¥h]”hŒ Description”…”�”}”(hj§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj£ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´K‹hjVh²hubj()�”}”(hŒ¹The regulator APIs provide a series of regulator_bulk_() API calls as a convenience to consumers which require multiple supplies. This structure is used to manage data for these calls.”h]”hŒ¹The regulator APIs provide a series of regulator_bulk_() API calls as a convenience to consumers which require multiple supplies. This structure is used to manage data for these calls.”…”�”}”(hj»h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œh/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:160: ./include/linux/regulator/consumer.h”h´KˆhjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_state (C struct)”Œc.regulator_state”hNt”auh1juhjVh²hh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_state”h]”j“)�”}”(hŒstruct regulator_state”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjäh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjàh²hh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjòh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjàh²hh³jñh´Kubj¼)�”}”(hŒregulator_state”h]”jÂ)�”}”(hjÞh]”hŒregulator_state”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjàh²hh³jñh´Kubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjÜh²hh³jñh´Kubah}”(h]”jÖah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jñh´KhjÙh²hubjî)�”}”(hhh]”j()�”}”(hŒ.regulator state during low power system states”h]”hŒ.regulator state during low power system states”…”�”}”(hj& h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KChj# h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjÙh²hh³jñh´Kubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjj> jj> j‰j‰j‰uh1j‡h²hhjVh³jØh´Nubj)�”}”(hX^**Definition**:: struct regulator_state { int uV; int min_uV; int max_uV; unsigned int mode; int enabled; bool changeable; }; **Members** ``uV`` Default operating voltage during suspend, it can be adjusted among . ``min_uV`` Minimum suspend voltage may be set. ``max_uV`` Maximum suspend voltage may be set. ``mode`` Operating mode during suspend. ``enabled`` operations during suspend. - DO_NOTHING_IN_SUSPEND - DISABLE_IN_SUSPEND - ENABLE_IN_SUSPEND ``changeable`` Is this state can be switched between enabled/disabled,”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjJ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjF ubhŒ:”…”�”}”(hjF h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KGhjB ubj:)�”}”(hŒ„struct regulator_state { int uV; int min_uV; int max_uV; unsigned int mode; int enabled; bool changeable; };”h]”hŒ„struct regulator_state { int uV; int min_uV; int max_uV; unsigned int mode; int enabled; bool changeable; };”…”�”}”hjc sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KIhjB ubj()�”}”(hŒ **Members**”h]”j)�”}”(hjt h]”hŒMembers”…”�”}”(hjv h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjr ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KRhjB ubjc)�”}”(hhh]”(jh)�”}”(hŒ\``uV`` Default operating voltage during suspend, it can be adjusted among . ”h]”(jn)�”}”(hŒ``uV``”h]”j­)�”}”(hj“ h]”hŒuV”…”�”}”(hj• h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj‘ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KKhj� ubjˆ)�”}”(hhh]”j()�”}”(hŒTDefault operating voltage during suspend, it can be adjusted among .”h]”hŒTDefault operating voltage during suspend, it can be adjusted among .”…”�”}”(hj¬ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KJhj© ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj� ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¨ h´KKhjŠ ubjh)�”}”(hŒ/``min_uV`` Minimum suspend voltage may be set. ”h]”(jn)�”}”(hŒ ``min_uV``”h]”j­)�”}”(hjÍ h]”hŒmin_uV”…”�”}”(hjÏ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjË ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KLhjÇ ubjˆ)�”}”(hhh]”j()�”}”(hŒ#Minimum suspend voltage may be set.”h]”hŒ#Minimum suspend voltage may be set.”…”�”}”(hjæ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jâ h´KLhjã ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÇ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jâ h´KLhjŠ ubjh)�”}”(hŒ/``max_uV`` Maximum suspend voltage may be set. ”h]”(jn)�”}”(hŒ ``max_uV``”h]”j­)�”}”(hj h]”hŒmax_uV”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KMhj ubjˆ)�”}”(hhh]”j()�”}”(hŒ#Maximum suspend voltage may be set.”h]”hŒ#Maximum suspend voltage may be set.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j h´KMhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j h´KMhjŠ ubjh)�”}”(hŒ(``mode`` Operating mode during suspend. ”h]”(jn)�”}”(hŒ``mode``”h]”j­)�”}”(hj? h]”hŒmode”…”�”}”(hjA h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj= ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KNhj9 ubjˆ)�”}”(hhh]”j()�”}”(hŒOperating mode during suspend.”h]”hŒOperating mode during suspend.”…”�”}”(hjX h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jT h´KNhjU ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj9 ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jT h´KNhjŠ ubjh)�”}”(hŒh``enabled`` operations during suspend. - DO_NOTHING_IN_SUSPEND - DISABLE_IN_SUSPEND - ENABLE_IN_SUSPEND ”h]”(jn)�”}”(hŒ ``enabled``”h]”j­)�”}”(hjx h]”hŒenabled”…”�”}”(hjz h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjv ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KRhjr ubjˆ)�”}”(hhh]”j()�”}”(hŒ[operations during suspend. - DO_NOTHING_IN_SUSPEND - DISABLE_IN_SUSPEND - ENABLE_IN_SUSPEND”h]”hŒ[operations during suspend. - DO_NOTHING_IN_SUSPEND - DISABLE_IN_SUSPEND - ENABLE_IN_SUSPEND”…”�”}”(hj‘ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KOhjŽ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjr ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j� h´KRhjŠ ubjh)�”}”(hŒF``changeable`` Is this state can be switched between enabled/disabled,”h]”(jn)�”}”(hŒ``changeable``”h]”j­)�”}”(hj² h]”hŒ changeable”…”�”}”(hj´ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj° ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KRhj¬ ubjˆ)�”}”(hhh]”j()�”}”(hŒ7Is this state can be switched between enabled/disabled,”h]”hŒ7Is this state can be switched between enabled/disabled,”…”�”}”(hjË h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KShjÈ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¬ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÇ h´KRhjŠ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjB ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jØh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hjõ h]”hŒ Description”…”�”}”(hj÷ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjó ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KVhjVh²hubj()�”}”(hŒ”This describes a regulators state during a system wide low power state. One of enabled or disabled must be set for the configuration to be applied.”h]”hŒ”This describes a regulators state during a system wide low power state. One of enabled or disabled must be set for the configuration to be applied.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KDhjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ!regulation_constraints (C struct)”Œc.regulation_constraints”hNt”auh1juhjVh²hh³jØh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulation_constraints”h]”j“)�”}”(hŒstruct regulation_constraints”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj3 h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj/ h²hh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KKubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjA h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj/ h²hh³j@ h´KKubj¼)�”}”(hŒregulation_constraints”h]”jÂ)�”}”(hj- h]”hŒregulation_constraints”…”�”}”(hjS h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjO ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj/ h²hh³j@ h´KKubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj+ h²hh³j@ h´KKubah}”(h]”j& ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j@ h´KKhj( h²hubjî)�”}”(hhh]”j()�”}”(hŒ regulator operating constraints.”h]”hŒ regulator operating constraints.”…”�”}”(hju h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kfhjr h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj( h²hh³j@ h´KKubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjj� jj� j‰j‰j‰uh1j‡h²hhjVh³jØh´Nubj)�”}”(hXè**Definition**:: struct regulation_constraints { const char *name; int min_uV; int max_uV; int uV_offset; int min_uA; int max_uA; int ilim_uA; int pw_budget_mW; int system_load; u32 *max_spread; int max_uV_step; unsigned int valid_modes_mask; unsigned int valid_ops_mask; int input_uV; struct regulator_state state_disk; struct regulator_state state_mem; struct regulator_state state_standby; struct notification_limit over_curr_limits; struct notification_limit over_voltage_limits; struct notification_limit under_voltage_limits; struct notification_limit temp_limits; suspend_state_t initial_state; unsigned int initial_mode; unsigned int ramp_delay; unsigned int settling_time; unsigned int settling_time_up; unsigned int settling_time_down; unsigned int enable_time; unsigned int uv_less_critical_window_ms; unsigned int active_discharge; unsigned always_on:1; unsigned boot_on:1; unsigned apply_uV:1; unsigned ramp_disable:1; unsigned soft_start:1; unsigned pull_down:1; unsigned system_critical:1; unsigned over_current_protection:1; unsigned over_current_detection:1; unsigned over_voltage_detection:1; unsigned under_voltage_detection:1; unsigned over_temp_detection:1; }; **Members** ``name`` Descriptive name for the constraints, used for display purposes. ``min_uV`` Smallest voltage consumers may set. ``max_uV`` Largest voltage consumers may set. ``uV_offset`` Offset applied to voltages from consumer to compensate for voltage drops. ``min_uA`` Smallest current consumers may set. ``max_uA`` Largest current consumers may set. ``ilim_uA`` Maximum input current. ``pw_budget_mW`` Power budget for the regulator in mW. ``system_load`` Load that isn't captured by any consumer requests. ``max_spread`` Max possible spread between coupled regulators ``max_uV_step`` Max possible step change in voltage ``valid_modes_mask`` Mask of modes which may be configured by consumers. ``valid_ops_mask`` Operations which may be performed by consumers. ``input_uV`` Input voltage for regulator when supplied by another regulator. ``state_disk`` State for regulator when system is suspended in disk mode. ``state_mem`` State for regulator when system is suspended in mem mode. ``state_standby`` State for regulator when system is suspended in standby mode. ``over_curr_limits`` Limits for acting on over current. ``over_voltage_limits`` Limits for acting on over voltage. ``under_voltage_limits`` Limits for acting on under voltage. ``temp_limits`` Limits for acting on over temperature. ``initial_state`` Suspend state to set by default. ``initial_mode`` Mode to set at startup. ``ramp_delay`` Time to settle down after voltage change (unit: uV/us) ``settling_time`` Time to settle down after voltage change when voltage change is non-linear (unit: microseconds). ``settling_time_up`` Time to settle down after voltage increase when voltage change is non-linear (unit: microseconds). ``settling_time_down`` Time to settle down after voltage decrease when voltage change is non-linear (unit: microseconds). ``enable_time`` Turn-on time of the rails (unit: microseconds) ``uv_less_critical_window_ms`` Specifies the time window (in milliseconds) following a critical under-voltage (UV) event during which less critical actions can be safely carried out by the system (for example logging). After this time window more critical actions should be done (for example prevent HW damage). ``active_discharge`` Enable/disable active discharge. The enum regulator_active_discharge values are used for initialisation. ``always_on`` Set if the regulator should never be disabled. ``boot_on`` Set if the regulator is enabled when the system is initially started. If the regulator is not enabled by the hardware or bootloader then it will be enabled when the constraints are applied. ``apply_uV`` Apply the voltage constraint when initialising. ``ramp_disable`` Disable ramp delay when initialising or when setting voltage. ``soft_start`` Enable soft start so that voltage ramps slowly. ``pull_down`` Enable pull down when regulator is disabled. ``system_critical`` Set if the regulator is critical to system stability or functionality. ``over_current_protection`` Auto disable on over current event. ``over_current_detection`` Configure over current limits. ``over_voltage_detection`` Configure over voltage limits. ``under_voltage_detection`` Configure under voltage limits. ``over_temp_detection`` Configure over temperature limits.”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj™ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj• ubhŒ:”…”�”}”(hj• h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kjhj‘ ubj:)�”}”(hX4struct regulation_constraints { const char *name; int min_uV; int max_uV; int uV_offset; int min_uA; int max_uA; int ilim_uA; int pw_budget_mW; int system_load; u32 *max_spread; int max_uV_step; unsigned int valid_modes_mask; unsigned int valid_ops_mask; int input_uV; struct regulator_state state_disk; struct regulator_state state_mem; struct regulator_state state_standby; struct notification_limit over_curr_limits; struct notification_limit over_voltage_limits; struct notification_limit under_voltage_limits; struct notification_limit temp_limits; suspend_state_t initial_state; unsigned int initial_mode; unsigned int ramp_delay; unsigned int settling_time; unsigned int settling_time_up; unsigned int settling_time_down; unsigned int enable_time; unsigned int uv_less_critical_window_ms; unsigned int active_discharge; unsigned always_on:1; unsigned boot_on:1; unsigned apply_uV:1; unsigned ramp_disable:1; unsigned soft_start:1; unsigned pull_down:1; unsigned system_critical:1; unsigned over_current_protection:1; unsigned over_current_detection:1; unsigned over_voltage_detection:1; unsigned under_voltage_detection:1; unsigned over_temp_detection:1; };”h]”hX4struct regulation_constraints { const char *name; int min_uV; int max_uV; int uV_offset; int min_uA; int max_uA; int ilim_uA; int pw_budget_mW; int system_load; u32 *max_spread; int max_uV_step; unsigned int valid_modes_mask; unsigned int valid_ops_mask; int input_uV; struct regulator_state state_disk; struct regulator_state state_mem; struct regulator_state state_standby; struct notification_limit over_curr_limits; struct notification_limit over_voltage_limits; struct notification_limit under_voltage_limits; struct notification_limit temp_limits; suspend_state_t initial_state; unsigned int initial_mode; unsigned int ramp_delay; unsigned int settling_time; unsigned int settling_time_up; unsigned int settling_time_down; unsigned int enable_time; unsigned int uv_less_critical_window_ms; unsigned int active_discharge; unsigned always_on:1; unsigned boot_on:1; unsigned apply_uV:1; unsigned ramp_disable:1; unsigned soft_start:1; unsigned pull_down:1; unsigned system_critical:1; unsigned over_current_protection:1; unsigned over_current_detection:1; unsigned over_voltage_detection:1; unsigned under_voltage_detection:1; unsigned over_temp_detection:1; };”…”�”}”hj² sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Klhj‘ ubj()�”}”(hŒ **Members**”h]”j)�”}”(hjà h]”hŒMembers”…”�”}”(hjÅ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÁ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K™hj‘ ubjc)�”}”(hhh]”(jh)�”}”(hŒJ``name`` Descriptive name for the constraints, used for display purposes. ”h]”(jn)�”}”(hŒ``name``”h]”j­)�”}”(hjâ h]”hŒname”…”�”}”(hjä h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjà ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KkhjÜ ubjˆ)�”}”(hhh]”j()�”}”(hŒ@Descriptive name for the constraints, used for display purposes.”h]”hŒ@Descriptive name for the constraints, used for display purposes.”…”�”}”(hjû h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j÷ h´Kkhjø ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÜ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j÷ h´KkhjÙ ubjh)�”}”(hŒ/``min_uV`` Smallest voltage consumers may set. ”h]”(jn)�”}”(hŒ ``min_uV``”h]”j­)�”}”(hj h]”hŒmin_uV”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kmhj ubjˆ)�”}”(hhh]”j()�”}”(hŒ#Smallest voltage consumers may set.”h]”hŒ#Smallest voltage consumers may set.”…”�”}”(hj4 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j0 h´Kmhj1 ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j0 h´KmhjÙ ubjh)�”}”(hŒ.``max_uV`` Largest voltage consumers may set. ”h]”(jn)�”}”(hŒ ``max_uV``”h]”j­)�”}”(hjT h]”hŒmax_uV”…”�”}”(hjV h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjR ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KnhjN ubjˆ)�”}”(hhh]”j()�”}”(hŒ"Largest voltage consumers may set.”h]”hŒ"Largest voltage consumers may set.”…”�”}”(hjm h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³ji h´Knhjj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjN ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³ji h´KnhjÙ ubjh)�”}”(hŒX``uV_offset`` Offset applied to voltages from consumer to compensate for voltage drops. ”h]”(jn)�”}”(hŒ ``uV_offset``”h]”j­)�”}”(hj� h]”hŒ uV_offset”…”�”}”(hj� h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj‹ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kphj‡ ubjˆ)�”}”(hhh]”j()�”}”(hŒIOffset applied to voltages from consumer to compensate for voltage drops.”h]”hŒIOffset applied to voltages from consumer to compensate for voltage drops.”…”�”}”(hj¦ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kohj£ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj‡ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¢ h´KphjÙ ubjh)�”}”(hŒ/``min_uA`` Smallest current consumers may set. ”h]”(jn)�”}”(hŒ ``min_uA``”h]”j­)�”}”(hjÇ h]”hŒmin_uA”…”�”}”(hjÉ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÅ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KrhjÁ ubjˆ)�”}”(hhh]”j()�”}”(hŒ#Smallest current consumers may set.”h]”hŒ#Smallest current consumers may set.”…”�”}”(hjà h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÜ h´KrhjÝ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÁ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÜ h´KrhjÙ ubjh)�”}”(hŒ.``max_uA`` Largest current consumers may set. ”h]”(jn)�”}”(hŒ ``max_uA``”h]”j­)�”}”(hj h]”hŒmax_uA”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjþ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kshjú ubjˆ)�”}”(hhh]”j()�”}”(hŒ"Largest current consumers may set.”h]”hŒ"Largest current consumers may set.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j h´Kshj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjú ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j h´KshjÙ ubjh)�”}”(hŒ#``ilim_uA`` Maximum input current. ”h]”(jn)�”}”(hŒ ``ilim_uA``”h]”j­)�”}”(hj9 h]”hŒilim_uA”…”�”}”(hj; h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj7 ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kthj3 ubjˆ)�”}”(hhh]”j()�”}”(hŒMaximum input current.”h]”hŒMaximum input current.”…”�”}”(hjR h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jN h´KthjO ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj3 ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jN h´KthjÙ ubjh)�”}”(hŒ7``pw_budget_mW`` Power budget for the regulator in mW. ”h]”(jn)�”}”(hŒ``pw_budget_mW``”h]”j­)�”}”(hjr h]”hŒ pw_budget_mW”…”�”}”(hjt h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjp ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kuhjl ubjˆ)�”}”(hhh]”j()�”}”(hŒ%Power budget for the regulator in mW.”h]”hŒ%Power budget for the regulator in mW.”…”�”}”(hj‹ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j‡ h´Kuhjˆ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjl ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j‡ h´KuhjÙ ubjh)�”}”(hŒC``system_load`` Load that isn't captured by any consumer requests. ”h]”(jn)�”}”(hŒ``system_load``”h]”j­)�”}”(hj« h]”hŒ system_load”…”�”}”(hj­ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj© ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kvhj¥ ubjˆ)�”}”(hhh]”j()�”}”(hŒ2Load that isn't captured by any consumer requests.”h]”hŒ4Load that isn’t captured by any consumer requests.”…”�”}”(hjÄ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÀ h´KvhjÁ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¥ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÀ h´KvhjÙ ubjh)�”}”(hŒ>``max_spread`` Max possible spread between coupled regulators ”h]”(jn)�”}”(hŒ``max_spread``”h]”j­)�”}”(hjä h]”hŒ max_spread”…”�”}”(hjæ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjâ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K}hjÞ ubjˆ)�”}”(hhh]”j()�”}”(hŒ.Max possible spread between coupled regulators”h]”hŒ.Max possible spread between coupled regulators”…”�”}”(hjý h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jù h´K}hjú ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÞ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jù h´K}hjÙ ubjh)�”}”(hŒ4``max_uV_step`` Max possible step change in voltage ”h]”(jn)�”}”(hŒ``max_uV_step``”h]”j­)�”}”(hjh]”hŒ max_uV_step”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K~hjubjˆ)�”}”(hhh]”j()�”}”(hŒ#Max possible step change in voltage”h]”hŒ#Max possible step change in voltage”…”�”}”(hj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j2h´K~hj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j2h´K~hjÙ ubjh)�”}”(hŒI``valid_modes_mask`` Mask of modes which may be configured by consumers. ”h]”(jn)�”}”(hŒ``valid_modes_mask``”h]”j­)�”}”(hjVh]”hŒvalid_modes_mask”…”�”}”(hjXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjTubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KhjPubjˆ)�”}”(hhh]”j()�”}”(hŒ3Mask of modes which may be configured by consumers.”h]”hŒ3Mask of modes which may be configured by consumers.”…”�”}”(hjoh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jkh´Khjlubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjPubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jkh´KhjÙ ubjh)�”}”(hŒC``valid_ops_mask`` Operations which may be performed by consumers. ”h]”(jn)�”}”(hŒ``valid_ops_mask``”h]”j­)�”}”(hj�h]”hŒvalid_ops_mask”…”�”}”(hj‘h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K€hj‰ubjˆ)�”}”(hhh]”j()�”}”(hŒ/Operations which may be performed by consumers.”h]”hŒ/Operations which may be performed by consumers.”…”�”}”(hj¨h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j¤h´K€hj¥ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj‰ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¤h´K€hjÙ ubjh)�”}”(hŒM``input_uV`` Input voltage for regulator when supplied by another regulator. ”h]”(jn)�”}”(hŒ ``input_uV``”h]”j­)�”}”(hjÈh]”hŒinput_uV”…”�”}”(hjÊh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÆubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K”hjÂubjˆ)�”}”(hhh]”j()�”}”(hŒ?Input voltage for regulator when supplied by another regulator.”h]”hŒ?Input voltage for regulator when supplied by another regulator.”…”�”}”(hjáh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÝh´K”hjÞubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÂubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÝh´K”hjÙ ubjh)�”}”(hŒJ``state_disk`` State for regulator when system is suspended in disk mode. ”h]”(jn)�”}”(hŒ``state_disk``”h]”j­)�”}”(hjh]”hŒ state_disk”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÿubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K–hjûubjˆ)�”}”(hhh]”j()�”}”(hŒ:State for regulator when system is suspended in disk mode.”h]”hŒ:State for regulator when system is suspended in disk mode.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jh´K–hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjûubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jh´K–hjÙ ubjh)�”}”(hŒH``state_mem`` State for regulator when system is suspended in mem mode. ”h]”(jn)�”}”(hŒ ``state_mem``”h]”j­)�”}”(hj:h]”hŒ state_mem”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K—hj4ubjˆ)�”}”(hhh]”j()�”}”(hŒ9State for regulator when system is suspended in mem mode.”h]”hŒ9State for regulator when system is suspended in mem mode.”…”�”}”(hjSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jOh´K—hjPubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jOh´K—hjÙ ubjh)�”}”(hŒP``state_standby`` State for regulator when system is suspended in standby mode. ”h]”(jn)�”}”(hŒ``state_standby``”h]”j­)�”}”(hjsh]”hŒ state_standby”…”�”}”(hjuh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjqubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”•h´K™hjmubjˆ)�”}”(hhh]”j()�”}”(hŒ=State for regulator when system is suspended in standby mode.”h]”hŒ=State for regulator when system is suspended in standby mode.”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K˜hj‰ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjmubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jˆh´K™hjÙ ubjh)�”}”(hŒ8``over_curr_limits`` Limits for acting on over current. ”h]”(jn)�”}”(hŒ``over_curr_limits``”h]”j­)�”}”(hj­h]”hŒover_curr_limits”…”�”}”(hj¯h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj«ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kxhj§ubjˆ)�”}”(hhh]”j()�”}”(hŒ"Limits for acting on over current.”h]”hŒ"Limits for acting on over current.”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÂh´KxhjÃubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj§ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÂh´KxhjÙ ubjh)�”}”(hŒ;``over_voltage_limits`` Limits for acting on over voltage. ”h]”(jn)�”}”(hŒ``over_voltage_limits``”h]”j­)�”}”(hjæh]”hŒover_voltage_limits”…”�”}”(hjèh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjäubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kyhjàubjˆ)�”}”(hhh]”j()�”}”(hŒ"Limits for acting on over voltage.”h]”hŒ"Limits for acting on over voltage.”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jûh´Kyhjüubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjàubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jûh´KyhjÙ ubjh)�”}”(hŒ=``under_voltage_limits`` Limits for acting on under voltage. ”h]”(jn)�”}”(hŒ``under_voltage_limits``”h]”j­)�”}”(hjh]”hŒunder_voltage_limits”…”�”}”(hj!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kzhjubjˆ)�”}”(hhh]”j()�”}”(hŒ#Limits for acting on under voltage.”h]”hŒ#Limits for acting on under voltage.”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j4h´Kzhj5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j4h´KzhjÙ ubjh)�”}”(hŒ7``temp_limits`` Limits for acting on over temperature. ”h]”(jn)�”}”(hŒ``temp_limits``”h]”j­)�”}”(hjXh]”hŒ temp_limits”…”�”}”(hjZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjVubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K{hjRubjˆ)�”}”(hhh]”j()�”}”(hŒ&Limits for acting on over temperature.”h]”hŒ&Limits for acting on over temperature.”…”�”}”(hjqh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jmh´K{hjnubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjRubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jmh´K{hjÙ ubjh)�”}”(hŒ3``initial_state`` Suspend state to set by default. ”h]”(jn)�”}”(hŒ``initial_state``”h]”j­)�”}”(hj‘h]”hŒ initial_state”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kšhj‹ubjˆ)�”}”(hhh]”j()�”}”(hŒ Suspend state to set by default.”h]”hŒ Suspend state to set by default.”…”�”}”(hjªh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j¦h´Kšhj§ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj‹ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¦h´KšhjÙ ubjh)�”}”(hŒ)``initial_mode`` Mode to set at startup. ”h]”(jn)�”}”(hŒ``initial_mode``”h]”j­)�”}”(hjÊh]”hŒ initial_mode”…”�”}”(hjÌh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÈubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K›hjÄubjˆ)�”}”(hhh]”j()�”}”(hŒMode to set at startup.”h]”hŒMode to set at startup.”…”�”}”(hjãh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jßh´K›hjàubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÄubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jßh´K›hjÙ ubjh)�”}”(hŒF``ramp_delay`` Time to settle down after voltage change (unit: uV/us) ”h]”(jn)�”}”(hŒ``ramp_delay``”h]”j­)�”}”(hjh]”hŒ ramp_delay”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kœhjýubjˆ)�”}”(hhh]”j()�”}”(hŒ6Time to settle down after voltage change (unit: uV/us)”h]”hŒ6Time to settle down after voltage change (unit: uV/us)”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jh´Kœhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjýubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jh´KœhjÙ ubjh)�”}”(hŒs``settling_time`` Time to settle down after voltage change when voltage change is non-linear (unit: microseconds). ”h]”(jn)�”}”(hŒ``settling_time``”h]”j­)�”}”(hj<h]”hŒ settling_time”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kžhj6ubjˆ)�”}”(hhh]”j()�”}”(hŒ`Time to settle down after voltage change when voltage change is non-linear (unit: microseconds).”h]”hŒ`Time to settle down after voltage change when voltage change is non-linear (unit: microseconds).”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K�hjRubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jQh´KžhjÙ ubjh)�”}”(hŒx``settling_time_up`` Time to settle down after voltage increase when voltage change is non-linear (unit: microseconds). ”h]”(jn)�”}”(hŒ``settling_time_up``”h]”j­)�”}”(hjvh]”hŒsettling_time_up”…”�”}”(hjxh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjtubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K hjpubjˆ)�”}”(hhh]”j()�”}”(hŒbTime to settle down after voltage increase when voltage change is non-linear (unit: microseconds).”h]”hŒbTime to settle down after voltage increase when voltage change is non-linear (unit: microseconds).”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KŸhjŒubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjpubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j‹h´K hjÙ ubjh)�”}”(hŒz``settling_time_down`` Time to settle down after voltage decrease when voltage change is non-linear (unit: microseconds). ”h]”(jn)�”}”(hŒ``settling_time_down``”h]”j­)�”}”(hj°h]”hŒsettling_time_down”…”�”}”(hj²h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj®ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K¢hjªubjˆ)�”}”(hhh]”j()�”}”(hŒbTime to settle down after voltage decrease when voltage change is non-linear (unit: microseconds).”h]”hŒbTime to settle down after voltage decrease when voltage change is non-linear (unit: microseconds).”…”�”}”(hjÉh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K¡hjÆubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjªubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÅh´K¢hjÙ ubjh)�”}”(hŒ?``enable_time`` Turn-on time of the rails (unit: microseconds) ”h]”(jn)�”}”(hŒ``enable_time``”h]”j­)�”}”(hjêh]”hŒ enable_time”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjèubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K¦hjäubjˆ)�”}”(hhh]”j()�”}”(hŒ.Turn-on time of the rails (unit: microseconds)”h]”hŒ.Turn-on time of the rails (unit: microseconds)”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÿh´K¦hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjäubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÿh´K¦hjÙ ubjh)�”}”(hX8``uv_less_critical_window_ms`` Specifies the time window (in milliseconds) following a critical under-voltage (UV) event during which less critical actions can be safely carried out by the system (for example logging). After this time window more critical actions should be done (for example prevent HW damage). ”h]”(jn)�”}”(hŒ``uv_less_critical_window_ms``”h]”j­)�”}”(hj#h]”hŒuv_less_critical_window_ms”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K­hjubjˆ)�”}”(hhh]”j()�”}”(hXSpecifies the time window (in milliseconds) following a critical under-voltage (UV) event during which less critical actions can be safely carried out by the system (for example logging). After this time window more critical actions should be done (for example prevent HW damage).”h]”hXSpecifies the time window (in milliseconds) following a critical under-voltage (UV) event during which less critical actions can be safely carried out by the system (for example logging). After this time window more critical actions should be done (for example prevent HW damage).”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K§hj9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j8h´K­hjÙ ubjh)�”}”(hŒ~``active_discharge`` Enable/disable active discharge. The enum regulator_active_discharge values are used for initialisation. ”h]”(jn)�”}”(hŒ``active_discharge``”h]”j­)�”}”(hj]h]”hŒactive_discharge”…”�”}”(hj_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K¥hjWubjˆ)�”}”(hhh]”j()�”}”(hŒhEnable/disable active discharge. The enum regulator_active_discharge values are used for initialisation.”h]”hŒhEnable/disable active discharge. The enum regulator_active_discharge values are used for initialisation.”…”�”}”(hjvh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K£hjsubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjWubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jrh´K¥hjÙ ubjh)�”}”(hŒ=``always_on`` Set if the regulator should never be disabled. ”h]”(jn)�”}”(hŒ ``always_on``”h]”j­)�”}”(hj—h]”hŒ always_on”…”�”}”(hj™h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj•ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K‚hj‘ubjˆ)�”}”(hhh]”j()�”}”(hŒ.Set if the regulator should never be disabled.”h]”hŒ.Set if the regulator should never be disabled.”…”�”}”(hj°h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j¬h´K‚hj­ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj‘ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¬h´K‚hjÙ ubjh)�”}”(hŒË``boot_on`` Set if the regulator is enabled when the system is initially started. If the regulator is not enabled by the hardware or bootloader then it will be enabled when the constraints are applied. ”h]”(jn)�”}”(hŒ ``boot_on``”h]”j­)�”}”(hjÐh]”hŒboot_on”…”�”}”(hjÒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÎubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K†hjÊubjˆ)�”}”(hhh]”j()�”}”(hŒ¾Set if the regulator is enabled when the system is initially started. If the regulator is not enabled by the hardware or bootloader then it will be enabled when the constraints are applied.”h]”hŒ¾Set if the regulator is enabled when the system is initially started. If the regulator is not enabled by the hardware or bootloader then it will be enabled when the constraints are applied.”…”�”}”(hjéh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kƒhjæubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÊubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jåh´K†hjÙ ubjh)�”}”(hŒ=``apply_uV`` Apply the voltage constraint when initialising. ”h]”(jn)�”}”(hŒ ``apply_uV``”h]”j­)�”}”(hj h]”hŒapply_uV”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K‡hjubjˆ)�”}”(hhh]”j()�”}”(hŒ/Apply the voltage constraint when initialising.”h]”hŒ/Apply the voltage constraint when initialising.”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jh´K‡hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jh´K‡hjÙ ubjh)�”}”(hŒO``ramp_disable`` Disable ramp delay when initialising or when setting voltage. ”h]”(jn)�”}”(hŒ``ramp_disable``”h]”j­)�”}”(hjCh]”hŒ ramp_disable”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjAubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kˆhj=ubjˆ)�”}”(hhh]”j()�”}”(hŒ=Disable ramp delay when initialising or when setting voltage.”h]”hŒ=Disable ramp delay when initialising or when setting voltage.”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jXh´KˆhjYubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jXh´KˆhjÙ ubjh)�”}”(hŒ?``soft_start`` Enable soft start so that voltage ramps slowly. ”h]”(jn)�”}”(hŒ``soft_start``”h]”j­)�”}”(hj|h]”hŒ soft_start”…”�”}”(hj~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjzubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K‰hjvubjˆ)�”}”(hhh]”j()�”}”(hŒ/Enable soft start so that voltage ramps slowly.”h]”hŒ/Enable soft start so that voltage ramps slowly.”…”�”}”(hj•h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j‘h´K‰hj’ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjvubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j‘h´K‰hjÙ ubjh)�”}”(hŒ;``pull_down`` Enable pull down when regulator is disabled. ”h]”(jn)�”}”(hŒ ``pull_down``”h]”j­)�”}”(hjµh]”hŒ pull_down”…”�”}”(hj·h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj³ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KŠhj¯ubjˆ)�”}”(hhh]”j()�”}”(hŒ,Enable pull down when regulator is disabled.”h]”hŒ,Enable pull down when regulator is disabled.”…”�”}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÊh´KŠhjËubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¯ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÊh´KŠhjÙ ubjh)�”}”(hŒ[``system_critical`` Set if the regulator is critical to system stability or functionality. ”h]”(jn)�”}”(hŒ``system_critical``”h]”j­)�”}”(hjîh]”hŒsystem_critical”…”�”}”(hjðh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjìubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KŒhjèubjˆ)�”}”(hhh]”j()�”}”(hŒFSet if the regulator is critical to system stability or functionality.”h]”hŒFSet if the regulator is critical to system stability or functionality.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K‹hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjèubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jh´KŒhjÙ ubjh)�”}”(hŒ@``over_current_protection`` Auto disable on over current event. ”h]”(jn)�”}”(hŒ``over_current_protection``”h]”j­)�”}”(hj(h]”hŒover_current_protection”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K�hj"ubjˆ)�”}”(hhh]”j()�”}”(hŒ#Auto disable on over current event.”h]”hŒ#Auto disable on over current event.”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j=h´K�hj>ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj"ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j=h´K�hjÙ ubjh)�”}”(hŒ:``over_current_detection`` Configure over current limits. ”h]”(jn)�”}”(hŒ``over_current_detection``”h]”j­)�”}”(hjah]”hŒover_current_detection”…”�”}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj_ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K�hj[ubjˆ)�”}”(hhh]”j()�”}”(hŒConfigure over current limits.”h]”hŒConfigure over current limits.”…”�”}”(hjzh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jvh´K�hjwubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj[ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jvh´K�hjÙ ubjh)�”}”(hŒ:``over_voltage_detection`` Configure over voltage limits. ”h]”(jn)�”}”(hŒ``over_voltage_detection``”h]”j­)�”}”(hjšh]”hŒover_voltage_detection”…”�”}”(hjœh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj˜ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K�hj”ubjˆ)�”}”(hhh]”j()�”}”(hŒConfigure over voltage limits.”h]”hŒConfigure over voltage limits.”…”�”}”(hj³h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j¯h´K�hj°ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj”ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¯h´K�hjÙ ubjh)�”}”(hŒ<``under_voltage_detection`` Configure under voltage limits. ”h]”(jn)�”}”(hŒ``under_voltage_detection``”h]”j­)�”}”(hjÓh]”hŒunder_voltage_detection”…”�”}”(hjÕh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÑubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K‘hjÍubjˆ)�”}”(hhh]”j()�”}”(hŒConfigure under voltage limits.”h]”hŒConfigure under voltage limits.”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jèh´K‘hjéubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÍubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jèh´K‘hjÙ ubjh)�”}”(hŒ:``over_temp_detection`` Configure over temperature limits.”h]”(jn)�”}”(hŒ``over_temp_detection``”h]”j­)�”}”(hj h]”hŒover_temp_detection”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K‘hjubjˆ)�”}”(hhh]”j()�”}”(hŒ"Configure over temperature limits.”h]”hŒ"Configure over temperature limits.”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K’hj"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j!h´K‘hjÙ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj‘ ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jØh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hjOh]”hŒ Description”…”�”}”(hjQh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjMubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´K•hjVh²hubj()�”}”(hŒGThis struct describes regulator and board/machine specific constraints.”h]”hŒGThis struct describes regulator and board/machine specific constraints.”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KghjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ$regulator_consumer_supply (C struct)”Œc.regulator_consumer_supply”hNt”auh1juhjVh²hh³jØh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_consumer_supply”h]”j“)�”}”(hŒ struct regulator_consumer_supply”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj‰h²hh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Klubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj›h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj‰h²hh³jšh´Klubj¼)�”}”(hŒregulator_consumer_supply”h]”jÂ)�”}”(hj‡h]”hŒregulator_consumer_supply”…”�”}”(hj­h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj©ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj‰h²hh³jšh´Klubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj…h²hh³jšh´Klubah}”(h]”j€ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jšh´Klhj‚h²hubjî)�”}”(hhh]”j()�”}”(hŒsupply -> device mapping”h]”hŒsupply -> device mapping”…”�”}”(hjÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KõhjÌh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj‚h²hh³jšh´Klubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjjçjjçj‰j‰j‰uh1j‡h²hhjVh³jØh´Nubj)�”}”(hŒØ**Definition**:: struct regulator_consumer_supply { const char *dev_name; const char *supply; }; **Members** ``dev_name`` Result of dev_name() for the consumer. ``supply`` Name for the supply.”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjóh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjïubhŒ:”…”�”}”(hjïh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kùhjëubj:)�”}”(hŒWstruct regulator_consumer_supply { const char *dev_name; const char *supply; };”h]”hŒWstruct regulator_consumer_supply { const char *dev_name; const char *supply; };”…”�”}”hj sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kûhjëubj()�”}”(hŒ **Members**”h]”j)�”}”(hjh]”hŒMembers”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Mhjëubjc)�”}”(hhh]”(jh)�”}”(hŒ4``dev_name`` Result of dev_name() for the consumer. ”h]”(jn)�”}”(hŒ ``dev_name``”h]”j­)�”}”(hj<h]”hŒdev_name”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kûhj6ubjˆ)�”}”(hhh]”j()�”}”(hŒ&Result of dev_name() for the consumer.”h]”hŒ&Result of dev_name() for the consumer.”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jQh´KûhjRubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jQh´Kûhj3ubjh)�”}”(hŒ``supply`` Name for the supply.”h]”(jn)�”}”(hŒ ``supply``”h]”j­)�”}”(hjuh]”hŒsupply”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjsubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kûhjoubjˆ)�”}”(hhh]”j()�”}”(hŒName for the supply.”h]”hŒName for the supply.”…”�”}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Kühj‹ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjoubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jŠh´Kûhj3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjëubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jØh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hj¸h]”hŒ Description”…”�”}”(hjºh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¶ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KÿhjVh²hubj()�”}”(hŒ‚This maps a supply name to a device. Use of dev_name allows support for buses which make struct device available late such as I2C.”h]”hŒ‚This maps a supply name to a device. Use of dev_name allows support for buses which make struct device available late such as I2C.”…”�”}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´KöhjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_init_data (C struct)”Œc.regulator_init_data”hNt”auh1juhjVh²hh³jØh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_init_data”h]”j“)�”}”(hŒstruct regulator_init_data”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjöh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjòh²hh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Küubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjòh²hh³jh´Küubj¼)�”}”(hŒregulator_init_data”h]”jÂ)�”}”(hjðh]”hŒregulator_init_data”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjòh²hh³jh´Küubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjîh²hh³jh´Küubah}”(h]”jéah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jh´Kühjëh²hubjî)�”}”(hhh]”j()�”}”(hŒ'regulator platform initialisation data.”h]”hŒ'regulator platform initialisation data.”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´M hj5h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjëh²hh³jh´Küubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjjPjjPj‰j‰j‰uh1j‡h²hhjVh³jØh´Nubj)�”}”(hXÕ**Definition**:: struct regulator_init_data { const char *supply_regulator; struct regulation_constraints constraints; int num_consumer_supplies; struct regulator_consumer_supply *consumer_supplies; void *driver_data; }; **Members** ``supply_regulator`` Parent regulator. Specified using the regulator name as it appears in the name field in sysfs, which can be explicitly set using the constraints field 'name'. ``constraints`` Constraints. These must be specified for the regulator to be usable. ``num_consumer_supplies`` Number of consumer device supplies. ``consumer_supplies`` Consumer device supply configuration. ``driver_data`` Data passed to regulator_init.”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjXubhŒ:”…”�”}”(hjXh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´MhjTubj:)�”}”(hŒßstruct regulator_init_data { const char *supply_regulator; struct regulation_constraints constraints; int num_consumer_supplies; struct regulator_consumer_supply *consumer_supplies; void *driver_data; };”h]”hŒßstruct regulator_init_data { const char *supply_regulator; struct regulation_constraints constraints; int num_consumer_supplies; struct regulator_consumer_supply *consumer_supplies; void *driver_data; };”…”�”}”hjusbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´MhjTubj()�”}”(hŒ **Members**”h]”j)�”}”(hj†h]”hŒMembers”…”�”}”(hjˆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj„ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´MhjTubjc)�”}”(hhh]”(jh)�”}”(hŒµ``supply_regulator`` Parent regulator. Specified using the regulator name as it appears in the name field in sysfs, which can be explicitly set using the constraints field 'name'. ”h]”(jn)�”}”(hŒ``supply_regulator``”h]”j­)�”}”(hj¥h]”hŒsupply_regulator”…”�”}”(hj§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj£ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´MhjŸubjˆ)�”}”(hhh]”j()�”}”(hŒŸParent regulator. Specified using the regulator name as it appears in the name field in sysfs, which can be explicitly set using the constraints field 'name'.”h]”hŒ£Parent regulator. Specified using the regulator name as it appears in the name field in sysfs, which can be explicitly set using the constraints field ‘name’.”…”�”}”(hj¾h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Mhj»ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjŸubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jºh´Mhjœubjh)�”}”(hŒV``constraints`` Constraints. These must be specified for the regulator to be usable. ”h]”(jn)�”}”(hŒ``constraints``”h]”j­)�”}”(hjßh]”hŒ constraints”…”�”}”(hjáh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÝubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´MhjÙubjˆ)�”}”(hhh]”j()�”}”(hŒEConstraints. These must be specified for the regulator to be usable.”h]”hŒEConstraints. These must be specified for the regulator to be usable.”…”�”}”(hjøh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Mhjõubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÙubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jôh´Mhjœubjh)�”}”(hŒ>``num_consumer_supplies`` Number of consumer device supplies. ”h]”(jn)�”}”(hŒ``num_consumer_supplies``”h]”j­)�”}”(hjh]”hŒnum_consumer_supplies”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Mhjubjˆ)�”}”(hhh]”j()�”}”(hŒ#Number of consumer device supplies.”h]”hŒ#Number of consumer device supplies.”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j.h´Mhj/ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j.h´Mhjœubjh)�”}”(hŒ<``consumer_supplies`` Consumer device supply configuration. ”h]”(jn)�”}”(hŒ``consumer_supplies``”h]”j­)�”}”(hjRh]”hŒconsumer_supplies”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjPubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´MhjLubjˆ)�”}”(hhh]”j()�”}”(hŒ%Consumer device supply configuration.”h]”hŒ%Consumer device supply configuration.”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jgh´Mhjhubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjLubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jgh´Mhjœubjh)�”}”(hŒ.``driver_data`` Data passed to regulator_init.”h]”(jn)�”}”(hŒ``driver_data``”h]”j­)�”}”(hj‹h]”hŒ driver_data”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj‰ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Mhj…ubjˆ)�”}”(hhh]”j()�”}”(hŒData passed to regulator_init.”h]”hŒData passed to regulator_init.”…”�”}”(hj¤h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´Mhj¡ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj…ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j h´Mhjœubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjTubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jØh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hjÎh]”hŒ Description”…”�”}”(hjÐh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÌubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´MhjVh²hubj()�”}”(hŒ>Initialisation constraints, our supply and consumers supplies.”h]”hŒ>Initialisation constraints, our supply and consumers supplies.”…”�”}”(hjäh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œg/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:163: ./include/linux/regulator/machine.h”h´M hjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_ops (C struct)”Œc.regulator_ops”hNt”auh1juhjVh²hh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ regulator_ops”h]”j“)�”}”(hŒstruct regulator_ops”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj h²hh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj h²hh³jh´Kubj¼)�”}”(hŒ regulator_ops”h]”jÂ)�”}”(hjh]”hŒ regulator_ops”…”�”}”(hj-h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj)ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj h²hh³jh´Kubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjh²hh³jh´Kubah}”(h]”jÿah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jh´Khjh²hubjî)�”}”(hhh]”j()�”}”(hŒregulator operations.”h]”hŒregulator operations.”…”�”}”(hjOh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K>hjLh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjh²hh³jh´Kubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjjgjjgj‰j‰j‰uh1j‡h²hhjVh³jh´Nubj)�”}”(hXˆ**Definition**:: struct regulator_ops { int (*list_voltage) (struct regulator_dev *, unsigned selector); int (*set_voltage) (struct regulator_dev *, int min_uV, int max_uV, unsigned *selector); int (*map_voltage)(struct regulator_dev *, int min_uV, int max_uV); int (*set_voltage_sel) (struct regulator_dev *, unsigned selector); int (*get_voltage) (struct regulator_dev *); int (*get_voltage_sel) (struct regulator_dev *); int (*set_current_limit) (struct regulator_dev *, int min_uA, int max_uA); int (*get_current_limit) (struct regulator_dev *); int (*set_input_current_limit) (struct regulator_dev *, int lim_uA); int (*set_over_current_protection)(struct regulator_dev *, int lim_uA, int severity, bool enable); int (*set_over_voltage_protection)(struct regulator_dev *, int lim_uV, int severity, bool enable); int (*set_under_voltage_protection)(struct regulator_dev *, int lim_uV, int severity, bool enable); int (*set_thermal_protection)(struct regulator_dev *, int lim, int severity, bool enable); int (*set_active_discharge)(struct regulator_dev *, bool enable); int (*enable) (struct regulator_dev *); int (*disable) (struct regulator_dev *); int (*is_enabled) (struct regulator_dev *); int (*set_mode) (struct regulator_dev *, unsigned int mode); unsigned int (*get_mode) (struct regulator_dev *); int (*get_error_flags)(struct regulator_dev *, unsigned int *flags); int (*enable_time) (struct regulator_dev *); int (*set_ramp_delay) (struct regulator_dev *, int ramp_delay); int (*set_voltage_time) (struct regulator_dev *, int old_uV, int new_uV); int (*set_voltage_time_sel) (struct regulator_dev *, unsigned int old_selector, unsigned int new_selector); int (*set_soft_start) (struct regulator_dev *); int (*get_status)(struct regulator_dev *); unsigned int (*get_optimum_mode) (struct regulator_dev *, int input_uV, int output_uV, int load_uA); int (*set_load)(struct regulator_dev *, int load_uA); int (*set_bypass)(struct regulator_dev *dev, bool enable); int (*get_bypass)(struct regulator_dev *dev, bool *enable); int (*set_suspend_voltage) (struct regulator_dev *, int uV); int (*set_suspend_enable) (struct regulator_dev *); int (*set_suspend_disable) (struct regulator_dev *); int (*set_suspend_mode) (struct regulator_dev *, unsigned int mode); int (*resume)(struct regulator_dev *rdev); int (*set_pull_down) (struct regulator_dev *); }; **Members** ``list_voltage`` Return one of the supported voltages, in microvolts; zero if the selector indicates a voltage that is unusable on this system; or negative errno. Selectors range from zero to one less than regulator_desc.n_voltages. Voltages may be reported in any order. ``set_voltage`` Set the voltage for the regulator within the range specified. The driver should select the voltage closest to min_uV. ``map_voltage`` Convert a voltage into a selector ``set_voltage_sel`` Set the voltage for the regulator using the specified selector. ``get_voltage`` Return the currently configured voltage for the regulator; return -ENOTRECOVERABLE if regulator can't be read at bootup and hasn't been set yet. ``get_voltage_sel`` Return the currently configured voltage selector for the regulator; return -ENOTRECOVERABLE if regulator can't be read at bootup and hasn't been set yet. ``set_current_limit`` Configure a limit for a current-limited regulator. The driver should select the current closest to max_uA. ``get_current_limit`` Get the configured limit for a current-limited regulator. ``set_input_current_limit`` Configure an input limit. ``set_over_current_protection`` Support enabling of and setting limits for over current situation detection. Detection can be configured for three levels of severity. ``set_over_voltage_protection`` Support enabling of and setting limits for over voltage situation detection. Detection can be configured for same severities as over current protection. Units of uV. ``set_under_voltage_protection`` Support enabling of and setting limits for under voltage situation detection. Detection can be configured for same severities as over current protection. Units of uV. ``set_thermal_protection`` Support enabling of and setting limits for over temperature situation detection.Detection can be configured for same severities as over current protection. Units of degree Kelvin. ``set_active_discharge`` Set active discharge enable/disable of regulators. ``enable`` Configure the regulator as enabled. ``disable`` Configure the regulator as disabled. ``is_enabled`` Return 1 if the regulator is enabled, 0 if not. May also return negative errno. ``set_mode`` Set the configured operating mode for the regulator. ``get_mode`` Get the configured operating mode for the regulator. ``get_error_flags`` Get the current error(s) for the regulator. ``enable_time`` Time taken for the regulator voltage output voltage to stabilise after being enabled, in microseconds. ``set_ramp_delay`` Set the ramp delay for the regulator. The driver should select ramp delay equal to or less than(closest) ramp_delay. ``set_voltage_time`` Time taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function receives the from and to voltage as input, it should return the worst case. ``set_voltage_time_sel`` Time taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function receives the from and to voltage selector as input, it should return the worst case. ``set_soft_start`` Enable soft start for the regulator. ``get_status`` Return actual (not as-configured) status of regulator, as a REGULATOR_STATUS value (or negative errno) ``get_optimum_mode`` Get the most efficient operating mode for the regulator when running with the specified parameters. ``set_load`` Set the load for the regulator. ``set_bypass`` Set the regulator in bypass mode. ``get_bypass`` Get the regulator bypass mode state. ``set_suspend_voltage`` Set the voltage for the regulator when the system is suspended. ``set_suspend_enable`` Mark the regulator as enabled when the system is suspended. ``set_suspend_disable`` Mark the regulator as disabled when the system is suspended. ``set_suspend_mode`` Set the operating mode for the regulator when the system is suspended. ``resume`` Resume operation of suspended regulator. ``set_pull_down`` Configure the regulator to pull down when the regulator is disabled.”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjoubhŒ:”…”�”}”(hjoh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KBhjkubj:)�”}”(hXº struct regulator_ops { int (*list_voltage) (struct regulator_dev *, unsigned selector); int (*set_voltage) (struct regulator_dev *, int min_uV, int max_uV, unsigned *selector); int (*map_voltage)(struct regulator_dev *, int min_uV, int max_uV); int (*set_voltage_sel) (struct regulator_dev *, unsigned selector); int (*get_voltage) (struct regulator_dev *); int (*get_voltage_sel) (struct regulator_dev *); int (*set_current_limit) (struct regulator_dev *, int min_uA, int max_uA); int (*get_current_limit) (struct regulator_dev *); int (*set_input_current_limit) (struct regulator_dev *, int lim_uA); int (*set_over_current_protection)(struct regulator_dev *, int lim_uA, int severity, bool enable); int (*set_over_voltage_protection)(struct regulator_dev *, int lim_uV, int severity, bool enable); int (*set_under_voltage_protection)(struct regulator_dev *, int lim_uV, int severity, bool enable); int (*set_thermal_protection)(struct regulator_dev *, int lim, int severity, bool enable); int (*set_active_discharge)(struct regulator_dev *, bool enable); int (*enable) (struct regulator_dev *); int (*disable) (struct regulator_dev *); int (*is_enabled) (struct regulator_dev *); int (*set_mode) (struct regulator_dev *, unsigned int mode); unsigned int (*get_mode) (struct regulator_dev *); int (*get_error_flags)(struct regulator_dev *, unsigned int *flags); int (*enable_time) (struct regulator_dev *); int (*set_ramp_delay) (struct regulator_dev *, int ramp_delay); int (*set_voltage_time) (struct regulator_dev *, int old_uV, int new_uV); int (*set_voltage_time_sel) (struct regulator_dev *, unsigned int old_selector, unsigned int new_selector); int (*set_soft_start) (struct regulator_dev *); int (*get_status)(struct regulator_dev *); unsigned int (*get_optimum_mode) (struct regulator_dev *, int input_uV, int output_uV, int load_uA); int (*set_load)(struct regulator_dev *, int load_uA); int (*set_bypass)(struct regulator_dev *dev, bool enable); int (*get_bypass)(struct regulator_dev *dev, bool *enable); int (*set_suspend_voltage) (struct regulator_dev *, int uV); int (*set_suspend_enable) (struct regulator_dev *); int (*set_suspend_disable) (struct regulator_dev *); int (*set_suspend_mode) (struct regulator_dev *, unsigned int mode); int (*resume)(struct regulator_dev *rdev); int (*set_pull_down) (struct regulator_dev *); };”h]”hXº struct regulator_ops { int (*list_voltage) (struct regulator_dev *, unsigned selector); int (*set_voltage) (struct regulator_dev *, int min_uV, int max_uV, unsigned *selector); int (*map_voltage)(struct regulator_dev *, int min_uV, int max_uV); int (*set_voltage_sel) (struct regulator_dev *, unsigned selector); int (*get_voltage) (struct regulator_dev *); int (*get_voltage_sel) (struct regulator_dev *); int (*set_current_limit) (struct regulator_dev *, int min_uA, int max_uA); int (*get_current_limit) (struct regulator_dev *); int (*set_input_current_limit) (struct regulator_dev *, int lim_uA); int (*set_over_current_protection)(struct regulator_dev *, int lim_uA, int severity, bool enable); int (*set_over_voltage_protection)(struct regulator_dev *, int lim_uV, int severity, bool enable); int (*set_under_voltage_protection)(struct regulator_dev *, int lim_uV, int severity, bool enable); int (*set_thermal_protection)(struct regulator_dev *, int lim, int severity, bool enable); int (*set_active_discharge)(struct regulator_dev *, bool enable); int (*enable) (struct regulator_dev *); int (*disable) (struct regulator_dev *); int (*is_enabled) (struct regulator_dev *); int (*set_mode) (struct regulator_dev *, unsigned int mode); unsigned int (*get_mode) (struct regulator_dev *); int (*get_error_flags)(struct regulator_dev *, unsigned int *flags); int (*enable_time) (struct regulator_dev *); int (*set_ramp_delay) (struct regulator_dev *, int ramp_delay); int (*set_voltage_time) (struct regulator_dev *, int old_uV, int new_uV); int (*set_voltage_time_sel) (struct regulator_dev *, unsigned int old_selector, unsigned int new_selector); int (*set_soft_start) (struct regulator_dev *); int (*get_status)(struct regulator_dev *); unsigned int (*get_optimum_mode) (struct regulator_dev *, int input_uV, int output_uV, int load_uA); int (*set_load)(struct regulator_dev *, int load_uA); int (*set_bypass)(struct regulator_dev *dev, bool enable); int (*get_bypass)(struct regulator_dev *dev, bool *enable); int (*set_suspend_voltage) (struct regulator_dev *, int uV); int (*set_suspend_enable) (struct regulator_dev *); int (*set_suspend_disable) (struct regulator_dev *); int (*set_suspend_mode) (struct regulator_dev *, unsigned int mode); int (*resume)(struct regulator_dev *rdev); int (*set_pull_down) (struct regulator_dev *); };”…”�”}”hjŒsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KDhjkubj()�”}”(hŒ **Members**”h]”j)�”}”(hj�h]”hŒMembers”…”�”}”(hjŸh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj›ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kkhjkubjc)�”}”(hhh]”(jh)�”}”(hX``list_voltage`` Return one of the supported voltages, in microvolts; zero if the selector indicates a voltage that is unusable on this system; or negative errno. Selectors range from zero to one less than regulator_desc.n_voltages. Voltages may be reported in any order. ”h]”(jn)�”}”(hŒ``list_voltage``”h]”j­)�”}”(hj¼h]”hŒ list_voltage”…”�”}”(hj¾h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjºubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KThj¶ubjˆ)�”}”(hhh]”j()�”}”(hXReturn one of the supported voltages, in microvolts; zero if the selector indicates a voltage that is unusable on this system; or negative errno. Selectors range from zero to one less than regulator_desc.n_voltages. Voltages may be reported in any order.”h]”hXReturn one of the supported voltages, in microvolts; zero if the selector indicates a voltage that is unusable on this system; or negative errno. Selectors range from zero to one less than regulator_desc.n_voltages. Voltages may be reported in any order.”…”�”}”(hjÕh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KQhjÒubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¶ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÑh´KThj³ubjh)�”}”(hŒ†``set_voltage`` Set the voltage for the regulator within the range specified. The driver should select the voltage closest to min_uV. ”h]”(jn)�”}”(hŒ``set_voltage``”h]”j­)�”}”(hjöh]”hŒ set_voltage”…”�”}”(hjøh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjôubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KGhjðubjˆ)�”}”(hhh]”j()�”}”(hŒuSet the voltage for the regulator within the range specified. The driver should select the voltage closest to min_uV.”h]”hŒuSet the voltage for the regulator within the range specified. The driver should select the voltage closest to min_uV.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KFhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjðubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j h´KGhj³ubjh)�”}”(hŒ2``map_voltage`` Convert a voltage into a selector ”h]”(jn)�”}”(hŒ``map_voltage``”h]”j­)�”}”(hj0h]”hŒ map_voltage”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KJhj*ubjˆ)�”}”(hhh]”j()�”}”(hŒ!Convert a voltage into a selector”h]”hŒ!Convert a voltage into a selector”…”�”}”(hjIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jEh´KJhjFubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jEh´KJhj³ubjh)�”}”(hŒT``set_voltage_sel`` Set the voltage for the regulator using the specified selector. ”h]”(jn)�”}”(hŒ``set_voltage_sel``”h]”j­)�”}”(hjih]”hŒset_voltage_sel”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjgubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KIhjcubjˆ)�”}”(hhh]”j()�”}”(hŒ?Set the voltage for the regulator using the specified selector.”h]”hŒ?Set the voltage for the regulator using the specified selector.”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KHhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjcubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j~h´KIhj³ubjh)�”}”(hŒ¡``get_voltage`` Return the currently configured voltage for the regulator; return -ENOTRECOVERABLE if regulator can't be read at bootup and hasn't been set yet. ”h]”(jn)�”}”(hŒ``get_voltage``”h]”j­)�”}”(hj£h]”hŒ get_voltage”…”�”}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¡ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KMhj�ubjˆ)�”}”(hhh]”j()�”}”(hŒ�Return the currently configured voltage for the regulator; return -ENOTRECOVERABLE if regulator can't be read at bootup and hasn't been set yet.”h]”hŒ”Return the currently configured voltage for the regulator; return -ENOTRECOVERABLE if regulator can’t be read at bootup and hasn’t been set yet.”…”�”}”(hj¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KKhj¹ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¸h´KMhj³ubjh)�”}”(hŒ®``get_voltage_sel`` Return the currently configured voltage selector for the regulator; return -ENOTRECOVERABLE if regulator can't be read at bootup and hasn't been set yet. ”h]”(jn)�”}”(hŒ``get_voltage_sel``”h]”j­)�”}”(hjÝh]”hŒget_voltage_sel”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÛubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KPhj×ubjˆ)�”}”(hhh]”j()�”}”(hŒ™Return the currently configured voltage selector for the regulator; return -ENOTRECOVERABLE if regulator can't be read at bootup and hasn't been set yet.”h]”hŒ�Return the currently configured voltage selector for the regulator; return -ENOTRECOVERABLE if regulator can’t be read at bootup and hasn’t been set yet.”…”�”}”(hjöh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KNhjóubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj×ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jòh´KPhj³ubjh)�”}”(hŒ�``set_current_limit`` Configure a limit for a current-limited regulator. The driver should select the current closest to max_uA. ”h]”(jn)�”}”(hŒ``set_current_limit``”h]”j­)�”}”(hjh]”hŒset_current_limit”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KWhjubjˆ)�”}”(hhh]”j()�”}”(hŒjConfigure a limit for a current-limited regulator. The driver should select the current closest to max_uA.”h]”hŒjConfigure a limit for a current-limited regulator. The driver should select the current closest to max_uA.”…”�”}”(hj0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KVhj-ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j,h´KWhj³ubjh)�”}”(hŒP``get_current_limit`` Get the configured limit for a current-limited regulator. ”h]”(jn)�”}”(hŒ``get_current_limit``”h]”j­)�”}”(hjQh]”hŒget_current_limit”…”�”}”(hjSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjOubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KXhjKubjˆ)�”}”(hhh]”j()�”}”(hŒ9Get the configured limit for a current-limited regulator.”h]”hŒ9Get the configured limit for a current-limited regulator.”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jfh´KXhjgubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjKubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jfh´KXhj³ubjh)�”}”(hŒ6``set_input_current_limit`` Configure an input limit. ”h]”(jn)�”}”(hŒ``set_input_current_limit``”h]”j­)�”}”(hjŠh]”hŒset_input_current_limit”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjˆubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KYhj„ubjˆ)�”}”(hhh]”j()�”}”(hŒConfigure an input limit.”h]”hŒConfigure an input limit.”…”�”}”(hj£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jŸh´KYhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj„ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jŸh´KYhj³ubjh)�”}”(hŒ§``set_over_current_protection`` Support enabling of and setting limits for over current situation detection. Detection can be configured for three levels of severity. ”h]”(jn)�”}”(hŒ``set_over_current_protection``”h]”j­)�”}”(hjÃh]”hŒset_over_current_protection”…”�”}”(hjÅh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÁubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K]hj½ubjˆ)�”}”(hhh]”j()�”}”(hŒ†Support enabling of and setting limits for over current situation detection. Detection can be configured for three levels of severity.”h]”hŒ†Support enabling of and setting limits for over current situation detection. Detection can be configured for three levels of severity.”…”�”}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K[hjÙubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj½ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jØh´K]hj³ubjh)�”}”(hŒÆ``set_over_voltage_protection`` Support enabling of and setting limits for over voltage situation detection. Detection can be configured for same severities as over current protection. Units of uV. ”h]”(jn)�”}”(hŒ``set_over_voltage_protection``”h]”j­)�”}”(hjýh]”hŒset_over_voltage_protection”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjûubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kmhj÷ubjˆ)�”}”(hhh]”j()�”}”(hŒ¥Support enabling of and setting limits for over voltage situation detection. Detection can be configured for same severities as over current protection. Units of uV.”h]”hŒ¥Support enabling of and setting limits for over voltage situation detection. Detection can be configured for same severities as over current protection. Units of uV.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kkhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj÷ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jh´Kmhj³ubjh)�”}”(hŒÈ``set_under_voltage_protection`` Support enabling of and setting limits for under voltage situation detection. Detection can be configured for same severities as over current protection. Units of uV. ”h]”(jn)�”}”(hŒ ``set_under_voltage_protection``”h]”j­)�”}”(hj7h]”hŒset_under_voltage_protection”…”�”}”(hj9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kphj1ubjˆ)�”}”(hhh]”j()�”}”(hŒ¦Support enabling of and setting limits for under voltage situation detection. Detection can be configured for same severities as over current protection. Units of uV.”h]”hŒ¦Support enabling of and setting limits for under voltage situation detection. Detection can be configured for same severities as over current protection. Units of uV.”…”�”}”(hjPh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KnhjMubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj1ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jLh´Kphj³ubjh)�”}”(hŒÏ``set_thermal_protection`` Support enabling of and setting limits for over temperature situation detection.Detection can be configured for same severities as over current protection. Units of degree Kelvin. ”h]”(jn)�”}”(hŒ``set_thermal_protection``”h]”j­)�”}”(hjqh]”hŒset_thermal_protection”…”�”}”(hjsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjoubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kshjkubjˆ)�”}”(hhh]”j()�”}”(hŒ³Support enabling of and setting limits for over temperature situation detection.Detection can be configured for same severities as over current protection. Units of degree Kelvin.”h]”hŒ³Support enabling of and setting limits for over temperature situation detection.Detection can be configured for same severities as over current protection. Units of degree Kelvin.”…”�”}”(hjŠh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kqhj‡ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjkubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j†h´Kshj³ubjh)�”}”(hŒL``set_active_discharge`` Set active discharge enable/disable of regulators. ”h]”(jn)�”}”(hŒ``set_active_discharge``”h]”j­)�”}”(hj«h]”hŒset_active_discharge”…”�”}”(hj­h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj©ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kuhj¥ubjˆ)�”}”(hhh]”j()�”}”(hŒ2Set active discharge enable/disable of regulators.”h]”hŒ2Set active discharge enable/disable of regulators.”…”�”}”(hjÄh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÀh´KuhjÁubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¥ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÀh´Kuhj³ubjh)�”}”(hŒ/``enable`` Configure the regulator as enabled. ”h]”(jn)�”}”(hŒ ``enable``”h]”j­)�”}”(hjäh]”hŒenable”…”�”}”(hjæh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjâubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KAhjÞubjˆ)�”}”(hhh]”j()�”}”(hŒ#Configure the regulator as enabled.”h]”hŒ#Configure the regulator as enabled.”…”�”}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jùh´KAhjúubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÞubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jùh´KAhj³ubjh)�”}”(hŒ1``disable`` Configure the regulator as disabled. ”h]”(jn)�”}”(hŒ ``disable``”h]”j­)�”}”(hjh]”hŒdisable”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KBhjubjˆ)�”}”(hhh]”j()�”}”(hŒ$Configure the regulator as disabled.”h]”hŒ$Configure the regulator as disabled.”…”�”}”(hj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j2h´KBhj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j2h´KBhj³ubjh)�”}”(hŒ_``is_enabled`` Return 1 if the regulator is enabled, 0 if not. May also return negative errno. ”h]”(jn)�”}”(hŒ``is_enabled``”h]”j­)�”}”(hjVh]”hŒ is_enabled”…”�”}”(hjXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjTubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KDhjPubjˆ)�”}”(hhh]”j()�”}”(hŒOReturn 1 if the regulator is enabled, 0 if not. May also return negative errno.”h]”hŒOReturn 1 if the regulator is enabled, 0 if not. May also return negative errno.”…”�”}”(hjoh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KChjlubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjPubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jkh´KDhj³ubjh)�”}”(hŒB``set_mode`` Set the configured operating mode for the regulator. ”h]”(jn)�”}”(hŒ ``set_mode``”h]”j­)�”}”(hj�h]”hŒset_mode”…”�”}”(hj’h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjŽubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KwhjŠubjˆ)�”}”(hhh]”j()�”}”(hŒ4Set the configured operating mode for the regulator.”h]”hŒ4Set the configured operating mode for the regulator.”…”�”•>}”(hj©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j¥h´Kwhj¦ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjŠubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¥h´Kwhj³ubjh)�”}”(hŒB``get_mode`` Get the configured operating mode for the regulator. ”h]”(jn)�”}”(hŒ ``get_mode``”h]”j­)�”}”(hjÉh]”hŒget_mode”…”�”}”(hjËh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÇubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KxhjÃubjˆ)�”}”(hhh]”j()�”}”(hŒ4Get the configured operating mode for the regulator.”h]”hŒ4Get the configured operating mode for the regulator.”…”�”}”(hjâh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÞh´Kxhjßubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÃubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÞh´Kxhj³ubjh)�”}”(hŒ@``get_error_flags`` Get the current error(s) for the regulator. ”h]”(jn)�”}”(hŒ``get_error_flags``”h]”j­)�”}”(hjh]”hŒget_error_flags”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kyhjüubjˆ)�”}”(hhh]”j()�”}”(hŒ+Get the current error(s) for the regulator.”h]”hŒ+Get the current error(s) for the regulator.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jh´Kyhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjüubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jh´Kyhj³ubjh)�”}”(hŒw``enable_time`` Time taken for the regulator voltage output voltage to stabilise after being enabled, in microseconds. ”h]”(jn)�”}”(hŒ``enable_time``”h]”j­)�”}”(hj;h]”hŒ enable_time”…”�”}”(hj=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K„hj5ubjˆ)�”}”(hhh]”j()�”}”(hŒfTime taken for the regulator voltage output voltage to stabilise after being enabled, in microseconds.”h]”hŒfTime taken for the regulator voltage output voltage to stabilise after being enabled, in microseconds.”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KƒhjQubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jPh´K„hj³ubjh)�”}”(hŒˆ``set_ramp_delay`` Set the ramp delay for the regulator. The driver should select ramp delay equal to or less than(closest) ramp_delay. ”h]”(jn)�”}”(hŒ``set_ramp_delay``”h]”j­)�”}”(hjuh]”hŒset_ramp_delay”…”�”}”(hjwh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjsubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K†hjoubjˆ)�”}”(hhh]”j()�”}”(hŒtSet the ramp delay for the regulator. The driver should select ramp delay equal to or less than(closest) ramp_delay.”h]”hŒtSet the ramp delay for the regulator. The driver should select ramp delay equal to or less than(closest) ramp_delay.”…”�”}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K…hj‹ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjoubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jŠh´K†hj³ubjh)�”}”(hŒà``set_voltage_time`` Time taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function receives the from and to voltage as input, it should return the worst case. ”h]”(jn)�”}”(hŒ``set_voltage_time``”h]”j­)�”}”(hj¯h]”hŒset_voltage_time”…”�”}”(hj±h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj­ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KŠhj©ubjˆ)�”}”(hhh]”j()�”}”(hŒÊTime taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function receives the from and to voltage as input, it should return the worst case.”h]”hŒÊTime taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function receives the from and to voltage as input, it should return the worst case.”…”�”}”(hjÈh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K‡hjÅubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj©ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÄh´KŠhj³ubjh)�”}”(hŒí``set_voltage_time_sel`` Time taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function receives the from and to voltage selector as input, it should return the worst case. ”h]”(jn)�”}”(hŒ``set_voltage_time_sel``”h]”j­)�”}”(hjéh]”hŒset_voltage_time_sel”…”�”}”(hjëh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjçubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KŽhjãubjˆ)�”}”(hhh]”j()�”}”(hŒÓTime taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function receives the from and to voltage selector as input, it should return the worst case.”h]”hŒÓTime taken for the regulator voltage output voltage to stabilise after being set to a new value, in microseconds. The function receives the from and to voltage selector as input, it should return the worst case.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K‹hjÿubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjãubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jþh´KŽhj³ubjh)�”}”(hŒ8``set_soft_start`` Enable soft start for the regulator. ”h]”(jn)�”}”(hŒ``set_soft_start``”h]”j­)�”}”(hj#h]”hŒset_soft_start”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K�hjubjˆ)�”}”(hhh]”j()�”}”(hŒ$Enable soft start for the regulator.”h]”hŒ$Enable soft start for the regulator.”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j8h´K�hj9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j8h´K�hj³ubjh)�”}”(hŒv``get_status`` Return actual (not as-configured) status of regulator, as a REGULATOR_STATUS value (or negative errno) ”h]”(jn)�”}”(hŒ``get_status``”h]”j­)�”}”(hj\h]”hŒ get_status”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjZubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K{hjVubjˆ)�”}”(hhh]”j()�”}”(hŒfReturn actual (not as-configured) status of regulator, as a REGULATOR_STATUS value (or negative errno)”h]”hŒfReturn actual (not as-configured) status of regulator, as a REGULATOR_STATUS value (or negative errno)”…”�”}”(hjuh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kzhjrubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjVubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jqh´K{hj³ubjh)�”}”(hŒy``get_optimum_mode`` Get the most efficient operating mode for the regulator when running with the specified parameters. ”h]”(jn)�”}”(hŒ``get_optimum_mode``”h]”j­)�”}”(hj–h]”hŒget_optimum_mode”…”�”}”(hj˜h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj”ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K}hj�ubjˆ)�”}”(hhh]”j()�”}”(hŒcGet the most efficient operating mode for the regulator when running with the specified parameters.”h]”hŒcGet the most efficient operating mode for the regulator when running with the specified parameters.”…”�”}”(hj¯h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K|hj¬ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j«h´K}hj³ubjh)�”}”(hŒ-``set_load`` Set the load for the regulator. ”h]”(jn)�”}”(hŒ ``set_load``”h]”j­)�”}”(hjÐh]”hŒset_load”…”�”}”(hjÒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÎubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K~hjÊubjˆ)�”}”(hhh]”j()�”}”(hŒSet the load for the regulator.”h]”hŒSet the load for the regulator.”…”�”}”(hjéh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jåh´K~hjæubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÊubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jåh´K~hj³ubjh)�”}”(hŒ1``set_bypass`` Set the regulator in bypass mode. ”h]”(jn)�”}”(hŒ``set_bypass``”h]”j­)�”}”(hj h]”hŒ set_bypass”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K€hj ubjˆ)�”}”(hhh]”j()�”}”(hŒ!Set the regulator in bypass mode.”h]”hŒ!Set the regulator in bypass mode.”…”�”}”(hj" h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j h´K€hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j h´K€hj³ubjh)�”}”(hŒ4``get_bypass`` Get the regulator bypass mode state. ”h]”(jn)�”}”(hŒ``get_bypass``”h]”j­)�”}”(hjB h]”hŒ get_bypass”…”�”}”(hjD h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj@ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K�hj< ubjˆ)�”}”(hhh]”j()�”}”(hŒ$Get the regulator bypass mode state.”h]”hŒ$Get the regulator bypass mode state.”…”�”}”(hj[ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jW h´K�hjX ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj< ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jW h´K�hj³ubjh)�”}”(hŒX``set_suspend_voltage`` Set the voltage for the regulator when the system is suspended. ”h]”(jn)�”}”(hŒ``set_suspend_voltage``”h]”j­)�”}”(hj{ h]”hŒset_suspend_voltage”…”�”}”(hj} h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjy ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K’hju ubjˆ)�”}”(hhh]”j()�”}”(hŒ?Set the voltage for the regulator when the system is suspended.”h]”hŒ?Set the voltage for the regulator when the system is suspended.”…”�”}”(hj” h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K‘hj‘ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hju ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j� h´K’hj³ubjh)�”}”(hŒS``set_suspend_enable`` Mark the regulator as enabled when the system is suspended. ”h]”(jn)�”}”(hŒ``set_suspend_enable``”h]”j­)�”}”(hjµ h]”hŒset_suspend_enable”…”�”}”(hj· h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj³ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K”hj¯ ubjˆ)�”}”(hhh]”j()�”}”(hŒ;Mark the regulator as enabled when the system is suspended.”h]”hŒ;Mark the regulator as enabled when the system is suspended.”…”�”}”(hjÎ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K“hjË ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¯ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÊ h´K”hj³ubjh)�”}”(hŒU``set_suspend_disable`` Mark the regulator as disabled when the system is suspended. ”h]”(jn)�”}”(hŒ``set_suspend_disable``”h]”j­)�”}”(hjï h]”hŒset_suspend_disable”…”�”}”(hjñ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjí ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K–hjé ubjˆ)�”}”(hhh]”j()�”}”(hŒ!h´K˜hj³ubjh)�”}”(hŒ4``resume`` Resume operation of suspended regulator. ”h]”(jn)�”}”(hŒ ``resume``”h]”j­)�”}”(hjc!h]”hŒresume”…”�”}”(hje!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hja!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K™hj]!ubjˆ)�”}”(hhh]”j()�”}”(hŒ(Resume operation of suspended regulator.”h]”hŒ(Resume operation of suspended regulator.”…”�”}”(hj|!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jx!h´K™hjy!ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj]!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jx!h´K™hj³ubjh)�”}”(hŒV``set_pull_down`` Configure the regulator to pull down when the regulator is disabled.”h]”(jn)�”}”(hŒ``set_pull_down``”h]”j­)�”}”(hjœ!h]”hŒ set_pull_down”…”�”}”(hjž!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjš!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kšhj–!ubjˆ)�”}”(hhh]”j()�”}”(hŒDConfigure the regulator to pull down when the regulator is disabled.”h]”hŒDConfigure the regulator to pull down when the regulator is disabled.”…”�”}”(hjµ!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j±!h´Kšhj²!ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj–!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j±!h´Kšhj³ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjkubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hjÞ!h]”hŒ Description”…”�”}”(hjà!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÜ!ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KžhjVh²hubjô)�”}”(hX.- REGULATOR_SEVERITY_PROT should automatically shut down the regulator(s). - REGULATOR_SEVERITY_ERR should indicate that over-current situation is caused by an unrecoverable error but HW does not perform automatic shut down. - REGULATOR_SEVERITY_WARN should indicate situation where hardware is still believed to not be damaged but that a board sepcific recovery action is needed. If lim_uA is 0 the limit should not be changed but the detection should just be enabled/disabled as is requested. ”h]”hŒ bullet_list”“”)�”}”(hhh]”(hŒ list_item”“”)�”}”(hŒIREGULATOR_SEVERITY_PROT should automatically shut down the regulator(s). ”h]”j()�”}”(hŒHREGULATOR_SEVERITY_PROT should automatically shut down the regulator(s).”h]”hŒHREGULATOR_SEVERITY_PROT should automatically shut down the regulator(s).”…”�”}”(hj"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K]hjÿ!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jý!hjú!ubjþ!)�”}”(hŒ¤REGULATOR_SEVERITY_ERR should indicate that over-current situation is caused by an unrecoverable error but HW does not perform automatic shut down. ”h]”jc)�”}”(hhh]”jh)�”}”(hŒ”REGULATOR_SEVERITY_ERR should indicate that over-current situation is caused by an unrecoverable error but HW does not perform automatic shut down. ”h]”(jn)�”}”(hŒEREGULATOR_SEVERITY_ERR should indicate that over-current situation is”h]”hŒEREGULATOR_SEVERITY_ERR should indicate that over-current situation is”…”�”}”(hj#"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kahj"ubjˆ)�”}”(hhh]”j()�”}”(hŒMcaused by an unrecoverable error but HW does not perform automatic shut down.”h]”hŒMcaused by an unrecoverable error but HW does not perform automatic shut down.”…”�”}”(hj5"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´K`hj2"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj"ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j1"h´Kahj"ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhj"ubah}”(h]”h ]”h"]”h$]”h&]”uh1jý!hjú!ubjþ!)�”}”(hX-REGULATOR_SEVERITY_WARN should indicate situation where hardware is still believed to not be damaged but that a board sepcific recovery action is needed. If lim_uA is 0 the limit should not be changed but the detection should just be enabled/disabled as is requested. ”h]”jc)�”}”(hhh]”jh)�”}”(hX REGULATOR_SEVERITY_WARN should indicate situation where hardware is still believed to not be damaged but that a board sepcific recovery action is needed. If lim_uA is 0 the limit should not be changed but the detection should just be enabled/disabled as is requested. ”h]”(jn)�”}”(hŒCREGULATOR_SEVERITY_WARN should indicate situation where hardware is”h]”hŒCREGULATOR_SEVERITY_WARN should indicate situation where hardware is”…”�”}”(hjg"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Khhjc"ubjˆ)�”}”(hhh]”j()�”}”(hŒÇstill believed to not be damaged but that a board sepcific recovery action is needed. If lim_uA is 0 the limit should not be changed but the detection should just be enabled/disabled as is requested.”h]”hŒÇstill believed to not be damaged but that a board sepcific recovery action is needed. If lim_uA is 0 the limit should not be changed but the detection should just be enabled/disabled as is requested.”…”�”}”(hjy"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kdhjv"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjc"ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³ju"h´Khhj`"ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhj\"ubah}”(h]”h ]”h"]”h$]”h&]”uh1jý!hjú!ubeh}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ-”uh1jø!h³j"h´K]hjô!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jóh³j"h´K]hjVh²hubj()�”}”(hŒ^This struct describes regulator operations which can be implemented by regulator chip drivers.”h]”hŒ^This struct describes regulator operations which can be implemented by regulator chip drivers.”…”�”}”(hj®"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´KjhjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_desc (C struct)”Œc.regulator_desc”hNt”auh1juhjVh²hh³jh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_desc”h]”j“)�”}”(hŒstruct regulator_desc”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjÖ"h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjÒ"h²hh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kpubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjä"h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÒ"h²hh³jã"h´Kpubj¼)�”}”(hŒregulator_desc”h]”jÂ)�”}”(hjÐ"h]”hŒregulator_desc”…”�”}”(hjö"h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjò"ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjÒ"h²hh³jã"h´Kpubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjÎ"h²hh³jã"h´Kpubah}”(h]”jÉ"ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jã"h´KphjË"h²hubjî)�”}”(hhh]”j()�”}”(hŒStatic regulator descriptor”h]”hŒStatic regulator descriptor”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Kÿhj#h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjË"h²hh³jã"h´Kpubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjj0#jj0#j‰j‰j‰uh1j‡h²hhjVh³jh´Nubj)�”}”(hXi **Definition**:: struct regulator_desc { const char *name; const char *supply_name; const char *of_match; bool of_match_full_name; const char *regulators_node; int (*of_parse_cb)(struct device_node *, const struct regulator_desc *, struct regulator_config *); int (*init_cb)(struct regulator_dev *, struct regulator_config *); int id; unsigned int continuous_voltage_range:1; unsigned n_voltages; unsigned int n_current_limits; const struct regulator_ops *ops; int irq; enum regulator_type type; struct module *owner; unsigned int min_uV; unsigned int uV_step; unsigned int linear_min_sel; int fixed_uV; unsigned int ramp_delay; int min_dropout_uV; const struct linear_range *linear_ranges; const unsigned int *linear_range_selectors_bitfield; int n_linear_ranges; const unsigned int *volt_table; const unsigned int *curr_table; unsigned int vsel_range_reg; unsigned int vsel_range_mask; bool range_applied_by_vsel; unsigned int vsel_reg; unsigned int vsel_mask; unsigned int vsel_step; unsigned int csel_reg; unsigned int csel_mask; unsigned int apply_reg; unsigned int apply_bit; unsigned int enable_reg; unsigned int enable_mask; unsigned int enable_val; unsigned int disable_val; bool enable_is_inverted; unsigned int bypass_reg; unsigned int bypass_mask; unsigned int bypass_val_on; unsigned int bypass_val_off; unsigned int active_discharge_on; unsigned int active_discharge_off; unsigned int active_discharge_mask; unsigned int active_discharge_reg; unsigned int soft_start_reg; unsigned int soft_start_mask; unsigned int soft_start_val_on; unsigned int pull_down_reg; unsigned int pull_down_mask; unsigned int pull_down_val_on; unsigned int ramp_reg; unsigned int ramp_mask; const unsigned int *ramp_delay_table; unsigned int n_ramp_values; unsigned int enable_time; unsigned int off_on_delay; unsigned int poll_enabled_time; unsigned int (*of_map_mode)(unsigned int mode); }; **Members** ``name`` Identifying name for the regulator. ``supply_name`` Identifying the regulator supply ``of_match`` Name used to identify regulator in DT. ``of_match_full_name`` A flag to indicate that the of_match string, if present, should be matched against the node full_name. ``regulators_node`` Name of node containing regulator definitions in DT. ``of_parse_cb`` Optional callback called only if of_match is present. Will be called for each regulator parsed from DT, during init_data parsing. The regulator_config passed as argument to the callback will be a copy of config passed to regulator_register, valid only for this particular call. Callback may freely change the config but it cannot store it for later usage. Callback should return 0 on success or negative ERRNO indicating failure. ``init_cb`` Optional callback called after the parsing of init_data. Allows the regulator to perform runtime init if necessary, such as synching the regulator and the parsed constraints. Callback should return 0 on success or negative ERRNO indicating failure. ``id`` Numerical identifier for the regulator. ``continuous_voltage_range`` Indicates if the regulator can set any voltage within constrains range. ``n_voltages`` Number of selectors available for ops.list_voltage(). ``n_current_limits`` Number of selectors available for current limits ``ops`` Regulator operations table. ``irq`` Interrupt number for the regulator. ``type`` Indicates if the regulator is a voltage or current regulator. ``owner`` Module providing the regulator, used for refcounting. ``min_uV`` Voltage given by the lowest selector (if linear mapping) ``uV_step`` Voltage increase with each selector (if linear mapping) ``linear_min_sel`` Minimal selector for starting linear mapping ``fixed_uV`` Fixed voltage of rails. ``ramp_delay`` Time to settle down after voltage change (unit: uV/us) ``min_dropout_uV`` The minimum dropout voltage this regulator can handle ``linear_ranges`` A constant table of possible voltage ranges. ``linear_range_selectors_bitfield`` A constant table of voltage range selectors as bitfield values. If pickable ranges are used each range must have corresponding selector here. ``n_linear_ranges`` Number of entries in the **linear_ranges** (and in linear_range_selectors_bitfield if used) table(s). ``volt_table`` Voltage mapping table (if table based mapping) ``curr_table`` Current limit mapping table (if table based mapping) ``vsel_range_reg`` Register for range selector when using pickable ranges and ``regulator_map_*_voltage_*_pickable`` functions. ``vsel_range_mask`` Mask for register bitfield used for range selector ``range_applied_by_vsel`` A flag to indicate that changes to vsel_range_reg are only effective after vsel_reg is written ``vsel_reg`` Register for selector when using ``regulator_map_*_voltage_*`` ``vsel_mask`` Mask for register bitfield used for selector ``vsel_step`` Specify the resolution of selector stepping when setting voltage. If 0, then no stepping is done (requested selector is set directly), if >0 then the regulator API will ramp the voltage up/down gradually each time increasing/decreasing the selector by the specified step value. ``csel_reg`` Register for current limit selector using regmap set_current_limit ``csel_mask`` Mask for register bitfield used for current limit selector ``apply_reg`` Register for initiate voltage change on the output when using regulator_set_voltage_sel_regmap ``apply_bit`` Register bitfield used for initiate voltage change on the output when using regulator_set_voltage_sel_regmap ``enable_reg`` Register for control when using regmap enable/disable ops ``enable_mask`` Mask for control when using regmap enable/disable ops ``enable_val`` Enabling value for control when using regmap enable/disable ops ``disable_val`` Disabling value for control when using regmap enable/disable ops ``enable_is_inverted`` A flag to indicate set enable_mask bits to disable when using regulator_enable_regmap and friends APIs. ``bypass_reg`` Register for control when using regmap set_bypass ``bypass_mask`` Mask for control when using regmap set_bypass ``bypass_val_on`` Enabling value for control when using regmap set_bypass ``bypass_val_off`` Disabling value for control when using regmap set_bypass ``active_discharge_on`` Disabling value for control when using regmap set_active_discharge ``active_discharge_off`` Enabling value for control when using regmap set_active_discharge ``active_discharge_mask`` Mask for control when using regmap set_active_discharge ``active_discharge_reg`` Register for control when using regmap set_active_discharge ``soft_start_reg`` Register for control when using regmap set_soft_start ``soft_start_mask`` Mask for control when using regmap set_soft_start ``soft_start_val_on`` Enabling value for control when using regmap set_soft_start ``pull_down_reg`` Register for control when using regmap set_pull_down ``pull_down_mask`` Mask for control when using regmap set_pull_down ``pull_down_val_on`` Enabling value for control when using regmap set_pull_down ``ramp_reg`` Register for controlling the regulator ramp-rate. ``ramp_mask`` Bitmask for the ramp-rate control register. ``ramp_delay_table`` Table for mapping the regulator ramp-rate values. Values should be given in units of V/S (uV/uS). See the regulator_set_ramp_delay_regmap(). ``n_ramp_values`` number of elements at **ramp_delay_table**. ``enable_time`` Time taken for initial enable of regulator (in uS). ``off_on_delay`` guard time (in uS), before re-enabling a regulator ``poll_enabled_time`` The polling interval (in uS) to use while checking that the regulator was actually enabled. Max upto enable_time. ``of_map_mode`` Maps a hardware mode defined in a DeviceTree to a standard mode”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj<#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj8#ubhŒ:”…”�”}”(hj8#h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj4#ubj:)�”}”(hXGstruct regulator_desc { const char *name; const char *supply_name; const char *of_match; bool of_match_full_name; const char *regulators_node; int (*of_parse_cb)(struct device_node *, const struct regulator_desc *, struct regulator_config *); int (*init_cb)(struct regulator_dev *, struct regulator_config *); int id; unsigned int continuous_voltage_range:1; unsigned n_voltages; unsigned int n_current_limits; const struct regulator_ops *ops; int irq; enum regulator_type type; struct module *owner; unsigned int min_uV; unsigned int uV_step; unsigned int linear_min_sel; int fixed_uV; unsigned int ramp_delay; int min_dropout_uV; const struct linear_range *linear_ranges; const unsigned int *linear_range_selectors_bitfield; int n_linear_ranges; const unsigned int *volt_table; const unsigned int *curr_table; unsigned int vsel_range_reg; unsigned int vsel_range_mask; bool range_applied_by_vsel; unsigned int vsel_reg; unsigned int vsel_mask; unsigned int vsel_step; unsigned int csel_reg; unsigned int csel_mask; unsigned int apply_reg; unsigned int apply_bit; unsigned int enable_reg; unsigned int enable_mask; unsigned int enable_val; unsigned int disable_val; bool enable_is_inverted; unsigned int bypass_reg; unsigned int bypass_mask; unsigned int bypass_val_on; unsigned int bypass_val_off; unsigned int active_discharge_on; unsigned int active_discharge_off; unsigned int active_discharge_mask; unsigned int active_discharge_reg; unsigned int soft_start_reg; unsigned int soft_start_mask; unsigned int soft_start_val_on; unsigned int pull_down_reg; unsigned int pull_down_mask; unsigned int pull_down_val_on; unsigned int ramp_reg; unsigned int ramp_mask; const unsigned int *ramp_delay_table; unsigned int n_ramp_values; unsigned int enable_time; unsigned int off_on_delay; unsigned int poll_enabled_time; unsigned int (*of_map_mode)(unsigned int mode); };”h]”hXGstruct regulator_desc { const char *name; const char *supply_name; const char *of_match; bool of_match_full_name; const char *regulators_node; int (*of_parse_cb)(struct device_node *, const struct regulator_desc *, struct regulator_config *); int (*init_cb)(struct regulator_dev *, struct regulator_config *); int id; unsigned int continuous_voltage_range:1; unsigned n_voltages; unsigned int n_current_limits; const struct regulator_ops *ops; int irq; enum regulator_type type; struct module *owner; unsigned int min_uV; unsigned int uV_step; unsigned int linear_min_sel; int fixed_uV; unsigned int ramp_delay; int min_dropout_uV; const struct linear_range *linear_ranges; const unsigned int *linear_range_selectors_bitfield; int n_linear_ranges; const unsigned int *volt_table; const unsigned int *curr_table; unsigned int vsel_range_reg; unsigned int vsel_range_mask; bool range_applied_by_vsel; unsigned int vsel_reg; unsigned int vsel_mask; unsigned int vsel_step; unsigned int csel_reg; unsigned int csel_mask; unsigned int apply_reg; unsigned int apply_bit; unsigned int enable_reg; unsigned int enable_mask; unsigned int enable_val; unsigned int disable_val; bool enable_is_inverted; unsigned int bypass_reg; unsigned int bypass_mask; unsigned int bypass_val_on; unsigned int bypass_val_off; unsigned int active_discharge_on; unsigned int active_discharge_off; unsigned int active_discharge_mask; unsigned int active_discharge_reg; unsigned int soft_start_reg; unsigned int soft_start_mask; unsigned int soft_start_val_on; unsigned int pull_down_reg; unsigned int pull_down_mask; unsigned int pull_down_val_on; unsigned int ramp_reg; unsigned int ramp_mask; const unsigned int *ramp_delay_table; unsigned int n_ramp_values; unsigned int enable_time; unsigned int off_on_delay; unsigned int poll_enabled_time; unsigned int (*of_map_mode)(unsigned int mode); };”…”�”}”hjU#sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj4#ubj()�”}”(hŒ **Members**”h]”j)�”}”(hjf#h]”hŒMembers”…”�”}”(hjh#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjd#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MGhj4#ubjc)�”}”(hhh]”(jh)�”}”(hŒ-``name`` Identifying name for the regulator. ”h]”(jn)�”}”(hŒ``name``”h]”j­)�”}”(hj…#h]”hŒname”…”�”}”(hj‡#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjƒ#ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj#ubjˆ)�”}”(hhh]”j()�”}”(hŒ#Identifying name for the regulator.”h]”hŒ#Identifying name for the regulator.”…”�”}”(hjž#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jš#h´Mhj›#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jš#h´Mhj|#ubjh)�”}”(hŒ1``supply_name`` Identifying the regulator supply ”h]”(jn)�”}”(hŒ``supply_name``”h]”j­)�”}”(hj¾#h]”hŒ supply_name”…”�”}”(hjÀ#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¼#ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj¸#ubjˆ)�”}”(hhh]”j()�”}”(hŒ Identifying the regulator supply”h]”hŒ Identifying the regulator supply”…”�”}”(hj×#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÓ#h´MhjÔ#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¸#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÓ#h´Mhj|#ubjh)�”}”(hŒ4``of_match`` Name used to identify regulator in DT. ”h]”(jn)�”}”(hŒ ``of_match``”h]”j­)�”}”(hj÷#h]”hŒof_match”…”�”}”(hjù#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjõ#ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M hjñ#ubjˆ)�”}”(hhh]”j()�”}”(hŒ&Name used to identify regulator in DT.”h]”hŒ&Name used to identify regulator in DT.”…”�”}”(hj$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j $h´M hj $ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjñ#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j $h´M hj|#ubjh)�”}”(hŒ~``of_match_full_name`` A flag to indicate that the of_match string, if present, should be matched against the node full_name. ”h]”(jn)�”}”(hŒ``of_match_full_name``”h]”j­)�”}”(hj0$h]”hŒof_match_full_name”…”�”}”(hj2$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj.$ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M hj*$ubjˆ)�”}”(hhh]”j()�”}”(hŒfA flag to indicate that the of_match string, if present, should be matched against the node full_name.”h]”hŒfA flag to indicate that the of_match string, if present, should be matched against the node full_name.”…”�”}”(hjI$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M hjF$ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj*$ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jE$h´M hj|#ubjh)�”}”(hŒI``regulators_node`` Name of node containing regulator definitions in DT. ”h]”(jn)�”}”(hŒ``regulators_node``”h]”j­)�”}”(hjj$h]”hŒregulators_node”…”�”}”(hjl$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjh$ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M hjd$ubjˆ)�”}”(hhh]”j()�”}”(hŒ4Name of node containing regulator definitions in DT.”h]”hŒ4Name of node containing regulator definitions in DT.”…”�”}”(hjƒ$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j$h´M hj€$ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjd$ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j$h´M hj|#ubjh)�”}”(hX¾``of_parse_cb`` Optional callback called only if of_match is present. Will be called for each regulator parsed from DT, during init_data parsing. The regulator_config passed as argument to the callback will be a copy of config passed to regulator_register, valid only for this particular call. Callback may freely change the config but it cannot store it for later usage. Callback should return 0 on success or negative ERRNO indicating failure. ”h]”(jn)�”}”(hŒ``of_parse_cb``”h]”j­)�”}”(hj£$h]”hŒ of_parse_cb”…”�”}”(hj¥$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¡$ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj�$ubjˆ)�”}”(hhh]”j()�”}”(hX­Optional callback called only if of_match is present. Will be called for each regulator parsed from DT, during init_data parsing. The regulator_config passed as argument to the callback will be a copy of config passed to regulator_register, valid only for this particular call. Callback may freely change the config but it cannot store it for later usage. Callback should return 0 on success or negative ERRNO indicating failure.”h]”hX­Optional callback called only if of_match is present. Will be called for each regulator parsed from DT, during init_data parsing. The regulator_config passed as argument to the callback will be a copy of config passed to regulator_register, valid only for this particular call. Callback may freely change the config but it cannot store it for later usage. Callback should return 0 on success or negative ERRNO indicating failure.”…”�”}”(hj¼$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M hj¹$ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj�$ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¸$h´Mhj|#ubjh)�”}”(hX``init_cb`` Optional callback called after the parsing of init_data. Allows the regulator to perform runtime init if necessary, such as synching the regulator and the parsed constraints. Callback should return 0 on success or negative ERRNO indicating failure. ”h]”(jn)�”}”(hŒ ``init_cb``”h]”j­)�”}”(hjÝ$h]”hŒinit_cb”…”�”}”(hjß$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÛ$ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj×$ubjˆ)�”}”(hhh]”j()�”}”(hŒøOptional callback called after the parsing of init_data. Allows the regulator to perform runtime init if necessary, such as synching the regulator and the parsed constraints. Callback should return 0 on success or negative ERRNO indicating failure.”h]”hŒøOptional callback called after the parsing of init_data. Allows the regulator to perform runtime init if necessary, such as synching the regulator and the parsed constraints. Callback should return 0 on success or negative ERRNO indicating failure.”…”�”}”(hjö$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhjó$ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj×$ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jò$h´Mhj|#ubjh)�”}”(hŒ/``id`` Numerical identifier for the regulator. ”h]”(jn)�”}”(hŒ``id``”h]”j­)�”}”(hj%h]”hŒid”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj%ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj%ubjˆ)�”}”(hhh]”j()�”}”(hŒ'Numerical identifier for the regulator.”h]”hŒ'Numerical identifier for the regulator.”…”�”}”(hj0%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j,%h´Mhj-%ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj%ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j,%h´Mhj|#ubjh)�”}”(hŒe``continuous_voltage_range`` Indicates if the regulator can set any voltage within constrains range. ”h]”(jn)�”}”(hŒ``continuous_voltage_range``”h]”j­)�”}”(hjP%h]”hŒcontinuous_voltage_range”…”�”}”(hjR%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjN%ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M"hjJ%ubjˆ)�”}”(hhh]”j()�”}”(hŒGIndicates if the regulator can set any voltage within constrains range.”h]”hŒGIndicates if the regulator can set any voltage within constrains range.”…”�”}”(hji%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M!hjf%ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjJ%ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³je%h´M"hj|#ubjh)�”}”(hŒE``n_voltages`` Number of selectors available for ops.list_voltage(). ”h]”(jn)�”}”(hŒ``n_voltages``”h]”j­)�”}”(hjŠ%h]”hŒ n_voltages”…”�”}”(hjŒ%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjˆ%ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M#hj„%ubjˆ)�”}”(hhh]”j()�”}”(hŒ5Number of selectors available for ops.list_voltage().”h]”hŒ5Number of selectors available for ops.list_voltage().”…”�”}”(hj£%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jŸ%h´M#hj %ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj„%ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jŸ%h´M#hj|#ubjh)�”}”(hŒF``n_current_limits`` Number of selectors available for current limits ”h]”(jn)�”}”(hŒ``n_current_limits``”h]”j­)�”}”(hjÃ%h]”hŒn_current_limits”…”�”}”(hjÅ%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÁ%ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M$hj½%ubjˆ)�”}”(hhh]”j()�”}”(hŒ0Number of selectors available for current limits”h]”hŒ0Number of selectors available for current limits”…”�”}”(hjÜ%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jØ%h´M$hjÙ%ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj½%ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jØ%h´M$hj|#ubjh)�”}”(hŒ$``ops`` Regulator operations table. ”h]”(jn)�”}”(hŒ``ops``”h]”j­)�”}”(hjü%h]”hŒops”…”�”}”(hjþ%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjú%ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhjö%ubjˆ)�”}”(hhh]”j()�”}”(hŒRegulator operations table.”h]”hŒRegulator operations table.”…”�”}”(hj&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j&h´Mhj&ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjö%ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j&h´Mhj|#ubjh)�”}”(hŒ,``irq`` Interrupt number for the regulator. ”h]”(jn)�”}”(hŒ``irq``”h]”j­)�”}”(hj5&h]”hŒirq”…”�”}”(hj7&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj3&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj/&ubjˆ)�”}”(hhh]”j()�”}”(hŒ#Interrupt number for the regulator.”h]”hŒ#Interrupt number for the regulator.”…”�”}”(hjN&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jJ&h´MhjK&ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj/&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jJ&h´Mhj|#ubjh)�”}”(hŒG``type`` Indicates if the regulator is a voltage or current regulator. ”h]”(jn)�”}”(hŒ``type``”h]”j­)�”}”(hjn&h]”hŒtype”…”�”}”(hjp&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjl&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhjh&ubjˆ)�”}”(hhh]”j()�”}”(hŒ=Indicates if the regulator is a voltage or current regulator.”h]”hŒ=Indicates if the regulator is a voltage or current regulator.”…”�”}”(hj‡&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jƒ&h´Mhj„&ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjh&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jƒ&h´Mhj|#ubjh)�”}”(hŒ@``owner`` Module providing the regulator, used for refcounting. ”h]”(jn)�”}”(hŒ ``owner``”h]”j­)�”}”(hj§&h]”hŒowner”…”�”}”(hj©&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¥&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj¡&ubjˆ)�”}”(hhh]”j()�”}”(hŒ5Module providing the regulator, used for refcounting.”h]”hŒ5Module providing the regulator, used for refcounting.”…”�”}”(hjÀ&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j¼&h´Mhj½&ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¡&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¼&h´Mhj|#ubjh)�”}”(hŒD``min_uV`` Voltage given by the lowest selector (if linear mapping) ”h]”(jn)�”}”(hŒ ``min_uV``”h]”j­)�”}”(hjà&h]”hŒmin_uV”…”�”}”(hjâ&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÞ&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M&hjÚ&ubjˆ)�”}”(hhh]”j()�”}”(hŒ8Voltage given by the lowest selector (if linear mapping)”h]”hŒ8Voltage given by the lowest selector (if linear mapping)”…”�”}”(hjù&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jõ&h´M&hjö&ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÚ&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jõ&h´M&hj|#ubjh)�”}”(hŒD``uV_step`` Voltage increase with each selector (if linear mapping) ”h]”(jn)�”}”(hŒ ``uV_step``”h]”j­)�”}”(hj'h]”hŒuV_step”…”�”}”(hj'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj'ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M'hj'ubjˆ)�”}”(hhh]”j()�”}”(hŒ7Voltage increase with each selector (if linear mapping)”h]”hŒ7Voltage increase with each selector (if linear mapping)”…”�”}”(hj2'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j.'h´M'hj/'ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj'ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j.'h´M'hj|#ubjh)�”}”(hŒ@``linear_min_sel`` Minimal selector for starting linear mapping ”h]”(jn)�”}”(hŒ``linear_min_sel``”h]”j­)�”}”(hjR'h]”hŒlinear_min_sel”…”�”}”(hjT'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjP'ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M(hjL'ubjˆ)�”}”(hhh]”j()�”}”(hŒ,Minimal selector for starting linear mapping”h]”hŒ,Minimal selector for starting linear mapping”…”�”}”(hjk'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jg'h´M(hjh'ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjL'ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jg'h´M(hj|#ubjh)�”}”(hŒ%``fixed_uV`` Fixed voltage of rails. ”h]”(jn)�”}”(hŒ ``fixed_uV``”h]”j­)�”}”(hj‹'h]”hŒfixed_uV”…”�”}”(hj�'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj‰'ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M)hj…'ubjˆ)�”}”(hhh]”j()�”}”(hŒFixed voltage of rails.”h]”hŒFixed voltage of rails.”…”�”}”(hj¤'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j 'h´M)hj¡'ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj…'ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j 'h´M)hj|#ubjh)�”}”(hŒF``ramp_delay`` Time to settle down after voltage change (unit: uV/us) ”h]”(jn)�”}”(hŒ``ramp_delay``”h]”j­)�”}”(hjÄ'h]”hŒ ramp_delay”…”�”}”(hjÆ'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÂ'ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M*hj¾'ubjˆ)�”}”(hhh]”j()�”}”(hŒ6Time to settle down after voltage change (unit: uV/us)”h]”hŒ6Time to settle down after voltage change (unit: uV/us)”…”�”}”(hjÝ'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÙ'h´M*hjÚ'ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¾'ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÙ'h´M*hj|#ubjh)�”}”(hŒI``min_dropout_uV`` The minimum dropout voltage this regulator can handle ”h]”(jn)�”}”(hŒ``min_dropout_uV``”h]”j­)�”}”(hjý'h]”hŒmin_dropout_uV”…”�”}”(hjÿ'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjû'ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M+hj÷'ubjˆ)�”}”(hhh]”j()�”}”(hŒ5The minimum dropout voltage this regulator can handle”h]”hŒ5The minimum dropout voltage this regulator can handle”…”�”}”(hj(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j(h´M+hj(ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj÷'ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j(h´M+hj|#ubjh)�”}”(hŒ?``linear_ranges`` A constant table of possible voltage ranges. ”h]”(jn)�”}”(hŒ``linear_ranges``”h]”j­)�”}”(hj6(h]”hŒ linear_ranges”…”�”}”(hj8(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj4(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M,hj0(ubjˆ)�”}”(hhh]”j()�”}”(hŒ,A constant table of possible voltage ranges.”h]”hŒ,A constant table of possible voltage ranges.”…”�”}”(hjO(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jK(h´M,hjL(ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj0(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jK(h´M,hj|#ubjh)�”}”(hŒ²``linear_range_selectors_bitfield`` A constant table of voltage range selectors as bitfield values. If pickable ranges are used each range must have corresponding selector here. ”h]”(jn)�”}”(hŒ#``linear_range_selectors_bitfield``”h]”j­)�”}”(hjo(h]”hŒlinear_range_selectors_bitfield”…”�”}”(hjq(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjm(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M0hji(ubjˆ)�”}”(hhh]”j()�”}”(hŒ�A constant table of voltage range selectors as bitfield values. If pickable ranges are used each range must have corresponding selector here.”h]”hŒ�A constant table of voltage range selectors as bitfield values. If pickable ranges are used each range must have corresponding selector here.”…”�”}”(hjˆ(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M-hj…(ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hji(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j„(h´M0hj|#ubjh)�”}”(hŒz``n_linear_ranges`` Number of entries in the **linear_ranges** (and in linear_range_selectors_bitfield if used) table(s). ”h]”(jn)�”}”(hŒ``n_linear_ranges``”h]”j­)�”}”(hj©(h]”hŒn_linear_ranges”…”�”}”(hj«(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj§(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M2hj£(ubjˆ)�”}”(hhh]”j()�”}”(hŒeNumber of entries in the **linear_ranges** (and in linear_range_selectors_bitfield if used) table(s).”h]”(hŒNumber of entries in the ”…”�”}”(hjÂ(h²hh³Nh´Nubj)�”}”(hŒ**linear_ranges**”h]”hŒ linear_ranges”…”�”}”(hjÊ(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÂ(ubhŒ; (and in linear_range_selectors_bitfield if used) table(s).”…”�”}”(hjÂ(h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M1hj¿(ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj£(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¾(h´M2hj|#ubjh)�”}”(hŒ>``volt_table`` Voltage mapping table (if table based mapping) ”h]”(jn)�”}”(hŒ``volt_table``”h]”j­)�”}”(hjõ(h]”hŒ volt_table”…”�”}”(hj÷(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjó(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M3hjï(ubjˆ)�”}”(hhh]”j()�”}”(hŒ.Voltage mapping table (if table based mapping)”h]”hŒ.Voltage mapping table (if table based mapping)”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j )h´M3hj )ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjï(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j )h´M3hj|#ubjh)�”}”(hŒD``curr_table`` Current limit mapping table (if table based mapping) ”h]”(jn)�”}”(hŒ``curr_table``”h]”j­)�”}”(hj.)h]”hŒ curr_table”…”�”}”(hj0)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj,)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M4hj()ubjˆ)�”}”(hhh]”j()�”}”(hŒ4Current limit mapping table (if table based mapping)”h]”hŒ4Current limit mapping table (if table based mapping)”…”�”}”(hjG)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jC)h´M4hjD)ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj()ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jC)h´M4hj|#ubjh)�”}”(hŒ€``vsel_range_reg`` Register for range selector when using pickable ranges and ``regulator_map_*_voltage_*_pickable`` functions. ”h]”(jn)�”}”(hŒ``vsel_range_reg``”h]”j­)�”}”(hjg)h]”hŒvsel_range_reg”…”�”}”(hji)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hje)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M7hja)ubjˆ)�”}”(hhh]”j()�”}”(hŒlRegister for range selector when using pickable ranges and ``regulator_map_*_voltage_*_pickable`` functions.”h]”(hŒ;Register for range selector when using pickable ranges and ”…”�”}”(hj€)h²hh³Nh´Nubj­)�”}”(hŒ&``regulator_map_*_voltage_*_pickable``”h]”hŒ"regulator_map_*_voltage_*_pickable”…”�”}”(hjˆ)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj€)ubhŒ functions.”…”�”}”(hj€)h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M6hj})ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hja)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j|)h´M7hj|#ubjh)�”}”(hŒG``vsel_range_mask`` Mask for register bitfield used for range selector ”h]”(jn)�”}”(hŒ``vsel_range_mask``”h]”j­)�”}”(hj³)h]”hŒvsel_range_mask”…”�”}”(hjµ)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj±)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M8hj­)ubjˆ)�”}”(hhh]”j()�”}”(hŒ2Mask for register bitfield used for range selector”h]”hŒ2Mask for register bitfield used for range selector”…”�”}”(hjÌ)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÈ)h´M8hjÉ)ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj­)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÈ)h´M8hj|#ubjh)�”}”(hŒy``range_applied_by_vsel`` A flag to indicate that changes to vsel_range_reg are only effective after vsel_reg is written ”h]”(jn)�”}”(hŒ``range_applied_by_vsel``”h]”j­)�”}”(hjì)h]”hŒrange_applied_by_vsel”…”�”}”(hjî)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjê)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M:hjæ)ubjˆ)�”}”(hhh]”j()�”}”(hŒ^A flag to indicate that changes to vsel_range_reg are only effective after vsel_reg is written”h]”hŒ^A flag to indicate that changes to vsel_range_reg are only effective after vsel_reg is written”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M9hj*ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjæ)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j*h´M:hj|#ubjh)�”}”(hŒL``vsel_reg`` Register for selector when using ``regulator_map_*_voltage_*`` ”h]”(jn)�”}”(hŒ ``vsel_reg``”h]”j­)�”}”(hj&*h]”hŒvsel_reg”…”�”}”(hj(*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj$*ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M;hj *ubjˆ)�”}”(hhh]”j()�”}”(hŒ>Register for selector when using ``regulator_map_*_voltage_*``”h]”(hŒ!Register for selector when using ”…”�”}”(hj?*h²hh³Nh´Nubj­)�”}”(hŒ``regulator_map_*_voltage_*``”h]”hŒregulator_map_*_voltage_*”…”�”}”(hjG*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj?*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j;*h´M;hj<*ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj *ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j;*h´M;hj|#ubjh)�”}”(hŒ;``vsel_mask`` Mask for register bitfield used for selector ”h]”(jn)�”}”(hŒ ``vsel_mask``”h]”j­)�”}”(hjm*h]”hŒ vsel_mask”…”�”}”(hjo*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjk*ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M<hjg*ubjˆ)�”}”(hhh]”j()�”}”(hŒ,Mask for register bitfield used for selector”h]”hŒ,Mask for register bitfield used for selector”…”�”}”(hj†*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j‚*h´M<hjƒ*ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjg*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j‚*h´M<hj|#ubjh)�”}”(hX$``vsel_step`` Specify the resolution of selector stepping when setting voltage. If 0, then no stepping is done (requested selector is set directly), if >0 then the regulator API will ramp the voltage up/down gradually each time increasing/decreasing the selector by the specified step value. ”h]”(jn)�”}”(hŒ ``vsel_step``”h]”j­)�”}”(hj¦*h]”hŒ vsel_step”…”�”}”(hj¨*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¤*ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MAhj *ubjˆ)�”}”(hhh]”j()�”}”(hXSpecify the resolution of selector stepping when setting voltage. If 0, then no stepping is done (requested selector is set directly), if >0 then the regulator API will ramp the voltage up/down gradually each time increasing/decreasing the selector by the specified step value.”h]”hXSpecify the resolution of selector stepping when setting voltage. If 0, then no stepping is done (requested selector is set directly), if >0 then the regulator API will ramp the voltage up/down gradually each time increasing/decreasing the selector by the specified step value.”…”�”}”(hj¿*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M=hj¼*ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj *ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j»*h´MAhj|#ubjh)�”}”(hŒP``csel_reg`` Register for current limit selector using regmap set_current_limit ”h]”(jn)�”}”(hŒ ``csel_reg``”h]”j­)�”}”(hjà*h]”hŒcsel_reg”…”�”}”(hjâ*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÞ*ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MBhjÚ*ubjˆ)�”}”(hhh]”j()�”}”(hŒBRegister for current limit selector using regmap set_current_limit”h]”hŒBRegister for current limit selector using regmap set_current_limit”…”�”}”(hjù*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jõ*h´MBhjö*ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÚ*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jõ*h´MBhj|#ubjh)�”}”(hŒI``csel_mask`` Mask for register bitfield used for current limit selector ”h]”(jn)�”}”(hŒ ``csel_mask``”h]”j­)�”}”(hj+h]”hŒ csel_mask”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj+ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MChj+ubjˆ)�”}”(hhh]”j()�”}”(hŒ:Mask for register bitfield used for current limit selector”h]”hŒ:Mask for register bitfield used for current limit selector”…”�”}”(hj2+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j.+h´MChj/+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j.+h´MChj|#ubjh)�”}”(hŒm``apply_reg`` Register for initiate voltage change on the output when using regulator_set_voltage_sel_regmap ”h]”(jn)�”}”(hŒ ``apply_reg``”h]”j­)�”}”(hjR+h]”hŒ apply_reg”…”�”}”(hjT+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjP+ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MEhjL+ubjˆ)�”}”(hhh]”j()�”}”(hŒ^Register for initiate voltage change on the output when using regulator_set_voltage_sel_regmap”h]”hŒ^Register for initiate voltage change on the output when using regulator_set_voltage_sel_regmap”…”�”}”(hjk+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MDhjh+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjL+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jg+h´MEhj|#ubjh)�”}”(hŒ{``apply_bit`` Register bitfield used for initiate voltage change on the output when using regulator_set_voltage_sel_regmap ”h]”(jn)�”}”(hŒ ``apply_bit``”h]”j­)�”}”(hjŒ+h]”hŒ apply_bit”…”�”}”(hjŽ+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjŠ+ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MGhj†+ubjˆ)�”}”(hhh]”j()�”}”(hŒlRegister bitfield used for initiate voltage change on the output when using regulator_set_voltage_sel_regmap”•èh]”hŒlRegister bitfield used for initiate voltage change on the output when using regulator_set_voltage_sel_regmap”…”�”}”(hj¥+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MFhj¢+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj†+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¡+h´MGhj|#ubjh)�”}”(hŒI``enable_reg`` Register for control when using regmap enable/disable ops ”h]”(jn)�”}”(hŒ``enable_reg``”h]”j­)�”}”(hjÆ+h]”hŒ enable_reg”…”�”}”(hjÈ+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÄ+ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MHhjÀ+ubjˆ)�”}”(hhh]”j()�”}”(hŒ9Register for control when using regmap enable/disable ops”h]”hŒ9Register for control when using regmap enable/disable ops”…”�”}”(hjß+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÛ+h´MHhjÜ+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÀ+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÛ+h´MHhj|#ubjh)�”}”(hŒF``enable_mask`` Mask for control when using regmap enable/disable ops ”h]”(jn)�”}”(hŒ``enable_mask``”h]”j­)�”}”(hjÿ+h]”hŒ enable_mask”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjý+ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MIhjù+ubjˆ)�”}”(hhh]”j()�”}”(hŒ5Mask for control when using regmap enable/disable ops”h]”hŒ5Mask for control when using regmap enable/disable ops”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j,h´MIhj,ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjù+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j,h´MIhj|#ubjh)�”}”(hŒO``enable_val`` Enabling value for control when using regmap enable/disable ops ”h]”(jn)�”}”(hŒ``enable_val``”h]”j­)�”}”(hj8,h]”hŒ enable_val”…”�”}”(hj:,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj6,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MJhj2,ubjˆ)�”}”(hhh]”j()�”}”(hŒ?Enabling value for control when using regmap enable/disable ops”h]”hŒ?Enabling value for control when using regmap enable/disable ops”…”�”}”(hjQ,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jM,h´MJhjN,ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj2,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jM,h´MJhj|#ubjh)�”}”(hŒQ``disable_val`` Disabling value for control when using regmap enable/disable ops ”h]”(jn)�”}”(hŒ``disable_val``”h]”j­)�”}”(hjq,h]”hŒ disable_val”…”�”}”(hjs,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjo,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MKhjk,ubjˆ)�”}”(hhh]”j()�”}”(hŒ@Disabling value for control when using regmap enable/disable ops”h]”hŒ@Disabling value for control when using regmap enable/disable ops”…”�”}”(hjŠ,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j†,h´MKhj‡,ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjk,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j†,h´MKhj|#ubjh)�”}”(hŒ``enable_is_inverted`` A flag to indicate set enable_mask bits to disable when using regulator_enable_regmap and friends APIs. ”h]”(jn)�”}”(hŒ``enable_is_inverted``”h]”j­)�”}”(hjª,h]”hŒenable_is_inverted”…”�”}”(hj¬,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¨,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MMhj¤,ubjˆ)�”}”(hhh]”j()�”}”(hŒgA flag to indicate set enable_mask bits to disable when using regulator_enable_regmap and friends APIs.”h]”hŒgA flag to indicate set enable_mask bits to disable when using regulator_enable_regmap and friends APIs.”…”�”}”(hjÃ,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MLhjÀ,ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¤,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¿,h´MMhj|#ubjh)�”}”(hŒA``bypass_reg`` Register for control when using regmap set_bypass ”h]”(jn)�”}”(hŒ``bypass_reg``”h]”j­)�”}”(hjä,h]”hŒ bypass_reg”…”�”}”(hjæ,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjâ,ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MNhjÞ,ubjˆ)�”}”(hhh]”j()�”}”(hŒ1Register for control when using regmap set_bypass”h]”hŒ1Register for control when using regmap set_bypass”…”�”}”(hjý,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jù,h´MNhjú,ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÞ,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jù,h´MNhj|#ubjh)�”}”(hŒ>``bypass_mask`` Mask for control when using regmap set_bypass ”h]”(jn)�”}”(hŒ``bypass_mask``”h]”j­)�”}”(hj-h]”hŒ bypass_mask”…”�”}”(hj-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj-ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MOhj-ubjˆ)�”}”(hhh]”j()�”}”(hŒ-Mask for control when using regmap set_bypass”h]”hŒ-Mask for control when using regmap set_bypass”…”�”}”(hj6-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j2-h´MOhj3-ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j2-h´MOhj|#ubjh)�”}”(hŒJ``bypass_val_on`` Enabling value for control when using regmap set_bypass ”h]”(jn)�”}”(hŒ``bypass_val_on``”h]”j­)�”}”(hjV-h]”hŒ bypass_val_on”…”�”}”(hjX-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjT-ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MPhjP-ubjˆ)�”}”(hhh]”j()�”}”(hŒ7Enabling value for control when using regmap set_bypass”h]”hŒ7Enabling value for control when using regmap set_bypass”…”�”}”(hjo-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jk-h´MPhjl-ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjP-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jk-h´MPhj|#ubjh)�”}”(hŒL``bypass_val_off`` Disabling value for control when using regmap set_bypass ”h]”(jn)�”}”(hŒ``bypass_val_off``”h]”j­)�”}”(hj�-h]”hŒbypass_val_off”…”�”}”(hj‘-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj�-ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MQhj‰-ubjˆ)�”}”(hhh]”j()�”}”(hŒ8Disabling value for control when using regmap set_bypass”h]”hŒ8Disabling value for control when using regmap set_bypass”…”�”}”(hj¨-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j¤-h´MQhj¥-ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj‰-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¤-h´MQhj|#ubjh)�”}”(hŒ[``active_discharge_on`` Disabling value for control when using regmap set_active_discharge ”h]”(jn)�”}”(hŒ``active_discharge_on``”h]”j­)�”}”(hjÈ-h]”hŒactive_discharge_on”…”�”}”(hjÊ-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÆ-ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MUhjÂ-ubjˆ)�”}”(hhh]”j()�”}”(hŒBDisabling value for control when using regmap set_active_discharge”h]”hŒBDisabling value for control when using regmap set_active_discharge”…”�”}”(hjá-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MThjÞ-ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÂ-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÝ-h´MUhj|#ubjh)�”}”(hŒ[``active_discharge_off`` Enabling value for control when using regmap set_active_discharge ”h]”(jn)�”}”(hŒ``active_discharge_off``”h]”j­)�”}”(hj.h]”hŒactive_discharge_off”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MShjü-ubjˆ)�”}”(hhh]”j()�”}”(hŒAEnabling value for control when using regmap set_active_discharge”h]”hŒAEnabling value for control when using regmap set_active_discharge”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MRhj.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjü-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j.h´MShj|#ubjh)�”}”(hŒR``active_discharge_mask`` Mask for control when using regmap set_active_discharge ”h]”(jn)�”}”(hŒ``active_discharge_mask``”h]”j­)�”}”(hj<.h]”hŒactive_discharge_mask”…”�”}”(hj>.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj:.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MWhj6.ubjˆ)�”}”(hhh]”j()�”}”(hŒ7Mask for control when using regmap set_active_discharge”h]”hŒ7Mask for control when using regmap set_active_discharge”…”�”}”(hjU.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MVhjR.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj6.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jQ.h´MWhj|#ubjh)�”}”(hŒU``active_discharge_reg`` Register for control when using regmap set_active_discharge ”h]”(jn)�”}”(hŒ``active_discharge_reg``”h]”j­)�”}”(hjv.h]”hŒactive_discharge_reg”…”�”}”(hjx.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjt.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MYhjp.ubjˆ)�”}”(hhh]”j()�”}”(hŒ;Register for control when using regmap set_active_discharge”h]”hŒ;Register for control when using regmap set_active_discharge”…”�”}”(hj�.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MXhjŒ.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjp.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j‹.h´MYhj|#ubjh)�”}”(hŒI``soft_start_reg`` Register for control when using regmap set_soft_start ”h]”(jn)�”}”(hŒ``soft_start_reg``”h]”j­)�”}”(hj°.h]”hŒsoft_start_reg”…”�”}”(hj².h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj®.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MZhjª.ubjˆ)�”}”(hhh]”j()�”}”(hŒ5Register for control when using regmap set_soft_start”h]”hŒ5Register for control when using regmap set_soft_start”…”�”}”(hjÉ.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÅ.h´MZhjÆ.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjª.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÅ.h´MZhj|#ubjh)�”}”(hŒF``soft_start_mask`` Mask for control when using regmap set_soft_start ”h]”(jn)�”}”(hŒ``soft_start_mask``”h]”j­)�”}”(hjé.h]”hŒsoft_start_mask”…”�”}”(hjë.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjç.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M[hjã.ubjˆ)�”}”(hhh]”j()�”}”(hŒ1Mask for control when using regmap set_soft_start”h]”hŒ1Mask for control when using regmap set_soft_start”…”�”}”(hj/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jþ.h´M[hjÿ.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjã.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jþ.h´M[hj|#ubjh)�”}”(hŒR``soft_start_val_on`` Enabling value for control when using regmap set_soft_start ”h]”(jn)�”}”(hŒ``soft_start_val_on``”h]”j­)�”}”(hj"/h]”hŒsoft_start_val_on”…”�”}”(hj$/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj /ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M]hj/ubjˆ)�”}”(hhh]”j()�”}”(hŒ;Enabling value for control when using regmap set_soft_start”h]”hŒ;Enabling value for control when using regmap set_soft_start”…”�”}”(hj;/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M\hj8/ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j7/h´M]hj|#ubjh)�”}”(hŒG``pull_down_reg`` Register for control when using regmap set_pull_down ”h]”(jn)�”}”(hŒ``pull_down_reg``”h]”j­)�”}”(hj\/h]”hŒ pull_down_reg”…”�”}”(hj^/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjZ/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M^hjV/ubjˆ)�”}”(hhh]”j()�”}”(hŒ4Register for control when using regmap set_pull_down”h]”hŒ4Register for control when using regmap set_pull_down”…”�”}”(hju/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jq/h´M^hjr/ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjV/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jq/h´M^hj|#ubjh)�”}”(hŒD``pull_down_mask`` Mask for control when using regmap set_pull_down ”h]”(jn)�”}”(hŒ``pull_down_mask``”h]”j­)�”}”(hj•/h]”hŒpull_down_mask”…”�”}”(hj—/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj“/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M_hj�/ubjˆ)�”}”(hhh]”j()�”}”(hŒ0Mask for control when using regmap set_pull_down”h]”hŒ0Mask for control when using regmap set_pull_down”…”�”}”(hj®/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jª/h´M_hj«/ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj�/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jª/h´M_hj|#ubjh)�”}”(hŒP``pull_down_val_on`` Enabling value for control when using regmap set_pull_down ”h]”(jn)�”}”(hŒ``pull_down_val_on``”h]”j­)�”}”(hjÎ/h]”hŒpull_down_val_on”…”�”}”(hjÐ/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÌ/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MahjÈ/ubjˆ)�”}”(hhh]”j()�”}”(hŒ:Enabling value for control when using regmap set_pull_down”h]”hŒ:Enabling value for control when using regmap set_pull_down”…”�”}”(hjç/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M`hjä/ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÈ/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jã/h´Mahj|#ubjh)�”}”(hŒ?``ramp_reg`` Register for controlling the regulator ramp-rate. ”h]”(jn)�”}”(hŒ ``ramp_reg``”h]”j­)�”}”(hj0h]”hŒramp_reg”…”�”}”(hj 0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mchj0ubjˆ)�”}”(hhh]”j()�”}”(hŒ1Register for controlling the regulator ramp-rate.”h]”hŒ1Register for controlling the regulator ramp-rate.”…”�”}”(hj!0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j0h´Mchj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j0h´Mchj|#ubjh)�”}”(hŒ:``ramp_mask`` Bitmask for the ramp-rate control register. ”h]”(jn)�”}”(hŒ ``ramp_mask``”h]”j­)�”}”(hjA0h]”hŒ ramp_mask”…”�”}”(hjC0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj?0ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mdhj;0ubjˆ)�”}”(hhh]”j()�”}”(hŒ+Bitmask for the ramp-rate control register.”h]”hŒ+Bitmask for the ramp-rate control register.”…”�”}”(hjZ0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jV0h´MdhjW0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj;0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jV0h´Mdhj|#ubjh)�”}”(hŒ¢``ramp_delay_table`` Table for mapping the regulator ramp-rate values. Values should be given in units of V/S (uV/uS). See the regulator_set_ramp_delay_regmap(). ”h]”(jn)�”}”(hŒ``ramp_delay_table``”h]”j­)�”}”(hjz0h]”hŒramp_delay_table”…”�”}”(hj|0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjx0ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mghjt0ubjˆ)�”}”(hhh]”j()�”}”(hŒŒTable for mapping the regulator ramp-rate values. Values should be given in units of V/S (uV/uS). See the regulator_set_ramp_delay_regmap().”h]”hŒŒTable for mapping the regulator ramp-rate values. Values should be given in units of V/S (uV/uS). See the regulator_set_ramp_delay_regmap().”…”�”}”(hj“0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mehj�0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjt0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j�0h´Mghj|#ubjh)�”}”(hŒ>``n_ramp_values`` number of elements at **ramp_delay_table**. ”h]”(jn)�”}”(hŒ``n_ramp_values``”h]”j­)�”}”(hj´0h]”hŒ n_ramp_values”…”�”}”(hj¶0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj²0ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhhj®0ubjˆ)�”}”(hhh]”j()�”}”(hŒ+number of elements at **ramp_delay_table**.”h]”(hŒnumber of elements at ”…”�”}”(hjÍ0h²hh³Nh´Nubj)�”}”(hŒ**ramp_delay_table**”h]”hŒramp_delay_table”…”�”}”(hjÕ0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÍ0ubhŒ.”…”�”}”(hjÍ0h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÉ0h´MhhjÊ0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj®0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÉ0h´Mhhj|#ubjh)�”}”(hŒD``enable_time`` Time taken for initial enable of regulator (in uS). ”h]”(jn)�”}”(hŒ``enable_time``”h]”j­)�”}”(hjÿ0h]”hŒ enable_time”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjý0ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mjhjù0ubjˆ)�”}”(hhh]”j()�”}”(hŒ3Time taken for initial enable of regulator (in uS).”h]”hŒ3Time taken for initial enable of regulator (in uS).”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j1h´Mjhj1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjù0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j1h´Mjhj|#ubjh)�”}”(hŒD``off_on_delay`` guard time (in uS), before re-enabling a regulator ”h]”(jn)�”}”(hŒ``off_on_delay``”h]”j­)�”}”(hj81h]”hŒ off_on_delay”…”�”}”(hj:1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj61ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mkhj21ubjˆ)�”}”(hhh]”j()�”}”(hŒ2guard time (in uS), before re-enabling a regulator”h]”hŒ2guard time (in uS), before re-enabling a regulator”…”�”}”(hjQ1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jM1h´MkhjN1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj21ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jM1h´Mkhj|#ubjh)�”}”(hŒˆ``poll_enabled_time`` The polling interval (in uS) to use while checking that the regulator was actually enabled. Max upto enable_time. ”h]”(jn)�”}”(hŒ``poll_enabled_time``”h]”j­)�”}”(hjq1h]”hŒpoll_enabled_time”…”�”}”(hjs1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjo1ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mnhjk1ubjˆ)�”}”(hhh]”j()�”}”(hŒqThe polling interval (in uS) to use while checking that the regulator was actually enabled. Max upto enable_time.”h]”hŒqThe polling interval (in uS) to use while checking that the regulator was actually enabled. Max upto enable_time.”…”�”}”(hjŠ1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mmhj‡1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjk1ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j†1h´Mnhj|#ubjh)�”}”(hŒO``of_map_mode`` Maps a hardware mode defined in a DeviceTree to a standard mode”h]”(jn)�”}”(hŒ``of_map_mode``”h]”j­)�”}”(hj«1h]”hŒ of_map_mode”…”�”}”(hj­1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj©1ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mohj¥1ubjˆ)�”}”(hhh]”j()�”}”(hŒ?Maps a hardware mode defined in a DeviceTree to a standard mode”h]”hŒ?Maps a hardware mode defined in a DeviceTree to a standard mode”…”�”}”(hjÄ1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MphjÁ1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¥1ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÀ1h´Mohj|#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj4#ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hjî1h]”hŒ Description”…”�”}”(hjð1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjì1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MshjVh²hubj()�”}”(hŒ¾Each regulator registered with the core is described with a structure of this type and a struct regulator_config. This structure contains the non-varying parts of the regulator description.”h]”hŒ¾Each regulator registered with the core is described with a structure of this type and a struct regulator_config. This structure contains the non-varying parts of the regulator description.”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MhjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_config (C struct)”Œc.regulator_config”hNt”auh1juhjVh²hh³jh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_config”h]”j“)�”}”(hŒstruct regulator_config”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj,2h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj(2h²hh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj:2h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj(2h²hh³j92h´Mubj¼)�”}”(hŒregulator_config”h]”jÂ)�”}”(hj&2h]”hŒregulator_config”…”�”}”(hjL2h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjH2ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj(2h²hh³j92h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj$2h²hh³j92h´Mubah}”(h]”j2ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j92h´Mhj!2h²hubjî)�”}”(hhh]”j()�”}”(hŒDynamic regulator descriptor”h]”hŒDynamic regulator descriptor”…”�”}”(hjn2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÀhjk2h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj!2h²hh³j92h´Mubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjj†2jj†2j‰j‰j‰uh1j‡h²hhjVh³jh´Nubj)�”}”(hX‡**Definition**:: struct regulator_config { struct device *dev; const struct regulator_init_data *init_data; void *driver_data; struct device_node *of_node; struct regmap *regmap; struct gpio_desc *ena_gpiod; }; **Members** ``dev`` struct device for the regulator ``init_data`` platform provided init data, passed through by driver ``driver_data`` private regulator data ``of_node`` OpenFirmware node to parse for device tree bindings (may be NULL). ``regmap`` regmap to use for core regmap helpers if dev_get_regmap() is insufficient. ``ena_gpiod`` GPIO controlling regulator enable.”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj’2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjŽ2ubhŒ:”…”�”}”(hjŽ2h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÄhjŠ2ubj:)�”}”(hŒÙstruct regulator_config { struct device *dev; const struct regulator_init_data *init_data; void *driver_data; struct device_node *of_node; struct regmap *regmap; struct gpio_desc *ena_gpiod; };”h]”hŒÙstruct regulator_config { struct device *dev; const struct regulator_init_data *init_data; void *driver_data; struct device_node *of_node; struct regmap *regmap; struct gpio_desc *ena_gpiod; };”…”�”}”hj«2sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÆhjŠ2ubj()�”}”(hŒ **Members**”h]”j)�”}”(hj¼2h]”hŒMembers”…”�”}”(hj¾2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjº2ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÏhjŠ2ubjc)�”}”(hhh]”(jh)�”}”(hŒ(``dev`` struct device for the regulator ”h]”(jn)�”}”(hŒ``dev``”h]”j­)�”}”(hjÛ2h]”hŒdev”…”�”}”(hjÝ2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÙ2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÇhjÕ2ubjˆ)�”}”(hhh]”j()�”}”(hŒstruct device for the regulator”h]”hŒstruct device for the regulator”…”�”}”(hjô2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jð2h´MÇhjñ2ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÕ2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jð2h´MÇhjÒ2ubjh)�”}”(hŒD``init_data`` platform provided init data, passed through by driver ”h]”(jn)�”}”(hŒ ``init_data``”h]”j­)�”}”(hj3h]”hŒ init_data”…”�”}”(hj3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÈhj3ubjˆ)�”}”(hhh]”j()�”}”(hŒ5platform provided init data, passed through by driver”h]”hŒ5platform provided init data, passed through by driver”…”�”}”(hj-3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j)3h´MÈhj*3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j)3h´MÈhjÒ2ubjh)�”}”(hŒ'``driver_data`` private regulator data ”h]”(jn)�”}”(hŒ``driver_data``”h]”j­)�”}”(hjM3h]”hŒ driver_data”…”�”}”(hjO3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjK3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÉhjG3ubjˆ)�”}”(hhh]”j()�”}”(hŒprivate regulator data”h]”hŒprivate regulator data”…”�”}”(hjf3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jb3h´MÉhjc3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjG3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jb3h´MÉhjÒ2ubjh)�”}”(hŒO``of_node`` OpenFirmware node to parse for device tree bindings (may be NULL). ”h]”(jn)�”}”(hŒ ``of_node``”h]”j­)�”}”(hj†3h]”hŒof_node”…”�”}”(hjˆ3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj„3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MËhj€3ubjˆ)�”}”(hhh]”j()�”}”(hŒBOpenFirmware node to parse for device tree bindings (may be NULL).”h]”hŒBOpenFirmware node to parse for device tree bindings (may be NULL).”…”�”}”(hjŸ3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÊhjœ3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj€3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j›3h´MËhjÒ2ubjh)�”}”(hŒV``regmap`` regmap to use for core regmap helpers if dev_get_regmap() is insufficient. ”h]”(jn)�”}”(hŒ ``regmap``”h]”j­)�”}”(hjÀ3h]”hŒregmap”…”�”}”(hjÂ3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¾3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÍhjº3ubjˆ)�”}”(hhh]”j()�”}”(hŒJregmap to use for core regmap helpers if dev_get_regmap() is insufficient.”h]”hŒJregmap to use for core regmap helpers if dev_get_regmap() is insufficient.”…”�”}”(hjÙ3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÌhjÖ3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjº3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÕ3h´MÍhjÒ2ubjh)�”}”(hŒ0``ena_gpiod`` GPIO controlling regulator enable.”h]”(jn)�”}”(hŒ ``ena_gpiod``”h]”j­)�”}”(hjú3h]”hŒ ena_gpiod”…”�”}”(hjü3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjø3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÍhjô3ubjˆ)�”}”(hhh]”j()�”}”(hŒ"GPIO controlling regulator enable.”h]”hŒ"GPIO controlling regulator enable.”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÎhj4ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjô3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j4h´MÍhjÒ2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjŠ2ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hj=4h]”hŒ Description”…”�”}”(hj?4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj;4ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÑhjVh²hubj()�”}”(hŒÁEach regulator registered with the core is described with a structure of this type and a struct regulator_desc. This structure contains the runtime variable parts of the regulator description.”h]”hŒÁEach regulator registered with the core is described with a structure of this type and a struct regulator_desc. This structure contains the runtime variable parts of the regulator description.”…”�”}”(hjS4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÁhjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_err_state (C struct)”Œc.regulator_err_state”hNt”auh1juhjVh²hh³jh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_err_state”h]”j“)�”}”(hŒstruct regulator_err_state”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj{4h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjw4h²hh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÈubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj‰4h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjw4h²hh³jˆ4h´MÈubj¼)�”}”(hŒregulator_err_state”h]”jÂ)�”}”(hju4h]”hŒregulator_err_state”…”�”}”(hj›4h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj—4ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjw4h²hh³jˆ4h´MÈubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjs4h²hh³jˆ4h´MÈubah}”(h]”jn4ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jˆ4h´MÈhjp4h²hubjî)�”}”(hhh]”j()�”}”(hŒ#regulator error/notification status”h]”hŒ#regulator error/notification status”…”�”}”(hj½4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÚhjº4h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjp4h²hh³jˆ4h´MÈubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjjÕ4jjÕ4j‰j‰j‰uh1j‡h²hhjVh³jh´Nubj)�”}”(hX£**Definition**:: struct regulator_err_state { struct regulator_dev *rdev; unsigned long notifs; unsigned long errors; int possible_errs; }; **Members** ``rdev`` Regulator which status the struct indicates. ``notifs`` Events which have occurred on the regulator. ``errors`` Errors which are active on the regulator. ``possible_errs`` Errors which can be signaled (by given IRQ).”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjá4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÝ4ubhŒ:”…”�”}”(hjÝ4h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÞhjÙ4ubj:)�”}”(hŒŠstruct regulator_err_state { struct regulator_dev *rdev; unsigned long notifs; unsigned long errors; int possible_errs; };”h]”hŒŠstruct regulator_err_state { struct regulator_dev *rdev; unsigned long notifs; unsigned long errors; int possible_errs; };”…”�”}”hjú4sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MàhjÙ4ubj()�”}”(hŒ **Members**”h]”j)�”}”(hj 5h]”hŒMembers”…”�”}”(hj 5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj 5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MçhjÙ4ubjc)�”}”(hhh]”(jh)�”}”(hŒ6``rdev`` Regulator which status the struct indicates. ”h]”(jn)�”}”(hŒ``rdev``”h]”j­)�”}”(hj*5h]”hŒrdev”…”�”}”(hj,5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj(5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÝhj$5ubjˆ)�”}”(hhh]”j()�”}”(hŒ,Regulator which status the struct indicates.”h]”hŒ,Regulator which status the struct indicates.”…”�”}”(hjC5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j?5h´MÝhj@5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj$5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j?5h´MÝhj!5ubjh)�”}”(hŒ8``notifs`` Events which have occurred on the regulator. ”h]”(jn)�”}”(hŒ ``notifs``”h]”j­)�”}”(hjc5h]”hŒnotifs”…”�”}”(hje5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hja5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MÞhj]5ubjˆ)�”}”(hhh]”j()�”}”(hŒ,Events which have occurred on the regulator.”h]”hŒ,Events which have occurred on the regulator.”…”�”}”(hj|5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jx5h´MÞhjy5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj]5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jx5h´MÞhj!5ubjh)�”}”(hŒ5``errors`` Errors which are active on the regulator. ”h]”(jn)�”}”(hŒ ``errors``”h]”j­)�”}”(hjœ5h]”hŒerrors”…”�”}”(hjž5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjš5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mßhj–5ubjˆ)�”}”(hhh]”j()�”}”(hŒ)Errors which are active on the regulator.”h]”hŒ)Errors which are active on the regulator.”…”�”}”(hjµ5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j±5h´Mßhj²5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj–5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j±5h´Mßhj!5ubjh)�”}”(hŒ>``possible_errs`` Errors which can be signaled (by given IRQ).”h]”(jn)�”}”(hŒ``possible_errs``”h]”j­)�”}”(hjÕ5h]”hŒ possible_errs”…”�”}”(hj×5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÓ5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MßhjÏ5ubjˆ)�”}”(hhh]”j()�”}”(hŒ,Errors which can be signaled (by given IRQ).”h]”hŒ,Errors which can be signaled (by given IRQ).”…”�”}”(hjî5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Màhjë5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÏ5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jê5h´Mßhj!5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjÙ4ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_irq_data (C struct)”Œc.regulator_irq_data”hNt”auh1juhjVh²hh³jh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_irq_data”h]”j“)�”}”(hŒstruct regulator_irq_data”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj/6h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj+6h²hh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mæubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj=6h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj+6h²hh³j<6h´Mæubj¼)�”}”(hŒregulator_irq_data”h]”jÂ)�”}”(hj)6h]”hŒregulator_irq_data”…”�”}”(hjO6h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjK6ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj+6h²hh³j<6h´Mæubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj'6h²hh³j<6h´Mæubah}”(h]”j"6ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j<6h´Mæhj$6h²hubjî)�”}”(hhh]”j()�”}”(hŒ(regulator error/notification status data”h]”hŒ(regulator error/notification status data”…”�”}”(hjq6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Méhjn6h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj$6h²hh³j<6h´Mæubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjj‰6jj‰6j‰j‰j‰uh1j‡h²hhjVh³jh´Nubj)�”}”(hXû**Definition**:: struct regulator_irq_data { struct regulator_err_state *states; int num_states; void *data; long opaque; }; **Members** ``states`` Status structs for each of the associated regulators. ``num_states`` Amount of associated regulators. ``data`` Driver data pointer given at regulator_irq_desc. ``opaque`` Value storage for IC driver. Core does not update this. ICs may want to store status register value here at map_event and compare contents at 'renable' callback to see if new problems have been added to status. If that is the case it may be desirable to return REGULATOR_ERROR_CLEARED and not REGULATOR_ERROR_ON to allow IRQ fire again and to generate notifications also for the new issues.”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj•6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj‘6ubhŒ:”…”�”}”(hj‘6h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Míhj�6ubj:)�”}”(hŒ{struct regulator_irq_data { struct regulator_err_state *states; int num_states; void *data; long opaque; };”h]”hŒ{struct regulator_irq_data { struct regulator_err_state *states; int num_states; void *data; long opaque; };”…”�”}”hj®6sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mïhj�6ubj()�”}”(hŒ **Members**”h]”j)�”}”(hj¿6h]”hŒMembers”…”�”}”(hjÁ6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj½6ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Möhj�6ubjc)�”}”(hhh]”(jh)�”}”(hŒA``states`` Status structs for each of the associated regulators. ”h]”(jn)�”}”(hŒ ``states``”h]”j­)�”}”(hjÞ6h]”hŒstates”…”�”}”(hjà6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÜ6ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MìhjØ6ubjˆ)�”}”(hhh]”j()�”}”(hŒ5Status structs for each of the associated regulators.”h]”hŒ5Status structs for each of the associated regulators.”…”�”}”(hj÷6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jó6h´Mìhjô6ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjØ6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jó6h´MìhjÕ6ubjh)�”}”(hŒ0``num_states`` Amount of associated regulators. ”h]”(jn)�”}”(hŒ``num_states``”h]”j­)�”}”(hj7h]”hŒ num_states”…”�”}”(hj7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj7ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Míhj7ubjˆ)�”}”(hhh]”j()�”}”(hŒ Amount of associated regulators.”h]”hŒ Amount of associated regulators.”…”�”}”(hj07h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j,7h´Míhj-7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j,7h´MíhjÕ6ubjh)�”}”(hŒ:``data`` Driver data pointer given at regulator_irq_desc. ”h]”(jn)�”}”(hŒ``data``”h]”j­)�”}”(hjP7h]”hŒdata”…”�”}”(hjR7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjN7ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MîhjJ7ubjˆ)�”}”(hhh]”j()�”}”(hŒ0Driver data pointer given at regulator_irq_desc.”h]”hŒ0Driver data pointer given at regulator_irq_desc.”…”�”}”(hji7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³je7h´Mîhjf7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjJ7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³je7h´MîhjÕ6ubjh)�”}”(hX‘``opaque`` Value storage for IC driver. Core does not update this. ICs may want to store status register value here at map_event and compare contents at 'renable' callback to see if new problems have been added to status. If that is the case it may be desirable to return REGULATOR_ERROR_CLEARED and not REGULATOR_ERROR_ON to allow IRQ fire again and to generate notifications also for the new issues.”h]”(jn)�”}”(hŒ ``opaque``”h]”j­)�”}”(hj‰7h]”hŒopaque”…”�”}”(hj‹7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj‡7ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Môhjƒ7ubjˆ)�”}”(hhh]”j()�”}”(hX†Value storage for IC driver. Core does not update this. ICs may want to store status register value here at map_event and compare contents at 'renable' callback to see if new problems have been added to status. If that is the case it may be desirable to return REGULATOR_ERROR_CLEARED and not REGULATOR_ERROR_ON to allow IRQ fire again and to generate notifications also for the new issues.”h]”hXŠValue storage for IC driver. Core does not update this. ICs may want to store status register value here at map_event and compare contents at ‘renable’ callback to see if new problems have been added to status. If that is the case it may be desirable to return REGULATOR_ERROR_CLEARED and not REGULATOR_ERROR_ON to allow IRQ fire again and to generate notifications also for the new issues.”…”�”}”(hj¢7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MïhjŸ7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjƒ7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jž7h´MôhjÕ6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj�6ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hjÌ7h]”hŒ Description”…”�”}”(hjÎ7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÊ7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MøhjVh²hubj()�”}”(hŒgThis structure is passed to 'map_event' and 'renable' callbacks for reporting regulator status to core.”h]”hŒoThis structure is passed to ‘map_event’ and ‘renable’ callbacks for reporting regulator status to core.”…”�”}”(hjâ7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MõhjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_irq_desc (C struct)”Œc.regulator_irq_desc”hNt”auh1juhjVh²hh³jh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒregulator_irq_desc”h]”j“)�”}”(hŒstruct regulator_irq_desc”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj 8h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj8h²hh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mûubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj8h²hh³j8h´Mûubj¼)�”}”(hŒregulator_irq_desc”h]”jÂ)�”}”(hj8h]”hŒregulator_irq_desc”…”�”}”(hj*8h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj&8ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj8h²hh³j8h´Mûubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj8h²hh³j8h´Mûubah}”(h]”jý7ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j8h´Mûhjÿ7h²hubjî)�”}”(hhh]”j()�”}”(hŒ)notification sender for IRQ based events.”h]”hŒ)notification sender for IRQ based events.”…”�”}”(hjL8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MhjI8h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjÿ7h²hh³j8h´Mûubeh}”(h]”h ]”(jIŒstruct”eh"]”h$]”h&]”jjIjjd8jjd8j‰j‰j‰uh1j‡h²hhjVh³jh´Nubj)�”}”(hXV**Definition**:: struct regulator_irq_desc { const char *name; int fatal_cnt; int reread_ms; int irq_off_ms; bool skip_off; bool high_prio; void *data; int (*die)(struct regulator_irq_data *rid); int (*map_event)(int irq, struct regulator_irq_data *rid, unsigned long *dev_mask); int (*renable)(struct regulator_irq_data *rid); }; **Members** ``name`` The visible name for the IRQ ``fatal_cnt`` If this IRQ is used to signal HW damaging condition it may be best to shut-down regulator(s) or reboot the SOC if error handling is repeatedly failing. If fatal_cnt is given the IRQ handling is aborted if it fails for fatal_cnt times and die() callback (if populated) is called. If die() is not populated poweroff for the system is attempted in order to prevent any further damage. ``reread_ms`` The time which is waited before attempting to re-read status at the worker if IC reading fails. Immediate re-read is done if time is not specified. ``irq_off_ms`` The time which IRQ is kept disabled before re-evaluating the status for devices which keep IRQ disabled for duration of the error. If this is not given the IRQ is left enabled and renable is not called. ``skip_off`` If set to true the IRQ handler will attempt to check if any of the associated regulators are enabled prior to taking other actions. If no regulators are enabled and this is set to true a spurious IRQ is assumed and IRQ_NONE is returned. ``high_prio`` Boolean to indicate that high priority WQ should be used. ``data`` Driver private data pointer which will be passed as such to the renable, map_event and die callbacks in regulator_irq_data. ``die`` Protection callback. If IC status reading or recovery actions fail fatal_cnt times this callback is called or system is powered off. This callback should implement a final protection attempt like disabling the regulator. If protection succeeded die() may return 0. If anything else is returned the core assumes final protection failed and attempts to perform a poweroff as a last resort. ``map_event`` Driver callback to map IRQ status into regulator devices with events / errors. NOTE: callback MUST initialize both the errors and notifs for all rdevs which it signals having active events as core does not clean the map data. REGULATOR_FAILED_RETRY can be returned to indicate that the status reading from IC failed. If this is repeated for fatal_cnt times the core will call die() callback or power-off the system as a last resort to protect the HW. ``renable`` Optional callback to check status (if HW supports that) before re-enabling IRQ. If implemented this should clear the error flags so that errors fetched by regulator_get_error_flags() are updated. If callback is not implemented then errors are assumed to be cleared and IRQ is re-enabled. REGULATOR_FAILED_RETRY can be returned to indicate that the status reading from IC failed. If this is repeated for 'fatal_cnt' times the core will call die() callback or if die() is not populated then attempt to power-off the system as a last resort to protect the HW. Returning zero indicates that the problem in HW has been solved and IRQ will be re-enabled. Returning REGULATOR_ERROR_ON indicates the error condition is still active and keeps IRQ disabled. Please note that returning REGULATOR_ERROR_ON does not retrigger evaluating what events are active or resending notifications. If this is needed you probably want to return zero and allow IRQ to retrigger causing events to be re-evaluated and re-sent.”h]”(j()�”}”(hŒ**Definition**::”h]”(j)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjp8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjl8ubhŒ:”…”�”}”(hjl8h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhjh8ubj:)�”}”(hXastruct regulator_irq_desc { const char *name; int fatal_cnt; int reread_ms; int irq_off_ms; bool skip_off; bool high_prio; void *data; int (*die)(struct regulator_irq_data *rid); int (*map_event)(int irq, struct regulator_irq_data *rid, unsigned long *dev_mask); int (*renable)(struct regulator_irq_data *rid); };”h]”hXastruct regulator_irq_desc { const char *name; int fatal_cnt; int reread_ms; int irq_off_ms; bool skip_off; bool high_prio; void *data; int (*die)(struct regulator_irq_data *rid); int (*map_event)(int irq, struct regulator_irq_data *rid, unsigned long *dev_mask); int (*renable)(struct regulator_irq_data *rid); };”…”�”}”hj‰8sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j9h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhjh8ubj()�”}”(hŒ **Members**”h]”j)�”}”(hjš8h]”hŒMembers”…”�”}”(hjœ8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj˜8ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhjh8ubjc)�”}”(hhh]”(jh)�”}”(hŒ&``name`` The visible name for the IRQ ”h]”(jn)�”}”(hŒ``name``”h]”j­)�”}”(hj¹8h]”hŒname”…”�”}”(hj»8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj·8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj³8ubjˆ)�”}”(hhh]”j()�”}”(hŒThe visible name for the IRQ”h]”hŒThe visible name for the IRQ”…”�”}”(hjÒ8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÎ8h´MhjÏ8ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj³8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÎ8h´Mhj°8ubjh)�”}”(hXŒ``fatal_cnt`` If this IRQ is used to signal HW damaging condition it may be best to shut-down regulator(s) or reboot the SOC if error handling is repeatedly failing. If fatal_cnt is given the IRQ handling is aborted if it fails for fatal_cnt times and die() callback (if populated) is called. If die() is not populated poweroff for the system is attempted in order to prevent any further damage. ”h]”(jn)�”}”(hŒ ``fatal_cnt``”h]”j­)�”}”(hjò8h]”hŒ fatal_cnt”…”�”}”(hjô8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjð8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M hjì8ubjˆ)�”}”(hhh]”j()�”}”(hX}If this IRQ is used to signal HW damaging condition it may be best to shut-down regulator(s) or reboot the SOC if error handling is repeatedly failing. If fatal_cnt is given the IRQ handling is aborted if it fails for fatal_cnt times and die() callback (if populated) is called. If die() is not populated poweroff for the system is attempted in order to prevent any further damage.”h]”hX}If this IRQ is used to signal HW damaging condition it may be best to shut-down regulator(s) or reboot the SOC if error handling is repeatedly failing. If fatal_cnt is given the IRQ handling is aborted if it fails for fatal_cnt times and die() callback (if populated) is called. If die() is not populated poweroff for the system is attempted in order to prevent any further damage.”…”�”}”(hj 9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjì8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j9h´M hj°8ubjh)�”}”(hŒ¢``reread_ms`` The time which is waited before attempting to re-read status at the worker if IC reading fails. Immediate re-read is done if time is not specified. ”h]”(jn)�”}”(hŒ ``reread_ms``”h]”j­)�”}”(hj,9h]”hŒ reread_ms”…”�”}”(hj.9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj*9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj&9ubjˆ)�”}”(hhh]”j()�”}”(hŒ“The time which is waited before attempting to re-read status at the worker if IC reading fails. Immediate re-read is done if time is not specified.”h]”hŒ“The time which is waited before attempting to re-read status at the worker if IC reading fails. Immediate re-read is done if time is not specified.”…”�”}”(hjE9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M hjB9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj&9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jA9h´Mhj°8ubjh)�”}”(hŒÚ``irq_off_ms`` The time which IRQ is kept disabled before re-evaluating the status for devices which keep IRQ disabled for duration of the error. If this is not given the IRQ is left enabled and renable is not called. ”h]”(jn)�”}”(hŒ``irq_off_ms``”h]”j­)�”}”(hjf9h]”hŒ irq_off_ms”…”�”}”(hjh9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjd9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj`9ubjˆ)�”}”(hhh]”j()�”}”(hŒÊThe time which IRQ is kept disabled before re-evaluating the status for devices which keep IRQ disabled for duration of the error. If this is not given the IRQ is left enabled and renable is not called.”h]”hŒÊThe time which IRQ is kept disabled before re-evaluating the status for devices which keep IRQ disabled for duration of the error. If this is not given the IRQ is left enabled and renable is not called.”…”�”}”(hj9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj|9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj`9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j{9h´Mhj°8ubjh)�”}”(hŒú``skip_off`` If set to true the IRQ handler will attempt to check if any of the associated regulators are enabled prior to taking other actions. If no regulators are enabled and this is set to true a spurious IRQ is assumed and IRQ_NONE is returned. ”h]”(jn)�”}”(hŒ ``skip_off``”h]”j­)�”}”(hj 9h]”hŒskip_off”…”�”}”(hj¢9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjž9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhjš9ubjˆ)�”}”(hhh]”j()�”}”(hŒìIf set to true the IRQ handler will attempt to check if any of the associated regulators are enabled prior to taking other actions. If no regulators are enabled and this is set to true a spurious IRQ is assumed and IRQ_NONE is returned.”h]”hŒìIf set to true the IRQ handler will attempt to check if any of the associated regulators are enabled prior to taking other actions. If no regulators are enabled and this is set to true a spurious IRQ is assumed and IRQ_NONE is returned.”…”�”}”(hj¹9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj¶9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjš9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jµ9h´Mhj°8ubjh)�”}”(hŒH``high_prio`` Boolean to indicate that high priority WQ should be used. ”h]”(jn)�”}”(hŒ ``high_prio``”h]”j­)�”}”(hjÚ9h]”hŒ high_prio”…”�”}”(hjÜ9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjØ9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´MhjÔ9ubjˆ)�”}”(hhh]”j()�”}”(hŒ9Boolean to indicate that high priority WQ should be used.”h]”hŒ9Boolean to indicate that high priority WQ should be used.”…”�”}”(hjó9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jï9h´Mhjð9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÔ9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jï9h´Mhj°8ubjh)�”}”(hŒ…``data`` Driver private data pointer which will be passed as such to the renable, map_event and die callbacks in regulator_irq_data. ”h]”(jn)�”}”(hŒ``data``”h]”j­)�”}”(hj:h]”hŒdata”…”�”}”(hj:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj :ubjˆ)�”}”(hhh]”j()�”}”(hŒ{Driver private data pointer which will be passed as such to the renable, map_event and die callbacks in regulator_irq_data.”h]”hŒ{Driver private data pointer which will be passed as such to the renable, map_event and die callbacks in regulator_irq_data.”…”�”}”(hj,:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhj):ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj :ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j(:h´Mhj°8ubjh)�”}”(hXŒ``die`` Protection callback. If IC status reading or recovery actions fail fatal_cnt times this callback is called or system is powered off. This callback should implement a final protection attempt like disabling the regulator. If protection succeeded die() may return 0. If anything else is returned the core assumes final protection failed and attempts to perform a poweroff as a last resort. ”h]”(jn)�”}”(hŒ``die``”h]”j­)�”}”(hjM:h]”hŒdie”…”�”}”(hjO:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjK:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M hjG:ubjˆ)�”}”(hhh]”j()�”}”(hXƒProtection callback. If IC status reading or recovery actions fail fatal_cnt times this callback is called or system is powered off. This callback should implement a final protection attempt like disabling the regulator. If protection succeeded die() may return 0. If anything else is returned the core assumes final protection failed and attempts to perform a poweroff as a last resort.”h]”hXƒProtection callback. If IC status reading or recovery actions fail fatal_cnt times this callback is called or system is powered off. This callback should implement a final protection attempt like disabling the regulator. If protection succeeded die() may return 0. If anything else is returned the core assumes final protection failed and attempts to perform a poweroff as a last resort.”…”�”}”(hjf:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´Mhjc:ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjG:ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jb:h´M hj°8ubjh)�”}”(hXÑ``map_event`` Driver callback to map IRQ status into regulator devices with events / errors. NOTE: callback MUST initialize both the errors and notifs for all rdevs which it signals having active events as core does not clean the map data. REGULATOR_FAILED_RETRY can be returned to indicate that the status reading from IC failed. If this is repeated for fatal_cnt times the core will call die() callback or power-off the system as a last resort to protect the HW. ”h]”(jn)�”}”(hŒ ``map_event``”h]”j­)�”}”(hj‡:h]”hŒ map_event”…”�”}”(hj‰:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj…:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M(hj�:ubjˆ)�”}”(hhh]”j()�”}”(hXÂDriver callback to map IRQ status into regulator devices with events / errors. NOTE: callback MUST initialize both the errors and notifs for all rdevs which it signals having active events as core does not clean the map data. REGULATOR_FAILED_RETRY can be returned to indicate that the status reading from IC failed. If this is repeated for fatal_cnt times the core will call die() callback or power-off the system as a last resort to protect the HW.”h]”hXÂDriver callback to map IRQ status into regulator devices with events / errors. NOTE: callback MUST initialize both the errors and notifs for all rdevs which it signals having active events as core does not clean the map data. REGULATOR_FAILED_RETRY can be returned to indicate that the status reading from IC failed. If this is repeated for fatal_cnt times the core will call die() callback or power-off the system as a last resort to protect the HW.”…”�”}”(hj :h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M!hj�:ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj�:ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jœ:h´M(hj°8ubjh)�”}”(hXó``renable`` Optional callback to check status (if HW supports that) before re-enabling IRQ. If implemented this should clear the error flags so that errors fetched by regulator_get_error_flags() are updated. If callback is not implemented then errors are assumed to be cleared and IRQ is re-enabled. REGULATOR_FAILED_RETRY can be returned to indicate that the status reading from IC failed. If this is repeated for 'fatal_cnt' times the core will call die() callback or if die() is not populated then attempt to power-off the system as a last resort to protect the HW. Returning zero indicates that the problem in HW has been solved and IRQ will be re-enabled. Returning REGULATOR_ERROR_ON indicates the error condition is still active and keeps IRQ disabled. Please note that returning REGULATOR_ERROR_ON does not retrigger evaluating what events are active or resending notifications. If this is needed you probably want to return zero and allow IRQ to retrigger causing events to be re-evaluated and re-sent.”h]”(jn)�”}”(hŒ ``renable``”h]”j­)�”}”(hjÁ:h]”hŒrenable”…”�”}”(hjÃ:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¿:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M9hj»:ubjˆ)�”}”(hhh]”j()�”}”(hXçOptional callback to check status (if HW supports that) before re-enabling IRQ. If implemented this should clear the error flags so that errors fetched by regulator_get_error_flags() are updated. If callback is not implemented then errors are assumed to be cleared and IRQ is re-enabled. REGULATOR_FAILED_RETRY can be returned to indicate that the status reading from IC failed. If this is repeated for 'fatal_cnt' times the core will call die() callback or if die() is not populated then attempt to power-off the system as a last resort to protect the HW. Returning zero indicates that the problem in HW has been solved and IRQ will be re-enabled. Returning REGULATOR_ERROR_ON indicates the error condition is still active and keeps IRQ disabled. Please note that returning REGULATOR_ERROR_ON does not retrigger evaluating what events are active or resending notifications. If this is needed you probably want to return zero and allow IRQ to retrigger causing events to be re-evaluated and re-sent.”•h]”hXëOptional callback to check status (if HW supports that) before re-enabling IRQ. If implemented this should clear the error flags so that errors fetched by regulator_get_error_flags() are updated. If callback is not implemented then errors are assumed to be cleared and IRQ is re-enabled. REGULATOR_FAILED_RETRY can be returned to indicate that the status reading from IC failed. If this is repeated for ‘fatal_cnt’ times the core will call die() callback or if die() is not populated then attempt to power-off the system as a last resort to protect the HW. Returning zero indicates that the problem in HW has been solved and IRQ will be re-enabled. Returning REGULATOR_ERROR_ON indicates the error condition is still active and keeps IRQ disabled. Please note that returning REGULATOR_ERROR_ON does not retrigger evaluating what events are active or resending notifications. If this is needed you probably want to return zero and allow IRQ to retrigger causing events to be re-evaluated and re-sent.”…”�”}”(hjÚ:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M)hj×:ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj»:ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÖ:h´M9hj°8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjh8ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³jh´Nubj()�”}”(hŒ**Description**”h]”j)�”}”(hj;h]”hŒ Description”…”�”}”(hj;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj;ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M=hjVh²hubj()�”}”(hŒIThis structure is used for registering regulator IRQ notification helper.”h]”hŒIThis structure is used for registering regulator IRQ notification helper.”…”�”}”(hj;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œf/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:166: ./include/linux/regulator/driver.h”h´M:hjVh²hubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_get (C function)”Œc.regulator_get”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒEstruct regulator * regulator_get (struct device *dev, const char *id)”h]”j“)�”}”(hŒCstruct regulator *regulator_get(struct device *dev, const char *id)”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjB;h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj>;h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjP;h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj>;h²hh³jO;h´M ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hja;h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj^;ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”Œ identifier”Œ reftarget”jc;Œmodname”NŒ classname”NŒ c:parent_key”Œsphinx.domains.c”Œ LookupKey”“”)�”}”Œdata”]”j|;Œ ASTIdentifier”“”)�”}”jw;Œ regulator_get”sbŒc.regulator_get”†”asbuh1hhj>;h²hh³jO;h´M ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŠ;h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj>;h²hh³jO;h´M ubhŒdesc_sig_punctuation”“”)�”}”(hŒ*”h]”hŒ*”…”�”}”(hjš;h²hh³Nh´Nubah}”(h]”h ]”Œp”ah"]”h$]”h&]”uh1j˜;hj>;h²hh³jO;h´M ubj¼)�”}”(hŒ regulator_get”h]”jÂ)�”}”(hj‡;h]”hŒ regulator_get”…”�”}”(hj­;h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj©;ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj>;h²hh³jO;h´M ubhŒdesc_parameterlist”“”)�”}”(hŒ$(struct device *dev, const char *id)”h]”(hŒdesc_parameter”“”)�”}”(hŒstruct device *dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjÌ;h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjÈ;ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÙ;h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÈ;ubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjê;h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjç;ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jì;Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j…;Œc.regulator_get”†”asbuh1hhjÈ;ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÈ;ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjÈ;ubjÂ)�”}”(hŒdev”h]”hŒdev”…”�”}”(hj#<h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÈ;ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjÂ;ubjÇ;)�”}”(hŒconst char *id”h]”(j™)�”}”(hŒconst”h]”hŒconst”…”�”}”(hj<<h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj8<ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjJ<h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj8<ubhŒdesc_sig_keyword_type”“”)�”}”(hŒchar”h]”hŒchar”…”�”}”(hjZ<h²hh³Nh´Nubah}”(h]”h ]”Œkt”ah"]”h$]”h&]”uh1jX<hj8<ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hji<h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj8<ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjw<h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj8<ubjÂ)�”}”(hŒid”h]”hŒid”…”�”}”(hj„<h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj8<ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjÂ;ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj>;h²hh³jO;h´M ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj:;h²hh³jO;h´M ubah}”(h]”j5;ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jO;h´M hj7;h²hubjî)�”}”(hhh]”j()�”}”(hŒ-lookup and obtain a reference to a regulator.”h]”hŒ-lookup and obtain a reference to a regulator.”…”�”}”(hj®<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hj«<h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj7;h²hh³jO;h´M ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjÆ<jjÆ<j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX**Parameters** ``struct device *dev`` device for regulator "consumer" ``const char *id`` Supply name or regulator ID. **Description** Use of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet. **Return** Pointer to a :c:type:`struct regulator ` corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjÐ<h]”hŒ Parameters”…”�”}”(hjÒ<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÎ<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjÊ<ubjc)�”}”(hhh]”(jh)�”}”(hŒ7``struct device *dev`` device for regulator "consumer" ”h]”(jn)�”}”(hŒ``struct device *dev``”h]”j­)�”}”(hjï<h]”hŒstruct device *dev”…”�”}”(hjñ<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjí<ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjé<ubjˆ)�”}”(hhh]”j()�”}”(hŒdevice for regulator "consumer"”h]”hŒ#device for regulator “consumerâ€�”…”�”}”(hj=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j=h´M hj=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjé<ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j=h´M hjæ<ubjh)�”}”(hŒ0``const char *id`` Supply name or regulator ID. ”h]”(jn)�”}”(hŒ``const char *id``”h]”j­)�”}”(hj(=h]”hŒconst char *id”…”�”}”(hj*=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj&=ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hj"=ubjˆ)�”}”(hhh]”j()�”}”(hŒSupply name or regulator ID.”h]”hŒSupply name or regulator ID.”…”�”}”(hjA=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j==h´M hj>=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj"=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j==h´M hjæ<ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjÊ<ubj()�”}”(hŒ**Description**”h]”j)�”}”(hjc=h]”hŒ Description”…”�”}”(hje=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhja=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjÊ<ubj()�”}”(hŒàUse of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet.”h]”hŒàUse of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet.”…”�”}”(hjy=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjÊ<ubj()�”}”(hŒ **Return**”h]”j)�”}”(hjŠ=h]”hŒReturn”…”�”}”(hjŒ=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjˆ=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjÊ<ubj()�”}”(hŒ‹Pointer to a :c:type:`struct regulator ` corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”h]”(hŒ Pointer to a ”…”�”}”(hj =h²hh³Nh´Nubh)�”}”(hŒ&:c:type:`struct regulator `”h]”j­)�”}”(hjª=h]”hŒstruct regulator”…”�”}”(hj¬=h²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-type”eh"]”h$]”h&]”uh1j¬hj¨=ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œtype”Œ refexplicit”ˆŒrefwarn”‰j{;j~;)�”}”j�;]”sbj[Œ regulator”uh1hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hj =ubhŒX corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”…”�”}”(hj =h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÊ=h´M hjÊ<ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ$regulator_get_exclusive (C function)”Œc.regulator_get_exclusive”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒOstruct regulator * regulator_get_exclusive (struct device *dev, const char *id)”h]”j“)�”}”(hŒMstruct regulator *regulator_get_exclusive(struct device *dev, const char *id)”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjõ=h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjñ=h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjñ=h²hh³j>h´M ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj>ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j>Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;Œregulator_get_exclusive”sbŒc.regulator_get_exclusive”†”asbuh1hhjñ=h²hh³j>h´M ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj5>h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjñ=h²hh³j>h´M ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjC>h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjñ=h²hh³j>h´M ubj¼)�”}”(hŒregulator_get_exclusive”h]”jÂ)�”}”(hj2>h]”hŒregulator_get_exclusive”…”�”}”(hjT>h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjP>ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjñ=h²hh³j>h´M ubjÁ;)�”}”(hŒ$(struct device *dev, const char *id)”h]”(jÇ;)�”}”(hŒstruct device *dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjo>h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjk>ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj|>h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjk>ubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hj�>h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjŠ>ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j�>Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j0>Œc.regulator_get_exclusive”†”asbuh1hhjk>ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj«>h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjk>ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj¹>h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjk>ubjÂ)�”}”(hŒdev”h]”hŒdev”…”�”}”(hjÆ>h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjk>ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjg>ubjÇ;)�”}”(hŒconst char *id”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hjß>h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjÛ>ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjì>h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÛ>ubjY<)�”}”(hŒchar”h]”hŒchar”…”�”}”(hjú>h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjÛ>ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÛ>ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjÛ>ubjÂ)�”}”(hŒid”h]”hŒid”…”�”}”(hj#?h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÛ>ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjg>ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjñ=h²hh³j>h´M ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjí=h²hh³j>h´M ubah}”(h]”jè=ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j>h´M hjê=h²hubjî)�”}”(hhh]”j()�”}”(hŒ'obtain exclusive access to a regulator.”h]”hŒ'obtain exclusive access to a regulator.”…”�”}”(hjM?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjJ?h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjê=h²hh³j>h´M ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjje?jje?j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX�**Parameters** ``struct device *dev`` device for regulator "consumer" ``const char *id`` Supply name or regulator ID. **Description** Other consumers will be unable to obtain this regulator while this reference is held and the use count for the regulator will be initialised to reflect the current state of the regulator. This is intended for use by consumers which cannot tolerate shared use of the regulator such as those which need to force the regulator off for correct operation of the hardware they are controlling. Use of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet. **Return** Pointer to a :c:type:`struct regulator ` corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjo?h]”hŒ Parameters”…”�”}”(hjq?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjm?ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hji?ubjc)�”}”(hhh]”(jh)�”}”(hŒ7``struct device *dev`` device for regulator "consumer" ”h]”(jn)�”}”(hŒ``struct device *dev``”h]”j­)�”}”(hjŽ?h]”hŒstruct device *dev”…”�”}”(hj�?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjŒ?ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjˆ?ubjˆ)�”}”(hhh]”j()�”}”(hŒdevice for regulator "consumer"”h]”hŒ#device for regulator “consumerâ€�”…”�”}”(hj§?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j£?h´M hj¤?ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjˆ?ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j£?h´M hj…?ubjh)�”}”(hŒ0``const char *id`` Supply name or regulator ID. ”h]”(jn)�”}”(hŒ``const char *id``”h]”j­)�”}”(hjÇ?h]”hŒconst char *id”…”�”}”(hjÉ?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÅ?ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjÁ?ubjˆ)�”}”(hhh]”j()�”}”(hŒSupply name or regulator ID.”h]”hŒSupply name or regulator ID.”…”�”}”(hjà?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÜ?h´M hjÝ?ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÁ?ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÜ?h´M hj…?ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhji?ubj()�”}”(hŒ**Description**”h]”j)�”}”(hj@h]”hŒ Description”…”�”}”(hj@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj@ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hji?ubj()�”}”(hŒ»Other consumers will be unable to obtain this regulator while this reference is held and the use count for the regulator will be initialised to reflect the current state of the regulator.”h]”hŒ»Other consumers will be unable to obtain this regulator while this reference is held and the use count for the regulator will be initialised to reflect the current state of the regulator.”…”�”}”(hj@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hji?ubj()�”}”(hŒÇThis is intended for use by consumers which cannot tolerate shared use of the regulator such as those which need to force the regulator off for correct operation of the hardware they are controlling.”h]”hŒÇThis is intended for use by consumers which cannot tolerate shared use of the regulator such as those which need to force the regulator off for correct operation of the hardware they are controlling.”…”�”}”(hj'@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M! hji?ubj()�”}”(hŒàUse of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet.”h]”hŒàUse of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet.”…”�”}”(hj6@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M& hji?ubj()�”}”(hŒ **Return**”h]”j)�”}”(hjG@h]”hŒReturn”…”�”}”(hjI@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjE@ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M+ hji?ubj()�”}”(hŒ‹Pointer to a :c:type:`struct regulator ` corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”h]”(hŒ Pointer to a ”…”�”}”(hj]@h²hh³Nh´Nubh)�”}”(hŒ&:c:type:`struct regulator `”h]”j­)�”}”(hjg@h]”hŒstruct regulator”…”�”}”(hji@h²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-type”eh"]”h$]”h&]”uh1j¬hje@ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œtype”Œ refexplicit”ˆŒrefwarn”‰j{;jÆ=j[Œ regulator”uh1hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M, hj]@ubhŒX corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”…”�”}”(hj]@h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j„@h´M, hji?ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ#regulator_get_optional (C function)”Œc.regulator_get_optional”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒNstruct regulator * regulator_get_optional (struct device *dev, const char *id)”h]”j“)�”}”(hŒLstruct regulator *regulator_get_optional(struct device *dev, const char *id)”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj¯@h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj«@h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M6 ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj½@h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj«@h²hh³j¼@h´M6 ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjÎ@h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjË@ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jÐ@Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;Œregulator_get_optional”sbŒc.regulator_get_optional”†”asbuh1hhj«@h²hh³j¼@h´M6 ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjï@h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj«@h²hh³j¼@h´M6 ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjý@h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj«@h²hh³j¼@h´M6 ubj¼)�”}”(hŒregulator_get_optional”h]”jÂ)�”}”(hjì@h]”hŒregulator_get_optional”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj Aubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj«@h²hh³j¼@h´M6 ubjÁ;)�”}”(hŒ$(struct device *dev, const char *id)”h]”(jÇ;)�”}”(hŒstruct device *dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj)Ah²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj%Aubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj6Ah²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj%Aubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjGAh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjDAubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jIAŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”jê@Œc.regulator_get_optional”†”asbuh1hhj%Aubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjeAh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj%Aubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjsAh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj%AubjÂ)�”}”(hŒdev”h]”hŒdev”…”�”}”(hj€Ah²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj%Aubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj!AubjÇ;)�”}”(hŒconst char *id”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hj™Ah²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj•Aubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¦Ah²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj•AubjY<)�”}”(hŒchar”h]”hŒchar”…”�”}”(hj´Ah²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj•Aubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÂAh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj•Aubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjÐAh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj•AubjÂ)�”}”(hŒid”h]”hŒid”…”�”}”(hjÝAh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj•Aubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj!Aubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj«@h²hh³j¼@h´M6 ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj§@h²hh³j¼@h´M6 ubah}”(h]”j¢@ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j¼@h´M6 hj¤@h²hubjî)�”}”(hhh]”j()�”}”(hŒ&obtain optional access to a regulator.”h]”hŒ&obtain optional access to a regulator.”…”�”}”(hjBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M6 hjBh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj¤@h²hh³j¼@h´M6 ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjBjjBj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hXR**Parameters** ``struct device *dev`` device for regulator "consumer" ``const char *id`` Supply name or regulator ID. **Description** This is intended for use by consumers for devices which can have some supplies unconnected in normal use, such as some MMC devices. It can allow the regulator core to provide stub supplies for other supplies requested using normal regulator_get() calls without disrupting the operation of drivers that can handle absent supplies. Use of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet. **Return** Pointer to a :c:type:`struct regulator ` corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj)Bh]”hŒ Parameters”…”�”}”(hj+Bh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj'Bubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M: hj#Bubjc)�”}”(hhh]”(jh)�”}”(hŒ7``struct device *dev`` device for regulator "consumer" ”h]”(jn)�”}”(hŒ``struct device *dev``”h]”j­)�”}”(hjHBh]”hŒstruct device *dev”…”�”}”(hjJBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjFBubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M7 hjBBubjˆ)�”}”(hhh]”j()�”}”(hŒdevice for regulator "consumer"”h]”hŒ#device for regulator “consumerâ€�”…”�”}”(hjaBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j]Bh´M7 hj^Bubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjBBubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j]Bh´M7 hj?Bubjh)�”}”(hŒ0``const char *id`` Supply name or regulator ID. ”h]”(jn)�”}”(hŒ``const char *id``”h]”j­)�”}”(hj�Bh]”hŒconst char *id”…”�”}”(hjƒBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjBubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M8 hj{Bubjˆ)�”}”(hhh]”j()�”}”(hŒSupply name or regulator ID.”h]”hŒSupply name or regulator ID.”…”�”}”(hjšBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j–Bh´M8 hj—Bubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj{Bubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j–Bh´M8 hj?Bubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj#Bubj()�”}”(hŒ**Description**”h]”j)�”}”(hj¼Bh]”hŒ Description”…”�”}”(hj¾Bh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjºBubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M: hj#Bubj()�”}”(hXIThis is intended for use by consumers for devices which can have some supplies unconnected in normal use, such as some MMC devices. It can allow the regulator core to provide stub supplies for other supplies requested using normal regulator_get() calls without disrupting the operation of drivers that can handle absent supplies.”h]”hXIThis is intended for use by consumers for devices which can have some supplies unconnected in normal use, such as some MMC devices. It can allow the regulator core to provide stub supplies for other supplies requested using normal regulator_get() calls without disrupting the operation of drivers that can handle absent supplies.”…”�”}”(hjÒBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M9 hj#Bubj()�”}”(hŒàUse of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet.”h]”hŒàUse of supply names configured via set_consumer_device_supply() is strongly encouraged. It is recommended that the supply name used should match the name used for the supply and/or the relevant device pins in the datasheet.”…”�”}”(hjáBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M@ hj#Bubj()�”}”(hŒ **Return**”h]”j)�”}”(hjòBh]”hŒReturn”…”�”}”(hjôBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjðBubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´ME hj#Bubj()�”}”(hŒ‹Pointer to a :c:type:`struct regulator ` corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”h]”(hŒ Pointer to a ”…”�”}”(hjCh²hh³Nh´Nubh)�”}”(hŒ&:c:type:`struct regulator `”h]”j­)�”}”(hjCh]”hŒstruct regulator”…”�”}”(hjCh²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-type”eh"]”h$]”h&]”uh1j¬hjCubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œtype”Œ refexplicit”ˆŒrefwarn”‰j{;jÆ=j[Œ regulator”uh1hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MF hjCubhŒX corresponding to the regulator producer, or an ERR_PTR() encoded negative error number.”…”�”}”(hjCh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j/Ch´MF hj#Bubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_put (C function)”Œc.regulator_put”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ0void regulator_put (struct regulator *regulator)”h]”j“)�”}”(hŒ/void regulator_put(struct regulator *regulator)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjZCh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjVCh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M~ ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjiCh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjVCh²hh³jhCh´M~ ubj¼)�”}”(hŒ regulator_put”h]”jÂ)�”}”(hŒ regulator_put”h]”hŒ regulator_put”…”�”}”(hj{Ch²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjwCubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjVCh²hh³jhCh´M~ ubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj—Ch²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj“Cubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¤Ch²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj“Cubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjµCh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj²Cubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j·CŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j}CsbŒc.regulator_put”†”asbuh1hhj“Cubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÕCh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj“Cubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjãCh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj“CubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjðCh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj“Cubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj�Cubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjVCh²hh³jhCh´M~ ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjRCh²hh³jhCh´M~ ubah}”(h]”jMCah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jhCh´M~ hjOCh²hubjî)�”}”(hhh]”j()�”}”(hŒ"free" the regulator source”h]”hŒ“freeâ€� the regulator source”…”�”}”(hjDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M~ hjDh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjOCh²hh³jhCh´M~ ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj2Djj2Dj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒç**Parameters** ``struct regulator *regulator`` regulator source **Note** drivers must ensure that all regulator_enable calls made on this regulator source are balanced by regulator_disable calls prior to calling this function.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj:Dubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M‚ hj6Dubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj[Dh]”hŒstruct regulator *regulator”…”�”}”(hj]Dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjYDubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjUDubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjtDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jpDh´M hjqDubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjUDubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jpDh´M hjRDubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhj6Dubj()�”}”(hŒ**Note**”h]”j)�”}”(hj–Dh]”hŒNote”…”�”}”(hj˜Dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj”Dubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M� hj6Dubj()�”}”(hŒ™drivers must ensure that all regulator_enable calls made on this regulator source are balanced by regulator_disable calls prior to calling this function.”h]”hŒ™drivers must ensure that all regulator_enable calls made on this regulator source are balanced by regulator_disable calls prior to calling this function.”…”�”}”(hj¬Dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M� hj6Dubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ,regulator_register_supply_alias (C function)”Œ!c.regulator_register_supply_alias”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒxint regulator_register_supply_alias (struct device *dev, const char *id, struct device *alias_dev, const char *alias_id)”h]”j“)�”}”(hŒwint regulator_register_supply_alias(struct device *dev, const char *id, struct device *alias_dev, const char *alias_id)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjÛDh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj×Dh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MŽ ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjêDh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj×Dh²hh³jéDh´MŽ ubj¼)�”}”(hŒregulator_register_supply_alias”h]”jÂ)�”}”(hŒregulator_register_supply_alias”h]”hŒregulator_register_supply_alias”…”�”}”(hjüDh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjøDubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj×Dh²hh³jéDh´MŽ ubjÁ;)�”}”(hŒT(struct device *dev, const char *id, struct device *alias_dev, const char *alias_id)”h]”(jÇ;)�”}”(hŒstruct device *dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjEubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj%Eh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjEubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hj6Eh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj3Eubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j8EŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jþDsbŒ!c.regulator_register_supply_alias”†”asbuh1hhjEubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjVEh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjEubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjdEh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjEubjÂ)�”}”(hŒdev”h]”hŒdev”…”�”}”(hjqEh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjEubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjEubjÇ;)�”}”(hŒconst char *id”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hjŠEh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj†Eubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj—Eh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj†EubjY<)�”}”(hŒchar”h]”hŒchar”…”�”}”(hj¥Eh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj†Eubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj³Eh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj†Eubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjÁEh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj†EubjÂ)�”}”(hŒid”h]”hŒid”…”�”}”(hjÎEh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj†Eubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjEubjÇ;)�”}”(hŒstruct device *alias_dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjçEh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjãEubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjôEh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjãEubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjFh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjFubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jFŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”jREŒ!c.regulator_register_supply_alias”†”asbuh1hhjãEubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj#Fh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjãEubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj1Fh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjãEubjÂ)�”}”(hŒ alias_dev”h]”hŒ alias_dev”…”�”}”(hj>Fh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjãEubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjEubjÇ;)�”}”(hŒconst char *alias_id”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hjWFh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjSFubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjdFh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjSFubjY<)�”}”(hŒchar”h]”hŒchar”…”�”}”(hjrFh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjSFubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj€Fh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjSFubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjŽFh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjSFubjÂ)�”}”(hŒalias_id”h]”hŒalias_id”…”�”}”(hj›Fh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjSFubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjEubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj×Dh²hh³jéDh´MŽ ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjÓDh²hh³jéDh´MŽ ubah}”(h]”jÎDah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jéDh´MŽ hjÐDh²hubjî)�”}”(hhh]”j()�”}”(hŒ&Provide device alias for supply lookup”h]”hŒ&Provide device alias for supply lookup”…”�”}”(hjÅFh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MŽ hjÂFh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjÐDh²hh³jéDh´MŽ ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjÝFjjÝFj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hXå**Parameters** ``struct device *dev`` device that will be given as the regulator "consumer" ``const char *id`` Supply name or regulator ID ``struct device *alias_dev`` device that should be used to lookup the supply ``const char *alias_id`` Supply name or regulator ID that should be used to lookup the supply **Description** All lookups for id on dev will instead be conducted for alias_id on alias_dev. **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjçFh]”hŒ Parameters”…”�”}”(hjéFh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjåFubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M’ hjáFubjc)�”}”(hhh]”(jh)�”}”(hŒM``struct device *dev`` device that will be given as the regulator "consumer" ”h]”(jn)�”}”(hŒ``struct device *dev``”h]”j­)�”}”(hjGh]”hŒstruct device *dev”…”�”}”(hjGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjGubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M� hjGubjˆ)�”}”(hhh]”j()�”}”(hŒ5device that will be given as the regulator "consumer"”h]”hŒ9device that will be given as the regulator “consumerâ€�”…”�”}”(hjGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jGh´M� hjGubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjGubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jGh´M� hjýFubjh)�”}”(hŒ/``const char *id`` Supply name or regulator ID ”h]”(jn)�”}”(hŒ``const char *id``”h]”j­)�”}”(hj?Gh]”hŒconst char *id”…”�”}”(hjAGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj=Gubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M‘ hj9Gubjˆ)�”}”(hhh]”j()�”}”(hŒSupply name or regulator ID”h]”hŒSupply name or regulator ID”…”�”}”(hjXGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jTGh´M‘ hjUGubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj9Gubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jTGh´M‘ hjýFubjh)�”}”(hŒM``struct device *alias_dev`` device that should be used to lookup the supply ”h]”(jn)�”}”(hŒ``struct device *alias_dev``”h]”j­)�”}”(hjxGh]”hŒstruct device *alias_dev”…”�”}”(hjzGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjvGubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M’ hjrGubjˆ)�”}”(hhh]”j()�”}”(hŒ/device that should be used to lookup the supply”h]”hŒ/device that should be used to lookup the supply”…”�”}”(hj‘Gh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j�Gh´M’ hjŽGubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjrGubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j�Gh´M’ hjýFubjh)�”}”(hŒ^``const char *alias_id`` Supply name or regulator ID that should be used to lookup the supply ”h]”(jn)�”}”(hŒ``const char *alias_id``”h]”j­)�”}”(hj±Gh]”hŒconst char *alias_id”…”�”}”(hj³Gh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¯Gubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M” hj«Gubjˆ)�”}”(hhh]”j()�”}”(hŒDSupply name or regulator ID that should be used to lookup the supply”h]”hŒDSupply name or regulator ID that should be used to lookup the supply”…”�”}”(hjÊGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M“ hjÇGubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj«Gubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÆGh´M” hjýFubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjáFubj()�”}”(hŒ**Description**”h]”j)�”}”(hjíGh]”hŒ Description”…”�”}”(hjïGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjëGubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M– hjáFubj()�”}”(hŒNAll lookups for id on dev will instead be conducted for alias_id on alias_dev.”h]”hŒNAll lookups for id on dev will instead be conducted for alias_id on alias_dev.”…”�”}”(hjHh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M• hjáFubj()�”}”(hŒ **Return**”h]”j)�”}”(hjHh]”hŒReturn”…”�”}”(hjHh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjHubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M˜ hjáFubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hj*Hh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M™ hjáFubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ.regulator_unregister_supply_alias (C function)”Œ#c.regulator_unregister_supply_alias”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒKvoid regulator_unregister_supply_alias (struct device *dev, const char *id)”h]”j“)�”}”(hŒJvoid regulator_unregister_supply_alias(struct device *dev, const char *id)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjYHh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjUHh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M¼ ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjhHh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjUHh²hh³jgHh´M¼ ubj¼)�”}”(hŒ!regulator_unregister_supply_alias”h]”jÂ)�”}”(hŒ!regulator_unregister_supply_alias”h]”hŒ!regulator_unregister_supply_alias”…”�”}”(hjzHh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjvHubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjUHh²hh³jgHh´M¼ ubjÁ;)�”}”(hŒ$(struct device *dev, const char *id)”h]”(jÇ;)�”}”(hŒstruct device *dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj–Hh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj’Hubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj£Hh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj’Hubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hj´Hh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj±Hubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j¶HŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j|HsbŒ#c.regulator_unregister_supply_alias”†”asbuh1hhj’Hubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÔHh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj’Hubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjâHh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj’HubjÂ)�”}”(hŒdev”h]”hŒdev”…”�”}”(hjïHh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj’Hubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjŽHubjÇ;)�”}”(hŒconst char *id”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hjIh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjIubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjIh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjIubjY<)�”}”(hŒchar”h]”hŒchar”…”�”}”(hj#Ih²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjIubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj1Ih²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjIubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj?Ih²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjIubjÂ)�”}”(hŒid”h]”hŒid”…”�”}”(hjLIh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjIubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjŽHubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjUHh²hh³jgHh´M¼ ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjQHh²hh³jgHh´M¼ ubah}”(h]”jLHah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jgHh´M¼ hjNHh²hubjî)�”}”(hhh]”j()�”}”(hŒRemove device alias”h]”hŒRemove device alias”…”�”}”(hjvIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M¼ hjsIh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjNHh²hh³jgHh´M¼ ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjŽIjjŽIj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒÕ**Parameters** ``struct device *dev`` device that will be given as the regulator "consumer" ``const char *id`` Supply name or regulator ID **Description** Remove a lookup alias if one exists for id on dev.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj˜Ih]”hŒ Parameters”…”�”}”(hjšIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj–Iubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÀ hj’Iubjc)�”}”(hhh]”(jh)�”}”(hŒM``struct device *dev`` device that will be given as the regulator "consumer" ”h]”(jn)�”}”(hŒ``struct device *dev``”h]”j­)�”}”(hj·Ih]”hŒstruct device *dev”…”�”}”(hj¹Ih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjµIubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M¾ hj±Iubjˆ)�”}”(hhh]”j()�”}”(hŒ5device that will be given as the regulator "consumer"”h]”hŒ9device that will be given as the regulator “consumerâ€�”…”�”}”(hjÐIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÌIh´M¾ hjÍIubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj±Iubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÌIh´M¾ hj®Iubjh)�”}”(hŒ/``const char *id`` Supply name or regulator ID ”h]”(jn)�”}”(hŒ``const char *id``”h]”j­)�”}”(hjðIh]”hŒconst char *id”…”�”}”(hjòIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjîIubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M¿ hjêIubjˆ)�”}”(hhh]”j()�”}”(hŒSupply name or regulator ID”h]”hŒSupply name or regulator ID”…”�”}”(hj Jh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jJh´M¿ hjJubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjêIubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jJh´M¿ hj®Iubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj’Iubj()�”}”(hŒ**Description**”h]”j)�”}”(hj+Jh]”hŒ Description”…”�”}”(hj-Jh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj)Jubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÁ hj’Iubj()�”}”(hŒ2Remove a lookup alias if one exists for id on dev.”h]”hŒ2Remove a lookup alias if one exists for id on dev.”…”�”}”(hjAJh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÀ hj’Iubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ1regulator_bulk_register_supply_alias (C function)”Œ&c.regulator_bulk_register_supply_alias”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ—int regulator_bulk_register_supply_alias (struct device *dev, const char *const *id, struct device *alias_dev, const char *const *alias_id, int num_id)”h]”j“)�”}”(hŒ–int regulator_bulk_register_supply_alias(struct device *dev, const char *const *id, struct device *alias_dev, const char *const *alias_id, int num_id)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjpJh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjlJh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÒ ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjJh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjlJh²hh³j~Jh´MÒ ubj¼)�”}”(hŒ$regulator_bulk_register_supply_alias”h]”jÂ)�”}”(hŒ$regulator_bulk_register_supply_alias”h]”hŒ$regulator_bulk_register_supply_alias”…”�”}”(hj‘Jh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj�Jubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjlJh²hh³j~Jh´MÒ ubjÁ;)�”}”(hŒn(struct device *dev, const char *const *id, struct device *alias_dev, const char *const *alias_id, int num_id)”h]”(jÇ;)�”}”(hŒstruct device *dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj­Jh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj©Jubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjºJh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj©Jubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjËJh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÈJubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jÍJŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j“JsbŒ&c.regulator_bulk_register_supply_alias”†”asbuh1hhj©Jubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjëJh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj©Jubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjùJh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj©JubjÂ)�”}”(hŒdev”h]”hŒdev”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj©Jubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj¥JubjÇ;)�”}”(hŒconst char *const *id”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjKubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj,Kh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjKubjY<)�”}”(hŒchar”h]”hŒchar”…”�”}”(hj:Kh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjKubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjHKh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjKubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjVKh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjKubj™)�”}”(hj><h]”hŒconst”…”�”}”(hjcKh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjKubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjpKh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjKubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj~Kh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjKubjÂ)�”}”(hŒid”h]”hŒid”…”�”}”(hj‹Kh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjKubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj¥JubjÇ;)�”}”(hŒstruct device *alias_dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj¤Kh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj Kubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj±Kh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj Kubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjÂKh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj¿Kubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jÄKŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”jçJŒ&c.regulator_bulk_register_supply_alias”†”asbuh1hhj Kubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjàKh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj Kubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjîKh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj KubjÂ)�”}”(hŒ alias_dev”h]”hŒ alias_dev”…”�”}”(hjûKh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj Kubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj¥JubjÇ;)�”}”(hŒconst char *const *alias_id”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hjLh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjLubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj!Lh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjLubjY<)�”}”(hŒchar”h]”hŒchar”…”�”}”(hj/Lh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjLubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj=Lh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjLubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjKLh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjLubj™)�”}”(hj><h]”hŒconst”…”�”}”(hjXLh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjLubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjeLh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjLubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjsLh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjLubjÂ)�”}”(hŒalias_id”h]”hŒalias_id”…”�”}”(hj€Lh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjLubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj¥JubjÇ;)�”}”(hŒ int num_id”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj™Lh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj•Lubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj§Lh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj•LubjÂ)�”}”(hŒnum_id”h]”hŒnum_id”…”�”}”(hjµLh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj•Lubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj¥Jubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjlJh²hh³j~Jh´MÒ ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjhJh²hh³j~Jh´MÒ ubah}”(h]”jcJah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j~Jh´MÒ hjeJh²hubjî)�”}”(hhh]”j()�”}”(hŒregister multiple aliases”h]”hŒregister multiple aliases”…”�”}”(hjßLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÒ hjÜLh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjeJh²hh³j~Jh´MÒ ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj÷Ljj÷Lj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX¾**Parameters** ``struct device *dev`` device that will be given as the regulator "consumer" ``const char *const *id`` List of supply names or regulator IDs ``struct device *alias_dev`` device that should be used to lookup the supply ``const char *const *alias_id`` List of supply names or regulator IDs that should be used to lookup the supply ``int num_id`` Number of aliases to register **Description** This helper function allows drivers to register several supply aliases in one operation. If any of the aliases cannot be registered any aliases that were registered will be removed before returning to the caller. **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjMh]”hŒ Parameters”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÿLubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÖ hjûLubjc)�”}”(hhh]”(jh)�”}”(hŒM``struct device *dev`` device that will be given as the regulator "consumer" ”h]”(jn)�”}”(hŒ``struct device *dev``”h]”j­)�”}”(hj Mh]”hŒstruct device *dev”…”�”}”(hj"Mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjMubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÔ hjMubjˆ)�”}”(hhh]”j()�”}”(hŒ5device that will be given as the regulator "consumer"”h]”hŒ9device that will be given as the regulator “consumerâ€�”…”�”}”(hj9Mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j5Mh´MÔ hj6Mubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjMubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j5Mh´MÔ hjMubjh)�”}”(hŒ@``const char *const *id`` List of supply names or regulator IDs ”h]”(jn)�”}”(hŒ``const char *const *id``”h]”j­)�”}”(hjYMh]”hŒconst char *const *id”…”�”}”(hj[Mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjWMubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÕ hjSMubjˆ)�”}”(hhh]”j()�”}”(hŒ%List of supply names or regulator IDs”h]”hŒ%List of supply names or regulator IDs”…”�”}”(hjrMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jnMh´MÕ hjoMubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjSMubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jnMh´MÕ hjMubjh)�”}”(hŒM``struct device *alias_dev`` device that should be used to lookup the supply ”h]”(jn)�”}”(hŒ``struct device *alias_dev``”h]”j­)�”}”(hj’Mh]”hŒstruct device *alias_dev”…”�”}”(hj”Mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj�Mubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÖ hjŒMubjˆ)�”}”(hhh]”j()�”}”(hŒ/device that should be used to lookup the supply”h]”hŒ/device that should be used to lookup the supply”…”�”}”(hj«Mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j§Mh´MÖ hj¨Mubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjŒMubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j§Mh´MÖ hjMubjh)�”}”(hŒo``const char *const *alias_id`` List of supply names or regulator IDs that should be used to lookup the supply ”h]”(jn)�”}”(hŒ``const char *const *alias_id``”h]”j­)�”}”(hjËMh]”hŒconst char *const *alias_id”…”�”}”(hjÍMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÉMubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MØ hjÅMubjˆ)�”}”(hhh]”j()�”}”(hŒNList of supply names or regulator IDs that should be used to lookup the supply”h]”hŒNList of supply names or regulator IDs that should be used to lookup the supply”…”�”}”(hjäMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M× hjáMubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÅMubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jàMh´MØ hjMubjh)�”}”(hŒ-``int num_id`` Number of aliases to register ”h]”(jn)�”}”(hŒ``int num_id``”h]”j­)�”}”(hjNh]”hŒ int num_id”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjNubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÙ hjÿMubjˆ)�”}”(hhh]”j()�”}”(hŒNumber of aliases to register”h]”hŒNumber of aliases to register”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jNh´MÙ hjNubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÿMubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jNh´MÙ hjMubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjûLubj()�”}”(hŒ**Description**”h]”j)�”}”(hj@Nh]”hŒ Description”…”�”}”(hjBNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj>Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÛ hjûLubj()�”}”(hŒÕThis helper function allows drivers to register several supply aliases in one operation. If any of the aliases cannot be registered any aliases that were registered will be removed before returning to the caller.”h]”hŒÕThis helper function allows drivers to register several supply aliases in one operation. If any of the aliases cannot be registered any aliases that were registered will be removed before returning to the caller.”…”�”}”(hjVNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÚ hjûLubj()�”}”(hŒ **Return**”h]”j)�”}”(hjgNh]”hŒReturn”…”�”}”(hjiNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjeNubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mß hjûLubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hj}Nh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mà hjûLubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ3regulator_bulk_unregister_supply_alias (C function)”Œ(c.regulator_bulk_unregister_supply_alias”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒcvoid regulator_bulk_unregister_supply_alias (struct device *dev, const char *const *id, int num_id)”h]”j“)�”}”(hŒbvoid regulator_bulk_unregister_supply_alias(struct device *dev, const char *const *id, int num_id)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj¬Nh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj¨Nh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj»Nh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¨Nh²hh³jºNh´M ubj¼)�”}”(hŒ®ulator_bulk_unregister_supply_alias”h]”jÂ)�”}”(hŒ®ulator_bulk_unregister_supply_alias”h]”hŒ®ulator_bulk_unregister_supply_alias”…”�”}”(hjÍNh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÉNubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj¨Nh²hh³jºNh´M ubjÁ;)�”}”(hŒ7(struct device *dev, const char *const *id, int num_id)”h]”(jÇ;)�”}”(hŒstruct device *dev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjéNh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjåNubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjöNh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjåNubh)�”}”(hhh]”jÂ)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjOh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjOubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j OŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jÏNsbŒ(c.regulator_bulk_unregister_supply_alias”†”asbuh1hhjåNubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj'Oh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjåNubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj5Oh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjåNubjÂ)�”}”(hŒdev”h]”hŒdev”…”�”}”(hjBOh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”u•$h1jÁhjåNubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjáNubjÇ;)�”}”(hŒconst char *const *id”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hj[Oh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjWOubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjhOh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjWOubjY<)�”}”(hŒchar”h]”hŒchar”…”�”}”(hjvOh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjWOubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj„Oh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjWOubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj’Oh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjWOubj™)�”}”(hj><h]”hŒconst”…”�”}”(hjŸOh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjWOubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¬Oh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjWOubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjºOh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjWOubjÂ)�”}”(hŒid”h]”hŒid”…”�”}”(hjÇOh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjWOubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjáNubjÇ;)�”}”(hŒ int num_id”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjàOh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjÜOubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjîOh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÜOubjÂ)�”}”(hŒnum_id”h]”hŒnum_id”…”�”}”(hjüOh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÜOubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjáNubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj¨Nh²hh³jºNh´M ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj¤Nh²hh³jºNh´M ubah}”(h]”jŸNah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jºNh´M hj¡Nh²hubjî)�”}”(hhh]”j()�”}”(hŒunregister multiple aliases”h]”hŒunregister multiple aliases”…”�”}”(hj&Ph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hj#Ph²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj¡Nh²hh³jºNh´M ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj>Pjj>Pj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX@**Parameters** ``struct device *dev`` device that will be given as the regulator "consumer" ``const char *const *id`` List of supply names or regulator IDs ``int num_id`` Number of aliases to unregister **Description** This helper function allows drivers to unregister several supply aliases in one operation.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjHPh]”hŒ Parameters”…”�”}”(hjJPh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjFPubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjBPubjc)�”}”(hhh]”(jh)�”}”(hŒM``struct device *dev`` device that will be given as the regulator "consumer" ”h]”(jn)�”}”(hŒ``struct device *dev``”h]”j­)�”}”(hjgPh]”hŒstruct device *dev”…”�”}”(hjiPh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjePubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjaPubjˆ)�”}”(hhh]”j()�”}”(hŒ5device that will be given as the regulator "consumer"”h]”hŒ9device that will be given as the regulator “consumerâ€�”…”�”}”(hj€Ph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j|Ph´M hj}Pubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjaPubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j|Ph´M hj^Pubjh)�”}”(hŒ@``const char *const *id`` List of supply names or regulator IDs ”h]”(jn)�”}”(hŒ``const char *const *id``”h]”j­)�”}”(hj Ph]”hŒconst char *const *id”…”�”}”(hj¢Ph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjžPubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjšPubjˆ)�”}”(hhh]”j()�”}”(hŒ%List of supply names or regulator IDs”h]”hŒ%List of supply names or regulator IDs”…”�”}”(hj¹Ph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jµPh´M hj¶Pubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjšPubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jµPh´M hj^Pubjh)�”}”(hŒ/``int num_id`` Number of aliases to unregister ”h]”(jn)�”}”(hŒ``int num_id``”h]”j­)�”}”(hjÙPh]”hŒ int num_id”…”�”}”(hjÛPh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj×Pubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjÓPubjˆ)�”}”(hhh]”j()�”}”(hŒNumber of aliases to unregister”h]”hŒNumber of aliases to unregister”…”�”}”(hjòPh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jîPh´M hjïPubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÓPubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jîPh´M hj^Pubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjBPubj()�”}”(hŒ**Description**”h]”j)�”}”(hjQh]”hŒ Description”…”�”}”(hjQh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjQubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjBPubj()�”}”(hŒZThis helper function allows drivers to unregister several supply aliases in one operation.”h]”hŒZThis helper function allows drivers to unregister several supply aliases in one operation.”…”�”}”(hj*Qh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjBPubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_enable (C function)”Œc.regulator_enable”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ2int regulator_enable (struct regulator *regulator)”h]”j“)�”}”(hŒ1int regulator_enable(struct regulator *regulator)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjYQh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjUQh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M€ ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjhQh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjUQh²hh³jgQh´M€ ubj¼)�”}”(hŒregulator_enable”h]”jÂ)�”}”(hŒregulator_enable”h]”hŒregulator_enable”…”�”}”(hjzQh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjvQubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjUQh²hh³jgQh´M€ ubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj–Qh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj’Qubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj£Qh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj’Qubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj´Qh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj±Qubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j¶QŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j|QsbŒc.regulator_enable”†”asbuh1hhj’Qubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÔQh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj’Qubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjâQh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj’QubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjïQh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj’Qubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjŽQubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjUQh²hh³jgQh´M€ ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjQQh²hh³jgQh´M€ ubah}”(h]”jLQah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jgQh´M€ hjNQh²hubjî)�”}”(hhh]”j()�”}”(hŒenable regulator output”h]”hŒenable regulator output”…”�”}”(hjRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M€ hjRh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjNQh²hh³jgQh´M€ ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj1Rjj1Rj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX½**Parameters** ``struct regulator *regulator`` regulator source **Description** Request that the regulator be enabled with the regulator output at the predefined voltage or current value. Calls to regulator_enable() must be balanced with calls to regulator_disable(). **NOTE** the output value can be set by other drivers, boot loader or may be hardwired in the regulator. **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj;Rh]”hŒ Parameters”…”�”}”(hj=Rh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj9Rubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M„ hj5Rubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjZRh]”hŒstruct regulator *regulator”…”�”}”(hj\Rh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjXRubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M� hjTRubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjsRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³joRh´M� hjpRubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjTRubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³joRh´M� hjQRubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhj5Rubj()�”}”(hŒ**Description**”h]”j)�”}”(hj•Rh]”hŒ Description”…”�”}”(hj—Rh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj“Rubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mƒ hj5Rubj()�”}”(hŒ¼Request that the regulator be enabled with the regulator output at the predefined voltage or current value. Calls to regulator_enable() must be balanced with calls to regulator_disable().”h]”hŒ¼Request that the regulator be enabled with the regulator output at the predefined voltage or current value. Calls to regulator_enable() must be balanced with calls to regulator_disable().”…”�”}”(hj«Rh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M‚ hj5Rubj()�”}”(hŒ**NOTE**”h]”j)�”}”(hj¼Rh]”hŒNOTE”…”�”}”(hj¾Rh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjºRubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M† hj5Rubj()�”}”(hŒ_the output value can be set by other drivers, boot loader or may be hardwired in the regulator.”h]”hŒ_the output value can be set by other drivers, boot loader or may be hardwired in the regulator.”…”�”}”(hjÒRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M‡ hj5Rubj()�”}”(hŒ **Return**”h]”j)�”}”(hjãRh]”hŒReturn”…”�”}”(hjåRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjáRubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MŠ hj5Rubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hjùRh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MŠ hj5Rubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_disable (C function)”Œc.regulator_disable”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ3int regulator_disable (struct regulator *regulator)”h]”j“)�”}”(hŒ2int regulator_disable(struct regulator *regulator)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj(Sh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj$Sh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mï ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj7Sh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj$Sh²hh³j6Sh´Mï ubj¼)�”}”(hŒregulator_disable”h]”jÂ)�”}”(hŒregulator_disable”h]”hŒregulator_disable”…”�”}”(hjISh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjESubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj$Sh²hh³j6Sh´Mï ubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjeSh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjaSubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjrSh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjaSubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjƒSh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj€Subah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j…SŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jKSsbŒc.regulator_disable”†”asbuh1hhjaSubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj£Sh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjaSubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj±Sh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjaSubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj¾Sh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjaSubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj]Subah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj$Sh²hh³j6Sh´Mï ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj Sh²hh³j6Sh´Mï ubah}”(h]”jSah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j6Sh´Mï hjSh²hubjî)�”}”(hhh]”j()�”}”(hŒdisable regulator output”h]”hŒdisable regulator output”…”�”}”(hjèSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mï hjåSh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjSh²hh³j6Sh´Mï ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjTjjTj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hXÓ**Parameters** ``struct regulator *regulator`` regulator source **Description** Disable the regulator output voltage or current. Calls to regulator_enable() must be balanced with calls to regulator_disable(). **NOTE** this will only disable the regulator output if no other consumer devices have it enabled, the regulator device supports disabling and machine constraints permit this operation. **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj Th]”hŒ Parameters”…”�”}”(hj Th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjTubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mó hjTubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj)Th]”hŒstruct regulator *regulator”…”�”}”(hj+Th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj'Tubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mð hj#Tubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjBTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j>Th´Mð hj?Tubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj#Tubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j>Th´Mð hj Tubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhjTubj()�”}”(hŒ**Description**”h]”j)�”}”(hjdTh]”hŒ Description”…”�”}”(hjfTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjbTubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mò hjTubj()�”}”(hŒ�Disable the regulator output voltage or current. Calls to regulator_enable() must be balanced with calls to regulator_disable().”h]”hŒ�Disable the regulator output voltage or current. Calls to regulator_enable() must be balanced with calls to regulator_disable().”…”�”}”(hjzTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mñ hjTubj()�”}”(hŒ**NOTE**”h]”j)�”}”(hj‹Th]”hŒNOTE”…”�”}”(hj�Th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj‰Tubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mõ hjTubj()�”}”(hŒ°this will only disable the regulator output if no other consumer devices have it enabled, the regulator device supports disabling and machine constraints permit this operation.”h]”hŒ°this will only disable the regulator output if no other consumer devices have it enabled, the regulator device supports disabling and machine constraints permit this operation.”…”�”}”(hj¡Th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mö hjTubj()�”}”(hŒ **Return**”h]”j)�”}”(hj²Th]”hŒReturn”…”�”}”(hj´Th²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj°Tubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mú hjTubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hjÈTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mú hjTubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ$regulator_force_disable (C function)”Œc.regulator_force_disable”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ9int regulator_force_disable (struct regulator *regulator)”h]”j“)�”}”(hŒ8int regulator_force_disable(struct regulator *regulator)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj÷Th²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjóTh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M% ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjóTh²hh³jUh´M% ubj¼)�”}”(hŒregulator_force_disable”h]”jÂ)�”}”(hŒregulator_force_disable”h]”hŒregulator_force_disable”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjUubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjóTh²hh³jUh´M% ubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj4Uh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj0Uubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjAUh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj0Uubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjRUh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjOUubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jTUŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jUsbŒc.regulator_force_disable”†”asbuh1hhj0Uubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjrUh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj0Uubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj€Uh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj0UubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj�Uh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj0Uubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj,Uubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjóTh²hh³jUh´M% ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjïTh²hh³jUh´M% ubah}”(h]”jêTah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jUh´M% hjìTh²hubjî)�”}”(hhh]”j()�”}”(hŒforce disable regulator output”h]”hŒforce disable regulator output”…”�”}”(hj·Uh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M% hj´Uh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjìTh²hh³jUh´M% ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjÏUjjÏUj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX®**Parameters** ``struct regulator *regulator`` regulator source **Description** Forcibly disable the regulator output voltage or current. **NOTE** this *will* disable the regulator output even if other consumer devices have it enabled. This should be used for situations when device damage will likely occur if the regulator is not disabled (e.g. over temp). **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjÙUh]”hŒ Parameters”…”�”}”(hjÛUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj×Uubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M) hjÓUubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjøUh]”hŒstruct regulator *regulator”…”�”}”(hjúUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjöUubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M& hjòUubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j Vh´M& hjVubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjòUubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j Vh´M& hjïUubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhjÓUubj()�”}”(hŒ**Description**”h]”j)�”}”(hj3Vh]”hŒ Description”…”�”}”(hj5Vh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj1Vubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M( hjÓUubj()�”}”(hŒ9Forcibly disable the regulator output voltage or current.”h]”hŒ9Forcibly disable the regulator output voltage or current.”…”�”}”(hjIVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M' hjÓUubj()�”}”(hŒ**NOTE**”h]”j)�”}”(hjZVh]”hŒNOTE”…”�”}”(hj\Vh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjXVubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M) hjÓUubj()�”}”(hŒÓthis *will* disable the regulator output even if other consumer devices have it enabled. This should be used for situations when device damage will likely occur if the regulator is not disabled (e.g. over temp).”h]”(hŒthis ”…”�”}”(hjpVh²hh³Nh´NubhŒemphasis”“”)�”}”(hŒ*will*”h]”hŒwill”…”�”}”(hjzVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jxVhjpVubhŒÈ disable the regulator output even if other consumer devices have it enabled. This should be used for situations when device damage will likely occur if the regulator is not disabled (e.g. over temp).”…”�”}”(hjpVh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M) hjÓUubj()�”}”(hŒ **Return**”h]”j)�”}”(hj•Vh]”hŒReturn”…”�”}”(hj—Vh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj“Vubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M- hjÓUubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hj«Vh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M- hjÓUubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ'regulator_disable_deferred (C function)”Œc.regulator_disable_deferred”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒDint regulator_disable_deferred (struct regulator *regulator, int ms)”h]”j“)�”}”(hŒCint regulator_disable_deferred(struct regulator *regulator, int ms)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjÚVh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjÖVh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mv ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjéVh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÖVh²hh³jèVh´Mv ubj¼)�”}”(hŒregulator_disable_deferred”h]”jÂ)�”}”(hŒregulator_disable_deferred”h]”hŒregulator_disable_deferred”…”�”}”(hjûVh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj÷Vubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjÖVh²hh³jèVh´Mv ubjÁ;)�”}”(hŒ%(struct regulator *regulator, int ms)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjWh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjWubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj$Wh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjWubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj5Wh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj2Wubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j7WŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jýVsbŒc.regulator_disable_deferred”†”asbuh1hhjWubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjUWh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjWubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjcWh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjWubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjpWh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjWubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjWubjÇ;)�”}”(hŒint ms”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj‰Wh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj…Wubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj—Wh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj…WubjÂ)�”}”(hŒms”h]”hŒms”…”�”}”(hj¥Wh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj…Wubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjWubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjÖVh²hh³jèVh´Mv ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjÒVh²hh³jèVh´Mv ubah}”(h]”jÍVah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jèVh´Mv hjÏVh²hubjî)�”}”(hhh]”j()�”}”(hŒ#disable regulator output with delay”h]”hŒ#disable regulator output with delay”…”�”}”(hjÏWh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mv hjÌWh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjÏVh²hh³jèVh´Mv ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjçWjjçWj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX**Parameters** ``struct regulator *regulator`` regulator source ``int ms`` milliseconds until the regulator is disabled **Description** Execute regulator_disable() on the regulator after a delay. This is intended for use with devices that require some time to quiesce. **NOTE** this will only disable the regulator output if no other consumer devices have it enabled, the regulator device supports disabling and machine constraints permit this operation. **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjñWh]”hŒ Parameters”…”�”}”(hjóWh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjïWubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mz hjëWubjc)�”}”(hhh]”(jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjXh]”hŒstruct regulator *regulator”…”�”}”(hjXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjXubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mw hj Xubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hj)Xh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j%Xh´Mw hj&Xubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj Xubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j%Xh´Mw hjXubjh)�”}”(hŒ8``int ms`` milliseconds until the regulator is disabled ”h]”(jn)�”}”(hŒ ``int ms``”h]”j­)�”}”(hjIXh]”hŒint ms”…”�”}”(hjKXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjGXubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mx hjCXubjˆ)�”}”(hhh]”j()�”}”(hŒ,milliseconds until the regulator is disabled”h]”hŒ,milliseconds until the regulator is disabled”…”�”}”(hjbXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j^Xh´Mx hj_Xubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjCXubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j^Xh´Mx hjXubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjëWubj()�”}”(hŒ**Description**”h]”j)�”}”(hj„Xh]”hŒ Description”…”�”}”(hj†Xh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj‚Xubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mz hjëWubj()�”}”(hŒ…Execute regulator_disable() on the regulator after a delay. This is intended for use with devices that require some time to quiesce.”h]”hŒ…Execute regulator_disable() on the regulator after a delay. This is intended for use with devices that require some time to quiesce.”…”�”}”(hjšXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´My hjëWubj()�”}”(hŒ**NOTE**”h]”j)�”}”(hj«Xh]”hŒNOTE”…”�”}”(hj­Xh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj©Xubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M| hjëWubj()�”}”(hŒ°this will only disable the regulator output if no other consumer devices have it enabled, the regulator device supports disabling and machine constraints permit this operation.”h]”hŒ°this will only disable the regulator output if no other consumer devices have it enabled, the regulator device supports disabling and machine constraints permit this operation.”…”�”}”(hjÁXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M} hjëWubj()�”}”(hŒ **Return**”h]”j)�”}”(hjÒXh]”hŒReturn”…”�”}”(hjÔXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÐXubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M� hjëWubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hjèXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M� hjëWubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ!regulator_is_enabled (C function)”Œc.regulator_is_enabled”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ6int regulator_is_enabled (struct regulator *regulator)”h]”j“)�”}”(hŒ5int regulator_is_enabled(struct regulator *regulator)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjYh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÆ ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj&Yh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjYh²hh³j%Yh´MÆ ubj¼)�”}”(hŒregulator_is_enabled”h]”jÂ)�”}”(hŒregulator_is_enabled”h]”hŒregulator_is_enabled”…”�”}”(hj8Yh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj4Yubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjYh²hh³j%Yh´MÆ ubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjTYh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjPYubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjaYh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjPYubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjrYh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjoYubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jtYŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j:YsbŒc.regulator_is_enabled”†”asbuh1hhjPYubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj’Yh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjPYubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj Yh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjPYubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj­Yh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjPYubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjLYubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjYh²hh³j%Yh´MÆ ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjYh²hh³j%Yh´MÆ ubah}”(h]”j Yah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j%Yh´MÆ hj Yh²hubjî)�”}”(hhh]”j()�”}”(hŒis the regulator output enabled”h]”hŒis the regulator output enabled”…”�”}”(hj×Yh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÆ hjÔYh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj Yh²hh³j%Yh´MÆ ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjïYjjïYj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX¢**Parameters** ``struct regulator *regulator`` regulator source **Description** Note that the device backing this regulator handle can have multiple users, so it might be enabled even if regulator_enable() was never called for this particular source. **Return** Positive if the regulator driver backing the source/client has requested that the device be enabled, zero if it hasn't, else a negative error number.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjùYh]”hŒ Parameters”…”�”}”(hjûYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj÷Yubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÊ hjóYubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjZh]”hŒstruct regulator *regulator”…”�”}”(hjZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjZubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÇ hjZubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hj1Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j-Zh´MÇ hj.Zubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjZubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j-Zh´MÇ hjZubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhjóYubj()�”}”(hŒ**Description**”h]”j)�”}”(hjSZh]”hŒ Description”…”�”}”(hjUZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjQZubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÉ hjóYubj()�”}”(hŒªNote that the device backing this regulator handle can have multiple users, so it might be enabled even if regulator_enable() was never called for this particular source.”h]”hŒªNote that the device backing this regulator handle can have multiple users, so it might be enabled even if regulator_enable() was never called for this particular source.”…”�”}”(hjiZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÈ hjóYubj()�”}”(hŒ **Return**”h]”j)�”}”(hjzZh]”hŒReturn”…”�”}”(hj|Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjxZubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÌ hjóYubj()�”}”(hŒ•Positive if the regulator driver backing the source/client has requested that the device be enabled, zero if it hasn't, else a negative error number.”h]”hŒ—Positive if the regulator driver backing the source/client has requested that the device be enabled, zero if it hasn’t, else a negative error number.”…”�”}”(hj�Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MÍ hjóYubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ%regulator_count_voltages (C function)”Œc.regulator_count_voltages”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ:int regulator_count_voltages (struct regulator *regulator)”h]”j“)�”}”(hŒ9int regulator_count_voltages(struct regulator *regulator)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj¿Zh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj»Zh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Má ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÎZh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj»Zh²hh³jÍZh´Má ubj¼)�”}”(hŒregulator_count_voltages”h]”jÂ)�”}”(hŒregulator_count_voltages”h]”hŒregulator_count_voltages”…”�”}”(hjàZh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÜZubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj»Zh²hh³jÍZh´Má ubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjüZh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjøZubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj [h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjøZubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj[h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj[ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j[Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jâZsbŒc.regulator_count_voltages”†”asbuh1hhjøZubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj:[h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjøZubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjH[h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjøZubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjU[h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjøZubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjôZubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj»Zh²hh³jÍZh´Má ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj·Zh²hh³jÍZh´Má ubah}”(h]”j²Zah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jÍZh´Má hj´Zh²hubjî)�”}”(hhh]”j()�”}”(hŒ(count regulator_list_voltage() selectors”h]”hŒ(count regulator_list_voltage() selectors”…”�”}”(hj[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Má hj|[h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj´Zh²hh³jÍZh´Má ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj—[jj—[j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX**Parameters** ``struct regulator *regulator`` regulator source **Return** Number of selectors for **regulator**, or negative error number. **Description** Selectors are numbered starting at zero, and typically correspond to bitfields in hardware registers.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj¡[h]”hŒ Parameters”…”�”}”(hj£[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjŸ[ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Må hj›[ubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjÀ[h]”hŒstruct regulator *regulator”…”�”}”(hjÂ[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¾[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mâ hjº[ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjÙ[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÕ[h´Mâ hjÖ[ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjº[ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÕ[h´Mâ hj·[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhj›[ubj()�”}”(hŒ **Return**”h]”j)�”}”(hjû[h]”hŒReturn”…”�”}”(hjý[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjù[ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mä hj›[ubj()�”}”(hŒ@Number of selectors for **regulator**, or negative error number.”h]”(hŒNumber of selectors for ”…”�”}”(hj\h²hh³Nh´Nubj)�”}”(hŒ **regulator**”h]”hŒ regulator”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj\ubhŒ, or negative error number.”…”�”}”(hj\h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mä hj›[ubj()�”}”(hŒ**Description**”h]”j)�”}”(hj4\h]”hŒ Description”…”�”}”(hj6\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj2\ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mæ hj›[ubj()�”}”(hŒeSelectors are numbered starting at zero, and typically correspond to bitfields in hardware registers.”h]”hŒeSelectors are numbered starting at zero, and typically correspond to bitfields in hardware registers.”…”�”}”(hjJ\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Må hj›[ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ#regulator_list_voltage (C function)”Œc.regulator_list_voltage”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒKint regulator_list_voltage (struct regulator *regulator, unsigned selector)”h]”j“)�”}”(hŒJint regulator_list_voltage(struct regulator *regulator, unsigned selector)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjy\h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hju\h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mø ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjˆ\h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhju\h²hh³j‡\h´Mø ubj¼)�”}”(hŒregulator_list_voltage”h]”jÂ)�”}”(hŒregulator_list_voltage”h]”hŒregulator_list_voltage”…”�”}”(hjš\h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj–\ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hju\h²hh³j‡\h´Mø ubjÁ;)�”}”(hŒ0(struct regulator *regulator, unsigned selector)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj¶\h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj²\ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÃ\h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj²\ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjÔ\h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÑ\ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jÖ\Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jœ\sbŒc.regulator_list_voltage”†”asbuh1hhj²\ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjô\h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj²\ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj]h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj²\ubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj]h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj²\ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj®\ubjÇ;)�”}”(hŒunsigned selector”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj(]h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj$]ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj6]h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj$]ubjÂ)�”}”(hŒselector”h]”hŒselector”…”�”}”(hjD]h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj$]ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj®\ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hju\h²hh³j‡\h´Mø ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjq\h²hh³j‡\h´Mø ubah}”(h]”jl\ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j‡\h´Mø hjn\h²hubjî)�”}”(hhh]”j()�”}”(hŒenumerate supported voltages”h]”hŒenumerate supported voltages”…”�”}”(hjn]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mø hjk]h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjn\h²hh³j‡\h´Mø ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj†]jj†]j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX8**Parameters** ``struct regulator *regulator`` regulator source ``unsigned selector`` identify voltage to list **Context** can sleep **Return** Voltage for **selector** that can be passed to regulator_set_voltage(), 0 if **selector** can't be used on this system, or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj�]h]”hŒ Parameters”…”�”}”(hj’]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjŽ]ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mü hjŠ]ubjc)�”}”(hhh]”(jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj¯]h]”hŒstruct regulator *regulator”…”�”}”(hj±]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj­]ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mù hj©]ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjÈ]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÄ]h´Mù hjÅ]ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj©]ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÄ]h´Mù hj¦]ubjh)�”}”(hŒ/``unsigned selector`` identify voltage to list ”h]”(jn)�”}”(hŒ``unsigned selector``”h]”j­)�”}”(hjè]h]”hŒunsigned selector”…”�”}”(hjê]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjæ]ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mú hjâ]ubjˆ)�”}”(hhh]”j()�”}”(hŒidentify voltage to list”h]”hŒidentify voltage to list”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jý]h´Mú hjþ]ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjâ]ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jý]h´Mú hj¦]ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjŠ]ubj()�”}”(hŒ **Context**”h]”j)�”}”(hj#^h]”hŒContext”…”�”}”(hj%^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj!^ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mü hjŠ]ubj()�”}”(hŒ can sleep”h]”hŒ can sleep”…”�”}”(hj9^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mû hjŠ]ubj()�”}”(hŒ **Return**”h]”j)�”}”(hjJ^h]”hŒReturn”…”�”}”(hjL^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjH^ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mý hjŠ]ubj()�”}”(hŒžVoltage for **selector** that can be passed to regulator_set_voltage(), 0 if **selector** can't be used on this system, or a negative error number on failure.”h]”(hŒ Voltage for ”…”�”}”(hj`^h²hh³Nh´Nubj)�”}”(hŒ **selector**”h]”hŒselector”…”�”}”(hjh^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj`^ubhŒ5 that can be passed to regulator_set_voltage(), 0 if ”…”�”}”(hj`^h²hh³Nh´Nubj)�”}”(hŒ **selector**”h]”hŒselector”…”�”}”(hjz^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj`^ubhŒG can’t be used on this system, or a negative error number on failure.”…”�”}”(hj`^h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mý hjŠ]ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ!regulator_get_regmap (C function)”Œc.regulator_get_regmap”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒBstruct regmap * regulator_get_regmap (struct regulator *regulator)”h]”j“)�”}”(hŒ@struct regmap *regulator_get_regmap(struct regulator *regulator)”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj³^h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj¯^h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÁ^h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¯^h²hh³jÀ^h´Mubh)�”}”(hhh]”jÂ)�”}”(hŒregmap”h]”hŒregmap”…”�”}”(hjÒ^h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÏ^ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jÔ^Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;Œregulator_get_regmap”sbŒc.regulator_get_regmap”†”asbuh1hhj¯^h²hh³jÀ^h´Mubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjó^h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¯^h²hh³jÀ^h´Mubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj_h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj¯^h²hh³jÀ^h´Mubj¼)�”}”(hŒregulator_get_regmap”h]”jÂ)�”}”(hjð^h]”hŒregulator_get_regmap”…”�”}”(hj_h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj_ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj¯^h²hh³jÀ^h´MubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj-_h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj)_ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj:_h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj)_ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjK_h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjH_ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jM_Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”jî^Œc.regulator_get_regmap”†”asbuh1hhj)_ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hji_h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj)_ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjw_h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj)_ubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj„_h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj)_ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj%_ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj¯^h²hh³jÀ^h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj«^h²hh³jÀ^h´Mubah}”(h]”j¦^ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jÀ^h´Mhj¨^h²hubjî)�”}”(hhh]”j()�”}”(hŒ get the regulator's register map”h]”hŒ"get the regulator’s register map”…”�”}”(hj®_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhj«_h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj¨^h²hh³jÀ^h´Mubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjÆ_jjÆ_j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒÜ**Parameters** ``struct regulator *regulator`` regulator source **Return** Pointer to the :c:type:`struct regmap ` for **regulator**, or ERR_PTR() encoded -``EOPNOTSUPP`` if **regulator** doesn't use regmap.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjÐ_h]”hŒ Parameters”…”�”}”(hjÒ_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÎ_ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjÊ_ubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjï_h]”hŒstruct regulator *regulator”…”�”}”(hjñ_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjí_ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjé_ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j`h´M hj`ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjé_ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j`h´M hjæ_ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhjÊ_ubj()�”}”(hŒ **Return**”h]”j)�”}”(hj*`h]”hŒReturn”…”�”}”(hj,`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj(`ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hjÊ_ubj()�”}”(hŒŒPointer to the :c:type:`struct regmap ` for **regulator**, or ERR_PTR() encoded -``EOPNOTSUPP`` if **regulator** doesn't use regmap.”h]”(hŒPointer to the ”…”�”}”(hj@`h²hh³Nh´Nubh)�”}”(hŒ :c:type:`struct regmap `”h]”j­)�”}”(hjJ`h]”hŒ struct regmap”…”�”}”(hjL`h²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-type”eh"]”h$]”h&]”uh1j¬hjH`ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œtype”Œ refexplicit”ˆŒrefwarn”‰j{;jÆ=j[Œregmap”uh1hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hj@`ubhŒ for ”…”�”}”(hj@`h²hh³Nh´Nubj)�”}”(hŒ **regulator**”h]”hŒ regulator”…”�”}”(hjl`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj@`ubhŒ, or ERR_PTR() encoded -”…”�”}”(hj@`h²hh³Nh´Nubj­)�”}”(hŒ``EOPNOTSUPP``”h]”hŒ EOPNOTSUPP”…”�”}”(hj~`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj@`ubhŒ if ”…”�”}”(hj@`h²hh³Nh´Nubj)�”}”(hŒ **regulator**”h]”hŒ regulator”…”�”}”(hj�`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj@`ubhŒ doesn’t use regmap.”…”�”}”(hj@`h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jg`h´M hjÊ_ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ1regulator_get_hardware_vsel_register (C function)”Œ&c.regulator_get_hardware_vsel_register”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒoint regulator_get_hardware_vsel_register (struct regulator *regulator, unsigned *vsel_reg, unsigned *vsel_mask)”h]”j“)�”}”(hŒnint regulator_get_hardware_vsel_register(struct regulator *regulator, unsigned *vsel_reg, unsigned *vsel_mask)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjÈ`h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjÄ`h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj×`h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÄ`h²hh³jÖ`h´Mubj¼)�”}”(hŒ$regulator_get_hardware_vsel_register”h]”jÂ)�”}”(hŒ$regulator_get_hardware_vsel_register”h]”hŒ$regulator_get_hardware_vsel_register”…”�”}”(hjé`h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjå`ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjÄ`h²hh³jÖ`h´MubjÁ;)�”}”(hŒF(struct regulator *regulator, unsigned *vsel_reg, unsigned *vsel_mask)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjaubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjaubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj#ah²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj aubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j%aŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jë`sbŒ&c.regulator_get_hardware_vsel_register”†”asbuh1hhjaubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjCah²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjaubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjQah²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjaubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj^ah²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjaubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjý`ubjÇ;)�”}”(hŒunsigned *vsel_reg”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjwah²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjsaubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj…ah²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjsaubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj“ah²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjsaubjÂ)�”}”(hŒvsel_reg”h]”hŒvsel_reg”…”�”}”(hj ah²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjsaubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjý`ubjÇ;)�”}”(hŒunsigned *vsel_mask”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj¹ah²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjµaubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÇah²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjµaubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjÕah²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjµaubjÂ)�”}”(hŒ vsel_mask”h]”hŒ vsel_mask”…”�”}”(hjâah²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjµaubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjý`ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjÄ`h²hh³jÖ`h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjÀ`h²hh³jÖ`h´Mubah}”(h]”j»`ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jÖ`h´Mhj½`h²hubjî)�”}”(hhh]”j()�”}”(hŒ$get the HW voltage selector register”h]”hŒ$get the HW voltage selector register”…”�”}”(hj bh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhj bh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj½`h²hh³jÖ`h´Mubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj$bjj$bj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hXÆ**Parameters** ``struct regulator *regulator`` regulator source ``unsigned *vsel_reg`` voltage selector register, output parameter ``unsigned *vsel_mask`` mask for voltage selector bitfield, output parameter **Description** Returns the hardware register offset and bitmask used for setting the regulator voltage. This might be useful when configuring voltage-scaling hardware or firmware that can make I2C requests behind the kernel's back, for example. On success, the output parameters **vsel_reg** and **vsel_mask** are filled in and 0 is returned, otherwise a negative error number is returned. **Return** 0 on success, or -``EOPNOTSUPP`` if the regulator does not support voltage selectors.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj.bh]”hŒ Parameters”…”�”}”(hj0bh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj,bubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhj(bubjc)�”}”(hhh]”(jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjMbh]”hŒstruct regulator *regulator”…”�”}”(hjObh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjKbubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MhjGbubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjfbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jbbh´Mhjcbubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjGbubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jbbh´MhjDbubjh)�”}”(hŒC``unsigned *vsel_reg`` voltage selector register, output parameter ”h]”(jn)�”}”(hŒ``unsigned *vsel_reg``”h]”j­)�”}”(hj†bh]”hŒunsigned *vsel_reg”…”�”}”(hjˆbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj„bubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhj€bubjˆ)�”}”(hhh]”j()�”}”(hŒ+voltage selector register, output parameter”h]”hŒ+voltage selector register, output parameter”…”�”}”(hjŸbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j›bh´Mhjœbubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj€bubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j›bh´MhjDbubjh)�”}”(hŒM``unsigned *vsel_mask`` mask for voltage selector bitfield, output parameter ”h]”(jn)�”}”(hŒ``unsigned *vsel_mask``”h]”j­)�”}”(hj¿bh]”hŒunsigned *vsel_mask”…”�”}”(hjÁbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj½bubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhj¹bubjˆ)�”}”(hhh]”j()�”}”(hŒ4mask for voltage selector bitfield, output parameter”h]”hŒ4mask for voltage selector bitfield, output parameter”…”�”}”(hjØbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÔbh´MhjÕbubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¹bubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÔbh´MhjDbubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj(bubj()�”}”(hŒ**Description**”h]”j)�”}”(hjúbh]”hŒ Description”…”�”}”(hjübh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjøbubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhj(bubj()�”}”(hŒåReturns the hardware register offset and bitmask used for setting the regulator voltage. This might be useful when configuring voltage-scaling hardware or firmware that can make I2C requests behind the kernel's back, for example.”h]”hŒçReturns the hardware register offset and bitmask used for setting the regulator voltage. This might be useful when configuring voltage-scaling hardware or firmware that can make I2C requests behind the kernel’s back, for example.”…”�”}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhj(bubj()�”}”(hŒ�On success, the output parameters **vsel_reg** and **vsel_mask** are filled in and 0 is returned, otherwise a negative error number is returned.”h]”(hŒ"On success, the output parameters ”…”�”}”(hjch²hh³Nh´Nubj)�”}”(hŒ **vsel_reg**”h]”hŒvsel_reg”…”�”}”(hj'ch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjcubhŒ and ”…”�”}”(hjch²hh³Nh´Nubj)�”}”(hŒ **vsel_mask**”h]”hŒ vsel_mask”…”�”}”(hj9ch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjcubhŒP are filled in and 0 is returned, otherwise a negative error number is returned.”…”�”}”(hjch²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M!hj(bubj()�”}”(hŒ **Return**”h]”j)�”}”(hjTch]”hŒReturn”…”�”}”(hjVch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjRcubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M$hj(bubj()�”}”(hŒU0 on success, or -``EOPNOTSUPP`` if the regulator does not support voltage selectors.”h]”(hŒ0 on success, or -”…”�”}”(hjjch²hh³Nh´Nubj­)�”}”(hŒ``EOPNOTSUPP``”h]”hŒ EOPNOTSUPP”…”�”}”(hjrch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjjcubhŒ5 if the regulator does not support voltage selectors.”…”�”}”(hjjch²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”•h´M!hj(bubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ)regulator_list_hardware_vsel (C function)”Œc.regulator_list_hardware_vsel”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒQint regulator_list_hardware_vsel (struct regulator *regulator, unsigned selector)”h]”j“)�”}”(hŒPint regulator_list_hardware_vsel(struct regulator *regulator, unsigned selector)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj«ch²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj§ch²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M9ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjºch²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj§ch²hh³j¹ch´M9ubj¼)�”}”(hŒregulator_list_hardware_vsel”h]”jÂ)�”}”(hŒregulator_list_hardware_vsel”h]”hŒregulator_list_hardware_vsel”…”�”}”(hjÌch²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÈcubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj§ch²hh³j¹ch´M9ubjÁ;)�”}”(hŒ0(struct regulator *regulator, unsigned selector)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjèch²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjäcubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjõch²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjäcubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjdh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjdubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jdŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jÎcsbŒc.regulator_list_hardware_vsel”†”asbuh1hhjäcubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj&dh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjäcubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj4dh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjäcubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjAdh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjäcubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjàcubjÇ;)�”}”(hŒunsigned selector”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjZdh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjVdubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjhdh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjVdubjÂ)�”}”(hŒselector”h]”hŒselector”…”�”}”(hjvdh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjVdubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjàcubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj§ch²hh³j¹ch´M9ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj£ch²hh³j¹ch´M9ubah}”(h]”jžcah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j¹ch´M9hj ch²hubjî)�”}”(hhh]”j()�”}”(hŒ1get the HW-specific register value for a selector”h]”hŒ1get the HW-specific register value for a selector”…”�”}”(hj dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M9hj�dh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj ch²hh³j¹ch´M9ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj¸djj¸dj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX**Parameters** ``struct regulator *regulator`` regulator source ``unsigned selector`` identify voltage to list **Description** Converts the selector to a hardware-specific voltage selector that can be directly written to the regulator registers. The address of the voltage register can be determined by calling **regulator_get_hardware_vsel_register**. **Return** 0 on success, -``EINVAL`` if the selector is outside the supported range, or -``EOPNOTSUPP`` if the regulator does not support voltage selectors.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjÂdh]”hŒ Parameters”…”�”}”(hjÄdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÀdubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M=hj¼dubjc)�”}”(hhh]”(jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjádh]”hŒstruct regulator *regulator”…”�”}”(hjãdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjßdubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M:hjÛdubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjúdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jödh´M:hj÷dubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÛdubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jödh´M:hjØdubjh)�”}”(hŒ/``unsigned selector`` identify voltage to list ”h]”(jn)�”}”(hŒ``unsigned selector``”h]”j­)�”}”(hjeh]”hŒunsigned selector”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjeubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M;hjeubjˆ)�”}”(hhh]”j()�”}”(hŒidentify voltage to list”h]”hŒidentify voltage to list”…”�”}”(hj3eh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j/eh´M;hj0eubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjeubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j/eh´M;hjØdubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj¼dubj()�”}”(hŒ**Description**”h]”j)�”}”(hjUeh]”hŒ Description”…”�”}”(hjWeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjSeubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M=hj¼dubj()�”}”(hŒáConverts the selector to a hardware-specific voltage selector that can be directly written to the regulator registers. The address of the voltage register can be determined by calling **regulator_get_hardware_vsel_register**.”h]”(hŒ¸Converts the selector to a hardware-specific voltage selector that can be directly written to the regulator registers. The address of the voltage register can be determined by calling ”…”�”}”(hjkeh²hh³Nh´Nubj)�”}”(hŒ(**regulator_get_hardware_vsel_register**”h]”hŒ$regulator_get_hardware_vsel_register”…”�”}”(hjseh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjkeubhŒ.”…”�”}”(hjkeh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M<hj¼dubj()�”}”(hŒ **Return**”h]”j)�”}”(hjŽeh]”hŒReturn”…”�”}”(hj�eh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjŒeubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M@hj¼dubj()�”}”(hŒ‘0 on success, -``EINVAL`` if the selector is outside the supported range, or -``EOPNOTSUPP`` if the regulator does not support voltage selectors.”h]”(hŒ0 on success, -”…”�”}”(hj¤eh²hh³Nh´Nubj­)�”}”(hŒ ``EINVAL``”h]”hŒEINVAL”…”�”}”(hj¬eh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¤eubhŒ5 if the selector is outside the supported range, or -”…”�”}”(hj¤eh²hh³Nh´Nubj­)�”}”(hŒ``EOPNOTSUPP``”h]”hŒ EOPNOTSUPP”…”�”}”(hj¾eh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¤eubhŒ5 if the regulator does not support voltage selectors.”…”�”}”(hj¤eh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MAhj¼dubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ®ulator_hardware_enable (C function)”Œc.regulator_hardware_enable”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒHint regulator_hardware_enable (struct regulator *regulator, bool enable)”h]”j“)�”}”(hŒGint regulator_hardware_enable(struct regulator *regulator, bool enable)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj÷eh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjóeh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MWubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjóeh²hh³jfh´MWubj¼)�”}”(hŒregulator_hardware_enable”h]”jÂ)�”}”(hŒregulator_hardware_enable”h]”hŒregulator_hardware_enable”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjfubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjóeh²hh³jfh´MWubjÁ;)�”}”(hŒ*(struct regulator *regulator, bool enable)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj4fh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj0fubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjAfh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj0fubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjRfh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjOfubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jTfŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jfsbŒc.regulator_hardware_enable”†”asbuh1hhj0fubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjrfh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj0fubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj€fh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj0fubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj�fh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj0fubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj,fubjÇ;)�”}”(hŒ bool enable”h]”(jY<)�”}”(hŒbool”h]”hŒbool”…”�”}”(hj¦fh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj¢fubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj´fh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¢fubjÂ)�”}”(hŒenable”h]”hŒenable”…”�”}”(hjÂfh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj¢fubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj,fubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjóeh²hh³jfh´MWubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjïeh²hh³jfh´MWubah}”(h]”jêeah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jfh´MWhjìeh²hubjî)�”}”(hhh]”j()�”}”(hŒ*access the HW for enable/disable regulator”h]”hŒ*access the HW for enable/disable regulator”…”�”}”(hjìfh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MWhjéfh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjìeh²hh³jfh´MWubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjgjjgj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX@**Parameters** ``struct regulator *regulator`` regulator source ``bool enable`` true for enable, false for disable **Description** Request that the regulator be enabled/disabled with the regulator output at the predefined voltage or current value. **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjgh]”hŒ Parameters”…”�”}”(hjgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj gubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M[hjgubjc)�”}”(hhh]”(jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj-gh]”hŒstruct regulator *regulator”…”�”}”(hj/gh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj+gubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MXhj'gubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjFgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jBgh´MXhjCgubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj'gubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jBgh´MXhj$gubjh)�”}”(hŒ3``bool enable`` true for enable, false for disable ”h]”(jn)�”}”(hŒ``bool enable``”h]”j­)�”}”(hjfgh]”hŒ bool enable”…”�”}”(hjhgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjdgubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MYhj`gubjˆ)�”}”(hhh]”j()�”}”(hŒ"true for enable, false for disable”h]”hŒ"true for enable, false for disable”…”�”}”(hjgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j{gh´MYhj|gubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj`gubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j{gh´MYhj$gubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjgubj()�”}”(hŒ**Description**”h]”j)�”}”(hj¡gh]”hŒ Description”…”�”}”(hj£gh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjŸgubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M[hjgubj()�”}”(hŒtRequest that the regulator be enabled/disabled with the regulator output at the predefined voltage or current value.”h]”hŒtRequest that the regulator be enabled/disabled with the regulator output at the predefined voltage or current value.”…”�”}”(hj·gh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MZhjgubj()�”}”(hŒ **Return**”h]”j)�”}”(hjÈgh]”hŒReturn”…”�”}”(hjÊgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÆgubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M]hjgubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hjÞgh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M^hjgubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ®ulator_get_linear_step (C function)”Œc.regulator_get_linear_step”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒDunsigned int regulator_get_linear_step (struct regulator *regulator)”h]”j“)�”}”(hŒCunsigned int regulator_get_linear_step(struct regulator *regulator)”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj hh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj hh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Msubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjhh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj hh²hh³jhh´MsubjY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj*hh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj hh²hh³jhh´Msubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj8hh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj hh²hh³jhh´Msubj¼)�”}”(hŒregulator_get_linear_step”h]”jÂ)�”}”(hŒregulator_get_linear_step”h]”hŒregulator_get_linear_step”…”�”}”(hjJhh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjFhubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj hh²hh³jhh´MsubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjfhh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjbhubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjshh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjbhubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj„hh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj�hubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j†hŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jLhsbŒc.regulator_get_linear_step”†”asbuh1hhjbhubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¤hh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjbhubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj²hh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjbhubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj¿hh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjbhubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj^hubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj hh²hh³jhh´Msubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjhh²hh³jhh´Msubah}”(h]”jhah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jhh´Mshjhh²hubjî)�”}”(hhh]”j()�”}”(hŒ0return the voltage step size between VSEL values”h]”hŒ0return the voltage step size between VSEL values”…”�”}”(hjéhh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mshjæhh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjhh²hh³jhh´Msubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjijjij‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒÀ**Parameters** ``struct regulator *regulator`` regulator source **Return** The voltage step size between VSEL values for linear regulators, or 0 if the regulator isn't a linear regulator.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj ih]”hŒ Parameters”…”�”}”(hj ih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj iubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mwhjiubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj*ih]”hŒstruct regulator *regulator”…”�”}”(hj,ih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj(iubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mthj$iubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjCih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j?ih´Mthj@iubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj$iubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j?ih´Mthj!iubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhjiubj()�”}”(hŒ **Return**”h]”j)�”}”(hjeih]”hŒReturn”…”�”}”(hjgih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjciubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mvhjiubj()�”}”(hŒpThe voltage step size between VSEL values for linear regulators, or 0 if the regulator isn't a linear regulator.”h]”hŒrThe voltage step size between VSEL values for linear regulators, or 0 if the regulator isn’t a linear regulator.”…”�”}”(hj{ih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mvhjiubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ+regulator_is_supported_voltage (C function)”Œ c.regulator_is_supported_voltage”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒXint regulator_is_supported_voltage (struct regulator *regulator, int min_uV, int max_uV)”h]”j“)�”}”(hŒWint regulator_is_supported_voltage(struct regulator *regulator, int min_uV, int max_uV)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjªih²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj¦ih²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M‚ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¹ih²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¦ih²hh³j¸ih´M‚ubj¼)�”}”(hŒregulator_is_supported_voltage”h]”jÂ)�”}”(hŒregulator_is_supported_voltage”h]”hŒregulator_is_supported_voltage”…”�”}”(hjËih²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÇiubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj¦ih²hh³j¸ih´M‚ubjÁ;)�”}”(hŒ5(struct regulator *regulator, int min_uV, int max_uV)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjçih²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjãiubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjôih²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjãiubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjjubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jjŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jÍisbŒ c.regulator_is_supported_voltage”†”asbuh1hhjãiubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj%jh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjãiubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj3jh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjãiubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj@jh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjãiubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjßiubjÇ;)�”}”(hŒ int min_uV”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjYjh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjUjubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjgjh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjUjubjÂ)�”}”(hŒmin_uV”h]”hŒmin_uV”…”�”}”(hjujh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjUjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjßiubjÇ;)�”}”(hŒ int max_uV”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjŽjh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjŠjubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjœjh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjŠjubjÂ)�”}”(hŒmax_uV”h]”hŒmax_uV”…”�”}”(hjªjh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjŠjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjßiubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj¦ih²hh³j¸ih´M‚ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj¢ih²hh³j¸ih´M‚ubah}”(h]”j�iah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j¸ih´M‚hjŸih²hubjî)�”}”(hhh]”j()�”}”(hŒ)check if a voltage range can be supported”h]”hŒ)check if a voltage range can be supported”…”�”}”(hjÔjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M‚hjÑjh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjŸih²hh³j¸ih´M‚ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjìjjjìjj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hXI**Parameters** ``struct regulator *regulator`` Regulator to check. ``int min_uV`` Minimum required voltage in uV. ``int max_uV`` Maximum required voltage in uV. **Return** 1 if the voltage range is supported, 0 if not, or a negative error number if **regulator**'s voltage can't be changed and voltage readback failed.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjöjh]”hŒ Parameters”…”�”}”(hjøjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjôjubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M†hjðjubjc)�”}”(hhh]”(jh)�”}”(hŒ4``struct regulator *regulator`` Regulator to check. ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjkh]”hŒstruct regulator *regulator”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjkubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M„hjkubjˆ)�”}”(hhh]”j()�”}”(hŒRegulator to check.”h]”hŒRegulator to check.”…”�”}”(hj.kh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j*kh´M„hj+kubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjkubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j*kh´M„hj kubjh)�”}”(hŒ/``int min_uV`` Minimum required voltage in uV. ”h]”(jn)�”}”(hŒ``int min_uV``”h]”j­)�”}”(hjNkh]”hŒ int min_uV”…”�”}”(hjPkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjLkubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M…hjHkubjˆ)�”}”(hhh]”j()�”}”(hŒMinimum required voltage in uV.”h]”hŒMinimum required voltage in uV.”…”�”}”(hjgkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jckh´M…hjdkubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjHkubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jckh´M…hj kubjh)�”}”(hŒ/``int max_uV`` Maximum required voltage in uV. ”h]”(jn)�”}”(hŒ``int max_uV``”h]”j­)�”}”(hj‡kh]”hŒ int max_uV”…”�”}”(hj‰kh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj…kubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M†hj�kubjˆ)�”}”(hhh]”j()�”}”(hŒMaximum required voltage in uV.”h]”hŒMaximum required voltage in uV.”…”�”}”(hj kh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jœkh´M†hj�kubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj�kubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jœkh´M†hj kubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjðjubj()�”}”(hŒ **Return**”h]”j)�”}”(hjÂkh]”hŒReturn”…”�”}”(hjÄkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÀkubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mˆhjðjubj()�”}”(hŒ’1 if the voltage range is supported, 0 if not, or a negative error number if **regulator**'s voltage can't be changed and voltage readback failed.”h]”(hŒM1 if the voltage range is supported, 0 if not, or a negative error number if ”…”�”}”(hjØkh²hh³Nh´Nubj)�”}”(hŒ **regulator**”h]”hŒ regulator”…”�”}”(hjàkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjØkubhŒ<’s voltage can’t be changed and voltage readback failed.”…”�”}”(hjØkh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mˆhjðjubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ"regulator_set_voltage (C function)”Œc.regulator_set_voltage”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒOint regulator_set_voltage (struct regulator *regulator, int min_uV, int max_uV)”h]”j“)�”}”(hŒNint regulator_set_voltage(struct regulator *regulator, int min_uV, int max_uV)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjlh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjlh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M“ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj(lh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjlh²hh³j'lh´M“ubj¼)�”}”(hŒregulator_set_voltage”h]”jÂ)�”}”(hŒregulator_set_voltage”h]”hŒregulator_set_voltage”…”�”}”(hj:lh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj6lubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjlh²hh³j'lh´M“ubjÁ;)�”}”(hŒ5(struct regulator *regulator, int min_uV, int max_uV)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjVlh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjRlubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjclh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjRlubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjtlh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjqlubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jvlŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jph]”hŒstruct regulator *regulator”…”�”}”(hj@ph²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjrh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjrubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjŒqubjÇ;)�”}”(hŒunsigned int new_selector”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjWrh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjSrubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjerh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjSrubjY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjsrh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjSrubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�rh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjSrubjÂ)�”}”(hŒ new_selector”h]”hŒ new_selector”…”�”}”(hj�rh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjSrubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjŒqubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjSqh²hh³jeqh´MDubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjOqh²hh³jeqh´MDubah}”(h]”jJqah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jeqh´MDhjLqh²hubjî)�”}”(hhh]”j()�”}”(hŒget raise/fall time”h]”hŒget raise/fall time”…”�”}”(hj¹rh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MDhj¶rh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjLqh²hh³jeqh´MDubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjÑrjjÑrj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX1**Parameters** ``struct regulator_dev *rdev`` regulator source device ``unsigned int old_selector`` selector for starting voltage ``unsigned int new_selector`` selector for target voltage **Description** Provided with the starting and target voltage selectors, this function returns time in microseconds required to rise or fall to this new voltage Drivers providing ramp_delay in regulation_constraints can use this as their set_voltage_time_sel() operation. **Return** ramp time in microseconds, or a negative error number if calculation failed.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjÛrh]”hŒ Parameters”…”�”}”(hjÝrh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÙrubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MHhjÕrubjc)�”}”(hhh]”(jh)�”}”(hŒ7``struct regulator_dev *rdev`` regulator source device ”h]”(jn)�”}”(hŒ``struct regulator_dev *rdev``”h]”j­)�”}”(hjúrh]”hŒstruct regulator_dev *rdev”…”�”}”(hjürh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjørubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MEhjôrubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source device”h]”hŒregulator source device”…”�”}”(hjsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jsh´MEhjsubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjôrubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jsh´MEhjñrubjh)�”}”(hŒ<``unsigned int old_selector`` selector for starting voltage ”h]”(jn)�”}”(hŒ``unsigned int old_selector``”h]”j­)�”}”(hj3sh]”hŒunsigned int old_selector”…”�”}”(hj5sh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj1subah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MFhj-subjˆ)�”}”(hhh]”j()�”}”(hŒselector for starting voltage”h]”hŒselector for starting voltage”…”�”}”(hjLsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jHsh´MFhjIsubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj-subeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jHsh´MFhjñrubjh)�”}”(hŒ:``unsigned int new_selector`` selector for target voltage ”h]”(jn)�”}”(hŒ``unsigned int new_selector``”h]”j­)�”}”(hjlsh]”hŒunsigned int new_selector”…”�”}”(hjnsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjjsubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MGhjfsubjˆ)�”}”(hhh]”j()�”}”(hŒselector for target voltage”h]”hŒselector for target voltage”…”�”}”(hj…sh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j�sh´MGhj‚subah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjfsubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j�sh´MGhjñrubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjÕrubj()�”}”(hŒ**Description**”h]”j)�”}”(hj§sh]”hŒ Description”…”�”}”(hj©sh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¥subah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MIhjÕrubj()�”}”(hŒ�Provided with the starting and target voltage selectors, this function returns time in microseconds required to rise or fall to this new voltage”h]”hŒ�Provided with the starting and target voltage selectors, this function returns time in microseconds required to rise or fall to this new voltage”…”�”}”(hj½sh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MHhjÕrubj()�”}”(hŒnDrivers providing ramp_delay in regulation_constraints can use this as their set_voltage_time_sel() operation.”h]”hŒnDrivers providing ramp_delay in regulation_constraints can use this as their set_voltage_time_sel() operation.”…”�”}”(hjÌsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MKhjÕrubj()�”}”(hŒ **Return**”h]”j)�”}”(hjÝsh]”hŒReturn”…”�”}”(hjßsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjÛsubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MNhjÕrubj()�”}”(hŒLramp time in microseconds, or a negative error number if calculation failed.”h]”hŒLramp time in microseconds, or a negative error number if calculation failed.”…”�”}”(hjósh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MOhjÕrubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ#regulator_sync_voltage (C function)”Œc.regulator_sync_voltage”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ8int regulator_sync_voltage (struct regulator *regulator)”h]”j“)�”}”(hŒ7int regulator_sync_voltage(struct regulator *regulator)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj"th²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjth²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M~ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj1th²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjth²hh³j0th´M~ubj¼)�”}”(hŒregulator_sync_voltage”h]”jÂ)�”}”(hŒregulator_sync_voltage”h]”hŒregulator_sync_voltage”…”�”}”(hjCth²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj?tubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjth²hh³j0th´M~ubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj_th²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj[tubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjlth²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj[tubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj}th²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjztubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jtŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jEtsbŒc.regulator_sync_voltage”†”asbuh1hhj[tubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�th²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj[tubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj«th²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj[tubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj¸th²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj[tubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjWtubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjth²hh³j0th´M~ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjth²hh³j0th´M~ubah}”(h]”jtah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j0th´M~hjth²hubjî)�”}”(hhh]”j()�”}”(hŒ&re-apply last regulator output voltage”h]”hŒ&re-apply last regulator output voltage”…”�”}”(hjâth²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M~hjßth²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjth²hh³j0th´M~ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjútjjútj‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hXI**Parameters** ``struct regulator *regulator`` regulator source **Description** Re-apply the last configured voltage. This is intended to be used where some external control source the consumer is cooperating with has caused the configured voltage to change. **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjuh]”hŒ Parameters”…”�”}”(hjuh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjuubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M‚hjþtubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj#uh]”hŒstruct regulator *regulator”…”�”}”(hj%uh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj!uubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhjuubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjhj{ubj()�”}”(hŒ\Current supplied by the specified current sink in uA, or a negative error number on failure.”h]”hŒ\Current supplied by the specified current sink in uA, or a negative error number on failure.”…”�”}”(hj~{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M>hj{ubj()�”}”(hŒ**NOTE**”h]”j)�”}”(hj�{h]”hŒNOTE”…”�”}”(hj‘{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj�{ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MAhj{ubj()�”}”(hŒ}If the regulator is disabled it will return the current value. This function should not be used to determine regulator state.”h]”hŒ}If the regulator is disabled it will return the current value. This function should not be used to determine regulator state.”…”�”}”(hj¥{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MAhj{ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ1regulator_get_unclaimed_power_budget (C function)”Œ&c.regulator_get_unclaimed_power_budget”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒFint regulator_get_unclaimed_power_budget (struct regulator *regulator)”h]”j“)�”}”(hŒEint regulator_get_unclaimed_power_budget(struct regulator *regulator)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjÔ{h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjÐ{h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MKubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjã{h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÐ{h²hh³jâ{h´MKubj¼)�”}”(hŒ$regulator_get_unclaimed_power_budget”h]”jÂ)�”}”(hŒ$regulator_get_unclaimed_power_budget”h]”hŒ$regulator_get_unclaimed_power_budget”…”�”}”(hjõ{h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjñ{ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjÐ{h²hh³jâ{h´MKubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj|h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj |ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj|h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj |ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj/|h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj,|ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j1|Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j÷{sbŒ&c.regulator_get_unclaimed_power_budget”†”asbuh1hhj |ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjO|h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj |ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj]|h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj |ubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjj|h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj |ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj |ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjÐ{h²hh³jâ{h´MKubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjÌ{h²hh³jâ{h´MKubah}”(h]”jÇ{ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jâ{h´MKhjÉ{h²hubjî)�”}”(hhh]”j()�”}”(hŒ$get regulator unclaimed power budget”h]”hŒ$get regulator unclaimed power budget”…”�”}”(hj”|h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MKhj‘|h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjÉ{h²hh³jâ{h´MKubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj¬|jj¬|j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒ~**Parameters** ``struct regulator *regulator`` regulator source **Return** Unclaimed power budget of the regulator in mW.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj¶|h]”hŒ Parameters”…”�”}”(hj¸|h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj´|ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MOhj°|ubjc)�”}”(hhh]”jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hjÕ|h]”hŒstruct regulator *regulator”…”�”}”(hj×|h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÓ|ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MLhjÏ|ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjî|h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jê|h´MLhjë|ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÏ|ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jê|h´MLhjÌ|ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhj°|ubj()�”}”(hŒ **Return**”h]”j)�”}”(hj}h]”hŒReturn”…”�”}”(hj}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj}ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MNhj°|ubj()�”}”(hŒ.Unclaimed power budget of the regulator in mW.”h]”hŒ.Unclaimed power budget of the regulator in mW.”…”�”}”(hj&}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MNhj°|ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ+regulator_request_power_budget (C function)”Œ c.regulator_request_power_budget”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒUint regulator_request_power_budget (struct regulator *regulator, unsigned int pw_req)”h]”j“)�”}”(hŒTint regulator_request_power_budget(struct regulator *regulator, unsigned int pw_req)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjU}h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjQ}h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MXubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjd}h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjQ}h²hh³jc}h´MXubj¼)�”}”(hŒregulator_request_power_budget”h]”jÂ)�”}”(hŒregulator_request_power_budget”h]”hŒregulator_request_power_budget”…”�”}”(hjv}h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjr}ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjQ}h²hh³jc}h´MXubjÁ;)�”}”(hŒ2(struct regulator *regulator, unsigned int pw_req)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj’}h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjŽ}ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŸ}h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjŽ}ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj°}h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj­}ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j²}Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jx}sbŒ c.regulator_request_power_budget”†”asbuh1hhjŽ}ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÐ}h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjŽ}ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjÞ}h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjŽ}ubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjë}h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjŽ}ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjŠ}ubjÇ;)�”}”(hŒunsigned int pw_req”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj~h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj~ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj~h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj~ubjY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj ~h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj~ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj.~h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj~ubjÂ)�”}”(hŒpw_req”h]”hŒpw_req”…”�”}”(hj<~h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj~ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjŠ}ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjQ}h²hh³jc}h´MXubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjM}h²hh³jc}h´MXubah}”(h]”jH}ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jc}h´MXhjJ}h²hubjî)�”}”(hhh]”j()�”}”(hŒ#request power budget on a regulator”h]”hŒ#request power budget on a regulator”…”�”}”(hjf~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MXhjc~h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjJ}h²hh³jc}h´MXubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj~~jj~~j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒ®**Parameters** ``struct regulator *regulator`` regulator source ``unsigned int pw_req`` Power requested **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjˆ~h]”hŒ Parameters”…”�”}”(hjŠ~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj†~ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M\hj‚~ubjc)�”}”(hhh]”(jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj§~h]”hŒstruct regulator *regulator”…”�”}”(hj©~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¥~ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MYhj¡~ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjÀ~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j¼~h´MYhj½~ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¡~ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j¼~h´MYhjž~ubjh)�”}”(hŒ(``unsigned int pw_req`` Power requested ”h]”(jn)�”}”(hŒ``unsigned int pw_req``”h]”j­)�”}”(hjà~h]”hŒunsigned int pw_req”…”�”}”(hjâ~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÞ~ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MZhjÚ~ubjˆ)�”}”(hhh]”j()�”}”(hŒPower requested”h]”hŒPower requested”…”�”}”(hjù~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jõ~h´MZhjö~ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÚ~ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jõ~h´MZhjž~ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj‚~ubj()�”}”(hŒ **Return**”h]”j)�”}”(hjh]”hŒReturn”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M\hj‚~ubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M\hj‚~ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ(regulator_free_power_budget (C function)”Œc.regulator_free_power_budget”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒOvoid regulator_free_power_budget (struct regulator *regulator, unsigned int pw)”h]”j“)�”}”(hŒNvoid regulator_free_power_budget(struct regulator *regulator, unsigned int pw)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj\h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjoh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj\h²hh³jnh´Mubj¼)�”}”(hŒregulator_free_power_budget”h]”jÂ)�”}”(hŒregulator_free_power_budget”h]”hŒregulator_free_power_budget”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj}ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj\h²hh³jnh´MubjÁ;)�”}”(hŒ.(struct regulator *regulator, unsigned int pw)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj™ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjªh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj™ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj»h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj¸ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j½Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jƒsbŒc.regulator_free_power_budget”†”asbuh1hhj™ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj™ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjéh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj™ubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjöh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj™ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj•ubjÇ;)�”}”(hŒunsigned int pw”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj €ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj €ubjY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj+€h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj €ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj9€h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj €ubjÂ)�”}”(hŒpw”h]”hŒpw”…”�”}”(hjG€h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj €ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj•ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj\h²hh³jnh´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjXh²hh³jnh´Mubah}”(h]”jSah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jnh´MhjUh²hubjî)�”}”(hhh]”j()�”}”(hŒ free power budget on a regulator”h]”hŒ free power budget on a regulator”…”�”}”(hjq€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mhjn€h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjUh²hh³jnh´Mubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj‰€jj‰€j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒ¡**Parameters** ``struct regulator *regulator`` regulator source ``unsigned int pw`` Power to be released. **Return** Power budget of the regulator in mW.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj“€h]”hŒ Parameters”…”�”}”(hj•€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj‘€ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mƒhj�€ubjc)�”}”(hhh]”(jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj²€h]”hŒstruct regulator *regulator”…”�”}”(hj´€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj°€ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M€hj¬€ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjË€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÇ€h´M€hjÈ€ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¬€ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÇ€h´M€hj©€ubjh)�”}”(hŒ*``unsigned int pw`` Power to be released. ”h]”(jn)�”}”(hŒ``unsigned int pw``”h]”j­)�”}”(hjë€h]”hŒunsigned int pw”…”�”}”(hjí€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjé€ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M�hjå€ubjˆ)�”}”(hhh]”j()�”}”(hŒPower to be released.”h]”hŒPower to be released.”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j�h´M�hj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjå€ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j�h´M�hj©€ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj�€ubj()�”}”(hŒ **Return**”h]”j)�”}”(hj&�h]”hŒReturn”…”�”}”(hj(�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj$�ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mƒhj�€ubj()�”}”(hŒ$Power budget of the regulator in mW.”h]”hŒ$Power budget of the regulator in mW.”…”�”}”(hj<�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mƒhj�€ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_set_mode (C function)”Œc.regulator_set_mode”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒGint regulator_set_mode (struct regulator *regulator, unsigned int mode)”h]”j“)�”}”(hŒFint regulator_set_mode(struct regulator *regulator, unsigned int mode)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hjk�h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjg�h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mœubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjz�h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjg�h²hh³jy�h´Mœubj¼)�”}”(hŒregulator_set_mode”h]”jÂ)�”}”(hŒregulator_set_mode”h]”hŒregulator_set_mode”…”�”}”(hjŒ�h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjˆ�ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hjg�h²hh³jy�h´MœubjÁ;)�”}”(hŒ0(struct regulator *regulator, unsigned int mode)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj¨�h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj¤�ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjµ�h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¤�ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjÆ�h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjÃ�ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jÈ�Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jŽ�sbŒc.regulator_set_mode”†”asbuh1hhj¤�ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjæ�h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¤�ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjô�h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj¤�ubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj¤�ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj �ubjÇ;)�”}”(hŒunsigned int mode”h]”(jY<)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj‚ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj(‚h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj‚ubjY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj6‚h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj‚ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjD‚h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj‚ubjÂ)�”}”(hŒmode”h]”hŒmode”…”�”}”(hjR‚h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj‚ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj �ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hjg�h²hh³jy�h´Mœubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjc�h²hh³jy�h´Mœubah}”(h]”j^�ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jy�h´Mœhj`�h²hubjî)�”}”(hhh]”j()�”}”(hŒset regulator operating mode”h]”hŒset regulator operating mode”…”�”}”(hj|‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mœhjy‚h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj`�h²hh³jy�h´Mœubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj”‚jj”‚j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hXÇ**Parameters** ``struct regulator *regulator`` regulator source ``unsigned int mode`` operating mode - one of the REGULATOR_MODE constants **Description** Set regulator operating mode to increase regulator efficiency or improve regulation performance. **NOTE** Regulator system constraints must be set for this regulator before calling this function otherwise this call will fail. **Return** 0 on success or a negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjž‚h]”hŒ Parameters”…”�”}”(hj ‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjœ‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hj˜‚ubjc)�”}”(hhh]”(jh)�”}”(hŒ1``struct regulator *regulator`` regulator source ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj½‚h]”hŒstruct regulator *regulator”…”�”}”(hj¿‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj»‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M�hj·‚ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator source”h]”hŒregulator source”…”�”}”(hjÖ‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jÒ‚h´M�hjÓ‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj·‚ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÒ‚h´M�hj´‚ubjh)�”}”(hŒK``unsigned int mode`` operating mode - one of the REGULATOR_MODE constants ”h]”(jn)�”}”(hŒ``unsigned int mode``”h]”j­)�”}”(hjö‚h]”hŒunsigned int mode”…”�”}”(hjø‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjô‚ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mžhjð‚ubjˆ)�”}”(hhh]”j()�”}”(hŒ4operating mode - one of the REGULATOR_MODE constants”h]”hŒ4operating mode - one of the REGULATOR_MODE constants”…”�”}”(hjƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j ƒh´Mžhj ƒubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjð‚ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j ƒh´Mžhj´‚ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj˜‚ubj()�”}”(hŒ**Description**”h]”j)�”}”(hj1ƒh]”hŒ Description”…”�”}”(hj3ƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj/ƒubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M hj˜‚ubj()�”}”(hŒ`Set regulator operating mode to increase regulator efficiency or improve regulation performance.”h]”hŒ`Set regulator operating mode to increase regulator efficiency or improve regulation performance.”…”�”}”(hjGƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MŸhj˜‚ubj()�”}”(hŒ**NOTE**”h]”j)�”}”(hjXƒh]”hŒNOTE”…”�”}”(hjZƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjVƒubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M¢hj˜‚ubj()�”}”(hŒwRegulator system constraints must be set for this regulator before calling this function otherwise this call will fail.”h]”hŒwRegulator system constraints must be set for this regulator before calling this function otherwise this call will fail.”…”�”}”(hjnƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M£hj˜‚ubj()�”}”(hŒ **Return**”h]”j)�”}”(hjƒh]”hŒReturn”…”�”}”(hj�ƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj}ƒubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M¦hj˜‚ubj()�”}”(hŒ30 on success or a negative error number on failure.”h]”hŒ30 on success or a negative error number on failure.”…”�”}”(hj•ƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M¦hj˜‚ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œregulator_get_mode (C function)”Œc.regulator_get_mode”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ=unsigned int regulator_get_mode (struct regulator *regulator)”h]”j“)�”}”(hŒ<h]”hŒconst”…”�”}”(hjs¡h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjo¡ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj€¡h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjo¡ubj™)�”}”(hjœh]”hŒstruct”…”�”}”(hjŽ¡h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjo¡ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj›¡h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjo¡ubh)�”}”(hhh]”jÂ)�”}”(hŒregulator_desc”h]”hŒregulator_desc”…”�”}”(hj¬¡h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj©¡ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j®¡Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”jÄ Œc.regulator_register”†”asbuh1hhjo¡ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÊ¡h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjo¡ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjØ¡h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjo¡ubjÂ)�”}”(hŒregulator_desc”h]”hŒregulator_desc”…”�”}”(hjå¡h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjo¡ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjû ubjÇ;)�”}”(hŒ"const struct regulator_config *cfg”h]”(j™)�”}”(hj><h]”hŒconst”…”�”}”(hjþ¡h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjú¡ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj ¢h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjú¡ubj™)�”}”(hjœh]”hŒstruct”…”�”}”(hj¢h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjú¡ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj&¢h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjú¡ubh)�”}”(hhh]”jÂ)�”}”(hŒregulator_config”h]”hŒregulator_config”…”�”}”(hj7¢h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj4¢ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j9¢Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”jÄ Œc.regulator_register”†”asbuh1hhjú¡ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjU¢h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjú¡ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjc¢h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjú¡ubjÂ)�”}”(hŒcfg”h]”hŒcfg”…”�”}”(hjp¢h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjú¡ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjû ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj… h²hh³j– h´Mgubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj� h²hh³j– h´Mgubah}”(h]”j| ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j– h´Mghj~ h²hubjî)�”}”(hhh]”j()�”}”(hŒregister regulator”h]”hŒregister regulator”…”�”}”(hjš¢h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mghj—¢h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj~ h²hh³j– h´Mgubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj²¢jj²¢j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX¾**Parameters** ``struct device *dev`` the device that drive the regulator ``const struct regulator_desc *regulator_desc`` regulator to register ``const struct regulator_config *cfg`` runtime configuration for regulator **Description** Called by regulator drivers to register a regulator. **Return** Pointer to a valid :c:type:`struct regulator_dev ` on success or an ERR_PTR() encoded negative error number on failure.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj¼¢h]”hŒ Parameters”…”�”}”(hj¾¢h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjº¢ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mkhj¶¢ubjc)�”}”(hhh]”(jh)�”}”(hŒ;``struct device *dev`` the device that drive the regulator ”h]”(jn)�”}”(hŒ``struct device *dev``”h]”j­)�”}”(hjÛ¢h]”hŒstruct device *dev”…”�”}”(hjÝ¢h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÙ¢ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MhhjÕ¢ubjˆ)�”}”(hhh]”j()�”}”(hŒ#the device that drive the regulator”h]”hŒ#the device that drive the regulator”…”�”}”(hjô¢h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jð¢h´Mhhjñ¢ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjÕ¢ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jð¢h´MhhjÒ¢ubjh)�”}”(hŒF``const struct regulator_desc *regulator_desc`` regulator to register ”h]”(jn)�”}”(hŒ/``const struct regulator_desc *regulator_desc``”h]”j­)�”}”(hj£h]”hŒ+const struct regulator_desc *regulator_desc”…”�”}”(hj£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj£ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mihj£ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator to register”h]”hŒregulator to register”…”�”}”(hj-£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j)£h´Mihj*£ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj£ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j)£h´MihjÒ¢ubjh)�”}”(hŒK``const struct regulator_config *cfg`` runtime configuration for regulator ”h]”(jn)�”}”(hŒ&``const struct regulator_config *cfg``”h]”j­)�”}”(hjM£h]”hŒ"const struct regulator_config *cfg”…”�”}”(hjO£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjK£ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MjhjG£ubjˆ)�”}”(hhh]”j()�”}”(hŒ#runtime configuration for regulator”h]”hŒ#runtime configuration for regulator”…”�”}”(hjf£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jb£h´Mjhjc£ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjG£ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jb£h´MjhjÒ¢ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhj¶¢ubj()�”}”(hŒ**Description**”h]”j)�”}”(hjˆ£h]”hŒ Description”…”�”}”(hjŠ£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj†£ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mlhj¶¢ubj()�”}”(hŒ4Called by regulator drivers to register a regulator.”h]”hŒ4Called by regulator drivers to register a regulator.”…”�”}”(hjž£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mkhj¶¢ubj()�”}”(hŒ **Return**”h]”j)�”}”(hj¯£h]”hŒReturn”…”�”}”(hj±£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj­£ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mmhj¶¢ubj()�”}”(hŒ†Pointer to a valid :c:type:`struct regulator_dev ` on success or an ERR_PTR() encoded negative error number on failure.”h]”(hŒPointer to a valid ”…”�”}”(hjÅ£h²hh³Nh´Nubh)�”}”(hŒ.:c:type:`struct regulator_dev `”h]”j­)�”}”(hjÏ£h]”hŒstruct regulator_dev”…”�”}”(hjÑ£h²hh³Nh´Nubah}”(h]”h ]”(jHjIŒc-type”eh"]”h$]”h&]”uh1j¬hjÍ£ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jUŒ refdomain”jIŒreftype”Œtype”Œ refexplicit”ˆŒrefwarn”‰j{;jÆ=j[Œ regulator_dev”uh1hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MnhjÅ£ubhŒE on success or an ERR_PTR() encoded negative error number on failure.”…”�”}”(hjÅ£h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jì£h´Mnhj¶¢ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ!regulator_unregister (C function)”Œc.regulator_unregister”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ6void regulator_unregister (struct regulator_dev *rdev)”h]”j“)�”}”(hŒ5void regulator_unregister(struct regulator_dev *rdev)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj¤h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj¤h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MŒubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj&¤h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¤h²hh³j%¤h´MŒubj¼)�”}”(hŒregulator_unregister”h]”jÂ)�”}”(hŒregulator_unregister”h]”hŒregulator_unregister”…”�”}”(hj8¤h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj4¤ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj¤h²hh³j%¤h´MŒubjÁ;)�”}”(hŒ(struct regulator_dev *rdev)”h]”jÇ;)�”}”(hŒstruct regulator_dev *rdev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjT¤h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjP¤ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hja¤h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjP¤ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator_dev”h]”hŒ regulator_dev”…”�”}”(hjr¤h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjo¤ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jt¤Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j:¤sbŒc.regulator_unregister”†”asbuh1hhjP¤ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj’¤h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjP¤ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj ¤h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjP¤ubjÂ)�”}”(hŒrdev”h]”hŒrdev”…”�”}”(hj­¤h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjP¤ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjL¤ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj¤h²hh³j%¤h´MŒubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj¤h²hh³j%¤h´MŒubah}”(h]”j ¤ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j%¤h´MŒhj ¤h²hubjî)�”}”(hhh]”j()�”}”(hŒunregister regulator”h]”hŒunregister regulator”…”�”}”(hjפh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MŒhjÔ¤h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj ¤h²hh³j%¤h´MŒubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjï¤jjï¤j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒ‘**Parameters** ``struct regulator_dev *rdev`` regulator to unregister **Description** Called by regulator drivers to unregister a regulator.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjù¤h]”hŒ Parameters”…”�”}”(hjû¤h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj÷¤ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M�hjó¤ubjc)�”}”(hhh]”jh)�”}”(hŒ7``struct regulator_dev *rdev`` regulator to unregister ”h]”(jn)�”}”(hŒ``struct regulator_dev *rdev``”h]”j­)�”}”(hj¥h]”hŒstruct regulator_dev *rdev”…”�”}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj¥ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M�hj¥ubjˆ)�”}”(hhh]”j()�”}”(hŒregulator to unregister”h]”hŒregulator to unregister”…”�”}”(hj1¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j-¥h´M�hj.¥ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¥ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j-¥h´M�hj¥ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhjó¤ubj()�”}”(hŒ**Description**”h]”j)�”}”(hjS¥h]”hŒ Description”…”�”}”(hjU¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjQ¥ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M�hjó¤ubj()�”}”(hŒ6Called by regulator drivers to unregister a regulator.”h]”hŒ6Called by regulator drivers to unregister a regulator.”…”�”}”(hji¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MŽhjó¤ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ+regulator_has_full_constraints (C function)”Œ c.regulator_has_full_constraints”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ*void regulator_has_full_constraints (void)”h]”j“)�”}”(hŒ)void regulator_has_full_constraints(void)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj˜¥h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj”¥h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M#ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj§¥h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj”¥h²hh³j¦¥h´M#ubj¼)�”}”(hŒregulator_has_full_constraints”h]”jÂ)�”}”(hŒregulator_has_full_constraints”h]”hŒregulator_has_full_constraints”…”�”}”(hj¹¥h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjµ¥ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj”¥h²hh³j¦¥h´M#ubjÁ;)�”}”(hŒ(void)”h]”jÇ;)�”}”(hŒvoid”h]”jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjÕ¥h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjÑ¥ubah}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjÍ¥ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj”¥h²hh³j¦¥h´M#ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj�¥h²hh³j¦¥h´M#ubah}”(h]”j‹¥ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j¦¥h´M#hj�¥h²hubjî)�”}”(hhh]”j()�”}”(hŒ*the system has fully specified constraints”h]”hŒ*the system has fully specified constraints”…”�”}”(hjÿ¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M#hjü¥h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj�¥h²hh³j¦¥h´M#ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj¦jj¦j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hXh**Parameters** ``void`` no arguments **Description** Calling this function will cause the regulator API to disable all regulators which have a zero use count and don't have an always_on constraint in a late_initcall. The intention is that this will become the default behaviour in a future kernel release so users are encouraged to use this facility now.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj!¦h]”hŒ Parameters”…”�”}”(hj#¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¦ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M'hj¦ubjc)�”}”(hhh]”jh)�”}”(hŒ``void`` no arguments ”h]”(jn)�”}”(hŒ``void``”h]”j­)�”}”(hj@¦h]”hŒvoid”…”�”}”(hjB¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj>¦ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Khj:¦ubjˆ)�”}”(hhh]”j()�”}”(hŒ no arguments”h]”hŒ no arguments”…”�”}”(hjY¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jU¦h´KhjV¦ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj:¦ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jU¦h´Khj7¦ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhj¦ubj()�”}”(hŒ**Description**”h]”j)�”}”(hj{¦h]”hŒ Description”…”�”}”(hj}¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjy¦ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Khj¦ubj()�”}”(hŒ£Calling this function will cause the regulator API to disable all regulators which have a zero use count and don't have an always_on constraint in a late_initcall.”h]”hŒ¥Calling this function will cause the regulator API to disable all regulators which have a zero use count and don’t have an always_on constraint in a late_initcall.”…”�”}”(hj‘¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M$hj¦ubj()�”}”(hŒ‰The intention is that this will become the default behaviour in a future kernel release so users are encouraged to use this facility now.”h]”hŒ‰The intention is that this will become the default behaviour in a future kernel release so users are encouraged to use this facility now.”…”�”}”(hj ¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M(hj¦ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œrdev_get_drvdata (C function)”Œc.rdev_get_drvdata”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ4void * rdev_get_drvdata (struct regulator_dev *rdev)”h]”j“)�”}”(hŒ2void *rdev_get_drvdata(struct regulator_dev *rdev)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjϦh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj˦h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M4ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÞ¦h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj˦h²hh³jݦh´M4ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjì¦h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj˦h²hh³jݦh´M4ubj¼)�”}”(hŒrdev_get_drvdata”h]”jÂ)�”}”(hŒrdev_get_drvdata”h]”hŒrdev_get_drvdata”…”�”}”(hjý¦h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjù¦ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj˦h²hh³jݦh´M4ubjÁ;)�”}”(hŒ(struct regulator_dev *rdev)”h]”jÇ;)�”}”(hŒstruct regulator_dev *rdev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hj§h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hj§ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj&§h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj§ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator_dev”h]”hŒ regulator_dev”…”�”}”(hj7§h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj4§ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j9§Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;jÿ¦sbŒc.rdev_get_drvdata”†”asbuh1hhj§ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjW§h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj§ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hje§h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj§ubjÂ)�”}”(hŒrdev”h]”hŒrdev”…”�”}”(hjr§h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj§ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hj§ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj˦h²hh³jݦh´M4ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhjǦh²hh³jݦh´M4ubah}”(h]”j¦ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jݦh´M4hjĦh²hubjî)�”}”(hhh]”j()�”}”(hŒget rdev regulator driver data”h]”hŒget rdev regulator driver data”…”�”}”(hjœ§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M4hj™§h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjĦh²hh³jݦh´M4ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjj´§jj´§j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒâ**Parameters** ``struct regulator_dev *rdev`` regulator **Description** Get rdev regulator driver private data. This call can be used in the regulator driver context. **Return** Pointer to regulator driver private data.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj¾§h]”hŒ Parameters”…”�”}”(hjÀ§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¼§ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M8hj¸§ubjc)�”}”(hhh]”jh)�”}”(hŒ)``struct regulator_dev *rdev`` regulator ”h]”(jn)�”}”(hŒ``struct regulator_dev *rdev``”h]”j­)�”}”(hjݧh]”hŒstruct regulator_dev *rdev”…”�”}”(hjß§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjÛ§ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M5hj×§ubjˆ)�”}”(hhh]”j()�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjö§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³jò§h´M5hjó§ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj×§ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jò§h´M5hjÔ§ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhj¸§ubj()�”}”(hŒ**Description**”h]”j)�”}”(hj¨h]”hŒ Description”…”�”}”(hj¨h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj¨ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M7hj¸§ubj()�”}”(hŒ^Get rdev regulator driver private data. This call can be used in the regulator driver context.”h]”hŒ^Get rdev regulator driver private data. This call can be used in the regulator driver context.”…”�”}”(hj.¨h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M6hj¸§ubj()�”}”(hŒ **Return**”h]”j)�”}”(hj?¨h]”hŒReturn”…”�”}”(hjA¨h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj=¨ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M9hj¸§ubj()�”}”(hŒ)Pointer to regulator driver private data.”h]”hŒ)Pointer to regulator driver private data.”…”�”}”(hjU¨h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M:hj¸§ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ"regulator_get_drvdata (C function)”Œc.regulator_get_drvdata”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ:void * regulator_get_drvdata (struct regulator *regulator)”h]”j“)�”}”(hŒ8void *regulator_get_drvdata(struct regulator *regulator)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj„¨h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj€¨h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MCubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj“¨h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj€¨h²hh³j’¨h´MCubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj¡¨h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hj€¨h²hh³j’¨h´MCubj¼)�”}”(hŒregulator_get_drvdata”h]”jÂ)�”}”(hŒregulator_get_drvdata”h]”hŒregulator_get_drvdata”…”�”}”(hj²¨h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj®¨ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj€¨h²hh³j’¨h´MCubjÁ;)�”}”(hŒ(struct regulator *regulator)”h]”jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjΨh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjʨubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÛ¨h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjʨubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjì¨h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjé¨ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j´¨sbŒc.regulator_get_drvdata”†”asbuh1hhjʨubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj ©h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjʨubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj©h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjʨubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj'©h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjʨubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjƨubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj€¨h²hh³j’¨h´MCubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj|¨h²hh³j’¨h´MCubah}”(h]”jw¨ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j’¨h´MChjy¨h²hubjî)�”}”(hhh]”j()�”}”(hŒget regulator driver data”h]”hŒget regulator driver data”…”�”}”(hjQ©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MChjN©h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhjy¨h²hh³j’¨h´MCubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjji©jji©j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hX**Parameters** ``struct regulator *regulator`` regulator **Description** Get regulator driver private data. This call can be used in the consumer driver context when non API regulator specific functions need to be called. **Return** Pointer to regulator driver private data.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjs©h]”hŒ Parameters”…”�”}”(hju©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjq©ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MGhjm©ubjc)�”}”(hhh]”jh)�”}”(hŒ*``struct regulator *regulator`` regulator ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj’©h]”hŒstruct regulator *regulator”…”�”}”(hj”©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj�©ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MDhjŒ©ubjˆ)�”}”(hhh]”j()�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj«©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j§©h´MDhj¨©ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjŒ©ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j§©h´MDhj‰©ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhjm©ubj()�”}”(hŒ**Description**”h]”j)�”}”(hjÍ©h]”hŒ Description”…”�”}”(hjÏ©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjË©ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MFhjm©ubj()�”}”(hŒ”Get regulator driver private data. This call can be used in the consumer driver context when non API regulator specific functions need to be called.”h]”hŒ”Get regulator driver private data. This call can be used in the consumer driver context when non API regulator specific functions need to be called.”…”�”}”(hjã©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MEhjm©ubj()�”}”(hŒ **Return**”h]”j)�”}”(hjô©h]”hŒReturn”…”�”}”(hjö©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjò©ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MHhjm©ubj()�”}”(hŒ)Pointer to regulator driver private data.”h]”hŒ)Pointer to regulator driver private data.”…”�”}”(hj ªh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MIhjm©ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œ"regulator_set_drvdata (C function)”Œc.regulator_set_drvdata”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒDvoid regulator_set_drvdata (struct regulator *regulator, void *data)”h]”j“)�”}”(hŒCvoid regulator_set_drvdata(struct regulator *regulator, void *data)”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj9ªh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj5ªh²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MRubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjHªh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj5ªh²hh³jGªh´MRubj¼)�”}”(hŒregulator_set_drvdata”h]”jÂ)�”}”(hŒregulator_set_drvdata”h]”hŒregulator_set_drvdata”…”�”}”(hjZªh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjVªubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj5ªh²hh³jGªh´MRubjÁ;)�”}”(hŒ)(struct regulator *regulator, void *data)”h]”(jÇ;)�”}”(hŒstruct regulator *regulator”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjvªh²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjrªubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjƒªh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjrªubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj”ªh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj‘ªubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”j–ªŒmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j\ªsbŒc.regulator_set_drvdata”†”asbuh1hhjrªubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj´ªh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjrªubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hjªh²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjrªubjÂ)�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hjϪh²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjrªubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjnªubjÇ;)�”}”(hŒ void *data”h]”(jY<)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjèªh²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hjäªubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjöªh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjäªubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj«h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjäªubjÂ)�”}”(hŒdata”h]”hŒdata”…”�”}”(hj«h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjäªubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjnªubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj5ªh²hh³jGªh´MRubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj1ªh²hh³jGªh´MRubah}”(h]”j,ªah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³jGªh´MRhj.ªh²hubjî)�”}”(hhh]”j()�”}”(hŒset regulator driver data”h]”hŒset regulator driver data”…”�”}”(hj;«h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MRhj8«h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj.ªh²hh³jGªh´MRubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjS«jjS«j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒR**Parameters** ``struct regulator *regulator`` regulator ``void *data`` data”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hj]«h]”hŒ Parameters”…”�”}”(hj_«h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhj[«ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MVhjW«ubjc)�”}”(hhh]”(jh)�”}”(hŒ*``struct regulator *regulator`` regulator ”h]”(jn)�”}”(hŒ``struct regulator *regulator``”h]”j­)�”}”(hj|«h]”hŒstruct regulator *regulator”…”�”}”(hj~«h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hjz«ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MShjv«ubjˆ)�”}”(hhh]”j()�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj•«h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j‘«h´MShj’«ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hjv«ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j‘«h´MShjs«ubjh)�”}”(hŒ``void *data`` data”h]”(jn)�”}”(hŒ``void *data``”h]”j­)�”}”(hjµ«h]”hŒ void *data”…”�”}”(hj·«h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj³«ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MUhj¯«ubjˆ)�”}”(hhh]”j()�”}”(hŒdata”h]”hŒdata”…”�”}”(hjΫh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´MThjË«ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj¯«ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³jÊ«h´MUhjs«ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jbhjW«ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubjv)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j‚Œrdev_get_id (C function)”Œ c.rdev_get_id”hNt”auh1juhjVh²hh³Nh´Nubjˆ)�”}”(hhh]”(j�)�”}”(hŒ,int rdev_get_id (struct regulator_dev *rdev)”h]”j“)�”}”(hŒ+int rdev_get_id(struct regulator_dev *rdev)”h]”(jY<)�”}”(hŒint”h]”hŒint”…”�”}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”je<ah"]”h$]”h&]”uh1jX<hj ¬h²hh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M]ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj ¬h²hh³j¬h´M]ubj¼)�”}”(hŒ rdev_get_id”h]”jÂ)�”}”(hŒ rdev_get_id”h]”hŒ rdev_get_id”…”�”}”(hj0¬h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhj,¬ubah}”(h]”h ]”(jÔjÕeh"]”h$]”h&]”hÅhÆuh1j»hj ¬h²hh³j¬h´M]ubjÁ;)�”}”(hŒ(struct regulator_dev *rdev)”h]”jÇ;)�”}”(hŒstruct regulator_dev *rdev”h]”(j™)�”}”(hjœh]”hŒstruct”…”�”}”(hjL¬h²hh³Nh´Nubah}”(h]”h ]”j¥ah"]”h$]”h&]”uh1j˜hjH¬ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjY¬h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjH¬ubh)�”}”(hhh]”jÂ)�”}”(hŒ regulator_dev”h]”hŒ regulator_dev”…”�”}”(hjj¬h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjg¬ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jIŒreftype”jw;Œ reftarget”jl¬Œmodname”NŒ classname”Nj{;j~;)�”}”j�;]”j„;)�”}”jw;j2¬sbŒ c.rdev_get_id”†”asbuh1hhjH¬ubj«)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjЬh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjH¬ubj™;)�”}”(hjœ;h]”hŒ*”…”�”}”(hj˜¬h²hh³Nh´Nubah}”(h]”h ]”j¥;ah"]”h$]”h&]”uh1j˜;hjH¬ubjÂ)�”}”(hŒrdev”h]”hŒrdev”…”�”}”(hj¥¬h²hh³Nh´Nubah}”(h]”h ]”jÍah"]”h$]”h&]”uh1jÁhjH¬ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÆ;hjD¬ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jÀ;hj ¬h²hh³j¬h´M]ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆj߈uh1j’jàjáhj¬h²hh³j¬h´M]ubah}”(h]”j¬ah ]”(jåjæeh"]”h$]”h&]”jêˆjë)jìhuh1jŒh³j¬h´M]hj¬h²hubjî)�”}”(hhh]”j()�”}”(hŒget regulator ID”h]”hŒget regulator ID”…”�”}”(hjϬh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M]hj̬h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1jíhj¬h²hh³j¬h´M]ubeh}”(h]”h ]”(jIŒfunction”eh"]”h$]”h&]”jjIjjç¬jjç¬j‰j‰j‰uh1j‡h²hhjVh³Nh´Nubj)�”}”(hŒb**Parameters** ``struct regulator_dev *rdev`` regulator **Return** Regulator ID for **rdev**.”h]”(j()�”}”(hŒ**Parameters**”h]”j)�”}”(hjñ¬h]”hŒ Parameters”…”�”}”(hjó¬h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjï¬ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´Mahjë¬ubjc)�”}”(hhh]”jh)�”}”(hŒ)``struct regulator_dev *rdev`` regulator ”h]”(jn)�”}”(hŒ``struct regulator_dev *rdev``”h]”j­)�”}”(hj­h]”hŒstruct regulator_dev *rdev”…”�”}”(hj­h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¬hj­ubah}”(h]”h ]”h"]”h$]”h&]”uh1jmh³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M^hj ­ubjˆ)�”}”(hhh]”j()�”}”(hŒ regulator”h]”hŒ regulator”…”�”}”(hj)­h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³j%­h´M^hj&­ubah}”(h]”h ]”h"]”h$]”h&]”uh1j‡hj ­ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jgh³j%­h´M^hj­ubah}”(h]”h ]”h"]”h$]”h&]”uh1jbhjë¬ubj()�”}”(hŒ **Return**”h]”j)�”}”(hjK­h]”hŒReturn”…”�”}”(hjM­h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjI­ubah}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M`hjë¬ubj()�”}”(hŒRegulator ID for **rdev**.”h]”(hŒRegulator ID for ”…”�”}”(hja­h²hh³Nh´Nubj)�”}”(hŒ**rdev**”h]”hŒrdev”…”�”}”(hji­h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jhja­ubhŒ.”…”�”}”(hja­h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1j'h³Œ^/var/lib/git/docbuild/linux/Documentation/driver-api/regulator:169: ./drivers/regulator/core.c”h´M`hjë¬ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jhjVh²hh³Nh´Nubeh}”(h]”Œ api-reference”ah ]”h"]”Œ api reference”ah$]”h&]”uh1hòhhôh²hh³hÇh´Kšubeh}”(h]”Œ!voltage-and-current-regulator-api”ah ]”h"]”Œ!voltage and current regulator api”ah$]”h&]”uh1hòhhh²hh³hÇh´K ubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(h÷NŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”j¼­Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(j–­j“­jŒj‰j„j�jjjgjÀj½j;j8jbj_jŸjœjSjPjjjKjHjŽ­j‹­uŒ nametypes”}”(j–­‰jŒ‰j„‰jj‰jÀ‰j;‰jb‰jŸ‰jS‰j‰jK‰jŽ­‰uh}”(j“­hôj‰jwj�jÆjgj�j½j!j8jÃj_j>jœjmjPj¢jjÁjHj j‹­jVj„jŽj2j7jÖjÜj& j+ j€j…jéjîjÿjjÉ"jÎ"j2j$2jn4js4j"6j'6jý7j8j5;j:;jè=jí=j¢@j§@jMCjRCjÎDjÓDjLHjQHjcJjhJjŸNj¤NjLQjQQjSj SjêTjïTjÍVjÒVj YjYj²Zj·Zjl\jq\j¦^j«^j»`jÀ`jžcj£cjêejïejhjhj�ij¢ij ljljÆnjËnjJqjOqjtjtj½ujÂujewjjwjzj$zjÇ{jÌ{jH}jM}jSjXj^�jc�j·ƒj¼ƒj�…j’…j̇jчj^ŠjcŠjsŒjxŒjÄŽjÉŽj‘j‘jÔ“jÙ“jê•jï•j˜j˜j=šjBšj,œj1œjçžjìžj| j� j ¤j¤j‹¥j�¥j¦jǦjw¨j|¨j,ªj1ªj¬j¬uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.