Skip to content

Commit

Permalink
surface_acpi: Update surface-acpi module
Browse files Browse the repository at this point in the history
- Rename identifiers/functions.
- Rename Kconfig options (SURFACE_ACPI_XXX -> SURFACE_SAM_XXX)
- Split into multiple modules
  • Loading branch information
qzed committed Jan 28, 2020
1 parent e6ef308 commit 4d25ae9
Show file tree
Hide file tree
Showing 11 changed files with 3,991 additions and 4,108 deletions.
99 changes: 2 additions & 97 deletions drivers/platform/x86/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -582,103 +582,6 @@ config THINKPAD_ACPI_HOTKEY_POLL
If you are not sure, say Y here. The driver enables polling only if
it is strictly necessary to do so.

config SURFACE_ACPI
depends on ACPI
tristate "Microsoft Surface ACPI/Platform Drivers"
---help---
ACPI and platform drivers for Microsoft Surface devices.

config SURFACE_ACPI_SSH
bool "Surface Serial Hub Driver"
depends on SURFACE_ACPI
depends on X86_INTEL_LPSS
depends on SERIAL_8250_DW
depends on SERIAL_8250_DMA
depends on SERIAL_DEV_CTRL_TTYPORT
select CRC_CCITT
default y
---help---
Surface Serial Hub driver for 5th generation (or later) Microsoft
Surface devices.

This is the base driver for the embedded serial controller found on
5th generation (and later) Microsoft Surface devices (e.g. Book 2,
Laptop, Laptop 2, Pro 2017, Pro 6, ...). This driver itself only
provides access to the embedded controller and subsequent drivers are
required for the respective functionalities.

If you have a 5th generation (or later) Microsoft Surface device, say
Y or M here.

config SURFACE_ACPI_SSH_DEBUG_DEVICE
bool "Surface Serial Hub Debug Device"
depends on SURFACE_ACPI_SSH
default n
---help---
Debug device for direct communication with the embedded controller
found on 5th generation (and later) Microsoft Surface devices (e.g.
Book 2, Laptop, Laptop 2, Pro 2017, Pro 6, ...) via sysfs.

If you are not sure, say N here.

config SURFACE_ACPI_SAN
bool "Surface ACPI Notify Driver"
depends on SURFACE_ACPI_SSH
default y
---help---
Surface ACPI Notify driver for 5th generation (or later) Microsoft
Surface devices.

This driver enables basic ACPI events and requests, such as battery
status requests/events, thermal events, lid status, and possibly more,
which would otherwise not work on these devices.

If you are not sure, say Y here.

config SURFACE_ACPI_VHF
bool "Surface Virtual HID Framework Driver"
depends on SURFACE_ACPI_SSH
depends on HID
default y
---help---
Surface Virtual HID Framework driver for 5th generation (or later)
Microsoft Surface devices.

This driver provides support for the Microsoft Virtual HID framework,
which is required for the Surface Laptop (1 and newer) keyboard.

If you are not sure, say Y here.

config SURFACE_ACPI_DTX
bool "Surface Detachment System (DTX) Driver"
depends on SURFACE_ACPI_SSH
depends on INPUT
default y
---help---
Surface Detachment System (DTX) driver for the Microsoft Surface Book
2. This driver provides support for proper detachment handling in
user-space, status-events relating to the base and support for
the safe-guard keeping the base attached when the discrete GPU
contained in it is running via the special /dev/surface-dtx device.

Also provides a standard input device to provide SW_TABLET_MODE events
upon device mode change.

If you are not sure, say Y here.

config SURFACE_ACPI_SID
bool "Surface Platform Integration Driver"
depends on SURFACE_ACPI_SSH
default y
---help---
Surface Platform Integration Driver for the Microsoft Surface Devices.
Currently only supports the Surface Book 2. This driver provides suport
for setting performance-modes via the perf_mode sysfs attribute.
Performance-modes directly influence the fan-profile of the device,
allowing to choose between higher performance or quieter operation.

If you are not sure, say Y here.

config SENSORS_HDAPS
tristate "Thinkpad Hard Drive Active Protection System (hdaps)"
depends on INPUT
Expand Down Expand Up @@ -1356,6 +1259,8 @@ config INTEL_ATOMISP2_PM
To compile this driver as a module, choose M here: the module
will be called intel_atomisp2_pm.

source "drivers/platform/x86/surface_sam/Kconfig"

endif # X86_PLATFORM_DEVICES

config PMC_ATOM
Expand Down
2 changes: 1 addition & 1 deletion drivers/platform/x86/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ obj-$(CONFIG_TC1100_WMI) += tc1100-wmi.o
obj-$(CONFIG_SONY_LAPTOP) += sony-laptop.o
obj-$(CONFIG_IDEAPAD_LAPTOP) += ideapad-laptop.o
obj-$(CONFIG_THINKPAD_ACPI) += thinkpad_acpi.o
obj-$(CONFIG_SURFACE_ACPI) += surface_acpi.o
obj-$(CONFIG_SENSORS_HDAPS) += hdaps.o
obj-$(CONFIG_FUJITSU_LAPTOP) += fujitsu-laptop.o
obj-$(CONFIG_FUJITSU_TABLET) += fujitsu-tablet.o
Expand Down Expand Up @@ -96,3 +95,4 @@ obj-$(CONFIG_INTEL_TURBO_MAX_3) += intel_turbo_max_3.o
obj-$(CONFIG_INTEL_CHTDC_TI_PWRBTN) += intel_chtdc_ti_pwrbtn.o
obj-$(CONFIG_I2C_MULTI_INSTANTIATE) += i2c-multi-instantiate.o
obj-$(CONFIG_INTEL_ATOMISP2_PM) += intel_atomisp2_pm.o
obj-$(CONFIG_SURFACE_SAM) += surface_sam/
Loading

0 comments on commit 4d25ae9

Please sign in to comment.