€•.Œ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/devfreq”Œ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/devfreq”Œ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/devfreq”Œ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/devfreq”Œ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/devfreq”Œ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/devfreq”Œ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/devfreq”Œ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Œ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…”�”}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³Œ@/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq.rst”h´KubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒDevice Frequency Scaling”h]”hŒDevice Frequency Scaling”…”�”}”(hhÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÊh²hh³hÇh´KubhÉ)�”}”(hhh]”(hÎ)�”}”(hŒ Introduction”h]”hŒ Introduction”…”�”}”(hhàh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÝh²hh³hÇh´KubhŒ paragraph”“”)�”}”(hŒuThis framework provides a standard kernel interface for Dynamic Voltage and Frequency Switching on arbitrary devices.”h]”hŒuThis framework provides a standard kernel interface for Dynamic Voltage and Frequency Switching on arbitrary devices.”…”�”}”(hhðh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³hÇh´K hhÝh²hubhï)�”}”(hŒkIt exposes controls for adjusting frequency through sysfs files which are similar to the cpufreq subsystem.”h]”hŒkIt exposes controls for adjusting frequency through sysfs files which are similar to the cpufreq subsystem.”…”�”}”(hhþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³hÇh´K hhÝh²hubhï)�”}”(hŒmDevices for which current usage can be measured can have their frequency automatically adjusted by governors.”h]”hŒmDevices for which current usage can be measured can have their frequency automatically adjusted by governors.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³hÇh´KhhÝh²hubeh}”(h]”Œ introduction”ah ]”h"]”Œ introduction”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´KubhÉ)�”}”(hhh]”(hÎ)�”}”(hŒAPI”h]”hŒAPI”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj"h²hh³hÇh´Kubhï)�”}”(hŒ˜Device drivers need to initialize a :c:type:`devfreq_profile` and call the :c:func:`devfreq_add_device` function to create a :c:type:`devfreq` instance.”h]”(hŒ$Device drivers need to initialize a ”…”�”}”(hj3h²hh³Nh´Nubh)�”}”(hŒ:c:type:`devfreq_profile`”h]”hŒliteral”“”)�”}”(hj=h]”hŒdevfreq_profile”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”(Œxref”Œc”Œc-type”eh"]”h$]”h&]”uh1j?hj;ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”Œdriver-api/devfreq”Œ refdomain”jLŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰Œ reftarget”Œdevfreq_profile”uh1hh³hÇh´Khj3ubhŒ and call the ”…”�”}”(hj3h²hh³Nh´Nubh)�”}”(hŒ:c:func:`devfreq_add_device`”h]”j@)�”}”(hjfh]”hŒdevfreq_add_device()”…”�”}”(hjhh²hh³Nh´Nubah}”(h]”h ]”(jKjLŒc-func”eh"]”h$]”h&]”uh1j?hjdubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jXŒ refdomain”jLŒreftype”Œfunc”Œ refexplicit”‰Œrefwarn”‰j^Œdevfreq_add_device”uh1hh³hÇh´Khj3ubhŒ function to create a ”…”�”}”(hj3h²hh³Nh´Nubh)�”}”(hŒ:c:type:`devfreq`”h]”j@)�”}”(hj‰h]”hŒdevfreq”…”�”}”(hj‹h²hh³Nh´Nubah}”(h]”h ]”(jKjLŒc-type”eh"]”h$]”h&]”uh1j?hj‡ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jXŒ refdomain”jLŒreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j^Œdevfreq”uh1hh³hÇh´Khj3ubhŒ instance.”…”�”}”(hj3h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hîh³hÇh´Khj"h²hubhŒindex”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(Œsingle”Œdevfreq_dev_status (C struct)”Œc.devfreq_dev_status”hNt”auh1j°hj"h²hh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´NubhŒdesc”“”)�”}”(hhh]”(hŒdesc_signature”“”)�”}”(hŒdevfreq_dev_status”h]”hŒdesc_signature_line”“”)�”}”(hŒstruct devfreq_dev_status”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³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.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Œdevfreq_dev_status”h]”hŒ desc_sig_name”“”)�”}”(hjËh]”hŒdevfreq_dev_status”…”�”}”(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]”hï)�”}”(hŒXData given from devfreq user device to governors. Represents the performance statistics.”h]”hŒXData given from devfreq user device to governors. Represents the performance statistics.”…”�”}”(hj-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K-hj*h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjÄh²hh³jäh´Kubeh}”(h]”h ]”(jLŒstruct”eh"]”h$]”h&]”Œdomain”jLŒobjtype”jEŒdesctype”jEŒnoindex”‰Œ noindexentry”‰Œnocontentsentry”‰uh1jÂh²hhj"h³jÁh´NubhŒ container”“”)�”}”(hX¨**Definition**:: struct devfreq_dev_status { unsigned long total_time; unsigned long busy_time; unsigned long current_frequency; void *private_data; }; **Members** ``total_time`` The total time represented by this instance of devfreq_dev_status ``busy_time`` The time that the device was working among the total_time. ``current_frequency`` The operating frequency. ``private_data`` An entry not specified by the devfreq framework. A device and a specific governor may have their own protocol with private_data. However, because this is governor-specific, a governor using this will be only compatible with devices aware of it.”h]”(hï)�”}”(hŒ**Definition**::”h]”(hŒstrong”“”)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjUubhŒ:”…”�”}”(hjUh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K1hjQubhŒ literal_block”“”)�”}”(hŒ–struct devfreq_dev_status { unsigned long total_time; unsigned long busy_time; unsigned long current_frequency; void *private_data; };”h]”hŒ–struct devfreq_dev_status { unsigned long total_time; unsigned long busy_time; unsigned long current_frequency; void *private_data; };”…”�”}”hjvsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jth³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K3hjQubhï)�”}”(hŒ **Members**”h]”jZ)�”}”(hj‡h]”hŒMembers”…”�”}”(hj‰h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj…ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K:hjQubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hŒQ``total_time`` The total time represented by this instance of devfreq_dev_status ”h]”(hŒterm”“”)�”}”(hŒ``total_time``”h]”j@)�”}”(hj¬h]”hŒ total_time”…”�”}”(hj®h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjªubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K2hj¤ubhŒ definition”“”)�”}”(hhh]”hï)�”}”(hŒAThe total time represented by this instance of devfreq_dev_status”h]”hŒAThe total time represented by this instance of devfreq_dev_status”…”�”}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K1hjÄubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj¤ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÁh´K2hjŸubj£)�”}”(hŒI``busy_time`` The time that the device was working among the total_time. ”h]”(j©)�”}”(hŒ ``busy_time``”h]”j@)�”}”(hjèh]”hŒ busy_time”…”�”}”(hjêh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjæubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K4hjâubjÃ)�”}”(hhh]”hï)�”}”(hŒ:The time that the device was working among the total_time.”h]”hŒ:The time that the device was working among the total_time.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K3hjþubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjâubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jýh´K4hjŸubj£)�”}”(hŒ/``current_frequency`` The operating frequency. ”h]”(j©)�”}”(hŒ``current_frequency``”h]”j@)�”}”(hj"h]”hŒcurrent_frequency”…”�”}”(hj$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K5hjubjÃ)�”}”(hhh]”hï)�”}”(hŒThe operating frequency.”h]”hŒThe operating frequency.”…”�”}”(hj;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j7h´K5hj8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j7h´K5hjŸubj£)�”}”(hX``private_data`` An entry not specified by the devfreq framework. A device and a specific governor may have their own protocol with private_data. However, because this is governor-specific, a governor using this will be only compatible with devices aware of it.”h]”(j©)�”}”(hŒ``private_data``”h]”j@)�”}”(hj[h]”hŒ private_data”…”�”}”(hj]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjYubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K9hjUubjÃ)�”}”(hhh]”hï)�”}”(hŒôAn entry not specified by the devfreq framework. A device and a specific governor may have their own protocol with private_data. However, because this is governor-specific, a governor using this will be only compatible with devices aware of it.”h]”hŒôAn entry not specified by the devfreq framework. A device and a specific governor may have their own protocol with private_data. However, because this is governor-specific, a governor using this will be only compatible with devices aware of it.”…”�”}”(hjth²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K6hjqubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjUubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jph´K9hjŸubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjQubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³jÁh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œdevfreq_dev_profile (C struct)”Œc.devfreq_dev_profile”hNt”auh1j°hj"h²hh³jÁh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒdevfreq_dev_profile”h]”jÎ)�”}”(hŒstruct devfreq_dev_profile”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjµh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj±h²hh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K@ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÃh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj±h²hh³jÂh´K@ubj÷)�”}”(hŒdevfreq_dev_profile”h]”jý)�”}”(hj¯h]”hŒdevfreq_dev_profile”…”�”}”(hjÕh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÑubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj±h²hh³jÂh´K@ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj­h²hh³jÂh´K@ubah}”(h]”j¨ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jÂh´K@hjªh²hubj))�”}”(hhh]”hï)�”}”(hŒDevfreq's user device profile”h]”hŒDevfreq’s user device profile”…”�”}”(hj÷h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KLhjôh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjªh²hh³jÂh´K@ubeh}”(h]”h ]”(jLŒstruct”eh"]”h$]”h&]”jIjLjJjjKjjL‰jM‰jN‰uh1jÂh²hhj"h³jÁh´NubjP)�”}”(hX#**Definition**:: struct devfreq_dev_profile { unsigned long initial_freq; unsigned int polling_ms; enum devfreq_timer timer; int (*target)(struct device *dev, unsigned long *freq, u32 flags); int (*get_dev_status)(struct device *dev, struct devfreq_dev_status *stat); int (*get_cur_freq)(struct device *dev, unsigned long *freq); void (*exit)(struct device *dev); unsigned long *freq_table; unsigned int max_state; bool is_cooling_device; const struct attribute_group **dev_groups; }; **Members** ``initial_freq`` The operating frequency when devfreq_add_device() is called. ``polling_ms`` The polling interval in ms. 0 disables polling. ``timer`` Timer type is either deferrable or delayed timer. ``target`` The device should set its operating frequency at freq or lowest-upper-than-freq value. If freq is higher than any operable frequency, set maximum. Before returning, target function should set freq at the current frequency. The "flags" parameter's possible values are explained above with "DEVFREQ_FLAG_*" macros. ``get_dev_status`` The device should provide the current performance status to devfreq. Governors are recommended not to use this directly. Instead, governors are recommended to use devfreq_update_stats() along with devfreq.last_status. ``get_cur_freq`` The device should provide the current frequency at which it is operating. ``exit`` An optional callback that is called when devfreq is removing the devfreq object due to error or from devfreq_remove_device() call. If the user has registered devfreq->nb at a notifier-head, this is the time to unregister it. ``freq_table`` Optional list of frequencies to support statistics and freq_table must be generated in ascending order. ``max_state`` The size of freq_table. ``is_cooling_device`` A self-explanatory boolean giving the device a cooling effect property. ``dev_groups`` Optional device-specific sysfs attribute groups that to be attached to the devfreq device.”h]”(hï)�”}”(hŒ**Definition**::”h]”(jZ)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjubhŒ:”…”�”}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KPhjubju)�”}”(hXÿstruct devfreq_dev_profile { unsigned long initial_freq; unsigned int polling_ms; enum devfreq_timer timer; int (*target)(struct device *dev, unsigned long *freq, u32 flags); int (*get_dev_status)(struct device *dev, struct devfreq_dev_status *stat); int (*get_cur_freq)(struct device *dev, unsigned long *freq); void (*exit)(struct device *dev); unsigned long *freq_table; unsigned int max_state; bool is_cooling_device; const struct attribute_group **dev_groups; };”h]”hXÿstruct devfreq_dev_profile { unsigned long initial_freq; unsigned int polling_ms; enum devfreq_timer timer; int (*target)(struct device *dev, unsigned long *freq, u32 flags); int (*get_dev_status)(struct device *dev, struct devfreq_dev_status *stat); int (*get_cur_freq)(struct device *dev, unsigned long *freq); void (*exit)(struct device *dev); unsigned long *freq_table; unsigned int max_state; bool is_cooling_device; const struct attribute_group **dev_groups; };”…”�”}”hj4sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jth³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KRhjubhï)�”}”(hŒ **Members**”h]”jZ)�”}”(hjEh]”hŒMembers”…”�”}”(hjGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjCubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K`hjubjž)�”}”(hhh]”(j£)�”}”(hŒN``initial_freq`` The operating frequency when devfreq_add_device() is called. ”h]”(j©)�”}”(hŒ``initial_freq``”h]”j@)�”}”(hjdh]”hŒ initial_freq”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjbubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KOhj^ubjÃ)�”}”(hhh]”hï)�”}”(hŒnb at a notifier-head, this is the time to unregister it. ”h]”(j©)�”}”(hŒ``exit``”h]”j@)�”}”(hj¾h]”hŒexit”…”�”}”(hjÀh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj¼ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´Kdhj¸ubjÃ)�”}”(hhh]”hï)�”}”(hŒàAn optional callback that is called when devfreq is removing the devfreq object due to error or from devfreq_remove_device() call. If the user has registered devfreq->nb at a notifier-head, this is the time to unregister it.”h]”hŒàAn optional callback that is called when devfreq is removing the devfreq object due to error or from devfreq_remove_device() call. If the user has registered devfreq->nb at a notifier-head, this is the time to unregister it.”…”�”}”(hj×h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K`hjÔubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj¸ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÓh´Kdhj[ubj£)�”}”(hŒw``freq_table`` Optional list of frequencies to support statistics and freq_table must be generated in ascending order. ”h]”(j©)�”}”(hŒ``freq_table``”h]”j@)�”}”(hjøh]”hŒ freq_table”…”�”}”(hjúh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjöubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KfhjòubjÃ)�”}”(hhh]”hï)�”}”(hŒgOptional list of frequencies to support statistics and freq_table must be generated in ascending order.”h]”hŒgOptional list of frequencies to support statistics and freq_table must be generated in ascending order.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´Kehjubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjòubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j h´Kfhj[ubj£)�”}”(hŒ&``max_state`` The size of freq_table. ”h]”(j©)�”}”(hŒ ``max_state``”h]”j@)�”}”(hj2h]”hŒ max_state”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´Kghj,ubjÃ)�”}”(hhh]”hï)�”}”(hŒThe size of freq_table.”h]”hŒThe size of freq_table.”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jGh´KghjHubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jGh´Kghj[ubj£)�”}”(hŒ^``is_cooling_device`` A self-explanatory boolean giving the device a cooling effect property. ”h]”(j©)�”}”(hŒ``is_cooling_device``”h]”j@)�”}”(hjkh]”hŒis_cooling_device”…”�”}”(hjmh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjiubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KjhjeubjÃ)�”}”(hhh]”hï)�”}”(hŒGA self-explanatory boolean giving the device a cooling effect property.”h]”hŒGA self-explanatory boolean giving the device a cooling effect property.”…”�”}”(hj„h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´Kihj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjeubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j€h´Kjhj[ubj£)�”}”(hŒi``dev_groups`` Optional device-specific sysfs attribute groups that to be attached to the devfreq device.”h]”(j©)�”}”(hŒ``dev_groups``”h]”j@)�”}”(hj¥h]”hŒ dev_groups”…”�”}”(hj§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj£ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KkhjŸubjÃ)�”}”(hhh]”hï)�”}”(hŒZOptional device-specific sysfs attribute groups that to be attached to the devfreq device.”h]”hŒZOptional device-specific sysfs attribute groups that to be attached to the devfreq device.”…”�”}”(hj¾h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jºh´Kkhj»ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjŸubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jºh´Kkhj[ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³jÁh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œdevfreq_stats (C struct)”Œc.devfreq_stats”hNt”auh1j°hj"h²hh³jÁh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ devfreq_stats”h]”jÎ)�”}”(hŒstruct devfreq_stats”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjþh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjúh²hh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´Krubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjúh²hh³j h´Krubj÷)�”}”(hŒ devfreq_stats”h]”jý)�”}”(hjøh]”hŒ devfreq_stats”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjúh²hh³j h´Krubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjöh²hh³j h´Krubah}”(h]”jñah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j h´Krhjóh²hubj))�”}”(hhh]”hï)�”}”(hŒ%Statistics of devfreq device behavior”h]”hŒ%Statistics of devfreq device behavior”…”�”}”(hj@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K�hj=h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjóh²hh³j h´Krubeh}”(h]”h ]”(jLŒstruct”eh"]”h$]”h&]”jIjLjJjXjKjXjL‰jM‰jN‰uh1jÂh²hhj"h³jÁh´NubjP)�”}”(hX~**Definition**:: struct devfreq_stats { unsigned int total_trans; unsigned int *trans_table; u64 *time_in_state; u64 last_update; }; **Members** ``total_trans`` Number of devfreq transitions. ``trans_table`` Statistics of devfreq transitions. ``time_in_state`` Statistics of devfreq states. ``last_update`` The last time stats were updated.”h]”(hï)�”}”(hŒ**Definition**::”h]”(jZ)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj`ubhŒ:”…”�”}”(hj`h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K…hj\ubju)�”}”(hŒƒstruct devfreq_stats { unsigned int total_trans; unsigned int *trans_table; u64 *time_in_state; u64 last_update; };”h]”hŒƒstruct devfreq_stats { unsigned int total_trans; unsigned int *trans_table; u64 *time_in_state; u64 last_update; };”…”�”}”hj}sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jth³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K‡hj\ubhï)�”}”(hŒ **Members**”h]”jZ)�”}”(hjŽh]”hŒMembers”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjŒubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KŽhj\ubjž)�”}”(hhh]”(j£)�”}”(hŒ/``total_trans`` Number of devfreq transitions. ”h]”(j©)�”}”(hŒ``total_trans``”h]”j@)�”}”(hj­h]”hŒ total_trans”…”�”}”(hj¯h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj«ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´Kƒhj§ubjÃ)�”}”(hhh]”hï)�”}”(hŒNumber of devfreq transitions.”h]”hŒNumber of devfreq transitions.”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jÂh´KƒhjÃubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj§ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÂh´Kƒhj¤ubj£)�”}”(hŒ3``trans_table`` Statistics of devfreq transitions. ”h]”(j©)�”}”(hŒ``trans_table``”h]”j@)�”}”(hjæh]”hŒ trans_table”…”�”}”(hjèh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjäubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K„hjàubjÃ)�”}”(hhh]”hï)�”}”(hŒ"Statistics of devfreq transitions.”h]”hŒ"Statistics of devfreq transitions.”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jûh´K„hjüubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjàubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jûh´K„hj¤ubj£)�”}”(hŒ0``time_in_state`` Statistics of devfreq states. ”h]”(j©)�”}”(hŒ``time_in_state``”h]”j@)�”}”(hjh]”hŒ time_in_state”…”�”}”(hj!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K…hjubjÃ)�”}”(hhh]”hï)�”}”(hŒStatistics of devfreq states.”h]”hŒStatistics of devfreq states.”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j4h´K…hj5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j4h´K…hj¤ubj£)�”}”(hŒ1``last_update`` The last time stats were updated.”h]”(j©)�”}”(hŒ``last_update``”h]”j@)�”}”(hjXh]”hŒ last_update”…”�”}”(hjZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjVubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K…hjRubjÃ)�”}”(hhh]”hï)�”}”(hŒ!The last time stats were updated.”h]”hŒ!The last time stats were updated.”…”�”}”(hjqh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K†hjnubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjRubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jmh´K…hj¤ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj\ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³jÁh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œdevfreq (C struct)”Œ c.devfreq”hNt”auh1j°hj"h²hh³jÁh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒdevfreq”h]”jÎ)�”}”(hŒstruct devfreq”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hj²h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj®h²hh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KŒubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÀh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj®h²hh³j¿h´KŒubj÷)�”}”(hŒdevfreq”h]”jý)�”}”(hj¬h]”hŒdevfreq”…”�”}”(hjÒh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÎubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj®h²hh³j¿h´KŒubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjªh²hh³j¿h´KŒubah}”(h]”j¥ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j¿h´KŒhj§h²hubj))�”}”(hhh]”hï)�”}”(hŒDevice devfreq structure”h]”hŒDevice devfreq structure”…”�”}”(hjôh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K�hjñh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj§h²hh³j¿h´KŒubeh}”(h]”h ]”(jLŒstruct”eh"]”h$]”h&]”jIjLjJj jKj jL‰jM‰jN‰uh1jÂh²hhj"h³jÁh´NubjP)�”}”(hX� **Definition**:: struct devfreq { struct list_head node; struct mutex lock; struct device dev; struct devfreq_dev_profile *profile; const struct devfreq_governor *governor; struct opp_table *opp_table; struct notifier_block nb; struct delayed_work work; unsigned long *freq_table; unsigned int max_state; unsigned long previous_freq; struct devfreq_dev_status last_status; void *data; void *governor_data; struct dev_pm_qos_request user_min_freq_req; struct dev_pm_qos_request user_max_freq_req; unsigned long scaling_min_freq; unsigned long scaling_max_freq; bool stop_polling; unsigned long suspend_freq; unsigned long resume_freq; atomic_t suspend_count; struct devfreq_stats stats; struct srcu_notifier_head transition_notifier_list; struct thermal_cooling_device *cdev; struct notifier_block nb_min; struct notifier_block nb_max; }; **Members** ``node`` list node - contains the devices with devfreq that have been registered. ``lock`` a mutex to protect accessing devfreq. ``dev`` device registered by devfreq class. dev.parent is the device using devfreq. ``profile`` device-specific devfreq profile ``governor`` method how to choose frequency based on the usage. ``opp_table`` Reference to OPP table of dev.parent, if one exists. ``nb`` notifier block used to notify devfreq object that it should reevaluate operable frequencies. Devfreq users may use devfreq.nb to the corresponding register notifier call chain. ``work`` delayed work for load monitoring. ``freq_table`` current frequency table used by the devfreq driver. ``max_state`` count of entry present in the frequency table. ``previous_freq`` previously configured frequency value. ``last_status`` devfreq user device info, performance statistics ``data`` devfreq driver pass to governors, governor should not change it. ``governor_data`` private data for governors, devfreq core doesn't touch it. ``user_min_freq_req`` PM QoS minimum frequency request from user (via sysfs) ``user_max_freq_req`` PM QoS maximum frequency request from user (via sysfs) ``scaling_min_freq`` Limit minimum frequency requested by OPP interface ``scaling_max_freq`` Limit maximum frequency requested by OPP interface ``stop_polling`` devfreq polling status of a device. ``suspend_freq`` frequency of a device set during suspend phase. ``resume_freq`` frequency of a device set in resume phase. ``suspend_count`` suspend requests counter for a device. ``stats`` Statistics of devfreq device behavior ``transition_notifier_list`` list head of DEVFREQ_TRANSITION_NOTIFIER notifier ``cdev`` Cooling device pointer if the devfreq has cooling property ``nb_min`` Notifier block for DEV_PM_QOS_MIN_FREQUENCY ``nb_max`` Notifier block for DEV_PM_QOS_MAX_FREQUENCY”h]”(hï)�”}”(hŒ**Definition**::”h]”(jZ)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj ubhŒ:”…”�”}”(hj h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K“hj ubju)�”}”(hX struct devfreq { struct list_head node; struct mutex lock; struct device dev; struct devfreq_dev_profile *profile; const struct devfreq_governor *governor; struct opp_table *opp_table; struct notifier_block nb; struct delayed_work work; unsigned long *freq_table; unsigned int max_state; unsigned long previous_freq; struct devfreq_dev_status last_status; void *data; void *governor_data; struct dev_pm_qos_request user_min_freq_req; struct dev_pm_qos_request user_max_freq_req; unsigned long scaling_min_freq; unsigned long scaling_max_freq; bool stop_polling; unsigned long suspend_freq; unsigned long resume_freq; atomic_t suspend_count; struct devfreq_stats stats; struct srcu_notifier_head transition_notifier_list; struct thermal_cooling_device *cdev; struct notifier_block nb_min; struct notifier_block nb_max; };”h]”hX struct devfreq { struct list_head node; struct mutex lock; struct device dev; struct devfreq_dev_profile *profile; const struct devfreq_governor *governor; struct opp_table *opp_table; struct notifier_block nb; struct delayed_work work; unsigned long *freq_table; unsigned int max_state; unsigned long previous_freq; struct devfreq_dev_status last_status; void *data; void *governor_data; struct dev_pm_qos_request user_min_freq_req; struct dev_pm_qos_request user_max_freq_req; unsigned long scaling_min_freq; unsigned long scaling_max_freq; bool stop_polling; unsigned long suspend_freq; unsigned long resume_freq; atomic_t suspend_count; struct devfreq_stats stats; struct srcu_notifier_head transition_notifier_list; struct thermal_cooling_device *cdev; struct notifier_block nb_min; struct notifier_block nb_max; };”…”�”}”hj1 sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jth³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K•hj ubhï)�”}”(hŒ **Members**”h]”jZ)�”}”(hjB h]”hŒMembers”…”�”}”(hjD h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj@ ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K³hj ubjž)�”}”(hhh]”(j£)�”}”(hŒR``node`` list node - contains the devices with devfreq that have been registered. ”h]”(j©)�”}”(hŒ``node``”h]”j@)�”}”(hja h]”hŒnode”…”�”}”(hjc h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj_ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K’hj[ ubjÃ)�”}”(hhh]”hï)�”}”(hŒHlist node - contains the devices with devfreq that have been registered.”h]”hŒHlist node - contains the devices with devfreq that have been registered.”…”�”}”(hjz h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K‘hjw ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj[ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jv h´K’hjX ubj£)�”}”(hŒ/``lock`` a mutex to protect accessing devfreq. ”h]”(j©)�”}”(hŒ``lock``”h]”j@)�”}”(hj› h]”hŒlock”…”�”}”(hj� h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj™ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K“hj• ubjÃ)�”}”(hhh]”hï)�”}”(hŒ%a mutex to protect accessing devfreq.”h]”hŒ%a mutex to protect accessing devfreq.”…”�”}”(hj´ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j° h´K“hj± ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj• ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j° h´K“hjX ubj£)�”}”(hŒT``dev`` device registered by devfreq class. dev.parent is the device using devfreq. ”h]”(j©)�”}”(hŒ``dev``”h]”j@)�”}”(hjÔ h]”hŒdev”…”�”}”(hjÖ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjÒ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K•hjÎ ubjÃ)�”}”(hhh]”hï)�”}”(hŒKdevice registered by devfreq class. dev.parent is the device using devfreq.”h]”hŒKdevice registered by devfreq class. dev.parent is the device using devfreq.”…”�”}”(hjí h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K”hjê ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjÎ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jé h´K•hjX ubj£)�”}”(hŒ,``profile`` device-specific devfreq profile ”h]”(j©)�”}”(hŒ ``profile``”h]”j@)�”}”(hj h]”hŒprofile”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K–hj ubjÃ)�”}”(hhh]”hï)�”}”(hŒdevice-specific devfreq profile”h]”hŒdevice-specific devfreq profile”…”�”}”(hj' h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j# h´K–hj$ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j# h´K–hjX ubj£)�”}”(hŒ@``governor`` method how to choose frequency based on the usage. ”h]”(j©)�”}”(hŒ ``governor``”h]”j@)�”}”(hjG h]”hŒgovernor”…”�”}”(hjI h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjE ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K—hjA ubjÃ)�”}”(hhh]”hï)�”}”(hŒ2method how to choose frequency based on the usage.”h]”hŒ2method how to choose frequency based on the usage.”…”�”}”(hj` h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j\ h´K—hj] ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjA ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j\ h´K—hjX ubj£)�”}”(hŒC``opp_table`` Reference to OPP table of dev.parent, if one exists. ”h]”(j©)�”}”(hŒ ``opp_table``”h]”j@)�”}”(hj€ h]”hŒ opp_table”…”�”}”(hj‚ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj~ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K˜hjz ubjÃ)�”}”(hhh]”hï)�”}”(hŒ4Reference to OPP table of dev.parent, if one exists.”h]”hŒ4Reference to OPP table of dev.parent, if one exists.”…”�”}”(hj™ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j• h´K˜hj– ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjz ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j• h´K˜hjX ubj£)�”}”(hŒ¸``nb`` notifier block used to notify devfreq object that it should reevaluate operable frequencies. Devfreq users may use devfreq.nb to the corresponding register notifier call chain. ”h]”(j©)�”}”(hŒ``nb``”h]”j@)�”}”(hj¹ h]”hŒnb”…”�”}”(hj» h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj· ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K›hj³ ubjÃ)�”}”(hhh]”hï)�”}”(hŒ°notifier block used to notify devfreq object that it should reevaluate operable frequencies. Devfreq users may use devfreq.nb to the corresponding register notifier call chain.”h]”hŒ°notifier block used to notify devfreq object that it should reevaluate operable frequencies. Devfreq users may use devfreq.nb to the corresponding register notifier call chain.”…”�”}”(hjÒ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K™hjÏ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj³ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÎ h´K›hjX ubj£)�”}”(hŒ+``work`` delayed work for load monitoring. ”h]”(j©)�”}”(hŒ``work``”h]”j@)�”}”(hjó h]”hŒwork”…”�”}”(hjõ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjñ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´Kœhjí ubjÃ)�”}”(hhh]”hï)�”}”(hŒ!delayed work for load monitoring.”h]”hŒ!delayed work for load monitoring.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j h´Kœhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjí ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j h´KœhjX ubj£)�”}”(hŒC``freq_table`` current frequency table used by the devfreq driver. ”h]”(j©)�”}”(hŒ``freq_table``”h]”j@)�”}”(hj, h]”hŒ freq_table”…”�”}”(hj. h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj* ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K�hj& ubjÃ)�”}”(hhh]”hï)�”}”(hŒ3current frequency table used by the devfreq driver.”h]”hŒ3current frequency table used by the devfreq driver.”…”�”}”(hjE h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jA h´K�hjB ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj& ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jA h´K�hjX ubj£)�”}”(hŒ=``max_state`` count of entry present in the frequency table. ”h]”(j©)�”}”(hŒ ``max_state``”h]”j@)�”}”(hje h]”hŒ max_state”…”�”}”(hjg h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjc ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´Kžhj_ ubjÃ)�”}”(hhh]”hï)�”}”(hŒ.count of entry present in the frequency table.”h]”hŒ.count of entry present in the frequency table.”…”�”}”(hj~ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jz h´Kžhj{ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj_ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jz h´KžhjX ubj£)�”}”(hŒ9``previous_freq`` previously configured frequency value. ”h]”(j©)�”}”(hŒ``previous_freq``”h]”j@)�”}”(hjž h]”hŒ previous_freq”…”�”}”(hj  h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjœ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´KŸhj˜ ubjÃ)�”}”(hhh]”hï)�”}”(hŒ&previously configured frequency value.”h]”hŒ&previously configured frequency value.”…”�”}”(hj· h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j³ h´KŸhj´ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj˜ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j³ h´KŸhjX ubj£)�”}”(hŒA``last_status`` devfreq user device info, performance statistics ”h]”(j©)�”}”(hŒ``last_status``”h]”j@)�”}”(hj× h]”hŒ last_status”…”�”}”(hjÙ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjÕ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K hjÑ ubjÃ)�”}”(hhh]”hï)�”}”(hŒ0devfreq user device info, performance statistics”h]”hŒ0devfreq user device info, performance statistics”…”�”}”(hjð h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jì h´K hjí ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjÑ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jì h´K hjX ubj£)�”}”(hŒJ``data`` devfreq driver pass to governors, governor should not change it. ”h]”(j©)�”}”(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&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K¡hj ubjÃ)�”}”(hhh]”hï)�”}”(hŒ@devfreq driver pass to governors, governor should not change it.”h]”hŒ@devfreq driver pass to governors, governor should not change it.”…”�”}”(hj) h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j% h´K¡hj& ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j% h´K¡hjX ubj£)�”}”(hŒM``governor_data`` private data for governors, devfreq core doesn't touch it. ”h]”(j©)�”}”(hŒ``governor_data``”h]”j@)�”}”(hjI h]”hŒ governor_data”…”�”}”(hjK h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjG ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´K¢hjC ubjÃ)�”}”(hhh]”hï)�”}”(hŒ:private data for governors, devfreq core doesn't touch it.”h]”hŒh]”hŒget_target_freq”…”�”}”(hj@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´M=hj8ubjÃ)�”}”(hhh]”hï)�”}”(hXjOptional callback, Returns desired operating frequency for the device using passive governor. That is called when passive governor should decide the next frequency by using the new frequency of parent devfreq device using governors except for passive governor. If the devfreq device has the specific method to decide the next frequency, should use this callback.”h]”hXjOptional callback, Returns desired operating frequency for the device using passive governor. That is called when passive governor should decide the next frequency by using the new frequency of parent devfreq device using governors except for passive governor. If the devfreq device has the specific method to decide the next frequency, should use this callback.”…”�”}”(hjWh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´M7hjTubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jSh´M=hjüubj£)�”}”(hŒ/``parent_type`` the parent type of the device. ”h]”(j©)�”}”(hŒ``parent_type``”h]”j@)�”}”(hjxh]”hŒ parent_type”…”�”}”(hjzh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjvubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´M>hjrubjÃ)�”}”(hhh]”hï)�”}”(hŒthe parent type of the device.”h]”hŒthe parent type of the device.”…”�”}”(hj‘h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j�h´M>hjŽubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjrubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j�h´M>hjüubj£)�”}”(hŒ-``this`` the devfreq instance of own device. ”h]”(j©)�”}”(hŒ``this``”h]”j@)�”}”(hj±h]”hŒthis”…”�”}”(hj³h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj¯ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´M?hj«ubjÃ)�”}”(hhh]”hï)�”}”(hŒ#the devfreq instance of own device.”h]”hŒ#the devfreq instance of own device.”…”�”}”(hjÊh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jÆh´M?hjÇubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj«ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÆh´M?hjüubj£)�”}”(hŒ_``nb`` the notifier block for DEVFREQ_TRANSITION_NOTIFIER or CPUFREQ_TRANSITION_NOTIFIER list. ”h]”(j©)�”}”(hŒ``nb``”h]”j@)�”}”(hjêh]”hŒnb”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjèubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´MAhjäubjÃ)�”}”(hhh]”hï)�”}”(hŒWthe notifier block for DEVFREQ_TRANSITION_NOTIFIER or CPUFREQ_TRANSITION_NOTIFIER list.”h]”hŒWthe notifier block for DEVFREQ_TRANSITION_NOTIFIER or CPUFREQ_TRANSITION_NOTIFIER list.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´M@hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjäubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÿh´MAhjüubj£)�”}”(hŒH``cpu_data_list`` the list of cpu frequency data for all cpufreq_policy.”h]”(j©)�”}”(hŒ``cpu_data_list``”h]”j@)�”}”(hj$h]”hŒ cpu_data_list”…”�”}”(hj&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´MAhjubjÃ)�”}”(hhh]”hï)�”}”(hŒ6the list of cpu frequency data for all cpufreq_policy.”h]”hŒ6the list of cpu frequency data for all cpufreq_policy.”…”�”}”(hj=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´MBhj:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j9h´MAhjüubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj´ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³jÁh´Nubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjgh]”hŒ Description”…”�”}”(hjih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjeubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´MEhj"h²hubhï)�”}”(hŒÝThe devfreq_passive_data have to set the devfreq instance of parent device with governors except for the passive governor. But, don't need to initialize the 'this' and 'nb' field because the devfreq core will handle them.”h]”hŒçThe devfreq_passive_data have to set the devfreq instance of parent device with governors except for the passive governor. But, don’t need to initialize the ‘this’ and ‘nb’ field because the devfreq core will handle them.”…”�”}”(hj}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³ŒZ/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:25: ./include/linux/devfreq.h”h´MBhj"h²hubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œdevfreq_event_dev (C struct)”Œc.devfreq_event_dev”hNt”auh1j°hj"h²hh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒdevfreq_event_dev”h]”jÎ)�”}”(hŒstruct devfreq_event_dev”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/devfreq:26: ./include/linux/devfreq-event.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Œdevfreq_event_dev”h]”jý)�”}”(hj h]”hŒdevfreq_event_dev”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÂubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj¢h²hh³j³h´Kubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjžh²hh³j³h´Kubah}”(h]”j˜ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j³h´Khj›h²hubj))�”}”(hhh]”hï)�”}”(hŒthe devfreq-event device”h]”hŒthe devfreq-event device”…”�”}”(hjèh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Khjåh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj›h²hh³j³h´Kubeh}”(h]”h ]”(jLŒstruct”eh"]”h$]”h&]”jIjLjJjjKjjL‰jM‰jN‰uh1jÂh²hhj"h³jšh´NubjP)�”}”(hX7**Definition**:: struct devfreq_event_dev { struct list_head node; struct device dev; struct mutex lock; u32 enable_count; const struct devfreq_event_desc *desc; }; **Members** ``node`` Contain the devfreq-event device that have been registered. ``dev`` the device registered by devfreq-event class. dev.parent is the device using devfreq-event. ``lock`` a mutex to protect accessing devfreq-event. ``enable_count`` the number of enable function have been called. ``desc`` the description for devfreq-event device.”h]”(hï)�”}”(hŒ**Definition**::”h]”(jZ)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjubhŒ:”…”�”}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Khjubju)�”}”(hŒ§struct devfreq_event_dev { struct list_head node; struct device dev; struct mutex lock; u32 enable_count; const struct devfreq_event_desc *desc; };”h]”hŒ§struct devfreq_event_dev { struct list_head node; struct device dev; struct mutex lock; u32 enable_count; const struct devfreq_event_desc *desc; };”…”�”}”hj%sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jth³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Khjubhï)�”}”(hŒ **Members**”h]”jZ)�”}”(hj6h]”hŒMembers”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj4ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Khjubjž)�”}”(hhh]”(j£)�”}”(hŒE``node`` Contain the devfreq-event device that have been registered. ”h]”(j©)�”}”(hŒ``node``”h]”j@)�”}”(hjUh]”hŒnode”…”�”}”(hjWh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjSubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´KhjOubjÃ)�”}”(hhh]”hï)�”}”(hŒ;Contain the devfreq-event device that have been registered.”h]”hŒ;Contain the devfreq-event device that have been registered.”…”�”}”(hjnh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jjh´Khjkubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjOubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jjh´KhjLubj£)�”}”(hŒd``dev`` the device registered by devfreq-event class. dev.parent is the device using devfreq-event. ”h]”(j©)�”}”(hŒ``dev``”h]”j@)�”}”(hjŽh]”hŒdev”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjŒubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´KhjˆubjÃ)�”}”(hhh]”hï)�”}”(hŒ[the device registered by devfreq-event class. dev.parent is the device using devfreq-event.”h]”hŒ[the device registered by devfreq-event class. dev.parent is the device using devfreq-event.”…”�”}”(hj§h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Khj¤ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjˆubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j£h´KhjLubj£)�”}”(hŒ5``lock`` a mutex to protect accessing devfreq-event. ”h]”(j©)�”}”(hŒ``lock``”h]”j@)�”}”(hjÈh]”hŒlock”…”�”}”(hjÊh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjÆubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´KhjÂubjÃ)�”}”(hhh]”hï)�”}”(hŒ+a mutex to protect accessing devfreq-event.”h]”hŒ+a mutex to protect accessing devfreq-event.”…”�”}”(hjáh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jÝh´KhjÞubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjÂubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÝh´KhjLubj£)�”}”(hŒA``enable_count`` the number of enable function have been called. ”h]”(j©)�”}”(hŒ``enable_count``”h]”j@)�”}”(hjh]”hŒ enable_count”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjÿubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´KhjûubjÃ)�”}”(hhh]”hï)�”}”(hŒ/the number of enable function have been called.”h]”hŒ/the number of enable function have been called.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jh´Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjûubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jh´KhjLubj£)�”}”(hŒ2``desc`` the description for devfreq-event device.”h]”(j©)�”}”(hŒ``desc``”h]”j@)�”}”(hj:h]”hŒdesc”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj8ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Khj4ubjÃ)�”}”(hhh]”hï)�”}”(hŒ)the description for devfreq-event device.”h]”hŒ)the description for devfreq-event device.”…”�”}”(hjSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´KhjPubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jOh´KhjLubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³jšh´Nubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hj}h]”hŒ Description”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj{ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Khj"h²hubhï)�”}”(hŒ9This structure contains devfreq-event device information.”h]”hŒ9This structure contains devfreq-event device information.”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Khj"h²hubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œdevfreq_event_data (C struct)”Œc.devfreq_event_data”hNt”auh1j°hj"h²hh³jšh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒdevfreq_event_data”h]”jÎ)�”}”(hŒstruct devfreq_event_data”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/devfreq:26: ./include/linux/devfreq-event.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Œdevfreq_event_data”h]”jý)�”}”(hjµh]”hŒdevfreq_event_data”…”�”}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj×ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj·h²hh³jÈh´Kubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj³h²hh³jÈh´Kubah}”(h]”j®ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jÈh´Khj°h²hubj))�”}”(hhh]”hï)�”}”(hŒthe devfreq-event data”h]”hŒthe devfreq-event data”…”�”}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K%hjúh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj°h²hh³jÈh´Kubeh}”(h]”h ]”(jLŒstruct”eh"]”h$]”h&]”jIjLjJjjKjjL‰jM‰jN‰uh1jÂh²hhj"h³jšh´NubjP)�”}”(hXº**Definition**:: struct devfreq_event_data { unsigned long load_count; unsigned long total_count; }; **Members** ``load_count`` load count of devfreq-event device for the given period. ``total_count`` total count of devfreq-event device for the given period. each count may represent a clock cycle, a time unit (ns/us/...), or anything the device driver wants. Generally, utilization is load_count / total_count.”h]”(hï)�”}”(hŒ**Definition**::”h]”(jZ)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hj!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjubhŒ:”…”�”}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K)hjubju)�”}”(hŒ[struct devfreq_event_data { unsigned long load_count; unsigned long total_count; };”h]”hŒ[struct devfreq_event_data { unsigned long load_count; unsigned long total_count; };”…”�”}”hj:sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jth³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K+hjubhï)�”}”(hŒ **Members**”h]”jZ)�”}”(hjKh]”hŒMembers”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjIubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K0hjubjž)�”}”(hhh]”(j£)�”}”(hŒH``load_count`` load count of devfreq-event device for the given period. ”h]”(j©)�”}”(hŒ``load_count``”h]”j@)�”}”(hjjh]”hŒ load_count”…”�”}”(hjlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjhubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K(hjdubjÃ)�”}”(hhh]”hï)�”}”(hŒ8load count of devfreq-event device for the given period.”h]”hŒ8load count of devfreq-event device for the given period.”…”�”}”(hjƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jh´K(hj€ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjdubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jh´K(hjaubj£)�”}”(hŒã``total_count`` total count of devfreq-event device for the given period. each count may represent a clock cycle, a time unit (ns/us/...), or anything the device driver wants. Generally, utilization is load_count / total_count.”h]”(j©)�”}”(hŒ``total_count``”h]”j@)�”}”(hj£h]”hŒ total_count”…”�”}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj¡ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K+hj�ubjÃ)�”}”(hhh]”hï)�”}”(hŒÓtotal count of devfreq-event device for the given period. each count may represent a clock cycle, a time unit (ns/us/...), or anything the device driver wants. Generally, utilization is load_count / total_count.”h]”hŒÓtotal count of devfreq-event device for the given period. each count may represent a clock cycle, a time unit (ns/us/...), or anything the device driver wants. Generally, utilization is load_count / total_count.”…”�”}”(hj¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K)hj¹ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j¸h´K+hjaubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³jšh´Nubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjæh]”hŒ Description”…”�”}”(hjèh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjäubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K/hj"h²hubhï)�”}”(hŒLThis structure contains the data of devfreq-event device for polling period.”h]”hŒLThis structure contains the data of devfreq-event device for polling period.”…”�”}”(hjüh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K,hj"h²hubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œdevfreq_event_ops (C struct)”Œc.devfreq_event_ops”hNt”auh1j°hj"h²hh³jšh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒdevfreq_event_ops”h]”jÎ)�”}”(hŒstruct devfreq_event_ops”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/devfreq:26: ./include/linux/devfreq-event.h”h´K1ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj h²hh³j1h´K1ubj÷)�”}”(hŒdevfreq_event_ops”h]”jý)�”}”(hjh]”hŒdevfreq_event_ops”…”�”}”(hjDh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj@ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj h²hh³j1h´K1ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjh²hh³j1h´K1ubah}”(h]”jah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j1h´K1hjh²hubj))�”}”(hhh]”hï)�”}”(hŒ&the operations of devfreq-event device”h]”hŒ&the operations of devfreq-event device”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K5hjch²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjh²hh³j1h´K1ubeh}”(h]”h ]”(jLŒstruct”eh"]”h$]”h&]”jIjLjJj~jKj~jL‰jM‰jN‰uh1jÂh²hhj"h³jšh´NubjP)�”}”(hX¯**Definition**:: struct devfreq_event_ops { int (*enable)(struct devfreq_event_dev *edev); int (*disable)(struct devfreq_event_dev *edev); int (*reset)(struct devfreq_event_dev *edev); int (*set_event)(struct devfreq_event_dev *edev); int (*get_event)(struct devfreq_event_dev *edev, struct devfreq_event_data *edata); }; **Members** ``enable`` Enable the devfreq-event device. ``disable`` Disable the devfreq-event device. ``reset`` Reset all setting of the devfreq-event device. ``set_event`` Set the specific event type for the devfreq-event device. ``get_event`` Get the result of the devfreq-event devie with specific event type.”h]”(hï)�”}”(hŒ**Definition**::”h]”(jZ)�”}”(hŒ**Definition**”h]”hŒ Definition”…”�”}”(hjŠh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj†ubhŒ:”…”�”}”(hj†h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K9hj‚ubju)�”}”(hXDstruct devfreq_event_ops { int (*enable)(struct devfreq_event_dev *edev); int (*disable)(struct devfreq_event_dev *edev); int (*reset)(struct devfreq_event_dev *edev); int (*set_event)(struct devfreq_event_dev *edev); int (*get_event)(struct devfreq_event_dev *edev, struct devfreq_event_data *edata); };”h]”hXDstruct devfreq_event_ops { int (*enable)(struct devfreq_event_dev *edev); int (*disable)(struct devfreq_event_dev *edev); int (*reset)(struct devfreq_event_dev *edev); int (*set_event)(struct devfreq_event_dev *edev); int (*get_event)(struct devfreq_event_dev *edev, struct devfreq_event_data *edata); };”…”�”}”hj£sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jth³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K;hj‚ubhï)�”}”(hŒ **Members**”h]”jZ)�”}”(hj´h]”hŒMembers”…”�”}”(hj¶h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj²ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´KChj‚ubjž)�”}”(hhh]”(j£)�”}”(hŒ,``enable`` Enable the devfreq-event device. ”h]”(j©)�”}”(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&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K8hjÍubjÃ)�”}”(hhh]”hï)�”}”(hŒ Enable the devfreq-event device.”h]”hŒ Enable the devfreq-event device.”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jèh´K8hjéubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjÍubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jèh´K8hjÊubj£)�”}”(hŒ.``disable`` Disable the devfreq-event device. ”h]”(j©)�”}”(hŒ ``disable``”h]”j@)�”}”(hj h]”hŒdisable”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K9hjubjÃ)�”}”(hhh]”hï)�”}”(hŒ!Disable the devfreq-event device.”h]”hŒ!Disable the devfreq-event device.”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j!h´K9hj"ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j!h´K9hjÊubj£)�”}”(hŒ9``reset`` Reset all setting of the devfreq-event device. ”h]”(j©)�”}”(hŒ ``reset``”h]”j@)�”}”(hjEh]”hŒreset”…”�”}”(hjGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjCubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K:hj?ubjÃ)�”}”(hhh]”hï)�”}”(hŒ.Reset all setting of the devfreq-event device.”h]”hŒ.Reset all setting of the devfreq-event device.”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jZh´K:hj[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj?ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jZh´K:hjÊubj£)�”}”(hŒH``set_event`` Set the specific event type for the devfreq-event device. ”h]”(j©)�”}”(hŒ ``set_event``”h]”j@)�”}”(hj~h]”hŒ set_event”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj|ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´K;hjxubjÃ)�”}”(hhh]”hï)�”}”(hŒ9Set the specific event type for the devfreq-event device.”h]”hŒ9Set the specific event type for the devfreq-event device.”…”�”}”(hj—h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j“h´K;hj”ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjxubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j“h´K;hjÊubj£)�”}”(hŒQ``get_event`` Get the result of the devfreq-event devie with specific event type.”h]”(j©)�”}”(hŒ ``get_event``”h]”j@)�”}”(hj·h]”hŒ get_event”…”�”}”(hj¹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjµubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ`/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:26: ./include/linux/devfreq-event.h”h´Klock before calling devfreq_update_target. This function should be only used by both update_devfreq() and devfreq governors.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjì h]”hŒ Parameters”…”�”}”(hjî h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjê ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M‹hjæ ubjž)�”}”(hhh]”(j£)�”}”(hŒ2``struct devfreq *devfreq`` the devfreq instance. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj !h]”hŒstruct devfreq *devfreq”…”�”}”(hj !h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj !ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M‰hj!ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq instance.”h]”hŒthe devfreq instance.”…”�”}”(hj$!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j !h´M‰hj!!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j !h´M‰hj!ubj£)�”}”(hŒ�``unsigned long freq`` the new frequency of parent device. This argument is only used for devfreq device using passive governor. ”h]”(j©)�”}”(hŒ``unsigned long freq``”h]”j@)�”}”(hjD!h]”hŒunsigned long freq”…”�”}”(hjF!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjB!ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M‹hj>!ubjÃ)�”}”(hhh]”hï)�”}”(hŒithe new frequency of parent device. This argument is only used for devfreq device using passive governor.”h]”hŒithe new frequency of parent device. This argument is only used for devfreq device using passive governor.”…”�”}”(hj]!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MŠhjZ!ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj>!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jY!h´M‹hj!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjæ ubhï)�”}”(hŒ**Note**”h]”jZ)�”}”(hj€!h]”hŒNote”…”�”}”(hj‚!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj~!ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M�hjæ ubjž)�”}”(hhh]”j£)�”}”(hŒŠLock devfreq->lock before calling devfreq_update_target. This function should be only used by both update_devfreq() and devfreq governors.”h]”(j©)�”}”(hŒFLock devfreq->lock before calling devfreq_update_target. This function”h]”hŒFLock devfreq->lock before calling devfreq_update_target. This function”…”�”}”(hj�!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M�hj™!ubjÃ)�”}”(hhh]”hï)�”}”(hŒCshould be only used by both update_devfreq() and devfreq governors.”h]”hŒCshould be only used by both update_devfreq() and devfreq governors.”…”�”}”(hj¯!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MŽhj¬!ubah}”(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 ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œupdate_devfreq (C function)”Œc.update_devfreq”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ,int update_devfreq (struct devfreq *devfreq)”h]”jÎ)�”}”(hŒ+int update_devfreq(struct devfreq *devfreq)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjð!h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjì!h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.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Œupdate_devfreq”h]”jý)�”}”(hŒupdate_devfreq”h]”hŒupdate_devfreq”…”�”}”(hj"h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj "ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjì!h²hh³jþ!h´M±ubjK)�”}”(hŒ(struct devfreq *devfreq)”h]”jQ)�”}”(hŒstruct devfreq *devfreq”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hjK"h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjH"ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jM"Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj"sbŒc.update_devfreq”†”asbuh1hhj)"ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjk"h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj)"ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjy"h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj)"ubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj†"h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj)"ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj%"ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjì!h²hh³jþ!h´M±ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjè!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]”hï)�”}”(hŒ.Reevaluate the device and configure frequency.”h]”hŒ.Reevaluate the device and configure frequency.”…”�”}”(hj°"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M±hj­"h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjå!h²hh³jþ!h´M±ubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjÈ"jKjÈ"jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒ®**Parameters** ``struct devfreq *devfreq`` the devfreq instance. **Note** Lock devfreq->lock before calling update_devfreq This function is exported for governors.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjÒ"h]”hŒ Parameters”…”�”}”(hjÔ"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÐ"ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MµhjÌ"ubjž)�”}”(hhh]”j£)�”}”(hŒ2``struct devfreq *devfreq`` the devfreq instance. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hjñ"h]”hŒstruct devfreq *devfreq”…”�”}”(hjó"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjï"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M²hjë"ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq instance.”h]”hŒthe devfreq instance.”…”�”}”(hj #h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j#h´M²hj#ubah}”(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Ì"ubhï)�”}”(hŒ**Note**”h]”jZ)�”}”(hj,#h]”hŒNote”…”�”}”(hj.#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj*#ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M´hjÌ"ubjž)�”}”(hhh]”j£)�”}”(hŒYLock devfreq->lock before calling update_devfreq This function is exported for governors.”h]”(j©)�”}”(hŒ0Lock devfreq->lock before calling update_devfreq”h]”hŒ0Lock devfreq->lock before calling update_devfreq”…”�”}”(hjI#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M´hjE#ubjÃ)�”}”(hhh]”hï)�”}”(hŒ(This function is exported for governors.”h]”hŒ(This function is exported for governors.”…”�”}”(hj[#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MµhjX#ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjE#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jW#h´M´hjB#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hjÌ"ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ"devfreq_monitor_start (C function)”Œc.devfreq_monitor_start”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ4void devfreq_monitor_start (struct devfreq *devfreq)”•h]”jÎ)�”}”(hŒ3void devfreq_monitor_start(struct devfreq *devfreq)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjœ#h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj˜#h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.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Œdevfreq_monitor_start”h]”jý)�”}”(hŒdevfreq_monitor_start”h]”hŒdevfreq_monitor_start”…”�”}”(hj½#h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj¹#ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj˜#h²hh³jª#h´MÙubjK)�”}”(hŒ(struct devfreq *devfreq)”h]”jQ)�”}”(hŒstruct devfreq *devfreq”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hj÷#h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjô#ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jù#Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj¿#sbŒc.devfreq_monitor_start”†”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hj2$h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÕ#ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjÑ#ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj˜#h²hh³jª#h´MÙubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj”#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]”hï)�”}”(hŒ)Start load monitoring of devfreq instance”h]”hŒ)Start load monitoring of devfreq instance”…”�”}”(hj\$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÙhjY$h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj‘#h²hh³jª#h´MÙubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjt$jKjt$jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX¸**Parameters** ``struct devfreq *devfreq`` the devfreq instance. **Description** Helper function for starting devfreq device load monitoring. By default, deferrable timer is used for load monitoring. But the users can change this behavior using the "timer" type in devfreq_dev_profile. This function will be called by devfreq governor in response to the DEVFREQ_GOV_START event generated while adding a device to the devfreq framework.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj~$h]”hŒ Parameters”…”�”}”(hj€$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj|$ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÝhjx$ubjž)�”}”(hhh]”j£)�”}”(hŒ2``struct devfreq *devfreq`` the devfreq instance. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj�$h]”hŒstruct devfreq *devfreq”…”�”}”(hjŸ$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj›$ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÚhj—$ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq instance.”h]”hŒthe devfreq instance.”…”�”}”(hj¶$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j²$h´MÚhj³$ubah}”(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�hjx$ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjØ$h]”hŒ Description”…”�”}”(hjÚ$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÖ$ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÜhjx$ubhï)�”}”(hXbHelper function for starting devfreq device load monitoring. By default, deferrable timer is used for load monitoring. But the users can change this behavior using the "timer" type in devfreq_dev_profile. This function will be called by devfreq governor in response to the DEVFREQ_GOV_START event generated while adding a device to the devfreq framework.”h]”hXfHelper function for starting devfreq device load monitoring. By default, deferrable timer is used for load monitoring. But the users can change this behavior using the “timerâ€� type in devfreq_dev_profile. This function will be called by devfreq governor in response to the DEVFREQ_GOV_START event generated while adding a device to the devfreq framework.”…”�”}”(hjî$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÛhjx$ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ!devfreq_monitor_stop (C function)”Œc.devfreq_monitor_stop”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ3void devfreq_monitor_stop (struct devfreq *devfreq)”h]”jÎ)�”}”(hŒ2void devfreq_monitor_stop(struct devfreq *devfreq)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj%h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.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Œdevfreq_monitor_stop”h]”jý)�”}”(hŒdevfreq_monitor_stop”h]”hŒdevfreq_monitor_stop”…”�”}”(hj>%h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj:%ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj%h²hh³j+%h´MubjK)�”}”(hŒ(struct devfreq *devfreq)”h]”jQ)�”}”(hŒstruct devfreq *devfreq”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjZ%h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjV%ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjg%h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjV%ubh)�”}”(hhh]”jý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hjx%h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühju%ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jz%Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj@%sbŒc.devfreq_monitor_stop”†”asbuh1hhjV%ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj˜%h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjV%ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj¦%h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjV%ubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj³%h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjV%ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjR%ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj%h²hh³j+%h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj%h²hh³j+%h´Mubah}”(h]”j%ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j+%h´Mhj%h²hubj))�”}”(hhh]”hï)�”}”(hŒ*Stop load monitoring of a devfreq instance”h]”hŒ*Stop load monitoring of a devfreq instance”…”�”}”(hjÝ%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MhjÚ%h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj%h²hh³j+%h´Mubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjõ%jKjõ%jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX**Parameters** ``struct devfreq *devfreq`` the devfreq instance. **Description** Helper function to stop devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_STOP event when device is removed from devfreq framework.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjÿ%h]”hŒ Parameters”…”�”}”(hj&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjý%ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjù%ubjž)�”}”(hhh]”j£)�”}”(hŒ2``struct devfreq *devfreq`` the devfreq instance. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj&h]”hŒstruct devfreq *devfreq”…”�”}”(hj &h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj&ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj&ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq instance.”h]”hŒthe devfreq instance.”…”�”}”(hj7&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j3&h´Mhj4&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj&ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j3&h´Mhj&ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hjù%ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjY&h]”hŒ Description”…”�”}”(hj[&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjW&ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjù%ubhï)�”}”(hŒ°Helper function to stop devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_STOP event when device is removed from devfreq framework.”h]”hŒ°Helper function to stop devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_STOP event when device is removed from devfreq framework.”…”�”}”(hjo&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjù%ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ$devfreq_monitor_suspend (C function)”Œc.devfreq_monitor_suspend”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ6void devfreq_monitor_suspend (struct devfreq *devfreq)”h]”jÎ)�”}”(hŒ5void devfreq_monitor_suspend(struct devfreq *devfreq)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjž&h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjš&h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.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Œdevfreq_monitor_suspend”h]”jý)�”}”(hŒdevfreq_monitor_suspend”h]”hŒdevfreq_monitor_suspend”…”�”}”(hj¿&h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj»&ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjš&h²hh³j¬&h´MubjK)�”}”(hŒ(struct devfreq *devfreq)”h]”jQ)�”}”(hŒstruct devfreq *devfreq”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hjù&h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjö&ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jû&Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjÁ&sbŒc.devfreq_monitor_suspend”†”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hj4'h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj×&ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjÓ&ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjš&h²hh³j¬&h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj–&h²hh³j¬&h´Mubah}”(h]”j‘&ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j¬&h´Mhj“&h²hubj))�”}”(hhh]”hï)�”}”(hŒ-Suspend load monitoring of a devfreq instance”h]”hŒ-Suspend load monitoring of a devfreq instance”…”�”}”(hj^'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj['h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj“&h²hh³j¬&h´Mubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjv'jKjv'jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hXœ**Parameters** ``struct devfreq *devfreq`` the devfreq instance. **Description** Helper function to suspend devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_SUSPEND event or when polling interval is set to zero. **Note** Though this function is same as devfreq_monitor_stop(), intentionally kept separate to provide hooks for collecting transition statistics.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj€'h]”hŒ Parameters”…”�”}”(hj‚'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj~'ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjz'ubjž)�”}”(hhh]”j£)�”}”(hŒ2``struct devfreq *devfreq`` the devfreq instance. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hjŸ'h]”hŒstruct devfreq *devfreq”…”�”}”(hj¡'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj�'ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj™'ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq instance.”h]”hŒthe devfreq instance.”…”�”}”(hj¸'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j´'h´Mhjµ'ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj™'ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j´'h´Mhj–'ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hjz'ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjÚ'h]”hŒ Description”…”�”}”(hjÜ'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjØ'ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjz'ubhï)�”}”(hŒ°Helper function to suspend devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_SUSPEND event or when polling interval is set to zero.”h]”hŒ°Helper function to suspend devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_SUSPEND event or when polling interval is set to zero.”…”�”}”(hjð'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjz'ubhï)�”}”(hŒ**Note**”h]”jZ)�”}”(hj(h]”hŒNote”…”�”}”(hj(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÿ'ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M hjz'ubhï)�”}”(hŒŠThough this function is same as devfreq_monitor_stop(), intentionally kept separate to provide hooks for collecting transition statistics.”h]”hŒŠThough this function is same as devfreq_monitor_stop(), intentionally kept separate to provide hooks for collecting transition statistics.”…”�”}”(hj(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M!hjz'ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ#devfreq_monitor_resume (C function)”Œc.devfreq_monitor_resume”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ5void devfreq_monitor_resume (struct devfreq *devfreq)”h]”jÎ)�”}”(hŒ4void devfreq_monitor_resume(struct devfreq *devfreq)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjF(h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjB(h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M9ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjU(h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjB(h²hh³jT(h´M9ubj÷)�”}”(hŒdevfreq_monitor_resume”h]”jý)�”}”(hŒdevfreq_monitor_resume”h]”hŒdevfreq_monitor_resume”…”�”}”(hjg(h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjc(ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjB(h²hh³jT(h´M9ubjK)�”}”(hŒ(struct devfreq *devfreq)”h]”jQ)�”}”(hŒstruct devfreq *devfreq”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hj¡(h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjž(ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j£(Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠji(sbŒc.devfreq_monitor_resume”†”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hjÜ(h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj(ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj{(ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjB(h²hh³jT(h´M9ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj>(h²hh³jT(h´M9ubah}”(h]”j9(ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jT(h´M9hj;(h²hubj))�”}”(hhh]”hï)�”}”(hŒ,Resume load monitoring of a devfreq instance”h]”hŒ,Resume load monitoring of a devfreq instance”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M9hj)h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj;(h²hh³jT(h´M9ubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj)jKj)jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX**Parameters** ``struct devfreq *devfreq`` the devfreq instance. **Description** Helper function to resume devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_RESUME event or when polling interval is set to non-zero.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj()h]”hŒ Parameters”…”�”}”(hj*)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj&)ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M=hj")ubjž)�”}”(hhh]”j£)�”}”(hŒ2``struct devfreq *devfreq`` the devfreq instance. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hjG)h]”hŒstruct devfreq *devfreq”…”�”}”(hjI)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjE)ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M:hjA)ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq instance.”h]”hŒthe devfreq instance.”…”�”}”(hj`)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j\)h´M:hj])ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjA)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j\)h´M:hj>)ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hj")ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hj‚)h]”hŒ Description”…”�”}”(hj„)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj€)ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M<hj")ubhï)�”}”(hŒ²Helper function to resume devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_RESUME event or when polling interval is set to non-zero.”h]”hŒ²Helper function to resume devfreq device load monitoring. Function to be called from governor in response to DEVFREQ_GOV_RESUME event or when polling interval is set to non-zero.”…”�”}”(hj˜)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M;hj")ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ$devfreq_update_interval (C function)”Œc.devfreq_update_interval”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒKvoid devfreq_update_interval (struct devfreq *devfreq, unsigned int *delay)”h]”jÎ)�”}”(hŒJvoid devfreq_update_interval(struct devfreq *devfreq, unsigned int *delay)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjÇ)h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÃ)h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.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Œdevfreq_update_interval”h]”jý)�”}”(hŒdevfreq_update_interval”h]”hŒdevfreq_update_interval”…”�”}”(hjè)h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjä)ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjÃ)h²hh³jÕ)h´M_ubjK)�”}”(hŒ.(struct devfreq *devfreq, unsigned int *delay)”h]”(jQ)�”}”(hŒstruct devfreq *devfreq”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hj"*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj*ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j$*Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjê)sbŒc.devfreq_update_interval”†”asbuh1hhj*ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjB*h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj*ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjP*h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj*ubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj]*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj*ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjü)ubjQ)�”}”(hŒunsigned int *delay”h]”(j)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hjv*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjr*ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj„*h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjr*ubj)�”}”(hŒint”h]”hŒint”…”�”}”(hj’*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjr*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Œdelay”h]”hŒdelay”…”�”}”(hj»*h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjr*ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjü)ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjÃ)h²hh³jÕ)h´M_ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj¿)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]”hï)�”}”(hŒ)Update device devfreq monitoring interval”h]”hŒ)Update device devfreq monitoring interval”…”�”}”(hjå*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M_hjâ*h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj¼)h²hh³jÕ)h´M_ubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjý*jKjý*jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX#**Parameters** ``struct devfreq *devfreq`` the devfreq instance. ``unsigned int *delay`` new polling interval to be set. **Description** Helper function to set new load monitoring polling interval. Function to be called from governor in response to DEVFREQ_GOV_UPDATE_INTERVAL event.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj+h]”hŒ Parameters”…”�”}”(hj +h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj+ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mchj+ubjž)�”}”(hhh]”(j£)�”}”(hŒ2``struct devfreq *devfreq`` the devfreq instance. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj&+h]”hŒstruct devfreq *devfreq”…”�”}”(hj(+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj$+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M`hj +ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq instance.”h]”hŒthe devfreq instance.”…”�”}”(hj?+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j;+h´M`hj<+ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj +ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j;+h´M`hj+ubj£)�”}”(hŒ8``unsigned int *delay`` new polling interval to be set. ”h]”(j©)�”}”(hŒ``unsigned int *delay``”h]”j@)�”}”(hj_+h]”hŒunsigned int *delay”…”�”}”(hja+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj]+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MahjY+ubjÃ)�”}”(hhh]”hï)�”}”(hŒnew polling interval to be set.”h]”hŒnew polling interval to be set.”…”�”}”(hjx+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jt+h´Mahju+ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjY+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jt+h´Mahj+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj+ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjš+h]”hŒ Description”…”�”}”(hjœ+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj˜+ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mchj+ubhï)�”}”(hŒ’Helper function to set new load monitoring polling interval. Function to be called from governor in response to DEVFREQ_GOV_UPDATE_INTERVAL event.”h]”hŒ’Helper function to set new load monitoring polling interval. Function to be called from governor in response to DEVFREQ_GOV_UPDATE_INTERVAL event.”…”�”}”(hj°+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mbhj+ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œdevfreq_add_device (C function)”Œc.devfreq_add_device”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ„struct devfreq * devfreq_add_device (struct device *dev, struct devfreq_dev_profile *profile, const char *governor_name, void *data)”h]”jÎ)�”}”(hŒ‚struct devfreq *devfreq_add_device(struct device *dev, struct devfreq_dev_profile *profile, const char *governor_name, void *data)”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/devfreq:27: ./drivers/devfreq/devfreq.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Œdevfreq”h]”hŒdevfreq”…”�”}”(hjþ+h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjû+ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j,Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠŒdevfreq_add_device”sbŒc.devfreq_add_device”†”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Œdevfreq_add_device”h]”jý)�”}”(hj,h]”hŒdevfreq_add_device”…”�”}”(hj>,h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj:,ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjÛ+h²hh³jì+h´MubjK)�”}”(hŒ`(struct device *dev, struct devfreq_dev_profile *profile, const char *governor_name, void *data)”h]”(jQ)�”}”(hŒstruct device *dev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjY,h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjU,ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjf,h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjU,ubh)�”}”(hhh]”jý)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjw,h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjt,ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jy,Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j,Œc.devfreq_add_device”†”asbuh1hhjU,ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj•,h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjU,ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj£,h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjU,ubjý)�”}”(hŒdev”h]”hŒdev”…”�”}”(hj°,h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjU,ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjQ,ubjQ)�”}”(hŒ#struct devfreq_dev_profile *profile”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Œdevfreq_dev_profile”h]”hŒdevfreq_dev_profile”…”�”}”(hjç,h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjä,ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jé,Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j,Œc.devfreq_add_device”†”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Œprofile”h]”hŒprofile”…”�”}”(hj -h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÅ,ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjQ,ubjQ)�”}”(hŒconst char *governor_name”h]”(jÔ)�”}”(hŒconst”h]”hŒconst”…”�”}”(hj9-h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj5-ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjG-h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj5-ubj)�”}”(hŒchar”h]”hŒchar”…”�”}”(hjU-h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj5-ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjc-h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj5-ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjq-h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj5-ubjý)�”}”(hŒ governor_name”h]”hŒ governor_name”…”�”}”(hj~-h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj5-ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjQ,ubjQ)�”}”(hŒ void *data”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj—-h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj“-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 ]”jah"]”h$]”h&]”uh1jühj“-ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjQ,ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjÛ+h²hh³jì+h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj×+h²hh³jì+h´Mubah}”(h]”jÒ+ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jì+h´MhjÔ+h²hubj))�”}”(hhh]”hï)�”}”(hŒ!Add devfreq feature to the device”h]”hŒ!Add devfreq feature to the device”…”�”}”(hjê-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjç-h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjÔ+h²hh³jì+h´Mubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj.jKj.jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX:**Parameters** ``struct device *dev`` the device to add devfreq feature. ``struct devfreq_dev_profile *profile`` device-specific profile to run devfreq. ``const char *governor_name`` name of the policy to choose frequency. ``void *data`` devfreq driver pass to governors, governor should not change it.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj .h]”hŒ Parameters”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj .ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj.ubjž)�”}”(hhh]”(j£)�”}”(hŒ:``struct device *dev`` the device to add devfreq feature. ”h]”(j©)�”}”(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&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj%.ubjÃ)�”}”(hhh]”hï)�”}”(hŒ"the device to add devfreq feature.”h]”hŒ"the device to add devfreq feature.”…”�”}”(hjD.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j@.h´MhjA.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj%.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j@.h´Mhj".ubj£)�”}”(hŒP``struct devfreq_dev_profile *profile`` device-specific profile to run devfreq. ”h]”(j©)�”}”(hŒ'``struct devfreq_dev_profile *profile``”h]”j@)�”}”(hjd.h]”hŒ#struct devfreq_dev_profile *profile”…”�”}”(hjf.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjb.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj^.ubjÃ)�”}”(hhh]”hï)�”}”(hŒ'device-specific profile to run devfreq.”h]”hŒ'device-specific profile to run devfreq.”…”�”}”(hj}.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jy.h´Mhjz.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj^.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jy.h´Mhj".ubj£)�”}”(hŒF``const char *governor_name`` name of the policy to choose frequency. ”h]”(j©)�”}”(hŒ``const char *governor_name``”h]”j@)�”}”(hj�.h]”hŒconst char *governor_name”…”�”}”(hjŸ.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj›.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj—.ubjÃ)�”}”(hhh]”hï)�”}”(hŒ'name of the policy to choose frequency.”h]”hŒ'name of the policy to choose frequency.”…”�”}”(hj¶.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j².h´Mhj³.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj—.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j².h´Mhj".ubj£)�”}”(hŒO``void *data`` devfreq driver pass to governors, governor should not change it.”h]”(j©)�”}”(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&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MhjÐ.ubjÃ)�”}”(hhh]”hï)�”}”(hŒ@devfreq driver pass to governors, governor should not change it.”h]”hŒ@devfreq driver pass to governors, governor should not change it.”…”�”}”(hjï.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjì.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjÐ.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jë.h´Mhj".ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj.ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ"devfreq_remove_device (C function)”Œc.devfreq_remove_device”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ3int devfreq_remove_device (struct devfreq *devfreq)”h]”jÎ)�”}”(hŒ2int devfreq_remove_device(struct devfreq *devfreq)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj0/h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj,/h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.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Œdevfreq_remove_device”h]”jý)�”}”(hŒdevfreq_remove_device”h]”hŒdevfreq_remove_device”…”�”}”(hjQ/h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjM/ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj,/h²hh³j>/h´MØubjK)�”}”(hŒ(struct devfreq *devfreq)”h]”jQ)�”}”(hŒstruct devfreq *devfreq”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjm/h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhji/ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjz/h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhji/ubh)�”}”(hhh]”jý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj‹/h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjˆ/ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j�/Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjS/sbŒc.devfreq_remove_device”†”asbuh1hhji/ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj«/h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhji/ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj¹/h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhji/ubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hjÆ/h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühji/ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhje/ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj,/h²hh³j>/h´MØubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj(/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]”hï)�”}”(hŒ%Remove devfreq feature from a device.”h]”hŒ%Remove devfreq feature from a device.”…”�”}”(hjð/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MØhjí/h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj%/h²hh³j>/h´MØubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj0jKj0jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒˆ**Parameters** ``struct devfreq *devfreq`` the devfreq instance to be removed **Description** The opposite of devfreq_add_device().”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj0h]”hŒ Parameters”…”�”}”(hj0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÜhj 0ubjž)�”}”(hhh]”j£)�”}”(hŒ?``struct devfreq *devfreq`` the devfreq instance to be removed ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj10h]”hŒstruct devfreq *devfreq”…”�”}”(hj30h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj/0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÙhj+0ubjÃ)�”}”(hhh]”hï)�”}”(hŒ"the devfreq instance to be removed”h]”hŒ"the devfreq instance to be removed”…”�”}”(hjJ0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jF0h´MÙhjG0ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj+0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jF0h´MÙhj(0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hj 0ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjl0h]”hŒ Description”…”�”}”(hjn0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÛhj 0ubhï)�”}”(hŒ%The opposite of devfreq_add_device().”h]”hŒ%The opposite of devfreq_add_device().”…”�”}”(hj‚0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÚhj 0ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ$devm_devfreq_add_device (C function)”Œc.devm_devfreq_add_device”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ‰struct devfreq * devm_devfreq_add_device (struct device *dev, struct devfreq_dev_profile *profile, const char *governor_name, void *data)”h]”jÎ)�”}”(hŒ‡struct devfreq *devm_devfreq_add_device(struct device *dev, struct devfreq_dev_profile *profile, const char *governor_name, void *data)”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hj±0h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj­0h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mýubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¿0h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj­0h²hh³j¾0h´Mýubh)�”}”(hhh]”jý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hjÐ0h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÍ0ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jÒ0Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠŒdevm_devfreq_add_device”sbŒc.devm_devfreq_add_device”†”asbuh1hhj­0h²hh³j¾0h´Mýubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjñ0h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj­0h²hh³j¾0h´Mýubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjÿ0h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj­0h²hh³j¾0h´Mýubj÷)�”}”(hŒdevm_devfreq_add_device”h]”jý)�”}”(hjî0h]”hŒdevm_devfreq_add_device”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj 1ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj­0h²hh³j¾0h´MýubjK)�”}”(hŒ`(struct device *dev, struct devfreq_dev_profile *profile, const char *governor_name, void *data)”h]”(jQ)�”}”(hŒstruct device *dev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hj+1h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj'1ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj81h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj'1ubh)�”}”(hhh]”jý)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjI1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjF1ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jK1Œmodname”NŒ classname”NjŽj‘)�”}”j”]”jì0Œc.devm_devfreq_add_device”†”asbuh1hhj'1ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjg1h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj'1ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hju1h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj'1ubjý)�”}”(hŒdev”h]”hŒdev”…”�”}”(hj‚1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj'1ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj#1ubjQ)�”}”(hŒ#struct devfreq_dev_profile *profile”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hj›1h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj—1ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¨1h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj—1ubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_dev_profile”h]”hŒdevfreq_dev_profile”…”�”}”(hj¹1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj¶1ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j»1Œmodname”NŒ classname”NjŽj‘)�”}”j”]”jì0Œc.devm_devfreq_add_device”†”asbuh1hhj—1ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj×1h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj—1ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjå1h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj—1ubjý)�”}”(hŒprofile”h]”hŒprofile”…”�”}”(hjò1h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj—1ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj#1ubjQ)�”}”(hŒconst char *governor_name”h]”(jÔ)�”}”(hj;-h]”hŒconst”…”�”}”(hj 2h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj2ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj2h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj2ubj)�”}”(hŒchar”h]”hŒchar”…”�”}”(hj&2h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj2ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj42h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj2ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjB2h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj2ubjý)�”}”(hŒ governor_name”h]”hŒ governor_name”…”�”}”(hjO2h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj2ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj#1ubjQ)�”}”(hŒ void *data”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjh2h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjd2ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjv2h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjd2ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj„2h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjd2ubjý)�”}”(hŒdata”h]”hŒdata”…”�”}”(hj‘2h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjd2ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj#1ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj­0h²hh³j¾0h´Mýubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj©0h²hh³j¾0h´Mýubah}”(h]”j¤0ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j¾0h´Mýhj¦0h²hubj))�”}”(hhh]”hï)�”}”(hŒ%Resource-managed devfreq_add_device()”h]”hŒ%Resource-managed devfreq_add_device()”…”�”}”(hj»2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mýhj¸2h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj¦0h²hh³j¾0h´Mýubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjÓ2jKjÓ2jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hXì**Parameters** ``struct device *dev`` the device to add devfreq feature. ``struct devfreq_dev_profile *profile`` device-specific profile to run devfreq. ``const char *governor_name`` name of the policy to choose frequency. ``void *data`` devfreq driver pass to governors, governor should not change it. **Description** This function manages automatically the memory of devfreq device using device resource management and simplify the free operation for memory of devfreq device.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjÝ2h]”hŒ Parameters”…”�”}”(hjß2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÛ2ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj×2ubjž)�”}”(hhh]”(j£)�”}”(hŒ:``struct device *dev`` the device to add devfreq feature. ”h]”(j©)�”}”(hŒ``struct device *dev``”h]”j@)�”}”(hjü2h]”hŒstruct device *dev”…”�”}”(hjþ2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjú2ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mþhjö2ubjÃ)�”}”(hhh]”hï)�”}”(hŒ"the device to add devfreq feature.”h]”hŒ"the device to add devfreq feature.”…”�”}”(hj3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j3h´Mþhj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjö2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j3h´Mþhjó2ubj£)�”}”(hŒP``struct devfreq_dev_profile *profile`` device-specific profile to run devfreq. ”h]”(j©)�”}”(hŒ'``struct devfreq_dev_profile *profile``”h]”j@)�”}”(hj53h]”hŒ#struct devfreq_dev_profile *profile”…”�”}”(hj73h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj33ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mÿhj/3ubjÃ)�”}”(hhh]”hï)�”}”(hŒ'device-specific profile to run devfreq.”h]”hŒ'device-specific profile to run devfreq.”…”�”}”(hjN3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jJ3h´MÿhjK3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj/3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jJ3h´Mÿhjó2ubj£)�”}”(hŒF``const char *governor_name`` name of the policy to choose frequency. ”h]”(j©)�”}”(hŒ``const char *governor_name``”h]”j@)�”}”(hjn3h]”hŒconst char *governor_name”…”�”}”(hjp3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjl3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjh3ubjÃ)�”}”(hhh]”hï)�”}”(hŒ'name of the policy to choose frequency.”h]”hŒ'name of the policy to choose frequency.”…”�”}”(hj‡3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jƒ3h´Mhj„3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjh3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jƒ3h´Mhjó2ubj£)�”}”(hŒP``void *data`` devfreq driver pass to governors, governor should not change it. ”h]”(j©)�”}”(hŒ``void *data``”h]”j@)�”}”(hj§3h]”hŒ void *data”…”�”}”(hj©3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj¥3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj¡3ubjÃ)�”}”(hhh]”hï)�”}”(hŒ@devfreq driver pass to governors, governor should not change it.”h]”hŒ@devfreq driver pass to governors, governor should not change it.”…”�”}”(hjÀ3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j¼3h´Mhj½3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj¡3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j¼3h´Mhjó2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj×2ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjâ3h]”hŒ Description”…”�”}”(hjä3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjà3ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj×2ubhï)�”}”(hŒŸThis function manages automatically the memory of devfreq device using device resource management and simplify the free operation for memory of devfreq device.”h]”hŒŸThis function manages automatically the memory of devfreq device using device resource management and simplify the free operation for memory of devfreq device.”…”�”}”(hjø3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj×2ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ'devm_devfreq_remove_device (C function)”Œc.devm_devfreq_remove_device”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒMvoid devm_devfreq_remove_device (struct device *dev, struct devfreq *devfreq)”h]”jÎ)�”}”(hŒLvoid devm_devfreq_remove_device(struct device *dev, struct devfreq *devfreq)”h]”(j)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hj'4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj#4h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj64h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj#4h²hh³j54h´Mhubj÷)�”}”(hŒdevm_devfreq_remove_device”h]”jý)�”}”(hŒdevm_devfreq_remove_device”h]”hŒdevm_devfreq_remove_device”…”�”}”(hjH4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjD4ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj#4h²hh³j54h´MhubjK)�”}”(hŒ-(struct device *dev, struct devfreq *devfreq)”h]”(jQ)�”}”(hŒstruct device *dev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjd4h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj`4ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjq4h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj`4ubh)�”}”(hhh]”jý)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hj‚4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj4ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j„4Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjJ4sbŒc.devm_devfreq_remove_device”†”asbuh1hhj`4ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¢4h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj`4ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj°4h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj`4ubjý)�”}”(hŒdev”h]”hŒdev”…”�”}”(hj½4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj`4ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj\4ubjQ)�”}”(hŒstruct devfreq *devfreq”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjÖ4h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjÒ4ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjã4h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjÒ4ubh)�”}”(hhh]”jý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hjô4h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjñ4ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jö4Œmodname”NŒ classname”NjŽj‘)�”}”j”]”jž4Œc.devm_devfreq_remove_device”†”asbuh1hhjÒ4ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj5h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjÒ4ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj 5h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÒ4ubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj-5h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÒ4ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj\4ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj#4h²hh³j54h´Mhubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj4h²hh³j54h´Mhubah}”(h]”j4ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j54h´Mhhj4h²hubj))�”}”(hhh]”hï)�”}”(hŒ(Resource-managed devfreq_remove_device()”h]”hŒ(Resource-managed devfreq_remove_device()”…”�”}”(hjW5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MhhjT5h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj4h²hh³j54h´Mhubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjo5jKjo5jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒ›**Parameters** ``struct device *dev`` the device from which to remove devfreq feature. ``struct devfreq *devfreq`` the devfreq instance to be removed”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjy5h]”hŒ Parameters”…”�”}”(hj{5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjw5ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mlhjs5ubjž)�”}”(hhh]”(j£)�”}”(hŒH``struct device *dev`` the device from which to remove devfreq feature. ”h]”(j©)�”}”(hŒ``struct device *dev``”h]”j@)�”}”(hj˜5h]”hŒstruct device *dev”…”�”}”(hjš5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj–5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mihj’5ubjÃ)�”}”(hhh]”hï)�”}”(hŒ0the device from which to remove devfreq feature.”h]”hŒ0the device from which to remove devfreq feature.”…”�”}”(hj±5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j­5h´Mihj®5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj’5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j­5h´Mihj�5ubj£)�”}”(hŒ>``struct devfreq *devfreq`` the devfreq instance to be removed”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hjÑ5h]”hŒstruct devfreq *devfreq”…”�”}”(hjÓ5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjÏ5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MkhjË5ubjÃ)�”}”(hhh]”hï)�”}”(hŒ"the devfreq instance to be removed”h]”hŒ"the devfreq instance to be removed”…”�”}”(hjê5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mjhjç5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjË5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jæ5h´Mkhj�5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjs5ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ#devfreq_suspend_device (C function)”Œc.devfreq_suspend_device”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ4int devfreq_suspend_device (struct devfreq *devfreq)”h]”jÎ)�”}”(hŒ3int devfreq_suspend_device(struct devfreq *devfreq)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj+6h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj'6h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mtubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj:6h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj'6h²hh³j96h´Mtubj÷)�”}”(hŒdevfreq_suspend_device”h]”jý)�”}”(hŒdevfreq_suspend_device”h]”hŒdevfreq_suspend_device”…”�”}”(hjL6h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjH6ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj'6h²hh³j96h´MtubjK)�”}”(hŒ(struct devfreq *devfreq)”h]”jQ)�”}”(hŒstruct devfreq *devfreq”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjh6h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjd6ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hju6h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjd6ubh)�”}”(hhh]”jý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj†6h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjƒ6ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jˆ6Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjN6sbŒc.devfreq_suspend_device”†”asbuh1hhjd6ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¦6h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjd6ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj´6h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjd6ubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hjÁ6h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjd6ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj`6ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj'6h²hh³j96h´Mtubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj#6h²hh³j96h´Mtubah}”(h]”j6ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j96h´Mthj 6h²hubj))�”}”(hhh]”hï)�”}”(hŒSuspend devfreq of a device.”h]”hŒSuspend devfreq of a device.”…”�”}”(hjë6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mthjè6h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj 6h²hh³j96h´Mtubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj7jKj7jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒí**Parameters** ``struct devfreq *devfreq`` the devfreq instance to be suspended **Description** This function is intended to be called by the pm callbacks (e.g., runtime_suspend, suspend) of the device driver that holds the devfreq.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj 7h]”hŒ Parameters”…”�”}”(hj7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj 7ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mxhj7ubjž)�”}”(hhh]”j£)�”}”(hŒA``struct devfreq *devfreq`` the devfreq instance to be suspended ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj,7h]”hŒstruct devfreq *devfreq”…”�”}”(hj.7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj*7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Muhj&7ubjÃ)�”}”(hhh]”hï)�”}”(hŒ$the devfreq instance to be suspended”h]”hŒ$the devfreq instance to be suspended”…”�”}”(hjE7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jA7h´MuhjB7ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj&7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jA7h´Muhj#7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hj7ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjg7h]”hŒ Description”…”�”}”(hji7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhje7ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mwhj7ubhï)�”}”(hŒˆThis function is intended to be called by the pm callbacks (e.g., runtime_suspend, suspend) of the device driver that holds the devfreq.”h]”hŒˆThis function is intended to be called by the pm callbacks (e.g., runtime_suspend, suspend) of the device driver that holds the devfreq.”…”�”}”(hj}7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mvhj7ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ"devfreq_resume_device (C function)”Œc.devfreq_resume_device”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ3int devfreq_resume_device (struct devfreq *devfreq)”h]”jÎ)�”}”(hŒ2int devfreq_resume_device(struct devfreq *devfreq)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj¬7h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¨7h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M™ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj»7h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj¨7h²hh³jº7h´M™ubj÷)�”}”(hŒdevfreq_resume_device”h]”jý)�”}”(hŒdevfreq_resume_device”h]”hŒdevfreq_resume_device”…”�”}”(hjÍ7h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÉ7ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj¨7h²hh³jº7h´M™ubjK)�”}”(hŒ(struct devfreq *devfreq)”h]”jQ)�”}”(hŒstruct devfreq *devfreq”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjé7h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjå7ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjö7h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjå7ubh)�”}”(hhh]”jý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj8ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j 8Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjÏ7sbŒc.devfreq_resume_device”†”asbuh1hhjå7ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj'8h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjå7ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj58h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjå7ubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hjB8h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjå7ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjá7ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj¨7h²hh³jº7h´M™ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj¤7h²hh³jº7h´M™ubah}”(h]”jŸ7ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jº7h´M™hj¡7h²hubj))�”}”(hhh]”hï)�”}”(hŒResume devfreq of a device.”h]”hŒResume devfreq of a device.”…”�”}”(hjl8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M™hji8h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj¡7h²hh³jº7h´M™ubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj„8jKj„8jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒé**Parameters** ``struct devfreq *devfreq`` the devfreq instance to be resumed **Description** This function is intended to be called by the pm callbacks (e.g., runtime_resume, resume) of the device driver that holds the devfreq.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjŽ8h]”hŒ Parameters”…”�”}”(hj�8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjŒ8ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M�hjˆ8ubjž)�”}”(hhh]”j£)�”}”(hŒ?``struct devfreq *devfreq`` the devfreq instance to be resumed ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj­8h]”hŒstruct devfreq *devfreq”…”�”}”(hj¯8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj«8ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mšhj§8ubjÃ)�”}”(hhh]”hï)�”}”(hŒ"the devfreq instance to be resumed”h]”hŒ"the devfreq instance to be resumed”…”�”}”(hjÆ8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jÂ8h´MšhjÃ8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj§8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÂ8h´Mšhj¤8ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hjˆ8ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjè8h]”hŒ Description”…”�”}”(hjê8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjæ8ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mœhjˆ8ubhï)�”}”(hŒ†This function is intended to be called by the pm callbacks (e.g., runtime_resume, resume) of the device driver that holds the devfreq.”h]”hŒ†This function is intended to be called by the pm callbacks (e.g., runtime_resume, resume) of the device driver that holds the devfreq.”…”�”}”(hjþ8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M›hjˆ8ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ!devfreq_add_governor (C function)”Œc.devfreq_add_governor”•hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒint devfreq_remove_governor(struct devfreq_governor *governor)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj²<h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj®<h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MEubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÁ<h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj®<h²hh³jÀ<h´MEubj÷)�”}”(hŒdevfreq_remove_governor”h]”jý)�”}”(hŒdevfreq_remove_governor”h]”hŒdevfreq_remove_governor”…”�”}”(hjÓ<h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÏ<ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj®<h²hh³jÀ<h´MEubjK)�”}”(hŒ#(struct devfreq_governor *governor)”h]”jQ)�”}”(hŒ!struct devfreq_governor *governor”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Œdevfreq_governor”h]”hŒdevfreq_governor”…”�”}”(hj =h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj =ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j=Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjÕ<sbŒc.devfreq_remove_governor”†”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Œgovernor”h]”hŒgovernor”…”�”}”(hjH=h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjë<ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjç<ubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj®<h²hh³jÀ<h´MEubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjª<h²hh³jÀ<h´MEubah}”(h]”j¥<ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jÀ<h´MEhj§<h²hubj))�”}”(hhh]”hï)�”}”(hŒ%Remove devfreq feature from a device.”h]”hŒ%Remove devfreq feature from a device.”…”�”}”(hjr=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MEhjo=h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj§<h²hh³jÀ<h´MEubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjŠ=jKjŠ=jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒZ**Parameters** ``struct devfreq_governor *governor`` the devfreq governor to be removed”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj”=h]”hŒ Parameters”…”�”}”(hj–=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj’=ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MIhjŽ=ubjž)�”}”(hhh]”j£)�”}”(hŒH``struct devfreq_governor *governor`` the devfreq governor to be removed”h]”(j©)�”}”(hŒ%``struct devfreq_governor *governor``”h]”j@)�”}”(hj³=h]”hŒ!struct devfreq_governor *governor”…”�”}”(hjµ=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj±=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MKhj­=ubjÃ)�”}”(hhh]”hï)�”}”(hŒ"the devfreq governor to be removed”h]”hŒ"the devfreq governor to be removed”…”�”}”(hjÌ=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MFhjÉ=ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj­=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÈ=h´MKhjª=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hjŽ=ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ$devfreq_recommended_opp (C function)”Œc.devfreq_recommended_opp”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ`struct dev_pm_opp * devfreq_recommended_opp (struct device *dev, unsigned long *freq, u32 flags)”h]”jÎ)�”}”(hŒ^struct dev_pm_opp *devfreq_recommended_opp(struct device *dev, unsigned long *freq, u32 flags)”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/devfreq:27: ./drivers/devfreq/devfreq.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Œ dev_pm_opp”h]”hŒ dev_pm_opp”…”�”}”(hj,>h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj)>ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j.>Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠŒdevfreq_recommended_opp”sbŒc.devfreq_recommended_opp”†”asbuh1hhj >h²hh³j>h´Mubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjM>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Œdevfreq_recommended_opp”h]”jý)�”}”(hjJ>h]”hŒdevfreq_recommended_opp”…”�”}”(hjl>h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjh>ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj >h²hh³j>h´MubjK)�”}”(hŒ4(struct device *dev, unsigned long *freq, u32 flags)”h]”(jQ)�”}”(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 ]”jah"]”h$]”h&]”uh1jühj¢>ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j§>Œmodname”NŒ classname”NjŽj‘)�”}”j”]”jH>Œc.devfreq_recommended_opp”†”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 ]”jah"]”h$]”h&]”uh1jühjƒ>ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj>ubjQ)�”}”(hŒunsigned long *freq”h]”(j)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj÷>h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjó>ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjó>ubj)�”}”(hŒlong”h]”hŒlong”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjó>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Œfreq”h]”hŒfreq”…”�”}”(hjubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj>ubjQ)�”}”(hŒ u32 flags”h]”(h)�”}”(hhh]”jý)�”}”(hŒu32”h]”hŒu32”…”�”}”(hjX?h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjU?ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jZ?Œmodname”NŒ classname”NjŽj‘)�”}”j”]”jH>Œc.devfreq_recommended_opp”†”asbuh1hhjQ?ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjv?h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjQ?ubjý)�”}”(hŒflags”h]”hŒflags”…”�”}”(hj„?h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjQ?ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj>ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj >h²hh³j>h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj>h²hh³j>h´Mubah}”(h]”j>ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j>h´Mhj>h²hubj))�”}”(hhh]”hï)�”}”(hŒNHelper function to get proper OPP for the freq value given to target callback.”h]”hŒNHelper function to get proper OPP for the freq value given to target callback.”…”�”}”(hj®?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj«?h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj>h²hh³j>h´Mubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjÆ?jKjÆ?jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX1**Parameters** ``struct device *dev`` The devfreq user device. (parent of devfreq) ``unsigned long *freq`` The frequency given to target function ``u32 flags`` Flags handed from devfreq framework. **Description** The callers are required to call dev_pm_opp_put() for the returned OPP after use.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjÐ?h]”hŒ Parameters”…”�”}”(hjÒ?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÎ?ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MhjÊ?ubjž)�”}”(hhh]”(j£)�”}”(hŒD``struct device *dev`` The devfreq user device. (parent of devfreq) ”h]”(j©)�”}”(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&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhjé?ubjÃ)�”}”(hhh]”hï)�”}”(hŒ,The devfreq user device. (parent of devfreq)”h]”hŒ,The devfreq user device. (parent of devfreq)”…”�”}”(hj@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j@h´Mhj@ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjé?ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j@h´Mhjæ?ubj£)�”}”(hŒ?``unsigned long *freq`` The frequency given to target function ”h]”(j©)�”}”(hŒ``unsigned long *freq``”h]”j@)�”}”(hj(@h]”hŒunsigned long *freq”…”�”}”(hj*@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj&@ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj"@ubjÃ)�”}”(hhh]”hï)�”}”(hŒ&The frequency given to target function”h]”hŒ&The frequency given to target function”…”�”}”(hjA@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j=@h´Mhj>@ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj"@ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j=@h´Mhjæ?ubj£)�”}”(hŒ3``u32 flags`` Flags handed from devfreq framework. ”h]”(j©)�”}”(hŒ ``u32 flags``”h]”j@)�”}”(hja@h]”hŒ u32 flags”…”�”}”(hjc@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj_@ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´Mhj[@ubjÃ)�”}”(hhh]”hï)�”}”(hŒ$Flags handed from devfreq framework.”h]”hŒ$Flags handed from devfreq framework.”…”�”}”(hjz@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jv@h´Mhjw@ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj[@ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jv@h´Mhjæ?ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjÊ?ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjœ@h]”hŒ Description”…”�”}”(hjž@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjš@ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MhjÊ?ubhï)�”}”(hŒQThe callers are required to call dev_pm_opp_put() for the returned OPP after use.”h]”hŒQThe callers are required to call dev_pm_opp_put() for the returned OPP after use.”…”�”}”(hj²@h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MhjÊ?ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ*devfreq_register_opp_notifier (C function)”Œc.devfreq_register_opp_notifier”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒOint devfreq_register_opp_notifier (struct device *dev, struct devfreq *devfreq)”h]”jÎ)�”}”(hŒNint devfreq_register_opp_notifier(struct device *dev, struct devfreq *devfreq)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjá@h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjÝ@h²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M7ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjð@h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjÝ@h²hh³jï@h´M7ubj÷)�”}”(hŒdevfreq_register_opp_notifier”h]”jý)�”}”(hŒdevfreq_register_opp_notifier”h]”hŒdevfreq_register_opp_notifier”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjþ@ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjÝ@h²hh³jï@h´M7ubjK)�”}”(hŒ-(struct device *dev, struct devfreq *devfreq)”h]”(jQ)�”}”(hŒstruct device *dev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjAh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjAubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj+Ah²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjAubh)�”}”(hhh]”jý)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjAŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjAsbŒc.devfreq_register_opp_notifier”†”asbuh1hhjAubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj\Ah²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjAubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjjAh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjAubjý)�”}”(hŒdev”h]”hŒdev”…”�”}”(hjwAh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjAubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjAubjQ)�”}”(hŒstruct devfreq *devfreq”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(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ŒAubh)�”}”(hhh]”jý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj®Ah²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj«Aubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j°AŒmodname”NŒ classname”NjŽj‘)�”}”j”]”jXAŒc.devfreq_register_opp_notifier”†”asbuh1hhjŒ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Œdevfreq”h]”hŒdevfreq”…”�”}”(hjçAh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjŒAubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjAubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjÝ@h²hh³jï@h´M7ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjÙ@h²hh³jï@h´M7ubah}”(h]”jÔ@ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jï@h´M7hjÖ@h²hubj))�”}”(hhh]”hï)�”}”(hŒWHelper function to get devfreq notified for any changes in the OPP availability changes”h]”hŒWHelper function to get devfreq notified for any changes in the OPP availability changes”…”�”}”(hjBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M7hjBh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjÖ@h²hh³jï@h´M7ubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj)BjKj)BjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒˆ**Parameters** ``struct device *dev`` The devfreq user device. (parent of devfreq) ``struct devfreq *devfreq`` The devfreq object.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj3Bh]”hŒ Parameters”…”�”}”(hj5Bh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj1Bubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M;hj-Bubjž)�”}”(hhh]”(j£)�”}”(hŒD``struct device *dev`` The devfreq user device. (parent of devfreq) ”h]”(j©)�”}”(hŒ``struct device *dev``”h]”j@)�”}”(hjRBh]”hŒstruct device *dev”…”�”}”(hjTBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjPBubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M:hjLBubjÃ)�”}”(hhh]”hï)�”}”(hŒ,The devfreq user device. (parent of devfreq)”h]”hŒ,The devfreq user device. (parent of devfreq)”…”�”}”(hjkBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jgBh´M:hjhBubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjLBubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jgBh´M:hjIBubj£)�”}”(hŒ/``struct devfreq *devfreq`` The devfreq object.”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj‹Bh]”hŒstruct devfreq *devfreq”…”�”}”(hj�Bh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj‰Bubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M<hj…BubjÃ)�”}”(hhh]”hï)�”}”(hŒThe devfreq object.”h]”hŒThe devfreq object.”…”�”}”(hj¤Bh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M;hj¡Bubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj…Bubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j Bh´M<hjIBubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj-Bubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ,devfreq_unregister_opp_notifier (C function)”Œ!c.devfreq_unregister_opp_notifier”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒQint devfreq_unregister_opp_notifier (struct device *dev, struct devfreq *devfreq)”h]”jÎ)�”}”(hŒPint devfreq_unregister_opp_notifier(struct device *dev, struct devfreq *devfreq)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjåBh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjáBh²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MDubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjôBh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjáBh²hh³jóBh´MDubj÷)�”}”(hŒdevfreq_unregister_opp_notifier”h]”jý)�”}”(hŒdevfreq_unregister_opp_notifier”h]”hŒdevfreq_unregister_opp_notifier”…”�”}”(hjCh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjCubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjáBh²hh³jóBh´MDubjK)�”}”(hŒ-(struct device *dev, struct devfreq *devfreq)”h]”(jQ)�”}”(hŒstruct device *dev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hj"Ch²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjCubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj/Ch²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjCubh)�”}”(hhh]”jý)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hj@Ch²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj=Cubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jBCŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjCsbŒ!c.devfreq_unregister_opp_notifier”†”asbuh1hhjCubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj`Ch²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjCubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjnCh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjCubjý)�”}”(hŒdev”h]”hŒdev”…”�”}”(hj{Ch²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjCubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjCubjQ)�”}”(hŒstruct devfreq *devfreq”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hj²Ch²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj¯Cubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j´CŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j\CŒ!c.devfreq_unregister_opp_notifier”†”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hjëCh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj�Cubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjCubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjáBh²hh³jóBh´MDubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjÝBh²hh³jóBh´MDubah}”(h]”jØBah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jóBh´MDhjÚBh²hubj))�”}”(hhh]”hï)�”}”(hŒiHelper function to stop getting devfreq notified for any changes in the OPP availability changes anymore.”h]”hŒiHelper function to stop getting devfreq notified for any changes in the OPP availability changes anymore.”…”�”}”(hjDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MDhjDh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjÚBh²hh³jóBh´MDubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj-DjKj-DjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒÿ**Parameters** ``struct device *dev`` The devfreq user device. (parent of devfreq) ``struct devfreq *devfreq`` The devfreq object. **Description** At exit() callback of devfreq_dev_profile, this must be included if devfreq_recommended_opp is used.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj7Dh]”hŒ Parameters”…”�”}”(hj9Dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj5Dubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MHhj1Dubjž)�”}”(hhh]”(j£)�”}”(hŒD``struct device *dev`` The devfreq user device. (parent of devfreq) ”h]”(j©)�”}”(hŒ``struct device *dev``”h]”j@)�”}”(hjVDh]”hŒstruct device *dev”…”�”}”(hjXDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjTDubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MGhjPDubjÃ)�”}”(hhh]”hï)�”}”(hŒ,The devfreq user device. (parent of devfreq)”h]”hŒ,The devfreq user device. (parent of devfreq)”…”�”}”(hjoDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jkDh´MGhjlDubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjPDubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jkDh´MGhjMDubj£)�”}”(hŒ0``struct devfreq *devfreq`` The devfreq object. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hj�Dh]”hŒstruct devfreq *devfreq”…”�”}”(hj‘Dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj�Dubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MHhj‰DubjÃ)�”}”(hhh]”hï)�”}”(hŒThe devfreq object.”h]”hŒThe devfreq object.”…”�”}”(hj¨Dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j¤Dh´MHhj¥Dubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj‰Dubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j¤Dh´MHhjMDubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj1Dubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjÊDh]”hŒ Description”…”�”}”(hjÌDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÈDubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MJhj1Dubhï)�”}”(hŒdAt exit() callback of devfreq_dev_profile, this must be included if devfreq_recommended_opp is used.”h]”hŒdAt exit() callback of devfreq_dev_profile, this must be included if devfreq_recommended_opp is used.”…”�”}”(hjàDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MIhj1Dubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ/devm_devfreq_register_opp_notifier (C function)”Œ$c.devm_devfreq_register_opp_notifier”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒTint devm_devfreq_register_opp_notifier (struct device *dev, struct devfreq *devfreq)”h]”jÎ)�”}”(hŒSint devm_devfreq_register_opp_notifier(struct device *dev, struct devfreq *devfreq)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj Eh²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MYubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj Eh²hh³jEh´MYubj÷)�”}”(hŒ"devm_devfreq_register_opp_notifier”h]”jý)�”}”(hŒ"devm_devfreq_register_opp_notifier”h]”hŒ"devm_devfreq_register_opp_notifier”…”�”}”(hj0Eh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj,Eubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj Eh²hh³jEh´MYubjK)�”}”(hŒ-(struct device *dev, struct devfreq *devfreq)”h]”(jQ)�”}”(hŒstruct device *dev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjLEh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjHEubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjYEh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjHEubh)�”}”(hhh]”jý)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjjEh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjgEubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jlEŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj2EsbŒ$c.devm_devfreq_register_opp_notifier”†”asbuh1hhjHEubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjŠEh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjHEubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj˜Eh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjHEubjý)�”}”(hŒdev”h]”hŒdev”…”�”}”(hj¥Eh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjHEubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjDEubjQ)�”}”(hŒstruct devfreq *devfreq”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Œdevfreq”h]”hŒdevfreq”…”�”}”(hjÜEh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÙEubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jÞEŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j†EŒ$c.devm_devfreq_register_opp_notifier”†”asbuh1hhjºEubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjúEh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjºEubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjFh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjºEubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hjFh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjºEubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjDEubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj Eh²hh³jEh´MYubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjEh²hh³jEh´MYubah}”(h]”jEah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jEh´MYhjEh²hubj))�”}”(hhh]”hï)�”}”(hŒ0Resource-managed devfreq_register_opp_notifier()”h]”hŒ0Resource-managed devfreq_register_opp_notifier()”…”�”}”(hj?Fh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MYhj``struct notifier_block *nb`` The notifier block to register. ”h]”(j©)�”}”(hŒ``struct notifier_block *nb``”h]”j@)�”}”(hjKh]”hŒstruct notifier_block *nb”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjKubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M†hj KubjÃ)�”}”(hhh]”hï)�”}”(hŒThe notifier block to register.”h]”hŒThe notifier block to register.”…”�”}”(hj+Kh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j'Kh´M†hj(Kubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj Kubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j'Kh´M†hjÐJubj£)�”}”(hŒ2``unsigned int list`` DEVFREQ_TRANSITION_NOTIFIER.”h]”(j©)�”}”(hŒ``unsigned int list``”h]”j@)�”}”(hjKKh]”hŒunsigned int list”…”�”}”(hjMKh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjIKubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MˆhjEKubjÃ)�”}”(hhh]”hï)�”}”(hŒDEVFREQ_TRANSITION_NOTIFIER.”h]”hŒDEVFREQ_TRANSITION_NOTIFIER.”…”�”}”(hjdKh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´M‡hjaKubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjEKubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j`Kh´MˆhjÐJubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj´Jubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ+devm_devfreq_register_notifier (C function)”Œ c.devm_devfreq_register_notifier”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ~int devm_devfreq_register_notifier (struct device *dev, struct devfreq *devfreq, struct notifier_block *nb, unsigned int list)”h]”jÎ)�”}”(hŒ}int devm_devfreq_register_notifier(struct device *dev, struct devfreq *devfreq, struct notifier_block *nb, unsigned int list)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj¥Kh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj¡Kh²hh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÉubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj´Kh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj¡Kh²hh³j³Kh´MÉubj÷)�”}”(hŒdevm_devfreq_register_notifier”h]”jý)�”}”(hŒdevm_devfreq_register_notifier”h]”hŒdevm_devfreq_register_notifier”…”�”}”(hjÆKh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÂKubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj¡Kh²hh³j³Kh´MÉubjK)�”}”(hŒ[(struct device *dev, struct devfreq *devfreq, struct notifier_block *nb, unsigned int list)”h]”(jQ)�”}”(hŒstruct device *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”…”�”}”(hjLh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjýKubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jLŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjÈKsbŒ c.devm_devfreq_register_notifier”†”asbuh1hhjÞKubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj Lh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjÞKubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj.Lh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÞKubjý)�”}”(hŒdev”h]”hŒdev”…”�”}”(hj;Lh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÞKubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjÚKubjQ)�”}”(hŒstruct devfreq *devfreq”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjTLh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjPLubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjaLh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjPLubh)�”}”(hhh]”jý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hjrLh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjoLubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jtLŒmodname”NŒ classname”NjŽj‘)�”}”j”]”jLŒ c.devm_devfreq_register_notifier”†”asbuh1hhjPLubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�Lh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjPLubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjžLh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjPLubjý)�”}”(hŒdevfreq”h]”hŒdevfreq”…”�”}”(hj«Lh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjPLubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjÚKubjQ)�”}”(hŒstruct notifier_block *nb”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjÄLh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjÀLubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÑLh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjÀLubh)�”}”(hhh]”jý)�”}”(hŒnotifier_block”h]”hŒnotifier_block”…”�”}”(hjâLh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjßLubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jäLŒmodname”NŒ classname”NjŽj‘)�”}”j”]”jLŒ c.devm_devfreq_register_notifier”†”asbuh1hhjÀLubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjÀLubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjÀLubjý)�”}”(hŒnb”h]”hŒnb”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÀLubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjÚKubjQ)�”}”(hŒunsigned int list”h]”(j)�”}”(hŒunsigned”h]”hŒunsigned”…”�”}”(hj4Mh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj0Mubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjBMh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj0Mubj)�”}”(hŒint”h]”hŒint”…”�”}”(hjPMh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj0Mubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj^Mh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj0Mubjý)�”}”(hŒlist”h]”hŒlist”…”�”}”(hjlMh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj0Mubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjÚKubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj¡Kh²hh³j³Kh´MÉubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj�Kh²hh³j³Kh´MÉubah}”(h]”j˜Kah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j³Kh´MÉhjšKh²hubj))�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1j(hjšKh²hh³j³Kh´MÉubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjŸMjKjŸMjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hXL**Parameters** ``struct device *dev`` The devfreq user device. (parent of devfreq) ``struct devfreq *devfreq`` The devfreq object. ``struct notifier_block *nb`` The notifier block to be unregistered. ``unsigned int list`` DEVFREQ_TRANSITION_NOTIFIER. **Description** - Resource-managed devfreq_register_notifier()”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj©Mh]”hŒ Parameters”…”�”}”(hj«Mh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj§Mubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÍhj£Mubjž)�”}”(hhh]”(j£)�”}”(hŒD``struct device *dev`` The devfreq user device. (parent of devfreq) ”h]”(j©)�”}”(hŒ``struct device *dev``”h]”j@)�”}”(hjÈMh]”hŒstruct device *dev”…”�”}”(hjÊMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjÆMubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MËhjÂMubjÃ)�”}”(hhh]”hï)�”}”(hŒ,The devfreq user device. (parent of devfreq)”h]”hŒ,The devfreq user device. (parent of devfreq)”…”�”}”(hjáMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jÝMh´MËhjÞMubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjÂMubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÝMh´MËhj¿Mubj£)�”}”(hŒ0``struct devfreq *devfreq`` The devfreq object. ”h]”(j©)�”}”(hŒ``struct devfreq *devfreq``”h]”j@)�”}”(hjNh]”hŒstruct devfreq *devfreq”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjÿMubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œ\/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:27: ./drivers/devfreq/devfreq.c”h´MÌhjûMubjÃ)�”}”(hhh]”hï)�”}”(hŒThe devfreq object.”h]”hŒThe devfreq object.”…”�”}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jNh´MÌhjNubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjûMubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jNh´MÌhj¿Mubj£)�”}”(hŒE``struct notifier_block *nb`` The notifier block to be unregistered. ”h]”(j©)�”}”(hŒ``struct notifier_block *nb``”h]”j@)�”}”(hj:Nh]”hŒstruct notifier_block *nb”…”�”}”(hjint devfreq_event_enable_edev (struct devfreq_event_dev *edev)”h]”jÎ)�”}”(hŒ=int devfreq_event_enable_edev(struct devfreq_event_dev *edev)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj�Rh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj}Rh²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K#ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj�Rh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj}Rh²hh³j�Rh´K#ubj÷)�”}”(hŒdevfreq_event_enable_edev”h]”jý)�”}”(hŒdevfreq_event_enable_edev”h]”hŒdevfreq_event_enable_edev”…”�”}”(hj¢Rh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjžRubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj}Rh²hh³j�Rh´K#ubjK)�”}”(hŒ (struct devfreq_event_dev *edev)”h]”jQ)�”}”(hŒstruct devfreq_event_dev *edev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hj¾Rh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjºRubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjËRh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjºRubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hjÜRh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÙRubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jÞRŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj¤RsbŒc.devfreq_event_enable_edev”†”asbuh1hhjºRubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjüRh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjºRubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj Sh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjºRubjý)�”}”(hŒedev”h]”hŒedev”…”�”}”(hjSh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjºRubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj¶Rubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj}Rh²hh³j�Rh´K#ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjyRh²hh³j�Rh´K#ubah}”(h]”jtRah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j�Rh´K#hjvRh²hubj))�”}”(hhh]”hï)�”}”(hŒPEnable the devfreq-event dev and increase the enable_count of devfreq-event dev.”h]”hŒPEnable the devfreq-event dev and increase the enable_count of devfreq-event dev.”…”�”}”(hjASh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K#hj>Sh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjvRh²hh³j�Rh´K#ubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjYSjKjYSjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX**Parameters** ``struct devfreq_event_dev *edev`` the devfreq-event device **Description** Note that this function increase the enable_count and enable the devfreq-event device. The devfreq-event device should be enabled before using it by devfreq device.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjcSh]”hŒ Parameters”…”�”}”(hjeSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjaSubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K'hj]Subjž)�”}”(hhh]”j£)�”}”(hŒ<``struct devfreq_event_dev *edev`` the devfreq-event device ”h]”(j©)�”}”(hŒ"``struct devfreq_event_dev *edev``”h]”j@)�”}”(hj‚Sh]”hŒstruct devfreq_event_dev *edev”…”�”}”(hj„Sh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj€Subah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K%hj|SubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq-event device”h]”hŒthe devfreq-event device”…”�”}”(hj›Sh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j—Sh´K%hj˜Subah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj|Subeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j—Sh´K%hjySubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hj]Subhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hj½Sh]”hŒ Description”…”�”}”(hj¿Sh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj»Subah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K'hj]Subhï)�”}”(hŒ¤Note that this function increase the enable_count and enable the devfreq-event device. The devfreq-event device should be enabled before using it by devfreq device.”h]”hŒ¤Note that this function increase the enable_count and enable the devfreq-event device. The devfreq-event device should be enabled before using it by devfreq device.”…”�”}”(hjÓSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K&hj]Subeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ'devfreq_event_disable_edev (C function)”Œc.devfreq_event_disable_edev”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ?int devfreq_event_disable_edev (struct devfreq_event_dev *edev)”h]”jÎ)�”}”(hŒ>int devfreq_event_disable_edev(struct devfreq_event_dev *edev)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjþSh²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KBubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjþSh²hh³jTh´KBubj÷)�”}”(hŒdevfreq_event_disable_edev”h]”jý)�”}”(hŒdevfreq_event_disable_edev”h]”hŒdevfreq_event_disable_edev”…”�”}”(hj#Th²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjTubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjþSh²hh³jTh´KBubjK)�”}”(hŒ (struct devfreq_event_dev *edev)”h]”jQ)�”}”(hŒstruct devfreq_event_dev *edev”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Œdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hj]Th²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjZTubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j_TŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj%TsbŒc.devfreq_event_disable_edev”†”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Œedev”h]”hŒedev”…”�”}”(hj˜Th²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj;Tubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj7Tubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjþSh²hh³jTh´KBubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjúSh²hh³jTh´KBubah}”(h]”jõSah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jTh´KBhj÷Sh²hubj))�”}”(hhh]”hï)�”}”(hŒUDisable the devfreq-event dev and decrease the enable_count of the devfreq-event dev.”h]”hŒUDisable the devfreq-event dev and decrease the enable_count of the devfreq-event dev.”…”�”}”(hjÂTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KBhj¿Th²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj÷Sh²hh³jTh´KBubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjÚTjKjÚTjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX3**Parameters** ``struct devfreq_event_dev *edev`` the devfreq-event device **Description** Note that this function decrease the enable_count and disable the devfreq-event device. After the devfreq-event device is disabled, devfreq device can't use the devfreq-event device for get/set/reset operations.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjäTh]”hŒ Parameters”…”�”}”(hjæTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjâTubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KFhjÞTubjž)�”}”(hhh]”j£)�”}”(hŒ<``struct devfreq_event_dev *edev`` the devfreq-event device ”h]”(j©)�”}”(hŒ"``struct devfreq_event_dev *edev``”h]”j@)�”}”(hjUh]”hŒstruct devfreq_event_dev *edev”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjUubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KDhjýTubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq-event device”h]”hŒthe devfreq-event device”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jUh´KDhjUubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjýTubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jUh´KDhjúTubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hjÞTubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hj>Uh]”hŒ Description”…”�”}”(hj@Uh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjbool devfreq_event_is_enabled (struct devfreq_event_dev *edev)”h]”jÎ)�”}”(hŒ=bool devfreq_event_is_enabled(struct devfreq_event_dev *edev)”h]”(j)�”}”(hŒbool”h]”hŒbool”…”�”}”(hjƒUh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjUh²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Khubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj’Uh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjUh²hh³j‘Uh´Khubj÷)�”}”(hŒdevfreq_event_is_enabled”h]”jý)�”}”(hŒdevfreq_event_is_enabled”h]”hŒdevfreq_event_is_enabled”…”�”}”(hj¤Uh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj Uubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjUh²hh³j‘Uh´KhubjK)�”}”(hŒ (struct devfreq_event_dev *edev)”h]”jQ)�”}”(hŒstruct devfreq_event_dev *edev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjÀUh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj¼Uubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÍUh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj¼Uubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hjÞUh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÛUubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jàUŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj¦UsbŒc.devfreq_event_is_enabled”†”asbuh1hhj¼Uubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjþUh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj¼Uubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj Vh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¼Uubjý)�”}”(hŒedev”h]”hŒedev”…”�”}”(hjVh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj¼Uubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj¸Uubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjUh²hh³j‘Uh´Khubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj{Uh²hh³j‘Uh´Khubah}”(h]”jvUah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j‘Uh´KhhjxUh²hubj))�”}”(hhh]”hï)�”}”(hŒ2Check whether devfreq-event dev is enabled or not.”h]”hŒ2Check whether devfreq-event dev is enabled or not.”…”�”}”(hjCVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Khhj@Vh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjxUh²hh³j‘Uh´Khubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj[VjKj[VjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX**Parameters** ``struct devfreq_event_dev *edev`` the devfreq-event device **Description** Note that this function check whether devfreq-event dev is enabled or not. If return true, the devfreq-event dev is enabeld. If return false, the devfreq-event dev is disabled.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjeVh]”hŒ Parameters”…”�”}”(hjgVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjcVubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Klhj_Vubjž)�”}”(hhh]”j£)�”}”(hŒ<``struct devfreq_event_dev *edev`` the devfreq-event device ”h]”(j©)�”}”(hŒ"``struct devfreq_event_dev *edev``”h]”j@)�”}”(hj„Vh]”hŒstruct devfreq_event_dev *edev”…”�”}”(hj†Vh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj‚Vubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Kjhj~VubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq-event device”h]”hŒthe devfreq-event device”…”�”}”(hj�Vh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j™Vh´KjhjšVubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj~Vubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j™Vh´Kjhj{Vubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hj_Vubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hj¿Vh]”hŒ Description”…”�”}”(hjÁVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj½Vubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Klhj_Vubhï)�”}”(hŒ°Note that this function check whether devfreq-event dev is enabled or not. If return true, the devfreq-event dev is enabeld. If return false, the devfreq-event dev is disabled.”h]”hŒ°Note that this function check whether devfreq-event dev is enabled or not. If return true, the devfreq-event dev is enabeld. If return false, the devfreq-event dev is disabled.”…”�”}”(hjÕVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Kkhj_Vubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ$devfreq_event_set_event (C function)”Œc.devfreq_event_set_event”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒXubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K†hjàWubhï)�”}”(hŒˆNote that this function set the event to the devfreq-event device to start for getting the event data which could be various event type.”h]”hŒˆNote that this function set the event to the devfreq-event device to start for getting the event data which could be various event type.”…”�”}”(hjVXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K…hjàWubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ$devfreq_event_get_event (C function)”Œc.devfreq_event_get_event”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ^int devfreq_event_get_event (struct devfreq_event_dev *edev, struct devfreq_event_data *edata)”h]”jÎ)�”}”(hŒ]int devfreq_event_get_event(struct devfreq_event_dev *edev, struct devfreq_event_data *edata)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj…Xh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj�Xh²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KŸubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj”Xh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj�Xh²hh³j“Xh´KŸubj÷)�”}”(hŒdevfreq_event_get_event”h]”jý)�”}”(hŒdevfreq_event_get_event”h]”hŒdevfreq_event_get_event”…”�”}”(hj¦Xh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj¢Xubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj�Xh²hh³j“Xh´KŸubjK)�”}”(hŒB(struct devfreq_event_dev *edev, struct devfreq_event_data *edata)”h]”(jQ)�”}”(hŒstruct devfreq_event_dev *edev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjÂXh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj¾Xubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjÏXh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj¾Xubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hjàXh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÝXubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jâXŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj¨XsbŒc.devfreq_event_get_event”†”asbuh1hhj¾Xubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj¾Xubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj¾Xubjý)�”}”(hŒedev”h]”hŒedev”…”�”}”(hjYh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj¾Xubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjºXubjQ)�”}”(hŒ struct devfreq_event_data *edata”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hj4Yh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj0Yubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjAYh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj0Yubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_data”h]”hŒdevfreq_event_data”…”�”}”(hjRYh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjOYubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jTYŒmodname”NŒ classname”NjŽj‘)�”}”j”]”jüXŒc.devfreq_event_get_event”†”asbuh1hhj0Yubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjpYh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj0Yubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj~Yh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj0Yubjý)�”}”(hŒedata”h]”hŒedata”…”�”}”(hj‹Yh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj0Yubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjºXubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj�Xh²hh³j“Xh´KŸubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj}Xh²hh³j“Xh´KŸubah}”(h]”jxXah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j“Xh´KŸhjzXh²hubj))�”}”(hhh]”hï)�”}”(hŒ.Get {load|total}_count from devfreq-event dev.”h]”hŒ.Get {load|total}_count from devfreq-event dev.”…”�”}”(hjµYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KŸhj²Yh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjzXh²hh³j“Xh´KŸubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjÍYjKjÍYjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hXC**Parameters** ``struct devfreq_event_dev *edev`` the devfreq-event device ``struct devfreq_event_data *edata`` the calculated data of devfreq-event device **Description** Note that this function get the calculated event data from devfreq-event dev after stoping the progress of whole sequence of devfreq-event dev.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj×Yh]”hŒ Parameters”…”�”}”(hjÙYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÕYubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K£hjÑYubjž)�”}”(hhh]”(j£)�”}”(hŒ<``struct devfreq_event_dev *edev`` the devfreq-event device ”h]”(j©)�”}”(hŒ"``struct devfreq_event_dev *edev``”h]”j@)�”}”(hjöYh]”hŒstruct devfreq_event_dev *edev”…”�”}”(hjøYh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjôYubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K hjðYubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq-event device”h]”hŒthe devfreq-event device”…”�”}”(hjZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j Zh´K hj Zubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjðYubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j Zh´K hjíYubj£)�”}”(hŒQ``struct devfreq_event_data *edata`` the calculated data of devfreq-event device ”h]”(j©)�”}”(hŒ$``struct devfreq_event_data *edata``”h]”j@)�”}”(hj/Zh]”hŒ struct devfreq_event_data *edata”…”�”}”(hj1Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj-Zubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K¡hj)ZubjÃ)�”}”(hhh]”hï)�”}”(hŒ+the calculated data of devfreq-event device”h]”hŒ+the calculated data of devfreq-event device”…”�”}”(hjHZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jDZh´K¡hjEZubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj)Zubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jDZh´K¡hjíYubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjÑYubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjjZh]”hŒ Description”…”�”}”(hjlZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjhZubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K£hjÑYubhï)�”}”(hŒ�Note that this function get the calculated event data from devfreq-event dev after stoping the progress of whole sequence of devfreq-event dev.”h]”hŒ�Note that this function get the calculated event data from devfreq-event dev after stoping the progress of whole sequence of devfreq-event dev.”…”�”}”(hj€Zh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´K¢hjÑYubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ&devfreq_event_reset_event (C function)”Œc.devfreq_event_reset_event”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ>int devfreq_event_reset_event (struct devfreq_event_dev *edev)”h]”jÎ)�”}”(hŒ=int devfreq_event_reset_event(struct devfreq_event_dev *edev)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hj¯Zh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj«Zh²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÁubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj¾Zh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj«Zh²hh³j½Zh´KÁubj÷)�”}”(hŒdevfreq_event_reset_event”h]”jý)�”}”(hŒdevfreq_event_reset_event”h]”hŒdevfreq_event_reset_event”…”�”}”(hjÐZh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÌZubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj«Zh²hh³j½Zh´KÁubjK)�”}”(hŒ (struct devfreq_event_dev *edev)”h]”jQ)�”}”(hŒstruct devfreq_event_dev *edev”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjìZh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjèZubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjùZh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjèZubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hj [h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj[ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j [Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠjÒZsbŒc.devfreq_event_reset_event”†”asbuh1hhjèZubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj*[h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjèZubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj8[h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjèZubjý)�”}”(hŒedev”h]”hŒedev”…”�”}”(hjE[h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjèZubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjäZubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj«Zh²hh³j½Zh´KÁubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj§Zh²hh³j½Zh´KÁubah}”(h]”j¢Zah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j½Zh´KÁhj¤Zh²hubj))�”}”(hhh]”hï)�”}”(hŒ)Reset all opeations of devfreq-event dev.”h]”hŒ)Reset all opeations of devfreq-event dev.”…”�”}”(hjo[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÁhjl[h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj¤Zh²hh³j½Zh´KÁubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj‡[jKj‡[jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒö**Parameters** ``struct devfreq_event_dev *edev`` the devfreq-event device **Description** Note that this function stop all operations of devfreq-event dev and reset the current event data to make the devfreq-event device into initial state.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj‘[h]”hŒ Parameters”…”�”}”(hj“[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj�[ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÅhj‹[ubjž)�”}”(hhh]”j£)�”}”(hŒ<``struct devfreq_event_dev *edev`` the devfreq-event device ”h]”(j©)�”}”(hŒ"``struct devfreq_event_dev *edev``”h]”j@)�”}”(hj°[h]”hŒstruct devfreq_event_dev *edev”…”�”}”(hj²[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj®[ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÂhjª[ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq-event device”h]”hŒthe devfreq-event device”…”�”}”(hjÉ[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jÅ[h´KÂhjÆ[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjª[ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÅ[h´KÂhj§[ubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hj‹[ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjë[h]”hŒ Description”…”�”}”(hjí[h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjé[ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÄhj‹[ubhï)�”}”(hŒ–Note that this function stop all operations of devfreq-event dev and reset the current event data to make the devfreq-event device into initial state.”h]”hŒ–Note that this function stop all operations of devfreq-event dev and reset the current event data to make the devfreq-event device into initial state.”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÃhj‹[ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ.devfreq_event_get_edev_by_phandle (C function)”Œ#c.devfreq_event_get_edev_by_phandle”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒvstruct devfreq_event_dev * devfreq_event_get_edev_by_phandle (struct device *dev, const char *phandle_name, int index)”h]”jÎ)�”}”(hŒtstruct devfreq_event_dev *devfreq_event_get_edev_by_phandle(struct device *dev, const char *phandle_name, int index)”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hj0\h²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhj,\h²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÛubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj>\h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj,\h²hh³j=\h´KÛubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hjO\h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjL\ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jQ\Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠŒ!devfreq_event_get_edev_by_phandle”sbŒ#c.devfreq_event_get_edev_by_phandle”†”asbuh1hhj,\h²hh³j=\h´KÛubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjp\h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj,\h²hh³j=\h´KÛubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj~\h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj,\h²hh³j=\h´KÛubj÷)�”}”(hŒ!devfreq_event_get_edev_by_phandle”h]”jý)�”}”(hjm\h]”hŒ!devfreq_event_get_edev_by_phandle”…”�”}”(hj�\h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj‹\ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhj,\h²hh³j=\h´KÛubjK)�”}”(hŒ9(struct device *dev, const char *phandle_name, int index)”h]”(jQ)�”}”(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 ]”jah"]”h$]”h&]”uh1jühjÅ\ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jÊ\Œmodname”NŒ classname”NjŽj‘)�”}”j”]”jk\Œ#c.devfreq_event_get_edev_by_phandle”†”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 ]”jah"]”h$]”h&]”uh1jühj¦\ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj¢\ubjQ)�”}”(hŒconst char *phandle_name”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)�”}”(hŒchar”h]”hŒchar”…”�”}”(hj5]h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj]ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjC]h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj]ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjQ]h²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhj]ubjý)�”}”(hŒ phandle_name”h]”hŒ phandle_name”…”�”}”(hj^]h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj]ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj¢\ubjQ)�”}”(hŒ int index”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjw]h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjs]ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj…]h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjs]ubjý)�”}”(hŒindex”h]”hŒindex”…”�”}”(hj“]h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjs]ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj¢\ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhj,\h²hh³j=\h´KÛubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhj(\h²hh³j=\h´KÛubah}”(h]”j#\ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j=\h´KÛhj%\h²hubj))�”}”(hhh]”hï)�”}”(hŒ*Get the devfreq-event dev from devicetree.”h]”hŒ*Get the devfreq-event dev from devicetree.”…”�”}”(hj½]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÛhjº]h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj%\h²hh³j=\h´KÛubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjÕ]jKjÕ]jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX$**Parameters** ``struct device *dev`` the pointer to the given device ``const char *phandle_name`` name of property holding a phandle value ``int index`` the index into list of devfreq-event device **Description** Note that this function return the pointer of devfreq-event device.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjß]h]”hŒ Parameters”…”�”}”(hjá]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÝ]ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KßhjÙ]ubjž)�”}”(hhh]”(j£)�”}”(hŒ7``struct device *dev`` the pointer to the given device ”h]”(j©)�”}”(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&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÝhjø]ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe pointer to the given device”h]”hŒthe pointer to the given device”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j^h´KÝhj^ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjø]ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j^h´KÝhjõ]ubj£)�”}”(hŒF``const char *phandle_name`` name of property holding a phandle value ”h]”(j©)�”}”(hŒ``const char *phandle_name``”h]”j@)�”}”(hj7^h]”hŒconst char *phandle_name”…”�”}”(hj9^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj5^ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KÞhj1^ubjÃ)�”}”(hhh]”hï)�”}”(hŒ(name of property holding a phandle value”h]”hŒ(name of property holding a phandle value”…”�”}”(hjP^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jL^h´KÞhjM^ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj1^ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jL^h´KÞhjõ]ubj£)�”}”(hŒ:``int index`` the index into list of devfreq-event device ”h]”(j©)�”}”(hŒ ``int index``”h]”j@)�”}”(hjp^h]”hŒ int index”…”�”}”(hjr^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjn^ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Kßhjj^ubjÃ)�”}”(hhh]”hï)�”}”(hŒ+the index into list of devfreq-event device”h]”hŒ+the index into list of devfreq-event device”…”�”}”(hj‰^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³j…^h´Kßhj†^ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjj^ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³j…^h´Kßhjõ]ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjÙ]ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hj«^h]”hŒ Description”…”�”}”(hj­^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj©^ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KáhjÙ]ubhï)�”}”(hŒCNote that this function return the pointer of devfreq-event device.”h]”hŒCNote that this function return the pointer of devfreq-event device.”…”�”}”(hjÁ^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´KàhjÙ]ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ)devfreq_event_get_edev_count (C function)”Œc.devfreq_event_get_edev_count”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒOint devfreq_event_get_edev_count (struct device *dev, const char *phandle_name)”h]”jÎ)�”}”(hŒNint devfreq_event_get_edev_count(struct device *dev, const char *phandle_name)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjð^h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjì^h²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.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Œdevfreq_event_get_edev_count”h]”jý)�”}”(hŒdevfreq_event_get_edev_count”h]”hŒdevfreq_event_get_edev_count”…”�”}”(hj_h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj _ubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjì^h²hh³jþ^h´MubjK)�”}”(hŒ.(struct device *dev, const char *phandle_name)”h]”(jQ)�”}”(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”…”�”}”(hjK_h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjH_ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jM_Œmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj_sbŒc.devfreq_event_get_edev_count”†”asbuh1hhj)_ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjk_h²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj)_ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjy_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 ]”jah"]”h$]”h&]”uh1jühj)_ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj%_ubjQ)�”}”(hŒconst char *phandle_name”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)�”}”(hŒchar”h]”hŒchar”…”�”}”(hjº_h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhj›_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Œ phandle_name”h]”hŒ phandle_name”…”�”}”(hjã_h²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj›_ubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj%_ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjì^h²hh³jþ^h´Mubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjè^h²hh³jþ^h´Mubah}”(h]”jã^ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jþ^h´Mhjå^h²hubj))�”}”(hhh]”hï)�”}”(hŒ"Get the count of devfreq-event dev”h]”hŒ"Get the count of devfreq-event dev”…”�”}”(hj `h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Mhj `h²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjå^h²hh³jþ^h´Mubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJj%`jKj%`jL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒæ**Parameters** ``struct device *dev`` the pointer to the given device ``const char *phandle_name`` name of property holding a phandle value **Description** Note that this function return the count of devfreq-event devices.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj/`h]”hŒ Parameters”…”�”}”(hj1`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj-`ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M hj)`ubjž)�”}”(hhh]”(j£)�”}”(hŒ7``struct device *dev`` the pointer to the given device ”h]”(j©)�”}”(hŒ``struct device *dev``”h]”j@)�”}”(hjN`h]”hŒstruct device *dev”…”�”}”(hjP`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjL`ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´MhjH`ubjÃ)�”}”(hhh]”hï)�”}”(hŒthe pointer to the given device”h]”hŒthe pointer to the given device”…”�”}”(hjg`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jc`h´Mhjd`ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjH`ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jc`h´MhjE`ubj£)�”}”(hŒF``const char *phandle_name`` name of property holding a phandle value ”h]”(j©)�”}”(hŒ``const char *phandle_name``”h]”j@)�”}”(hj‡`h]”hŒconst char *phandle_name”…”�”}”(hj‰`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj…`ubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´Mhj�`ubjÃ)�”}”(hhh]”hï)�”}”(hŒ(name of property holding a phandle value”h]”hŒ(name of property holding a phandle value”…”�”}”(hj `h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jœ`h´Mhj�`ubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj�`ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jœ`h´MhjE`ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hj)`ubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hjÂ`h]”hŒ Description”…”�”}”(hjÄ`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjÀ`ubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M hj)`ubhï)�”}”(hŒBNote that this function return the count of devfreq-event devices.”h]”hŒBNote that this function return the count of devfreq-event devices.”…”�”}”(hjØ`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M hj)`ubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ#devfreq_event_add_edev (C function)”Œc.devfreq_event_add_edev”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒgstruct devfreq_event_dev * devfreq_event_add_edev (struct device *dev, struct devfreq_event_desc *desc)”h]”jÎ)�”}”(hŒestruct devfreq_event_dev *devfreq_event_add_edev(struct device *dev, struct devfreq_event_desc *desc)”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjah²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M*ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjah²hh³jah´M*ubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hj&ah²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj#aubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j(aŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠŒdevfreq_event_add_edev”sbŒc.devfreq_event_add_edev”†”asbuh1hhjah²hh³jah´M*ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjGah²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjah²hh³jah´M*ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hjUah²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjah²hh³jah´M*ubj÷)�”}”(hŒdevfreq_event_add_edev”h]”jý)�”}”(hjDah]”hŒdevfreq_event_add_edev”…”�”}”(hjfah²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjbaubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjah²hh³jah´M*ubjK)�”}”(hŒ5(struct device *dev, struct devfreq_event_desc *desc)”h]”(jQ)�”}”(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Œ ”…”�”}”(hjŽah²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhj}aubh)�”}”(hhh]”jý)�”}”(hŒdevice”h]”hŒdevice”…”�”}”(hjŸah²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjœaubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”j¡aŒmodname”NŒ classname”NjŽj‘)�”}”j”]”jBaŒc.devfreq_event_add_edev”†”asbuh1hhj}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Œdev”h]”hŒdev”…”�”}”(hjØah²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj}aubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjyaubjQ)�”}”(hŒstruct devfreq_event_desc *desc”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(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íaubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_desc”h]”hŒdevfreq_event_desc”…”�”}”(hjbh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj bubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jbŒmodname”NŒ classname”NjŽj‘)�”}”j”]”jBaŒc.devfreq_event_add_edev”†”asbuh1hhjíaubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj-bh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjíaubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj;bh²hh³Nh´Nubah}”(h]”h ]”j·ah"]”h$]”h&]”uh1jªhjíaubjý)�”}”(hŒdesc”h]”hŒdesc”…”�”}”(hjHbh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjíaubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhjyaubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjah²hh³jah´M*ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjÿ`h²hh³jah´M*ubah}”(h]”jú`ah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³jah´M*hjü`h²hubj))�”}”(hhh]”hï)�”}”(hŒAdd new devfreq-event device.”h]”hŒAdd new devfreq-event device.”…”�”}”(hjrbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M*hjobh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjü`h²hh³jah´M*ubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjŠbjKjŠbjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hX**Parameters** ``struct device *dev`` the device owning the devfreq-event device being created ``struct devfreq_event_desc *desc`` the devfreq-event device's descriptor which include essential data for devfreq-event device. **Description** Note that this function add new devfreq-event device to devfreq-event class list and register the device of the devfreq-event device.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hj”bh]”hŒ Parameters”…”�”}”(hj–bh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj’bubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M.hjŽbubjž)�”}”(hhh]”(j£)�”}”(hŒP``struct device *dev`` the device owning the devfreq-event device being created ”h]”(j©)�”}”(hŒ``struct device *dev``”h]”j@)�”}”(hj³bh]”hŒstruct device *dev”…”�”}”(hjµbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hj±bubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M+hj­bubjÃ)�”}”(hhh]”hï)�”}”(hŒ8the device owning the devfreq-event device being created”h]”hŒ8the device owning the devfreq-event device being created”…”�”}”(hjÌbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jÈbh´M+hjÉbubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhj­bubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jÈbh´M+hjªbubj£)�”}”(hŒ�``struct devfreq_event_desc *desc`` the devfreq-event device's descriptor which include essential data for devfreq-event device. ”h]”(j©)�”}”(hŒ#``struct devfreq_event_desc *desc``”h]”j@)�”}”(hjìbh]”hŒstruct devfreq_event_desc *desc”…”�”}”(hjîbh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjêbubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M-hjæbubjÃ)�”}”(hhh]”hï)�”}”(hŒ\the devfreq-event device's descriptor which include essential data for devfreq-event device.”h]”hŒ^the devfreq-event device’s descriptor which include essential data for devfreq-event device.”…”�”}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M,hjcubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjæbubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jch´M-hjªbubeh}”(h]”h ]”h"]”h$]”h&]”uh1j�hjŽbubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hj(ch]”hŒ Description”…”�”}”(hj*ch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj&cubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M/hjŽbubhï)�”}”(hŒ…Note that this function add new devfreq-event device to devfreq-event class list and register the device of the devfreq-event device.”h]”hŒ…Note that this function add new devfreq-event device to devfreq-event class list and register the device of the devfreq-event device.”…”�”}”(hj>ch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M.hjŽbubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ&devfreq_event_remove_edev (C function)”Œc.devfreq_event_remove_edev”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒ>int devfreq_event_remove_edev (struct devfreq_event_dev *edev)”h]”jÎ)�”}”(hŒ=int devfreq_event_remove_edev(struct devfreq_event_dev *edev)”h]”(j)�”}”(hŒint”h]”hŒint”…”�”}”(hjmch²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jhjich²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M`ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj|ch²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjich²hh³j{ch´M`ubj÷)�”}”(hŒdevfreq_event_remove_edev”h]”jý)�”}”(hŒdevfreq_event_remove_edev”h]”hŒdevfreq_event_remove_edev”…”�”}”(hjŽch²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjŠcubah}”(h]”h ]”(jjeh"]”h$]”h&]”hÅhÆuh1jöhjich²hh³j{ch´M`ubjK)�”}”(hŒ (struct devfreq_event_dev *edev)”h]”jQ)�”}”(hŒstruct devfreq_event_dev *edev”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Œdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hjÈch²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühjÅcubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jÊcŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠj�csbŒc.devfreq_event_remove_edev”†”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Œedev”h]”hŒedev”…”�”}”(hjdh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj¦cubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jPhj¢cubah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1jJhjich²hh³j{ch´M`ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆjˆuh1jÍjjhjech²hh³j{ch´M`ubah}”(h]”j`cah ]”(j j!eh"]”h$]”h&]”j%ˆj&)j'huh1jÇh³j{ch´M`hjbch²hubj))�”}”(hhh]”hï)�”}”(hŒ+Remove the devfreq-event device registered.”h]”hŒ+Remove the devfreq-event device registered.”…”�”}”(hj-dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´M`hj*dh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjbch²hh³j{ch´M`ubeh}”(h]”h ]”(jLŒfunction”eh"]”h$]”h&]”jIjLjJjEdjKjEdjL‰jM‰jN‰uh1jÂh²hhj"h³Nh´NubjP)�”}”(hŒ¤**Parameters** ``struct devfreq_event_dev *edev`` the devfreq-event device **Description** Note that this function removes the registered devfreq-event device.”h]”(hï)�”}”(hŒ**Parameters**”h]”jZ)�”}”(hjOdh]”hŒ Parameters”…”�”}”(hjQdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhjMdubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´MdhjIdubjž)�”}”(hhh]”j£)�”}”(hŒ<``struct devfreq_event_dev *edev`` the devfreq-event device ”h]”(j©)�”}”(hŒ"``struct devfreq_event_dev *edev``”h]”j@)�”}”(hjndh]”hŒstruct devfreq_event_dev *edev”…”�”}”(hjpdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j?hjldubah}”(h]”h ]”h"]”h$]”h&]”uh1j¨h³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´MahjhdubjÃ)�”}”(hhh]”hï)�”}”(hŒthe devfreq-event device”h]”hŒthe devfreq-event device”…”�”}”(hj‡dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³jƒdh´Mahj„dubah}”(h]”h ]”h"]”h$]”h&]”uh1jÂhjhdubeh}”(h]”h ]”h"]”h$]”h&]”uh1j¢h³jƒdh´Mahjedubah}”(h]”h ]”h"]”h$]”h&]”uh1j�hjIdubhï)�”}”(hŒ**Description**”h]”jZ)�”}”(hj©dh]”hŒ Description”…”�”}”(hj«dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jYhj§dubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´MchjIdubhï)�”}”(hŒDNote that this function removes the registered devfreq-event device.”h]”hŒDNote that this function removes the registered devfreq-event device.”…”�”}”(hj¿dh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hîh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.c”h´MbhjIdubeh}”(h]”h ]”Œ kernelindent”ah"]”h$]”h&]”uh1jOhj"h²hh³Nh´Nubj±)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(j½Œ(devm_devfreq_event_add_edev (C function)”Œc.devm_devfreq_event_add_edev”hNt”auh1j°hj"h²hh³Nh´NubjÃ)�”}”(hhh]”(jÈ)�”}”(hŒlstruct devfreq_event_dev * devm_devfreq_event_add_edev (struct device *dev, struct devfreq_event_desc *desc)”h]”jÎ)�”}”(hŒjstruct devfreq_event_dev *devm_devfreq_event_add_edev(struct device *dev, struct devfreq_event_desc *desc)”h]”(jÔ)�”}”(hj×h]”hŒstruct”…”�”}”(hjîdh²hh³Nh´Nubah}”(h]”h ]”jàah"]”h$]”h&]”uh1jÓhjêdh²hh³Œb/var/lib/git/docbuild/linux/Documentation/driver-api/devfreq:29: ./drivers/devfreq/devfreq-event.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†ubh)�”}”(hhh]”jý)�”}”(hŒdevfreq_event_dev”h]”hŒdevfreq_event_dev”…”�”}”(hj eh²hh³Nh´Nubah}”(h]”h ]”jah"]”h$]”h&]”uh1jühj eubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”jLŒreftype”jŠŒ reftarget”jeŒmodname”NŒ classname”NjŽj‘)�”}”j”]”j—)�”}”jŠŒdevm_devfreq_event_add_edev”sbŒc.devm_devfreq_event_add_edev”†”asbuh1hhjêdh²hh³jûdh´M†ubjæ)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj.eh²hh³Nh´Nubah}”(h]”h ]”jòah"]”h$]”h&]”uh1jåhjêdh²hh³jûdh´M†ubj«)�”}”(hj®h]”hŒ*”…”�”}”(hj(jº)j¿)jÒ+j×+j#/j(/j¤0j©0j4j4j6j#6jŸ7j¤7j 9j%9j{:j€:j¥<jª<j>j>jÔ@jÙ@jØBjÝBjEjEjGj Gj IjIj˜Kj�Kj OjOjtRjyRjõSjúSjvUj{Uj÷VjüVjxXj}Xj¢Zj§Zj#\j(\jã^jè^jú`jÿ`j`cjecjádjædjGgjLguŒ 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.