mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
platform: arm64: Add Acer Aspire 1 embedded controller driver
Acer Aspire 1 is a Snapdragon 7c based laptop. It uses an embedded controller to perform a set of various functions, such as: - Battery and charger monitoring; - Keyboard layout control (i.e. fn_lock settings); - USB Type-C DP alt mode HPD notifications; - Laptop lid status. Unfortunately, while all this functionality is implemented in ACPI, it's currently not possible to use ACPI to boot Linux on such Qualcomm devices. To allow Linux to still support the features provided by EC, this driver reimplments the relevant ACPI parts. This allows us to boot the laptop with Device Tree and retain all the features. Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Signed-off-by: Nikita Travkin <nikita@trvn.ru> Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Link: https://lore.kernel.org/r/20240315-aspire1-ec-v5-3-f93381deff39@trvn.ru Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
committed by
Hans de Goede
parent
363c8aea25
commit
2b3efb7c51
@@ -258,6 +258,12 @@ L: linux-acenic@sunsite.dk
|
||||
S: Maintained
|
||||
F: drivers/net/ethernet/alteon/acenic*
|
||||
|
||||
ACER ASPIRE 1 EMBEDDED CONTROLLER DRIVER
|
||||
M: Nikita Travkin <nikita@trvn.ru>
|
||||
S: Maintained
|
||||
F: Documentation/devicetree/bindings/platform/acer,aspire1-ec.yaml
|
||||
F: drivers/platform/arm64/acer-aspire1-ec.c
|
||||
|
||||
ACER ASPIRE ONE TEMPERATURE AND FAN DRIVER
|
||||
M: Peter Kaestle <peter@piie.net>
|
||||
L: platform-driver-x86@vger.kernel.org
|
||||
|
||||
@@ -16,4 +16,20 @@ menuconfig ARM64_PLATFORM_DEVICES
|
||||
|
||||
if ARM64_PLATFORM_DEVICES
|
||||
|
||||
config EC_ACER_ASPIRE1
|
||||
tristate "Acer Aspire 1 Embedded Controller driver"
|
||||
depends on I2C
|
||||
depends on DRM
|
||||
depends on POWER_SUPPLY
|
||||
depends on INPUT
|
||||
help
|
||||
Say Y here to enable the EC driver for the (Snapdragon-based)
|
||||
Acer Aspire 1 laptop. The EC handles battery and charging
|
||||
monitoring as well as some misc functions like the lid sensor
|
||||
and USB Type-C DP HPD events.
|
||||
|
||||
This driver provides battery and AC status support for the mentioned
|
||||
laptop where this information is not properly exposed via the
|
||||
standard ACPI devices.
|
||||
|
||||
endif # ARM64_PLATFORM_DEVICES
|
||||
|
||||
@@ -4,3 +4,5 @@
|
||||
#
|
||||
# This dir should only include drivers for EC-like devices.
|
||||
#
|
||||
|
||||
obj-$(CONFIG_EC_ACER_ASPIRE1) += acer-aspire1-ec.o
|
||||
|
||||
562
drivers/platform/arm64/acer-aspire1-ec.c
Normal file
562
drivers/platform/arm64/acer-aspire1-ec.c
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user