Ysphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget5/translations/zh_CN/admin-guide/laptops/alienware-wmimodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget5/translations/zh_TW/admin-guide/laptops/alienware-wmimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget5/translations/it_IT/admin-guide/laptops/alienware-wmimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget5/translations/ja_JP/admin-guide/laptops/alienware-wmimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget5/translations/ko_KR/admin-guide/laptops/alienware-wmimodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget5/translations/sp_SP/admin-guide/laptops/alienware-wmimodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(h)SPDX-License-Identifier: GPL-2.0-or-laterh]h)SPDX-License-Identifier: GPL-2.0-or-later}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhhO/var/lib/git/docbuild/linux/Documentation/admin-guide/laptops/alienware-wmi.rsthKubhsection)}(hhh](htitle)}(hAlienware WMI Driverh]hAlienware WMI Driver}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubh paragraph)}(hKurt Borja h](h Kurt Borja <}(hhhhhNhNubh reference)}(hkuurtb@gmail.comh]hkuurtb@gmail.com}(hhhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:kuurtb@gmail.comuh1hhhubh>}(hhhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h}This is a driver for the "WMAX" WMI device, which is found in most Dell gaming laptops and controls various special features.h]hThis is a driver for the “WMAX” WMI device, which is found in most Dell gaming laptops and controls various special features.}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(hBefore the launch of M-Series laptops (~2018), the "WMAX" device controlled basic RGB lighting, deep sleep mode, HDMI mode and amplifier status.h]hBefore the launch of M-Series laptops (~2018), the “WMAX” device controlled basic RGB lighting, deep sleep mode, HDMI mode and amplifier status.}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(hLater, this device was completely repurpused. Now it mostly deals with thermal profiles, sensor monitoring and overclocking. This interface is named "AWCC" and is known to be used by the AWCC OEM application to control these features.h]hLater, this device was completely repurpused. Now it mostly deals with thermal profiles, sensor monitoring and overclocking. This interface is named “AWCC” and is known to be used by the AWCC OEM application to control these features.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h2The alienware-wmi driver controls both interfaces.h]h2The alienware-wmi driver controls both interfaces.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(hhh](h)}(hAWCC Interfaceh]hAWCC Interface}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj'hhhhhKubh)}(hEWMI device documentation: Documentation/wmi/devices/alienware-wmi.rsth]hEWMI device documentation: Documentation/wmi/devices/alienware-wmi.rst}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj'hhubh)}(hhh](h)}(hSupported devicesh]hSupported devices}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjFhhhhhKubh bullet_list)}(hhh](h list_item)}(hAlienware M-Series laptopsh]h)}(hj`h]hAlienware M-Series laptops}(hjbhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj^ubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubj])}(hAlienware X-Series laptopsh]h)}(hjwh]hAlienware X-Series laptops}(hjyhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjuubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubj])}(hAlienware Aurora Desktopsh]h)}(hjh]hAlienware Aurora Desktops}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubj])}(hDell G-Series laptops h]h)}(hDell G-Series laptopsh]hDell G-Series laptops}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hjubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubeh}(h]h ]h"]h$]h&]bullet-uh1jWhhhKhjFhhubh)}(hIf you believe your device supports the AWCC interface and you don't have any of the features described in this document, try the following alienware-wmi module parameters:h]hIf you believe your device supports the AWCC interface and you don’t have any of the features described in this document, try the following alienware-wmi module parameters:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK"hjFhhubjX)}(hhh](j])}(hI``force_platform_profile=1``: Forces probing for platform profile supporth]h)}(hjh](hliteral)}(h``force_platform_profile=1``h]hforce_platform_profile=1}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh-: Forces probing for platform profile support}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK&hjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj])}(h4``force_hwmon=1``: Forces probing for HWMON support h]h)}(h3``force_hwmon=1``: Forces probing for HWMON supporth](j)}(h``force_hwmon=1``h]h force_hwmon=1}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh": Forces probing for HWMON support}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK'hjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubeh}(h]h ]h"]h$]h&]jjuh1jWhhhK&hjFhhubh)}(hIf the module loads successfully with these parameters, consider submitting a patch adding your model to the ``awcc_dmi_table`` located in ``drivers/platform/x86/dell/alienware-wmi-wmax.c`` or contacting the maintainer for further guidance.h](hmIf the module loads successfully with these parameters, consider submitting a patch adding your model to the }(hj'hhhNhNubj)}(h``awcc_dmi_table``h]hawcc_dmi_table}(hj/hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj'ubh located in }(hj'hhhNhNubj)}(h2``drivers/platform/x86/dell/alienware-wmi-wmax.c``h]h.drivers/platform/x86/dell/alienware-wmi-wmax.c}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj'ubh3 or contacting the maintainer for further guidance.}(hj'hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK)hjFhhubeh}(h]supported-devicesah ]h"]supported devicesah$]h&]uh1hhj'hhhhhKubh)}(hhh](h)}(hStatush]hStatus}(hjdhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjahhhhhK/ubh)}(h/The following features are currently supported:h]h/The following features are currently supported:}(hjrhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK1hjahhubjX)}(hhh](j])}(hZ:ref:`Platform Profile `: - Thermal profile control - G-Mode toggling h](h)}(h+:ref:`Platform Profile `:h](h)}(h*:ref:`Platform Profile `h]hinline)}(hjh]hPlatform Profile}(hjhhhNhNubah}(h]h ](xrefstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdoc!admin-guide/laptops/alienware-wmi refdomainjreftyperef refexplicitrefwarn reftargetplatform-profileuh1hhhhK3hjubh:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK3hjubjX)}(hhh](j])}(hThermal profile control h]h)}(hThermal profile controlh]hThermal profile control}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK5hjubah}(h]h ]h"]h$]h&]uh1j\hjubj])}(hG-Mode toggling h]h)}(hG-Mode togglingh]hG-Mode toggling}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK7hjubah}(h]h ]h"]h$]h&]uh1j\hjubeh}(h]h ]h"]h$]h&]jjuh1jWhhhK5hjubeh}(h]h ]h"]h$]h&]uh1j\hjhhhNhNubj])}(hA:ref:`HWMON `: - Sensor monitoring - Manual fan control h](h)}(h:ref:`HWMON `:h](h)}(h:ref:`HWMON `h]j)}(hjh]hHWMON}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnjhwmonuh1hhhhK9hjubh:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK9hjubjX)}(hhh](j])}(hSensor monitoring h]h)}(hSensor monitoringh]hSensor monitoring}(hj2hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK;hj.ubah}(h]h ]h"]h$]h&]uh1j\hj+ubj])}(hManual fan control h]h)}(hManual fan controlh]hManual fan control}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK=hjFubah}(h]h ]h"]h$]h&]uh1j\hj+ubeh}(h]h ]h"]h$]h&]jjuh1jWhhhK;hjubeh}(h]h ]h"]h$]h&]uh1j\hjhhhNhNubeh}(h]h ]h"]h$]h&]jjuh1jWhhhK3hjahhubhtarget)}(h.. _platform-profile:h]h}(h]h ]h"]h$]h&]refidplatform-profileuh1jphK?hjahhhhubeh}(h]statusah ]h"]statusah$]h&]uh1hhj'hhhhhK/ubh)}(hhh](h)}(hPlatform Profileh]hPlatform Profile}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKBubh)}(hXThe AWCC interface exposes various firmware defined thermal profiles. These are exposed to user-space through the Platform Profile class interface. Refer to :ref:`sysfs-class-platform-profile ` for more information.h](hThe AWCC interface exposes various firmware defined thermal profiles. These are exposed to user-space through the Platform Profile class interface. Refer to }(hjhhhNhNubh)}(hS:ref:`sysfs-class-platform-profile `h]j)}(hjh]hsysfs-class-platform-profile}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj-abi_file_testing_sysfs_class_platform_profileuh1hhhhKDhjubh for more information.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKDhjhhubh)}(hyThe name of the platform-profile class device exported by this driver is "alienware-wmi" and it's path can be found with:h]hThe name of the platform-profile class device exported by this driver is “alienware-wmi” and it’s path can be found with:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKIhjhhubh literal_block)}(h_grep -l "alienware-wmi" /sys/class/platform-profile/platform-profile-*/name | sed 's|/[^/]*$||'h]h_grep -l "alienware-wmi" /sys/class/platform-profile/platform-profile-*/name | sed 's|/[^/]*$||'}hjsbah}(h]h ]h"]h$]h&]hhuh1jhhhKNhjhhubh)}(h]If the device supports G-Mode, it is also toggled when selecting the ``performance`` profile.h](hEIf the device supports G-Mode, it is also toggled when selecting the }(hjhhhNhNubj)}(h``performance``h]h performance}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh profile.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKPhjhhubhnote)}(hYou may set the ``force_gmode`` module parameter to always try to toggle this feature, without checking if your model supports it.h]h)}(hYou may set the ``force_gmode`` module parameter to always try to toggle this feature, without checking if your model supports it.h](hYou may set the }(hj hhhNhNubj)}(h``force_gmode``h]h force_gmode}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubhc module parameter to always try to toggle this feature, without checking if your model supports it.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKThj ubah}(h]h ]h"]h$]h&]uh1jhjhhhhhNubjq)}(h .. _hwmon:h]h}(h]h ]h"]h$]h&]j|hwmonuh1jphKWhjhhhhubeh}(h](j}id1eh ]h"](platform profileplatform-profileeh$]h&]uh1hhj'hhhhhKBexpect_referenced_by_name}jDjrsexpect_referenced_by_id}j}jrsubh)}(hhh](h)}(hHWMONh]hHWMON}(hjNhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjKhhhhhKZubh)}(hThe AWCC interface also supports sensor monitoring and manual fan control. Both of these features are exposed to user-space through the HWMON interface.h]hThe AWCC interface also supports sensor monitoring and manual fan control. Both of these features are exposed to user-space through the HWMON interface.}(hj\hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK\hjKhhubh)}(hnThe name of the hwmon class device exported by this driver is "alienware_wmi" and it's path can be found with:h]htThe name of the hwmon class device exported by this driver is “alienware_wmi” and it’s path can be found with:}(hjjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK_hjKhhubj)}(hHgrep -l "alienware_wmi" /sys/class/hwmon/hwmon*/name | sed 's|/[^/]*$||'h]hHgrep -l "alienware_wmi" /sys/class/hwmon/hwmon*/name | sed 's|/[^/]*$||'}hjxsbah}(h]h ]h"]h$]h&]hhuh1jhhhKdhjKhhubh)}(hSensor monitoring is done through the standard HWMON interface. Refer to :ref:`sysfs-class-hwmon ` for more information.h](hISensor monitoring is done through the standard HWMON interface. Refer to }(hjhhhNhNubh)}(h=:ref:`sysfs-class-hwmon `h]j)}(hjh]hsysfs-class-hwmon}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj"abi_file_testing_sysfs_class_hwmonuh1hhhhKfhjubh for more information.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKfhjKhhubh)}(hManual fan control on the other hand, is not exposed directly by the AWCC interface. Instead it let's us control a fan `boost` value. This `boost` value has the following aproximate behavior over the fan pwm:h](hyManual fan control on the other hand, is not exposed directly by the AWCC interface. Instead it let’s us control a fan }(hjhhhNhNubhtitle_reference)}(h`boost`h]hboost}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh value. This }(hjhhhNhNubj)}(h`boost`h]hboost}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh> value has the following aproximate behavior over the fan pwm:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKjhjKhhubj)}(h9pwm = pwm_base + (fan_boost / 255) * (pwm_max - pwm_base)h]h9pwm = pwm_base + (fan_boost / 255) * (pwm_max - pwm_base)}hjsbah}(h]h ]h"]h$]h&]hhuh1jhhhKphjKhhubh)}(hDue to the above behavior, the fan `boost` control is exposed to user-space through the following, custom hwmon sysfs attribute:h](h#Due to the above behavior, the fan }(hjhhhNhNubj)}(h`boost`h]hboost}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubhV control is exposed to user-space through the following, custom hwmon sysfs attribute:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKrhjKhhubhtable)}(hhh]htgroup)}(hhh](hcolspec)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j$hj!ubj%)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1j$hj!ubj%)}(hhh]h}(h]h ]h"]h$]h&]colwidthK'uh1j$hj!ubhthead)}(hhh]hrow)}(hhh](hentry)}(hhh]h)}(hNameh]hName}(hjShhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKvhjPubah}(h]h ]h"]h$]h&]uh1jNhjKubjO)}(hhh]h)}(hPermh]hPerm}(hjjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKvhjgubah}(h]h ]h"]h$]h&]uh1jNhjKubjO)}(hhh]h)}(h Descriptionh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKvhj~ubah}(h]h ]h"]h$]h&]uh1jNhjKubeh}(h]h ]h"]h$]h&]uh1jIhjFubah}(h]h ]h"]h$]h&]uh1jDhj!ubhtbody)}(hhh]jJ)}(hhh](jO)}(hhh]h)}(hfan[1-4]_boosth]hfan[1-4]_boost}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKxhjubah}(h]h ]h"]h$]h&]uh1jNhjubjO)}(hhh]h)}(hRWh]hRW}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKxhjubah}(h]h ]h"]h$]h&]uh1jNhjubjO)}(hhh](h)}(hFan boost value.h]hFan boost value.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKxhjubh)}(hInteger value between 0 and 255h]hInteger value between 0 and 255}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKzhjubeh}(h]h ]h"]h$]h&]uh1jNhjubeh}(h]h ]h"]h$]h&]uh1jIhjubah}(h]h ]h"]h$]h&]uh1jhj!ubeh}(h]h ]h"]h$]h&]colsKuh1jhjubah}(h]h ]h"]h$]h&]uh1jhjKhhhhhNubj)}(hgIn some devices, manual fan control only works reliably if the ``custom`` platform profile is selected.h]h)}(hgIn some devices, manual fan control only works reliably if the ``custom`` platform profile is selected.h](h?In some devices, manual fan control only works reliably if the }(hjhhhNhNubj)}(h ``custom``h]hcustom}(hj!hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh platform profile is selected.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK~hjubah}(h]h ]h"]h$]h&]uh1jhjKhhhhhNubeh}(h](j=id2eh ]h"]hwmonah$]hwmonah&]uh1hhj'hhhhhKZ referencedKjG}jDj3sjI}j=j3subeh}(h]awcc-interfaceah ]h"]awcc interfaceah$]h&]uh1hhhhhhhhKubeh}(h]alienware-wmi-driverah ]h"]alienware wmi driverah$]h&]uh1hhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksjNfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerj}error_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}(j}]jraj=]j3aunameids}(jXjUjPjMj^j[jjjDj}jCj@jDj=u nametypes}(jXjPj^jjDjCjDuh}(jUhjMj'j[jFjjaj}jj@jj=jKjAjKu footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}jKsRparse_messages]hsystem_message)}(hhh]h)}(h(Duplicate implicit target name: "hwmon".h]h,Duplicate implicit target name: “hwmon”.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]jAalevelKtypeINFOsourcehlineKZuh1jhjKhhhhhKZubatransform_messages](j)}(hhh]h)}(hhh]h6Hyperlink target "platform-profile" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejsourcehlineK?uh1jubj)}(hhh]h)}(hhh]h+Hyperlink target "hwmon" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejsourcehlineKWuh1jube transformerN include_log] decorationNhhub.