mb/starlabs/starlite_adl: Add SSDT entry for volume keys

Add entries to the SSDT so that the volume keys, which
use the PS2 keyboard interface, are correctly registered.

Change-Id: Ie80491559de50d72bf1ff97fd30c1a74e6b0f7a6
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/85695
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Sean Rhodes 2024-10-17 13:17:29 +01:00
commit 1e22b0256d

View file

@ -1,5 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-only */
#include <acpi/acpigen_ps2_keybd.h>
#include <device/device.h>
#include <soc/ramstage.h>
#include <option.h>
@ -22,6 +23,23 @@ static void init_mainboard(void *chip_info)
devtree_update();
}
static void mainboard_fill_ssdt(const struct device *dev)
{
enum ps2_action_key ps2_action_keys[2] = {
PS2_KEY_VOL_DOWN,
PS2_KEY_VOL_UP
};
acpigen_ps2_keyboard_dsd("_SB.PCI0.PS2K", ARRAY_SIZE(ps2_action_keys),
ps2_action_keys, false, false, false, false, false);
}
static void enable_mainboard(struct device *dev)
{
dev->ops->acpi_fill_ssdt = mainboard_fill_ssdt;
}
struct chip_operations mainboard_ops = {
.init = init_mainboard,
.enable_dev = enable_mainboard,
};