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

Reply via email to