efi: Add quirks for some unicorn Apple EFI protocols

* grub and linux do the same thing.
* Based on MIT code here:
  https://github.com/0xbb/apple_set_os.efi/blob/master/apple_set_os.c

Change-Id: I299b3721197c5cdd4406d313d8769d4923f7edb4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2239
Reviewed-by: Adrien Destugues <[email protected]>
This commit is contained in:
Alexander von Gluck IV
2020-02-12 14:30:58 +00:00
committed by Alex von Gluck IV
parent e79dc1ff93
commit d38ba84d44
5 changed files with 99 additions and 0 deletions
@@ -0,0 +1,17 @@
// Copyright 2015 Bruno Bierbaumer
// Released under the terms of the MIT License
#pragma once
#include <efi/types.h>
#define EFI_APPLE_SET_OS_GUID \
{0xc5c5da95, 0x7d5c, 0x45e6, {0xb2, 0xf1, 0x3f, 0xd5, 0x2b, 0xb1, 0x00, 0x77}}
extern efi_guid AppleSetOSProtocol;
typedef struct efi_apple_set_os_protocol {
uint64_t Revision;
efi_status (*SetOSVersion) (char* version) EFIAPI;
efi_status (*SetOSVendor) (char* vendor) EFIAPI;
} efi_apple_set_os_protocol;