(2sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget&/translations/zh_CN/hwmon/macsmc-hwmonmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget&/translations/zh_TW/hwmon/macsmc-hwmonmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget&/translations/it_IT/hwmon/macsmc-hwmonmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget&/translations/ja_JP/hwmon/macsmc-hwmonmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget&/translations/ko_KR/hwmon/macsmc-hwmonmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget&/translations/sp_SP/hwmon/macsmc-hwmonmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(h%SPDX-License-Identifier: GPL-2.0-onlyh]h%SPDX-License-Identifier: GPL-2.0-only}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhh@/var/lib/git/docbuild/linux/Documentation/hwmon/macsmc-hwmon.rsthKubhsection)}(hhh](htitle)}(hKernel driver macsmc-hwmonh]hKernel driver macsmc-hwmon}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubh paragraph)}(hSupported hardwareh]hSupported hardware}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh block_quote)}(h!* Apple Silicon Macs (M1 and up) h]h bullet_list)}(hhh]h list_item)}(hApple Silicon Macs (M1 and up) h]h)}(hApple Silicon Macs (M1 and up)h]hApple Silicon Macs (M1 and up)}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhubah}(h]h ]h"]h$]h&]bullet*uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h2Author: James Calligeros h](hAuthor: James Calligeros <}(hj hhhNhNubh reference)}(hjcalligeros99@gmail.comh]hjcalligeros99@gmail.com}(hjhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:jcalligeros99@gmail.comuh1jhj ubh>}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(hhh](h)}(h Descriptionh]h Description}(hj3hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj0hhhhhK ubh)}(hmacsmc-hwmon exposes the Apple System Management controller's temperature, voltage, current and power sensors, as well as fan speed and control capabilities, via hwmon.h]hmacsmc-hwmon exposes the Apple System Management controller’s temperature, voltage, current and power sensors, as well as fan speed and control capabilities, via hwmon.}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj0hhubh)}(hXBecause each Apple Silicon Mac exposes a different set of sensors (e.g. the MacBooks expose battery telemetry that is not present on the desktop Macs), sensors present on any given machine are described via Devicetree. The driver picks these up and registers them with hwmon when probed.h]hXBecause each Apple Silicon Mac exposes a different set of sensors (e.g. the MacBooks expose battery telemetry that is not present on the desktop Macs), sensors present on any given machine are described via Devicetree. The driver picks these up and registers them with hwmon when probed.}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj0hhubh)}(hManual fan speed is supported via the fan_control module parameter. This is disabled by default and marked as unsafe, as it cannot be proven that the system will fail safe if overheating due to manual fan control being used.h]hManual fan speed is supported via the fan_control module parameter. This is disabled by default and marked as unsafe, as it cannot be proven that the system will fail safe if overheating due to manual fan control being used.}(hj]hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj0hhubeh}(h] descriptionah ]h"] descriptionah$]h&]uh1hhhhhhhhK ubh)}(hhh](h)}(hsysfs interfaceh]hsysfs interface}(hjvhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjshhhhhKubhdefinition_list)}(hhh](hdefinition_list_item)}(hcurrX_input Ammeter value h](hterm)}(h currX_inputh]h currX_input}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK"hjubh definition)}(hhh]h)}(h Ammeter valueh]h Ammeter value}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK"hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK"hjubj)}(hcurrX_label Ammeter label h](j)}(h currX_labelh]h currX_label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK%hjubj)}(hhh]h)}(h Ammeter labelh]h Ammeter label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK%hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK%hjhhubj)}(hfanX_input Current fan speed h](j)}(h fanX_inputh]h fanX_input}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK(hjubj)}(hhh]h)}(hCurrent fan speedh]hCurrent fan speed}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK(hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK(hjhhubj)}(hfanX_label Fan label h](j)}(h fanX_labelh]h fanX_label}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK+hjubj)}(hhh]h)}(h Fan labelh]h Fan label}(hj1hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK+hj.ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK+hjhhubj)}(h$fanX_min Minimum possible fan speed h](j)}(hfanX_minh]hfanX_min}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK.hjKubj)}(hhh]h)}(hMinimum possible fan speedh]hMinimum possible fan speed}(hj`hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK.hj]ubah}(h]h ]h"]h$]h&]uh1jhjKubeh}(h]h ]h"]h$]h&]uh1jhhhK.hjhhubj)}(h$fanX_max Maximum possible fan speed h](j)}(hfanX_maxh]hfanX_max}(hj~hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK1hjzubj)}(hhh]h)}(hMaximum possible fan speedh]hMaximum possible fan speed}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK1hjubah}(h]h ]h"]h$]h&]uh1jhjzubeh}(h]h ]h"]h$]h&]uh1jhhhK1hjhhubj)}(h!fanX_target Current fan setpoint h](j)}(h fanX_targeth]h fanX_target}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK4hjubj)}(hhh]h)}(hCurrent fan setpointh]hCurrent fan setpoint}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK4hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK4hjhhubj)}(hinX_input Voltmeter value h](j)}(h inX_inputh]h inX_input}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK7hjubj)}(hhh]h)}(hVoltmeter valueh]hVoltmeter value}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK7hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK7hjhhubj)}(hinX_label Voltmeter label h](j)}(h inX_labelh]h inX_label}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK:hjubj)}(hhh]h)}(hVoltmeter labelh]hVoltmeter label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK:hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK:hjhhubj)}(hpowerX_input Power meter value h](j)}(h powerX_inputh]h powerX_input}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK=hj6ubj)}(hhh]h)}(hPower meter valueh]hPower meter value}(hjKhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK=hjHubah}(h]h ]h"]h$]h&]uh1jhj6ubeh}(h]h ]h"]h$]h&]uh1jhhhK=hjhhubj)}(hpowerX_label Power meter label h](j)}(h powerX_labelh]h powerX_label}(hjihhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK@hjeubj)}(hhh]h)}(hPower meter labelh]hPower meter label}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK@hjwubah}(h]h ]h"]h$]h&]uh1jhjeubeh}(h]h ]h"]h$]h&]uh1jhhhK@hjhhubj)}(h%tempX_input Temperature sensor value h](j)}(h tempX_inputh]h tempX_input}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKChjubj)}(hhh]h)}(hTemperature sensor valueh]hTemperature sensor value}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKChjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKChjhhubj)}(h%tempX_label Temperature sensor label h](j)}(h tempX_labelh]h tempX_label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKFhjubj)}(hhh]h)}(hTemperature sensor labelh]hTemperature sensor label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKFhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKFhjhhubeh}(h]h ]h"]h$]h&]uh1jhjshhhhhNubeh}(h]sysfs-interfaceah ]h"]sysfs interfaceah$]h&]uh1hhhhhhhhKubeh}(h]kernel-driver-macsmc-hwmonah ]h"]kernel driver macsmc-hwmonah$]h&]uh1hhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_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}nameids}(jjjpjmjju nametypes}(jjpjuh}(jhjmj0jjsu footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log] decorationNhhub.