diff --git a/src/mainboard/starlabs/adl/include/variants.h b/src/mainboard/starlabs/adl/include/variants.h index c95d15bd72..536ac891ae 100644 --- a/src/mainboard/starlabs/adl/include/variants.h +++ b/src/mainboard/starlabs/adl/include/variants.h @@ -3,6 +3,7 @@ #ifndef _BASEBOARD_VARIANTS_H_ #define _BASEBOARD_VARIANTS_H_ +#include #include /* @@ -14,4 +15,6 @@ const struct pad_config *variant_early_gpio_table(size_t *num); void devtree_update(void); +void starlabs_adl_mainboard_fill_ssdt(const struct device *dev); + #endif /* _BASEBOARD_VARIANTS_H_ */ diff --git a/src/mainboard/starlabs/adl/mainboard.c b/src/mainboard/starlabs/adl/mainboard.c index 8a3dadbc48..f8c9aea3ae 100644 --- a/src/mainboard/starlabs/adl/mainboard.c +++ b/src/mainboard/starlabs/adl/mainboard.c @@ -1,14 +1,8 @@ /* SPDX-License-Identifier: GPL-2.0-only */ -#if CONFIG(BOARD_STARLABS_LITE_ADL) -#include -#include -#endif - #include #include #include -#include #include static void init_mainboard(void *chip_info) @@ -22,21 +16,14 @@ static void init_mainboard(void *chip_info) devtree_update(); } -#if CONFIG(BOARD_STARLABS_LITE_ADL) -static void mainboard_fill_ssdt(const struct device *dev) +void __weak starlabs_adl_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); + (void)dev; } -#endif static void enable_mainboard(struct device *dev) { -#if CONFIG(BOARD_STARLABS_LITE_ADL) - dev->ops->acpi_fill_ssdt = mainboard_fill_ssdt; -#endif + dev->ops->acpi_fill_ssdt = starlabs_adl_mainboard_fill_ssdt; } struct chip_operations mainboard_ops = { diff --git a/src/mainboard/starlabs/adl/variants/i5/Makefile.mk b/src/mainboard/starlabs/adl/variants/i5/Makefile.mk index bfea7ef255..d6e2d5b29d 100644 --- a/src/mainboard/starlabs/adl/variants/i5/Makefile.mk +++ b/src/mainboard/starlabs/adl/variants/i5/Makefile.mk @@ -7,6 +7,7 @@ romstage-y += romstage.c ramstage-y += devtree.c ramstage-y += gpio.c ramstage-y += hda_verb.c +ramstage-y += mainboard_ssdt.c ramstage-y += ramstage.c $(call add_vbt_to_cbfs, vbt_native_res.bin, data_native_res.vbt) diff --git a/src/mainboard/starlabs/adl/variants/i5/mainboard_ssdt.c b/src/mainboard/starlabs/adl/variants/i5/mainboard_ssdt.c new file mode 100644 index 0000000000..a58becd7f6 --- /dev/null +++ b/src/mainboard/starlabs/adl/variants/i5/mainboard_ssdt.c @@ -0,0 +1,16 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#include +#include +#include +#include + +void starlabs_adl_mainboard_fill_ssdt(const struct device *dev) +{ + enum ps2_action_key ps2_action_keys[2] = { PS2_KEY_VOL_DOWN, PS2_KEY_VOL_UP }; + + (void)dev; + + acpigen_ps2_keyboard_dsd("_SB.PCI0.PS2K", ARRAY_SIZE(ps2_action_keys), ps2_action_keys, + false, false, false, false, false); +}