Lines Matching +full:surface +full:- +full:sam

1 .. SPDX-License-Identifier: GPL-2.0+
7 The Surface/System Aggregator Module (SAM, SSAM) is an (arguably *the*)
8 embedded controller (EC) on Microsoft Surface devices. It has been originally
9 introduced on 4th generation devices (Surface Pro 4, Surface Book 1), but
10 its responsibilities and feature-set have since been expanded significantly
17 Not much is currently known about SAM on 4th generation devices (Surface Pro
18 4, Surface Book 1), due to the use of a different communication interface
19 between host and EC (as detailed below). On 5th (Surface Pro 2017, Surface
20 Book 2, Surface Laptop 1) and later generation devices, SAM is responsible
23 sensors (e.g. skin temperature) and cooling/performance-mode setting to the
24 host. On the Surface Book 2, specifically, it additionally provides an
26 display part from the keyboard part of the device), on the Surface Laptop 1
28 restructured for 7th generation devices and on those, specifically Surface
29 Laptop 3 and Surface Book 3, is responsible for all major HID input (i.e.
35 exposed to ACPI via a shim driver (referred to as Surface ACPI Notify, or
36 SAN), translating ACPI generic serial bus write-/read-accesses to SAM
38 devices require a driver hooking directly into the SAM interface. Equally,
40 harder to discover and requiring us to hard-code a sort of device registry.
49 generation of the Surface device. On 4th generation devices, host and EC
50 communicate via HID, specifically using a HID-over-I2C device, whereas on
53 refer to the serial device and its driver as Surface Serial Hub (SSH). When
54 needed, we differentiate between both types of SAM by referring to them as
55 SAM-over-SSH and SAM-over-HID.
57 Currently, this subsystem only supports SAM-over-SSH. The SSH communication
63 Surface Serial Hub
64 ------------------
66 As already elaborated above, the Surface Serial Hub (SSH) is the
67 communication interface for SAM on 5th- and all later-generation Surface
76 See Documentation/driver-api/surface_aggregator/ssh.rst for a
78 Documentation/driver-api/surface_aggregator/internal.rst for an