diff --git a/src/mainboard/starlabs/common/cfr/cfr.c b/src/mainboard/starlabs/common/cfr/cfr.c index 70899d21b1..44ee68323e 100644 --- a/src/mainboard/starlabs/common/cfr/cfr.c +++ b/src/mainboard/starlabs/common/cfr/cfr.c @@ -9,6 +9,11 @@ void __weak cfr_card_reader_update(struct sm_object *new_obj) (void)new_obj; } +void __weak cfr_touchscreen_update(struct sm_object *new_obj) +{ + (void)new_obj; +} + static const struct cfr_default_override starlabs_cfr_overrides[] = { CFR_OVERRIDE_ENUM("pciexp_aspm", ASPM_L0S_L1), CFR_OVERRIDE_END diff --git a/src/mainboard/starlabs/common/include/common/cfr.h b/src/mainboard/starlabs/common/include/common/cfr.h index 4613b94fbd..b62b39701e 100644 --- a/src/mainboard/starlabs/common/include/common/cfr.h +++ b/src/mainboard/starlabs/common/include/common/cfr.h @@ -8,6 +8,7 @@ #include void cfr_card_reader_update(struct sm_object *new_obj); +void cfr_touchscreen_update(struct sm_object *new_obj); void starlabs_cfr_register_overrides(void); static const struct sm_object accelerometer = SM_DECLARE_BOOL({ @@ -131,7 +132,7 @@ static const struct sm_object touchscreen = SM_DECLARE_BOOL({ .ui_name = "Touchscreen", .ui_helptext = "Enable or disable the built-in touch-screen", .default_value = true, -}); +}, WITH_CALLBACK(cfr_touchscreen_update)); static const struct sm_object vpu = SM_DECLARE_BOOL({ .opt_name = "vpu", diff --git a/src/mainboard/starlabs/starlite_adl/cfr.c b/src/mainboard/starlabs/starlite_adl/cfr.c index 9526992fd5..004cd75945 100644 --- a/src/mainboard/starlabs/starlite_adl/cfr.c +++ b/src/mainboard/starlabs/starlite_adl/cfr.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -19,6 +20,12 @@ void cfr_card_reader_update(struct sm_object *new_obj) new_obj->sm_bool.flags = CFR_OPTFLAG_SUPPRESS; } +void cfr_touchscreen_update(struct sm_object *new_obj) +{ + if (get_uint_option("accelerometer", 1) == 0) + new_obj->sm_bool.flags = CFR_OPTFLAG_SUPPRESS; +} + static struct sm_obj_form performance_group = { .ui_name = "Performance", .obj_list = (const struct sm_object *[]) {