€•ú2Œ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/hwmon/macsmc-hwmon”Œ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/hwmon/macsmc-hwmon”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ&/translations/it_IT/hwmon/macsmc-hwmon”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ&/translations/ja_JP/hwmon/macsmc-hwmon”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ&/translations/ko_KR/hwmon/macsmc-hwmon”Œ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/hwmon/macsmc-hwmon”Œ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/hwmon/macsmc-hwmon”Œ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-only”h]”hŒ%SPDX-License-Identifier: GPL-2.0-only”…””}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³Œ@/var/lib/git/docbuild/linux/Documentation/hwmon/macsmc-hwmon.rst”h´KubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒKernel driver macsmc-hwmon”h]”hŒKernel driver macsmc-hwmon”…””}”(hhÏh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhhÊh²hh³hÇh´KubhŒ paragraph”“”)”}”(hŒSupported hardware”h]”hŒSupported hardware”…””}”(hhßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhhÊh²hubhŒ block_quote”“”)”}”(hŒ!* Apple Silicon Macs (M1 and up) ”h]”hŒ bullet_list”“”)”}”(hhh]”hŒ list_item”“”)”}”(hŒApple Silicon Macs (M1 and up) ”h]”hÞ)”}”(hŒApple Silicon Macs (M1 and up)”h]”hŒApple Silicon Macs (M1 and up)”…””}”(hhþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´Khhúubah}”(h]”h ]”h"]”h$]”h&]”uh1høhhõubah}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ*”uh1hóh³hÇh´Khhïubah}”(h]”h ]”h"]”h$]”h&]”uh1híh³hÇh´KhhÊh²hubhÞ)”}”(hŒ2Author: James Calligeros ”h]”(hŒAuthor: James Calligeros <”…””}”(hj h²hh³Nh´NubhŒ reference”“”)”}”(hŒjcalligeros99@gmail.com”h]”hŒjcalligeros99@gmail.com”…””}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:jcalligeros99@gmail.com”uh1j(hj ubhŒ>”…””}”(hj h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K hhÊh²hubhÉ)”}”(hhh]”(hÎ)”}”(hŒ Description”h]”hŒ Description”…””}”(hjGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhjDh²hh³hÇh´K ubhÞ)”}”(hŒ¨macsmc-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]”hŒªmacsmc-hwmon exposes the Apple System Management controller’s temperature, voltage, current and power sensors, as well as fan speed and control capabilities, via hwmon.”…””}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhjDh²hubhÞ)”}”(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.”…””}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhjDh²hubhÞ)”}”(hŒàManual 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]”hŒàManual 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.”…””}”(hjqh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KhjDh²hubeh}”(h]”Œ description”ah ]”h"]”Œ description”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´K ubhÉ)”}”(hhh]”(hÎ)”}”(hŒsysfs interface”h]”hŒsysfs interface”…””}”(hjŠh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÍhj‡h²hh³hÇh´KubhŒdefinition_list”“”)”}”(hhh]”(hŒdefinition_list_item”“”)”}”(hŒcurrX_input Ammeter value ”h]”(hŒterm”“”)”}”(hŒ currX_input”h]”hŒ currX_input”…””}”(hj¥h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K"hjŸubhŒ definition”“”)”}”(hhh]”hÞ)”}”(hŒ Ammeter value”h]”hŒ Ammeter value”…””}”(hj¸h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K"hjµubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjŸubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K"hjšubjž)”}”(hŒcurrX_label Ammeter label ”h]”(j¤)”}”(hŒ currX_label”h]”hŒ currX_label”…””}”(hjÖh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K%hjÒubj´)”}”(hhh]”hÞ)”}”(hŒ Ammeter label”h]”hŒ Ammeter label”…””}”(hjçh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K%hjäubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjÒubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K%hjšh²hubjž)”}”(hŒfanX_input Current fan speed ”h]”(j¤)”}”(hŒ fanX_input”h]”hŒ fanX_input”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K(hjubj´)”}”(hhh]”hÞ)”}”(hŒCurrent fan speed”h]”hŒCurrent fan speed”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K(hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K(hjšh²hubjž)”}”(hŒfanX_label Fan label ”h]”(j¤)”}”(hŒ fanX_label”h]”hŒ fanX_label”…””}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K+hj0ubj´)”}”(hhh]”hÞ)”}”(hŒ Fan label”h]”hŒ Fan label”…””}”(hjEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K+hjBubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hj0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K+hjšh²hubjž)”}”(hŒ$fanX_min Minimum possible fan speed ”h]”(j¤)”}”(hŒfanX_min”h]”hŒfanX_min”…””}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K.hj_ubj´)”}”(hhh]”hÞ)”}”(hŒMinimum possible fan speed”h]”hŒMinimum possible fan speed”…””}”(hjth²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K.hjqubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hj_ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K.hjšh²hubjž)”}”(hŒ$fanX_max Maximum possible fan speed ”h]”(j¤)”}”(hŒfanX_max”h]”hŒfanX_max”…””}”(hj’h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K1hjŽubj´)”}”(hhh]”hÞ)”}”(hŒMaximum possible fan speed”h]”hŒMaximum possible fan speed”…””}”(hj£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K1hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjŽubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K1hjšh²hubjž)”}”(hŒ!fanX_target Current fan setpoint ”h]”(j¤)”}”(hŒ fanX_target”h]”hŒ fanX_target”…””}”(hjÁh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K4hj½ubj´)”}”(hhh]”hÞ)”}”(hŒCurrent fan setpoint”h]”hŒCurrent fan setpoint”…””}”(hjÒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K4hjÏubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hj½ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K4hjšh²hubjž)”}”(hŒinX_input Voltmeter value ”h]”(j¤)”}”(hŒ inX_input”h]”hŒ inX_input”…””}”(hjðh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K7hjìubj´)”}”(hhh]”hÞ)”}”(hŒVoltmeter value”h]”hŒVoltmeter value”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K7hjþubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjìubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K7hjšh²hubjž)”}”(hŒinX_label Voltmeter label ”h]”(j¤)”}”(hŒ inX_label”h]”hŒ inX_label”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K:hjubj´)”}”(hhh]”hÞ)”}”(hŒVoltmeter label”h]”hŒVoltmeter label”…””}”(hj0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K:hj-ubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K:hjšh²hubjž)”}”(hŒpowerX_input Power meter value ”h]”(j¤)”}”(hŒ powerX_input”h]”hŒ powerX_input”…””}”(hjNh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K=hjJubj´)”}”(hhh]”hÞ)”}”(hŒPower meter value”h]”hŒPower meter value”…””}”(hj_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K=hj\ubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjJubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K=hjšh²hubjž)”}”(hŒpowerX_label Power meter label ”h]”(j¤)”}”(hŒ powerX_label”h]”hŒ powerX_label”…””}”(hj}h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´K@hjyubj´)”}”(hhh]”hÞ)”}”(hŒPower meter label”h]”hŒPower meter label”…””}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´K@hj‹ubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hjyubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K@hjšh²hubjž)”}”(hŒ%tempX_input Temperature sensor value ”h]”(j¤)”}”(hŒ tempX_input”h]”hŒ tempX_input”…””}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´KChj¨ubj´)”}”(hhh]”hÞ)”}”(hŒTemperature sensor value”h]”hŒTemperature sensor value”…””}”(hj½h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KChjºubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hj¨ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´KChjšh²hubjž)”}”(hŒ%tempX_label Temperature sensor label ”h]”(j¤)”}”(hŒ tempX_label”h]”hŒ tempX_label”…””}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j£h³hÇh´KFhj×ubj´)”}”(hhh]”hÞ)”}”(hŒTemperature sensor label”h]”hŒTemperature sensor label”…””}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÝh³hÇh´KFhjéubah}”(h]”h ]”h"]”h$]”h&]”uh1j³hj×ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´KFhjšh²hubeh}”(h]”h ]”h"]”h$]”h&]”uh1j˜hj‡h²hh³hÇh´Nubeh}”(h]”Œsysfs-interface”ah ]”h"]”Œsysfs interface”ah$]”h&]”uh1hÈhhÊh²hh³hÇh´Kubeh}”(h]”Œkernel-driver-macsmc-hwmon”ah ]”h"]”Œkernel driver macsmc-hwmon”ah$]”h&]”uh1hÈhhh²hh³hÇh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(hÍNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”j?Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(jjj„jjjuŒ nametypes”}”(j‰j„‰j‰uh}”(jhÊjjDjj‡uŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.