<?xml version="1.0" encoding="ANSI_X3.4-1968" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968" /><title>Voltage and current regulator API</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /><link rel="home" href="index.html" title="Voltage and current regulator API" /><link rel="next" href="ch01.html" title="Chapter 1. Introduction" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Voltage and current regulator API</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch01.html">Next</a></td></tr></table><hr /></div><div class="book" title="Voltage and current regulator API"><div class="titlepage"><div><div><h1 class="title"><a id="regulator-api"></a>Voltage and current regulator API</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Liam</span> <span class="surname">Girdwood</span></h3><div class="affiliation"><div class="address"><p><br />       <code class="email"><<a class="email" href="mailto:lrg@slimlogic.co.uk">lrg@slimlogic.co.uk</a>></code><br />      </p></div></div></div><div class="author"><h3 class="author"><span class="firstname">Mark</span> <span class="surname">Brown</span></h3><div class="affiliation"><span class="orgname">Wolfson Microelectronics<br /></span><div class="address"><p><br />       <code class="email"><<a class="email" href="mailto:broonie@opensource.wolfsonmicro.com">broonie@opensource.wolfsonmicro.com</a>></code><br />      </p></div></div></div></div></div><div><p class="copyright">Copyright © 2007-2008 Wolfson Microelectronics</p></div><div><p class="copyright">Copyright © 2008 Liam Girdwood</p></div><div><div class="legalnotice" title="Legal Notice"><a id="id2884516"></a><p> This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. </p><p> This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. </p><p> You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA </p><p> For more details see the file COPYING in the source distribution of Linux. </p></div></div></div><hr /></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="ch01.html">1. Introduction</a></span></dt><dd><dl><dt><span class="sect1"><a href="ch01.html#glossary">Glossary</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch02.html">2. Consumer driver interface</a></span></dt><dd><dl><dt><span class="sect1"><a href="ch02.html#consumer-enable">Enabling and disabling</a></span></dt><dt><span class="sect1"><a href="ch02s02.html">Configuration</a></span></dt><dt><span class="sect1"><a href="ch02s03.html">Callbacks</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch03.html">3. Regulator driver interface</a></span></dt><dt><span class="chapter"><a href="ch04.html">4. Machine interface</a></span></dt><dd><dl><dt><span class="sect1"><a href="ch04.html#machine-supply">Supplies</a></span></dt><dt><span class="sect1"><a href="ch04s02.html">Constraints</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch05.html">5. API reference</a></span></dt><dd><dl><dt><span class="refentrytitle"><a href="re01.html"><span>struct regulator_bulk_data</span></a></span><span class="refpurpose"> — Data used for bulk regulator operations. </span></dt><dt><span class="refentrytitle"><a href="re02.html"><span>struct regulator_state</span></a></span><span class="refpurpose"> — regulator state during low power system states </span></dt><dt><span class="refentrytitle"><a href="re03.html"><span>struct regulation_constraints</span></a></span><span class="refpurpose"> — regulator operating constraints. </span></dt><dt><span class="refentrytitle"><a href="re04.html"><span>struct regulator_consumer_supply</span></a></span><span class="refpurpose"> — supply -> device mapping </span></dt><dt><span class="refentrytitle"><a href="re05.html"><span>struct regulator_init_data</span></a></span><span class="refpurpose"> — regulator platform initialisation data. </span></dt><dt><span class="refentrytitle"><a href="re06.html"><span>struct regulator_ops</span></a></span><span class="refpurpose"> — regulator operations. </span></dt><dt><span class="refentrytitle"><a href="re07.html"><span>struct regulator_desc</span></a></span><span class="refpurpose"> — Regulator descriptor </span></dt><dt><span class="refentrytitle"><a href="re08.html"><span>regulator_get</span></a></span><span class="refpurpose"> — lookup and obtain a reference to a regulator. </span></dt><dt><span class="refentrytitle"><a href="re09.html"><span>regulator_get_exclusive</span></a></span><span class="refpurpose"> — obtain exclusive access to a regulator. </span></dt><dt><span class="refentrytitle"><a href="re10.html"><span>regulator_put</span></a></span><span class="refpurpose"> — "free" the regulator source </span></dt><dt><span class="refentrytitle"><a href="re11.html"><span>regulator_enable</span></a></span><span class="refpurpose"> — enable regulator output </span></dt><dt><span class="refentrytitle"><a href="re12.html"><span>regulator_disable</span></a></span><span class="refpurpose"> — disable regulator output </span></dt><dt><span class="refentrytitle"><a href="re13.html"><span>regulator_force_disable</span></a></span><span class="refpurpose"> — force disable regulator output </span></dt><dt><span class="refentrytitle"><a href="re14.html"><span>regulator_is_enabled</span></a></span><span class="refpurpose"> — is the regulator output enabled </span></dt><dt><span class="refentrytitle"><a href="re15.html"><span>regulator_count_voltages</span></a></span><span class="refpurpose"> — count <code class="function">regulator_list_voltage</code> selectors </span></dt><dt><span class="refentrytitle"><a href="re16.html"><span>regulator_list_voltage</span></a></span><span class="refpurpose"> — enumerate supported voltages </span></dt><dt><span class="refentrytitle"><a href="re17.html"><span>regulator_set_voltage</span></a></span><span class="refpurpose"> — set regulator output voltage </span></dt><dt><span class="refentrytitle"><a href="re18.html"><span>regulator_get_voltage</span></a></span><span class="refpurpose"> — get regulator output voltage </span></dt><dt><span class="refentrytitle"><a href="re19.html"><span>regulator_set_current_limit</span></a></span><span class="refpurpose"> — set regulator output current limit </span></dt><dt><span class="refentrytitle"><a href="re20.html"><span>regulator_get_current_limit</span></a></span><span class="refpurpose"> — get regulator output current </span></dt><dt><span class="refentrytitle"><a href="re21.html"><span>regulator_set_mode</span></a></span><span class="refpurpose"> — set regulator operating mode </span></dt><dt><span class="refentrytitle"><a href="re22.html"><span>regulator_get_mode</span></a></span><span class="refpurpose"> — get regulator operating mode </span></dt><dt><span class="refentrytitle"><a href="re23.html"><span>regulator_set_optimum_mode</span></a></span><span class="refpurpose"> — set regulator optimum operating mode </span></dt><dt><span class="refentrytitle"><a href="re24.html"><span>regulator_register_notifier</span></a></span><span class="refpurpose"> — register regulator event notifier </span></dt><dt><span class="refentrytitle"><a href="re25.html"><span>regulator_unregister_notifier</span></a></span><span class="refpurpose"> — unregister regulator event notifier </span></dt><dt><span class="refentrytitle"><a href="re26.html"><span>regulator_bulk_get</span></a></span><span class="refpurpose"> — get multiple regulator consumers </span></dt><dt><span class="refentrytitle"><a href="re27.html"><span>regulator_bulk_enable</span></a></span><span class="refpurpose"> — enable multiple regulator consumers </span></dt><dt><span class="refentrytitle"><a href="re28.html"><span>regulator_bulk_disable</span></a></span><span class="refpurpose"> — disable multiple regulator consumers </span></dt><dt><span class="refentrytitle"><a href="re29.html"><span>regulator_bulk_free</span></a></span><span class="refpurpose"> — free multiple regulator consumers </span></dt><dt><span class="refentrytitle"><a href="re30.html"><span>regulator_notifier_call_chain</span></a></span><span class="refpurpose"> — call regulator event notifier </span></dt><dt><span class="refentrytitle"><a href="re31.html"><span>regulator_mode_to_status</span></a></span><span class="refpurpose"> — convert a regulator mode into a status </span></dt><dt><span class="refentrytitle"><a href="re32.html"><span>regulator_register</span></a></span><span class="refpurpose"> — register regulator </span></dt><dt><span class="refentrytitle"><a href="re33.html"><span>regulator_unregister</span></a></span><span class="refpurpose"> — unregister regulator </span></dt><dt><span class="refentrytitle"><a href="re34.html"><span>regulator_suspend_prepare</span></a></span><span class="refpurpose"> — prepare regulators for system wide suspend </span></dt><dt><span class="refentrytitle"><a href="re35.html"><span>regulator_has_full_constraints</span></a></span><span class="refpurpose"> — the system has fully specified constraints </span></dt><dt><span class="refentrytitle"><a href="re36.html"><span>rdev_get_drvdata</span></a></span><span class="refpurpose"> — get rdev regulator driver data </span></dt><dt><span class="refentrytitle"><a href="re37.html"><span>regulator_get_drvdata</span></a></span><span class="refpurpose"> — get regulator driver data </span></dt><dt><span class="refentrytitle"><a href="re38.html"><span>regulator_set_drvdata</span></a></span><span class="refpurpose"> — set regulator driver data </span></dt><dt><span class="refentrytitle"><a href="re39.html"><span>rdev_get_id</span></a></span><span class="refpurpose"> — get regulator ID </span></dt></dl></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"> </td><td width="40%" align="right" valign="top"> Chapter 1. Introduction</td></tr></table></div></body></html>