cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

san.rst (1869B)


      1.. SPDX-License-Identifier: GPL-2.0+
      2
      3.. |san_client_link| replace:: :c:func:`san_client_link`
      4.. |san_dgpu_notifier_register| replace:: :c:func:`san_dgpu_notifier_register`
      5.. |san_dgpu_notifier_unregister| replace:: :c:func:`san_dgpu_notifier_unregister`
      6
      7===================
      8Surface ACPI Notify
      9===================
     10
     11The Surface ACPI Notify (SAN) device provides the bridge between ACPI and
     12SAM controller. Specifically, ACPI code can execute requests and handle
     13battery and thermal events via this interface. In addition to this, events
     14relating to the discrete GPU (dGPU) of the Surface Book 2 can be sent from
     15ACPI code (note: the Surface Book 3 uses a different method for this). The
     16only currently known event sent via this interface is a dGPU power-on
     17notification. While this driver handles the former part internally, it only
     18relays the dGPU events to any other driver interested via its public API and
     19does not handle them.
     20
     21The public interface of this driver is split into two parts: Client
     22registration and notifier-block registration.
     23
     24A client to the SAN interface can be linked as consumer to the SAN device
     25via |san_client_link|. This can be used to ensure that the a client
     26receiving dGPU events does not miss any events due to the SAN interface not
     27being set up as this forces the client driver to unbind once the SAN driver
     28is unbound.
     29
     30Notifier-blocks can be registered by any device for as long as the module is
     31loaded, regardless of being linked as client or not. Registration is done
     32with |san_dgpu_notifier_register|. If the notifier is not needed any more, it
     33should be unregistered via |san_dgpu_notifier_unregister|.
     34
     35Consult the API documentation below for more details.
     36
     37
     38API Documentation
     39=================
     40
     41.. kernel-doc:: include/linux/surface_acpi_notify.h
     42
     43.. kernel-doc:: drivers/platform/surface/surface_acpi_notify.c
     44    :export: