Enable apple-set-os on all macs, as apple-set-os is needed to use eGPUs and the iGPU.
(tested on iMac20,1) Signed-off-by: Atharva Tiwari <[email protected]> --- drivers/firmware/efi/libstub/x86-stub.c | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/drivers/firmware/efi/libstub/x86-stub.c b/drivers/firmware/efi/libstub/x86-stub.c index cef32e2c82d8..60e1a41bfe5f 100644 --- a/drivers/firmware/efi/libstub/x86-stub.c +++ b/drivers/firmware/efi/libstub/x86-stub.c @@ -303,32 +303,20 @@ static const struct efi_smbios_record *get_table_record(u8 type) static bool apple_match_product_name(void) { - static const char type1_product_matches[][15] = { - "MacBookPro11,3", - "MacBookPro11,5", - "MacBookPro13,3", - "MacBookPro14,3", - "MacBookPro15,1", - "MacBookPro15,3", - "MacBookPro16,1", - "MacBookPro16,4", - }; const struct efi_smbios_type1_record *record; - const u8 *product; + const u8 *vendor; record = (struct efi_smbios_type1_record *) (efi_get_smbios_record(1) ?: get_table_record(1)); if (!record) return false; - product = efi_get_smbios_string(record, product_name); - if (!product) + vendor = efi_get_smbios_string(record, manufacturer); + if (!vendor) return false; - for (int i = 0; i < ARRAY_SIZE(type1_product_matches); i++) { - if (!strcmp(product, type1_product_matches[i])) - return true; - } + if (!strcmp(vendor, "Apple Inc.")) + return true; return false; } -- 2.43.0
