Ӆsphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget:/translations/zh_CN/admin-guide/laptops/samsung-galaxybookmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/zh_TW/admin-guide/laptops/samsung-galaxybookmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/it_IT/admin-guide/laptops/samsung-galaxybookmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/ja_JP/admin-guide/laptops/samsung-galaxybookmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/ko_KR/admin-guide/laptops/samsung-galaxybookmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/sp_SP/admin-guide/laptops/samsung-galaxybookmodnameN 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:spacepreserveuh1hhhhhhT/var/lib/git/docbuild/linux/Documentation/admin-guide/laptops/samsung-galaxybook.rsthKubhsection)}(hhh](htitle)}(hSamsung Galaxy Book Driverh]hSamsung Galaxy Book Driver}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubh paragraph)}(h'Joshua Grisham h](hJoshua Grisham <}(hhhhhNhNubh reference)}(hjosh@joshuagrisham.comh]hjosh@joshuagrisham.com}(hhhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:josh@joshuagrisham.comuh1hhhubh>}(hhhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(hThis is a Linux x86 platform driver for Samsung Galaxy Book series notebook devices which utilizes Samsung's ``SCAI`` ACPI device in order to control extra features and receive various notifications.h](hoThis is a Linux x86 platform driver for Samsung Galaxy Book series notebook devices which utilizes Samsung’s }(hhhhhNhNubhliteral)}(h``SCAI``h]hSCAI}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhubhR ACPI device in order to control extra features and receive various notifications.}(hhhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(hhh](h)}(hSupported devicesh]hSupported devices}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKubh)}(hAny device with one of the supported ACPI device IDs should be supported. This covers most of the "Samsung Galaxy Book" series notebooks that are currently available as of this writing, and could include other Samsung notebook devices as well.h]hAny device with one of the supported ACPI device IDs should be supported. This covers most of the “Samsung Galaxy Book” series notebooks that are currently available as of this writing, and could include other Samsung notebook devices as well.}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubeh}(h]supported-devicesah ]h"]supported devicesah$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(hStatush]hStatus}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj8hhhhhKubh)}(h/The following features are currently supported:h]h/The following features are currently supported:}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj8hhubh bullet_list)}(hhh](h list_item)}(h6:ref:`Keyboard backlight ` controlh]h)}(hj`h](h)}(h.:ref:`Keyboard backlight `h]hinline)}(hjgh]hKeyboard backlight}(hjkhhhNhNubah}(h]h ](xrefstdstd-refeh"]h$]h&]uh1jihjeubah}(h]h ]h"]h$]h&]refdoc&admin-guide/laptops/samsung-galaxybook refdomainjvreftyperef refexplicitrefwarn reftargetkeyboard-backlightuh1hhhhKhjbubh control}(hjbhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj^ubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubj])}(hc:ref:`Performance mode ` control implemented using the platform profile interfaceh]h)}(hc:ref:`Performance mode ` control implemented using the platform profile interfaceh](h)}(h*:ref:`Performance mode `h]jj)}(hjh]hPerformance mode}(hjhhhNhNubah}(h]h ](justdstd-refeh"]h$]h&]uh1jihjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnjperformance-modeuh1hhhhKhjubh9 control implemented using the platform profile interface}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubj])}(h:ref:`Battery charge control end threshold ` (stop charging battery at given percentage value) implemented as a battery hookh]h)}(h:ref:`Battery charge control end threshold ` (stop charging battery at given percentage value) implemented as a battery hookh](h)}(hR:ref:`Battery charge control end threshold `h]jj)}(hjh]h$Battery charge control end threshold}(hjhhhNhNubah}(h]h ](justdstd-refeh"]h$]h&]uh1jihjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$battery-charge-control-end-thresholduh1hhhhKhjubhP (stop charging battery at given percentage value) implemented as a battery hook}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubj])}(h\:ref:`Firmware Attributes ` to allow control of various device settingsh]h)}(h\:ref:`Firmware Attributes ` to allow control of various device settingsh](h)}(h0:ref:`Firmware Attributes `h]jj)}(hjh]hFirmware Attributes}(hjhhhNhNubah}(h]h ](justdstd-refeh"]h$]h&]uh1jihjubah}(h]h ]h"]h$]h&]refdocj refdomainj reftyperef refexplicitrefwarnjfirmware-attributesuh1hhhhK hjubh, to allow control of various device settings}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hj ubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubj])}(hK:ref:`Handling of Fn hotkeys ` for various actionsh]h)}(hjDh](h)}(h7:ref:`Handling of Fn hotkeys `h]jj)}(hjKh]hHandling of Fn hotkeys}(hjMhhhNhNubah}(h]h ](justdstd-refeh"]h$]h&]uh1jihjIubah}(h]h ]h"]h$]h&]refdocj refdomainjWreftyperef refexplicitrefwarnjkeyboard-hotkey-actionsuh1hhhhK"hjFubh for various actions}(hjFhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK"hjBubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubj])}(hZ:ref:`Handling of ACPI notifications and hotkeys ` h]h)}(hY:ref:`Handling of ACPI notifications and hotkeys `h]h)}(hjh]jj)}(hjh]h*Handling of ACPI notifications and hotkeys}(hjhhhNhNubah}(h]h ](justdstd-refeh"]h$]h&]uh1jihjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj%acpi-notifications-and-hotkey-actionsuh1hhhhK#hj}ubah}(h]h ]h"]h$]h&]uh1hhhhK#hjyubah}(h]h ]h"]h$]h&]uh1j\hjYhhhhhNubeh}(h]h ]h"]h$]h&]bullet-uh1jWhhhKhj8hhubh)}(hXBecause different models of these devices can vary in their features, there is logic built within the driver which attempts to test each implemented feature for a valid response before enabling its support (registering additional devices or extensions, adding sysfs attributes, etc). Therefore, it can be important to note that not all features may be supported for your particular device.h]hXBecause different models of these devices can vary in their features, there is logic built within the driver which attempts to test each implemented feature for a valid response before enabling its support (registering additional devices or extensions, adding sysfs attributes, etc). Therefore, it can be important to note that not all features may be supported for your particular device.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK&hj8hhubh)}(hThe following features might be possible to implement but will require additional investigation and are therefore not supported at this time:h]hThe following features might be possible to implement but will require additional investigation and are therefore not supported at this time:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK,hj8hhubjX)}(hhh](j])}(h#"Dolby Atmos" mode for the speakersh]h)}(hjh]h'“Dolby Atmos” mode for the speakers}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK/hjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj])}(hJ"Outdoor Mode" for increasing screen brightness on models with ``SAM0427``h]h)}(hjh](hC“Outdoor Mode” for increasing screen brightness on models with }(hjhhhNhNubh)}(h ``SAM0427``h]hSAM0427}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]uh1hhhhK0hjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj])}(h)"Silent Mode" on models with ``SAM0427`` h]h)}(h("Silent Mode" on models with ``SAM0427``h](h!“Silent Mode” on models with }(hjhhhNhNubh)}(h ``SAM0427``h]hSAM0427}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]uh1hhhhK1hjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubeh}(h]h ]h"]h$]h&]jjuh1jWhhhK/hj8hhubhtarget)}(h.. _keyboard-backlight:h]h}(h]h ]h"]h$]h&]refidkeyboard-backlightuh1j;hK3hj8hhhhubeh}(h]statusah ]h"]statusah$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(hKeyboard backlighth]hKeyboard backlight}(hjThhhNhNubah}(h]h ]h"]h$]h&]uh1hhjQhhhhhK6ubh)}(hX\A new LED class named ``samsung-galaxybook::kbd_backlight`` is created which will then expose the device using the standard sysfs-based LED interface at ``/sys/class/leds/samsung-galaxybook::kbd_backlight``. Brightness can be controlled by writing the desired value to the ``brightness`` sysfs attribute or with any other desired userspace utility.h](hA new LED class named }(hjbhhhNhNubh)}(h%``samsung-galaxybook::kbd_backlight``h]h!samsung-galaxybook::kbd_backlight}(hjjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjbubh^ is created which will then expose the device using the standard sysfs-based LED interface at }(hjbhhhNhNubh)}(h5``/sys/class/leds/samsung-galaxybook::kbd_backlight``h]h1/sys/class/leds/samsung-galaxybook::kbd_backlight}(hj|hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjbubhC. Brightness can be controlled by writing the desired value to the }(hjbhhhNhNubh)}(h``brightness``h]h brightness}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjbubh= sysfs attribute or with any other desired userspace utility.}(hjbhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK8hjQhhubhnote)}(hMost of these devices have an ambient light sensor which also turns off the keyboard backlight under well-lit conditions. This behavior does not seem possible to control at this time, but can be good to be aware of.h]h)}(hMost of these devices have an ambient light sensor which also turns off the keyboard backlight under well-lit conditions. This behavior does not seem possible to control at this time, but can be good to be aware of.h]hMost of these devices have an ambient light sensor which also turns off the keyboard backlight under well-lit conditions. This behavior does not seem possible to control at this time, but can be good to be aware of.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK?hjubah}(h]h ]h"]h$]h&]uh1jhjQhhhhhNubj<)}(h.. _performance-mode:h]h}(h]h ]h"]h$]h&]jGperformance-modeuh1j;hKChjQhhhhubeh}(h](jHid1eh ]h"](keyboard backlightkeyboard-backlighteh$]h&]uh1hhhhhhhhK6expect_referenced_by_name}jj=sexpect_referenced_by_id}jHj=subh)}(hhh](h)}(hPerformance modeh]hPerformance mode}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKFubh)}(hThis driver implements the Documentation/userspace-api/sysfs-platform_profile.rst interface for working with the "performance mode" function of the Samsung ACPI device.h]hThis driver implements the Documentation/userspace-api/sysfs-platform_profile.rst interface for working with the “performance mode” function of the Samsung ACPI device.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKHhjhhubh)}(hMapping of each Samsung "performance mode" to its respective platform profile is performed dynamically by the driver, as not all models support all of the same performance modes. Your device might have one or more of the following mappings:h]hMapping of each Samsung “performance mode” to its respective platform profile is performed dynamically by the driver, as not all models support all of the same performance modes. Your device might have one or more of the following mappings:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKLhjhhubjX)}(hhh](j])}(h"Silent" maps to ``low-power``h]h)}(hj h](h“Silent” maps to }(hj hhhNhNubh)}(h ``low-power``h]h low-power}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubeh}(h]h ]h"]h$]h&]uh1hhhhKPhjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj])}(h"Quiet" maps to ``quiet``h]h)}(hj/h](h“Quiet” maps to }(hj1hhhNhNubh)}(h ``quiet``h]hquiet}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj1ubeh}(h]h ]h"]h$]h&]uh1hhhhKQhj-ubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj])}(h "Optimized" maps to ``balanced``h]h)}(hjTh](h“Optimized” maps to }(hjVhhhNhNubh)}(h ``balanced``h]hbalanced}(hj]hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjVubeh}(h]h ]h"]h$]h&]uh1hhhhKRhjRubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj])}(h+"High performance" maps to ``performance`` h]h)}(h*"High performance" maps to ``performance``h](h“High performance” maps to }(hj{hhhNhNubh)}(h``performance``h]h performance}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj{ubeh}(h]h ]h"]h$]h&]uh1hhhhKShjwubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubeh}(h]h ]h"]h$]h&]jjuh1jWhhhKPhjhhubh)}(hXThe result of the mapping can be printed in the kernel log when the module is loaded. Supported profiles can also be retrieved from ``/sys/firmware/acpi/platform_profile_choices``, while ``/sys/firmware/acpi/platform_profile`` can be used to read or write the currently selected profile.h](hThe result of the mapping can be printed in the kernel log when the module is loaded. Supported profiles can also be retrieved from }(hjhhhNhNubh)}(h/``/sys/firmware/acpi/platform_profile_choices``h]h+/sys/firmware/acpi/platform_profile_choices}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh, while }(hjhhhNhNubh)}(h'``/sys/firmware/acpi/platform_profile``h]h#/sys/firmware/acpi/platform_profile}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh= can be used to read or write the currently selected profile.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKUhjhhubh)}(hgThe ``balanced`` platform profile will be set during module load if no profile has been previously set.h](hThe }(hjhhhNhNubh)}(h ``balanced``h]hbalanced}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubhW platform profile will be set during module load if no profile has been previously set.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK[hjhhubj<)}(h).. _battery-charge-control-end-threshold:h]h}(h]h ]h"]h$]h&]jG$battery-charge-control-end-thresholduh1j;hK^hjhhhhubeh}(h](jid2eh ]h"](performance modeperformance-modeeh$]h&]uh1hhhhhhhhKFj}jjsj}jjsubh)}(hhh](h)}(h$Battery charge control end thresholdh]h$Battery charge control end threshold}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj hhhhhKaubh)}(hThis platform driver will add the ability to set the battery's charge control end threshold, but does not have the ability to set a start threshold.h]hThis platform driver will add the ability to set the battery’s charge control end threshold, but does not have the ability to set a start threshold.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKchj hhubh)}(hXThis feature is typically called "Battery Saver" by the various Samsung applications in Windows, but in Linux we have implemented the standardized "charge control threshold" sysfs interface on the battery device to allow for controlling this functionality from the userspace.h]hXThis feature is typically called “Battery Saver” by the various Samsung applications in Windows, but in Linux we have implemented the standardized “charge control threshold” sysfs interface on the battery device to allow for controlling this functionality from the userspace.}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKfhj hhubh)}(hThe sysfs attribute ``/sys/class/power_supply/BAT1/charge_control_end_threshold`` can be used to read or set the desired charge end threshold.h](hThe sysfs attribute }(hj8hhhNhNubh)}(h=``/sys/class/power_supply/BAT1/charge_control_end_threshold``h]h9/sys/class/power_supply/BAT1/charge_control_end_threshold}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj8ubh= can be used to read or set the desired charge end threshold.}(hj8hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKkhj hhubh)}(hXgIf you wish to maintain interoperability with the Samsung Settings application in Windows, then you should set the value to 100 to represent "off", or enable the feature using only one of the following values: 50, 60, 70, 80, or 90. Otherwise, the driver will accept any value between 1 and 100 as the percentage that you wish the battery to stop charging at.h]hXkIf you wish to maintain interoperability with the Samsung Settings application in Windows, then you should set the value to 100 to represent “off”, or enable the feature using only one of the following values: 50, 60, 70, 80, or 90. Otherwise, the driver will accept any value between 1 and 100 as the percentage that you wish the battery to stop charging at.}(hjXhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKohj hhubj)}(hSome devices have been observed as automatically "turning off" the charge control end threshold if an input value of less than 30 is given.h]h)}(hSome devices have been observed as automatically "turning off" the charge control end threshold if an input value of less than 30 is given.h]hSome devices have been observed as automatically “turning off” the charge control end threshold if an input value of less than 30 is given.}(hjjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKvhjfubah}(h]h ]h"]h$]h&]uh1jhj hhhhhNubj<)}(h.. _firmware-attributes:h]h}(h]h ]h"]h$]h&]jGfirmware-attributesuh1j;hKyhj hhhhubeh}(h](jid3eh ]h"]($battery charge control end threshold$battery-charge-control-end-thresholdeh$]h&]uh1hhhhhhhhKaj}jjsj}jjsubh)}(hhh](h)}(hFirmware Attributesh]hFirmware Attributes}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhK|ubh)}(hThe following enumeration-typed firmware attributes are set up by this driver and should be accessible under ``/sys/class/firmware-attributes/samsung-galaxybook/attributes/`` if your device supports them:h](hmThe following enumeration-typed firmware attributes are set up by this driver and should be accessible under }(hjhhhNhNubh)}(hA``/sys/class/firmware-attributes/samsung-galaxybook/attributes/``h]h=/sys/class/firmware-attributes/samsung-galaxybook/attributes/}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh if your device supports them:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK~hjhhubjX)}(hhh](j])}(hE``power_on_lid_open`` (device should power on when the lid is opened)h]h)}(hjh](h)}(h``power_on_lid_open``h]hpower_on_lid_open}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh0 (device should power on when the lid is opened)}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj])}(h``usb_charging`` (USB ports can deliver power to connected devices even when the device is powered off or in a low sleep state)h]h)}(h``usb_charging`` (USB ports can deliver power to connected devices even when the device is powered off or in a low sleep state)h](h)}(h``usb_charging``h]h usb_charging}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubhp (USB ports can deliver power to connected devices even when the device is powered off or in a low sleep state)}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj])}(h=``block_recording`` (blocks access to camera and microphone) h]h)}(h<``block_recording`` (blocks access to camera and microphone)h](h)}(h``block_recording``h]hblock_recording}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh) (blocks access to camera and microphone)}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubeh}(h]h ]h"]h$]h&]jjuh1jWhhhKhjhhubh)}(hAll of these attributes are simple boolean-like enumeration values which use 0 to represent "off" and 1 to represent "on". Use the ``current_value`` attribute to get or change the setting on the device.h](hAll of these attributes are simple boolean-like enumeration values which use 0 to represent “off” and 1 to represent “on”. Use the }(hj?hhhNhNubh)}(h``current_value``h]h current_value}(hjGhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj?ubh6 attribute to get or change the setting on the device.}(hj?hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjhhubh)}(hNote that when ``block_recording`` is updated, the input device "Samsung Galaxy Book Lens Cover" will receive a ``SW_CAMERA_LENS_COVER`` switch event which reflects the current state.h](hNote that when }(hj_hhhNhNubh)}(h``block_recording``h]hblock_recording}(hjghhhNhNubah}(h]h ]h"]h$]h&]uh1hhj_ubhR is updated, the input device “Samsung Galaxy Book Lens Cover” will receive a }(hj_hhhNhNubh)}(h``SW_CAMERA_LENS_COVER``h]hSW_CAMERA_LENS_COVER}(hjyhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj_ubh/ switch event which reflects the current state.}(hj_hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjhhubj<)}(h.. _keyboard-hotkey-actions:h]h}(h]h ]h"]h$]h&]jGkeyboard-hotkey-actionsuh1j;hKhjhhhhubeh}(h](jid4eh ]h"](firmware attributesfirmware-attributeseh$]h&]uh1hhhhhhhhK|j}jj~sj}jj~subh)}(hhh](h)}(h&Keyboard hotkey actions (i8042 filter)h]h&Keyboard hotkey actions (i8042 filter)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKubh)}(hThe i8042 filter will swallow the keyboard events for the Fn+F9 hotkey (Multi- level keyboard backlight toggle) and Fn+F10 hotkey (Block recording toggle) and instead execute their actions within the driver itself.h]hThe i8042 filter will swallow the keyboard events for the Fn+F9 hotkey (Multi- level keyboard backlight toggle) and Fn+F10 hotkey (Block recording toggle) and instead execute their actions within the driver itself.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubh)}(hXoFn+F9 will cycle through the brightness levels of the keyboard backlight. A notification will be sent using ``led_classdev_notify_brightness_hw_changed`` so that the userspace can be aware of the change. This mimics the behavior of other existing devices where the brightness level is cycled internally by the embedded controller and then reported via a notification.h](hlFn+F9 will cycle through the brightness levels of the keyboard backlight. A notification will be sent using }(hjhhhNhNubh)}(h-``led_classdev_notify_brightness_hw_changed``h]h)led_classdev_notify_brightness_hw_changed}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh so that the userspace can be aware of the change. This mimics the behavior of other existing devices where the brightness level is cycled internally by the embedded controller and then reported via a notification.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjhhubh)}(hFn+F10 will toggle the value of the "block recording" setting, which blocks or allows usage of the built-in camera and microphone (and generates the same Lens Cover switch event mentioned above).h]hFn+F10 will toggle the value of the “block recording” setting, which blocks or allows usage of the built-in camera and microphone (and generates the same Lens Cover switch event mentioned above).}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubj<)}(h*.. _acpi-notifications-and-hotkey-actions:h]h}(h]h ]h"]h$]h&]jG%acpi-notifications-and-hotkey-actionsuh1j;hKhjhhhhubeh}(h]($keyboard-hotkey-actions-i8042-filterjeh ]h"](&keyboard hotkey actions (i8042 filter)keyboard-hotkey-actionseh$]h&]uh1hhhhhhhhKj}jjsj}jjsubh)}(hhh](h)}(h%ACPI notifications and hotkey actionsh]h%ACPI notifications and hotkey actions}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj hhhhhKubh)}(hACPI notifications will generate ACPI netlink events under the device class ``samsung-galaxybook`` and bus ID matching the Samsung ACPI device ID found on your device. The events can be received using userspace tools such as ``acpi_listen`` and ``acpid``.h](hLACPI notifications will generate ACPI netlink events under the device class }(hjhhhNhNubh)}(h``samsung-galaxybook``h]hsamsung-galaxybook}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh and bus ID matching the Samsung ACPI device ID found on your device. The events can be received using userspace tools such as }(hjhhhNhNubh)}(h``acpi_listen``h]h acpi_listen}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh and }(hjhhhNhNubh)}(h ``acpid``h]hacpid}(hjGhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj hhubh)}(hThe Fn+F11 Performance mode hotkey will be handled by the driver; each keypress will cycle to the next available platform profile.h]hThe Fn+F11 Performance mode hotkey will be handled by the driver; each keypress will cycle to the next available platform profile.}(hj_hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj hhubeh}(h](jid5eh ]h"](%acpi notifications and hotkey actions%acpi-notifications-and-hotkey-actionseh$]h&]uh1hhhhhhhhKj}jsjsj}jjsubeh}(h]samsung-galaxy-book-driverah ]h"]samsung galaxy book driverah$]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_handlerjerror_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}(jH]j=aj]jaj]jaj]j~aj]jaj]jaunameids}(j}jzj5j2jNjKjjHjjjjjjjjjjjjjjjjjjjsjjrjou nametypes}(j}j5jNjjjjjjjjjjjsjruh}(jzhj2jjKj8jHjQjjQjjjjjj jj jjjjjjjjjj joj u footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}jKsRparse_messages]transform_messages](hsystem_message)}(hhh]h)}(hhh]h8Hyperlink target "keyboard-backlight" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypeINFOsourcehlineK3uh1j ubj)}(hhh]h)}(hhh]h6Hyperlink target "performance-mode" is not referenced.}hj-sbah}(h]h ]h"]h$]h&]uh1hhj*ubah}(h]h ]h"]h$]h&]levelKtypej'sourcehlineKCuh1j ubj)}(hhh]h)}(hhh]hJHyperlink target "battery-charge-control-end-threshold" is not referenced.}hjGsbah}(h]h ]h"]h$]h&]uh1hhjDubah}(h]h ]h"]h$]h&]levelKtypej'sourcehlineK^uh1j ubj)}(hhh]h)}(hhh]h9Hyperlink target "firmware-attributes" is not referenced.}hjasbah}(h]h ]h"]h$]h&]uh1hhj^ubah}(h]h ]h"]h$]h&]levelKtypej'sourcehlineKyuh1j ubj)}(hhh]h)}(hhh]h=Hyperlink target "keyboard-hotkey-actions" is not referenced.}hj{sbah}(h]h ]h"]h$]h&]uh1hhjxubah}(h]h ]h"]h$]h&]levelKtypej'sourcehlineKuh1j ubj)}(hhh]h)}(hhh]hKHyperlink target "acpi-notifications-and-hotkey-actions" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypej'sourcehlineKuh1j ube transformerN include_log] decorationNhhub.