How-To Guide to running MacOS on Fujitsu Lifebook U554

How-To Guide to running MacOS on Fujitsu Lifebook U554
Photo by Raul Perțe / Unsplash

This is how to install Apple MacOS on the Fujitsu Lifebook U554 laptop.

Specifications of the laptop and whats working and whats not are as follows;

Working

  • Intel Core i5-4200U Haswell - Full power management with custom SSDT
  • Intel 8-Series Chipset USB3 & USB2 - Fully Working all ports
  • Intel HD 4400 Integrated Graphics - Full CI/QE Metal
  • Screen 13.3" 1366x768 pixel (LG Display) - Working with brightness control (Control Fn+Scr & Fn+Pause - Wrong Keys)
  • 8GB DDR3 1600MHz RAM (1 Slot)
  • 256GB SSD SATA III 2.5" (Samsung) - Working with TRIM Patch
  • Realtek ALC283 Audio - Internal Speakers & Microphone Working (Control Fn+F8 & Fn+F9 - Correct Keys)
  • Webcam FJ Camera UVC Camera [1266:4604] - Fully working
  • ALPS Touchpad with two finger scroll support
  • Battery GETAC CP568050

Issues

  • Original WiFi (Intel Corporation Wireless 7260 [8086:08b1]) DOES NOT WORK - YOU MUST INSTALL COMPATIBLE CARD
  • Display Prefs - EDID injection doesn't fix with either original or patched vendor-id/product-id
  • Headphone port has slight feedback when used
  • Keyboard needs adjusting for keymap for brightness to be Fn+F6 & Fn+F7 rather than Fn+Scr & Fn+Pause

LSPCI OUTPUT (Linux)

00:00.0 Host bridge [0600]: Intel Corporation Haswell-ULT DRAM Controller [8086:0a04] (rev 09)
00:02.0 VGA compatible controller [0300]: Intel Corporation Haswell-ULT Integrated Graphics Controller [8086:0a16] (rev 09)
00:03.0 Audio device [0403]: Intel Corporation Haswell-ULT HD Audio Controller [8086:0a0c] (rev 09)
00:14.0 USB controller [0c03]: Intel Corporation Lynx Point-LP USB xHCI HC [8086:9c31] (rev 04)
00:16.0 Communication controller [0780]: Intel Corporation Lynx Point-LP HECI #0 [8086:9c3a] (rev 04)
00:1b.0 Audio device [0403]: Intel Corporation Lynx Point-LP HD Audio Controller [8086:9c20] (rev 04)
00:1c.0 PCI bridge [0604]: Intel Corporation Lynx Point-LP PCI Express Root Port 1 [8086:9c10] (rev e4)
00:1c.3 PCI bridge [0604]: Intel Corporation Lynx Point-LP PCI Express Root Port 4 [8086:9c16] (rev e4)
00:1f.0 ISA bridge [0601]: Intel Corporation Lynx Point-LP LPC Controller [8086:9c43] (rev 04)
00:1f.2 SATA controller [0106]: Intel Corporation Lynx Point-LP SATA Controller 1 [AHCI mode] [8086:9c03] (rev 04)
00:1f.3 SMBus [0c05]: Intel Corporation Lynx Point-LP SMBus Controller [8086:9c22] (rev 04)
02:00.0 Network controller [0280]: Intel Corporation Wireless 7260 [8086:08b1] (rev 73)

LSUSB (Linux)

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
  bDeviceClass            9 Hub
  bDeviceProtocol         3
  iProduct                2 xHCI Host Controller
Bus 001 Device 004: ID 8087:07dc Intel Corp.
  bDeviceClass          224 Wireless
  bDeviceProtocol         1 Bluetooth
  iProduct                0
Bus 001 Device 003: ID 04f2:b3df Chicony Electronics Co., Ltd
  bDeviceClass          239 Miscellaneous Device
  bDeviceProtocol         1 Interface Association
  iProduct                1 FJ Camera
      (Bus Powered)
  bDeviceClass          239 Miscellaneous Device
  bDeviceProtocol         1 Interface Association
  (Bus Powered)
Bus 001 Device 002: ID 045e:077b Microsoft Corp. Comfort Mouse 3000
  bDeviceClass            0 (Defined at Interface level)
  bDeviceProtocol         0
  iProduct                2 Compact Optical Mouse 500
      (Bus Powered)
  (Bus Powered)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
  bDeviceClass            9 Hub
  bDeviceProtocol         1 Single TT
  iProduct                2 xHCI Host Controller

Create the USB installer

First thing is to create the USB Installer, easy there are plenty of guides and software to do the task. Try;

  • [Disk Creator](https://macdaddy.io/install-disk-creator/)
  • [Diskmaker X](http://diskmakerx.com/)
  • Using the terminal method

Download the [Clover Bootloader](https://sourceforge.net/projects/cloverefiboot/) and install Clover to the USB, copy the install kexts and the install config.plist.

Install MacOS

Make sure to partition the drive a GPT!

Name the partition 'Macintosh HD' using APFS

Post-Installation Tasks

Lets get all the devices working.

Install Clover Bootloader to the SSD we have just installed MacOs on. Download the [Clover Bootloader](https://sourceforge.net/projects/cloverefiboot/) and extract the .pkg. Run it. Choose the 'Macintosh HD' as created during install. Next click 'Customize'

Install for UEFI booting only
Install Clover in the ESP
Drivers64UEFI>>OsxAptioFix2Drv-64
Install RC scripts on target volume

Install.

Install Required Kexts

Mount the EFI partition, using terminal or use [Clover Configurator](http://mackie100projects.altervista.org/download-clover-configurator/)

Terminal way;

diskutil list
sudo –s (if needed) 
diskutil mount /dev/disk0s1

Install the kexts in /EFI/EFI/CLOVER/kexts/Other

ACPIBatteryManager.kext
AppleHDA_ALC283.kext
CodecCommander.kext
FakePCIID.kext
FakePCIID_Intel_HDMI_Audio.kext
FakePCIID_Intel_HD_Graphics.kext
FakeSMC.kext
IntelBacklight.kext
USBInjectAll.kext
VoodooPS2Controller.kext

ACPIBatteryManager an Advanced Configuration and Power Interface (ACPI) based battery manager by [RehabMan](https://github.com/RehabMan/OS-X-ACPI-Battery-Driver)

AppleHDA_ALC283 is the Audio kext to enable the Intel Haswell sound on the Realtek ALC283 codec by [RehabMan](https://github.com/RehabMan/Lenovo-U430-Touch-DSDT-Patch)

CodecCommander is required for the ALC283 kext for pin configurations by [RehabMan](https://github.com/RehabMan/EAPD-Codec-Commander)

FakePCIID allows for injecting alternative PCI ID's into kexts rather than patching, mainly used for Intel Haswell graphics by [RehabMan](https://github.com/RehabMan/OS-X-Fake-PCI-ID)

FakeSMC is the Emulated System Management Controller and is responsible for many low-level functions on Intel-based Macs by [Netkas](http://netkas.org/?p=141)

IntelBacklight is a backlight control kext for Haswell graphics HD4400 by [RehabMan](https://github.com/RehabMan/OS-X-Intel-Backlight)

USBInjectAll is a kext for injecting Intel USB ports into the XCH controller by [RehabMan](https://github.com/RehabMan/OS-X-USB-Inject-All)

VoodooPS2Controller is a PS2 Controller driver to enable working Trackpads, Mouse & Keyboards by [RehabMan](https://github.com/RehabMan/OS-X-Voodoo-PS2-Controller)

Audio Configuration

As well as the AppleHDA_ALC283.kext we also need some extra info in the config.plist

  • Inject the Audio ID Layout to 3
<key>Audio</key>
<dict>
<key>Inject</key>
<string>3</string>
</dict>
  • Hotpatch the AppleHDA kext
<dict>
  <key>Comment</key>
  <string>AppleHDA ALC283 (1 of 4) 0x11d41984 to 0x10ec0283</string>
  <key>Disabled</key>
  <false/>
  <key>Find</key>
  <data>
  PYQZ1BE=
  </data>
  <key>Name</key>
  <string>com.apple.driver.AppleHDA</string>
  <key>Replace</key>
  <data>
  PYMC7BA=
  </data>
</dict>
<dict>
  <key>Comment</key>
  <string>AppleHDA ALC283 (2 of 4) 0x10ec0884 to zero</string>
  <key>Disabled</key>
  <false/>
  <key>Find</key>
  <data>
  PYQI7BA=
  </data>
  <key>MatchOS</key>
  <string>10.9.x,10.10.x</string>
  <key>Name</key>
  <string>com.apple.driver.AppleHDA</string>
  <key>Replace</key>
  <data>
  PQAAAAA=
  </data>
</dict>
<dict>
  <key>Comment</key>
  <string>AppleHDA ALC283 (3 of 4) 0x10ec0885 to zero</string>
  <key>Disabled</key>
  <false/>
  <key>Find</key>
  <data>
  PYUI7BA=
  </data>
  <key>MatchOS</key>
  <string>10.9.x,10.10.x,10.11.x,10.12.x</string>
  <key>Name</key>
  <string>com.apple.driver.AppleHDA</string>
  <key>Replace</key>
  <data>
  PQAAAAA=
  </data>
</dict>
<dict>
  <key>Comment</key>
  <string>AppleHDA ALC283 (4 of 4) 0x11d41983 to zero</string>
  <key>Disabled</key>
  <false/>
  <key>Find</key>
  <data>
  PYMZ1BE=
  </data>
  <key>MatchOS</key>
  <string>10.11.x</string>
  <key>Name</key>
  <string>com.apple.driver.AppleHDA</string>
  <key>Replace</key>
  <data>
  PQAAAAA=
  </data>
</dict>

Graphics Configuration

As well as the kexts we also need some extra info in the config.plist

  • Hotpatch the Intel Azul Framebuffer for HDMI Audio & Fix boot graphic glitch
<dict>
	<key>Comment</key>
	<string>HDMI-audio, port 0105(12), 0x0a260006</string>
	<key>Find</key>
	<data>
	AQUJAAAEAACHAAAA
	</data>
	<key>Name</key>
	<string>com.apple.driver.AppleIntelFramebufferAzul</string>
	<key>Replace</key>
	<data>
	AQUSAAAIAACHAAAA
	</data>
</dict>
<dict>
  <key>Comment</key>
  <string>0x0a260006 9MB cursor bytes, vbo</string>
  <key>Disabled</key>
  <false/>
  <key>Find</key>
  <data>
  BgAmCgEDAwMAAAACAAAwAQAAYAA=
  </data>
  <key>Name</key>
  <string>com.apple.driver.AppleIntelFramebufferAzul</string>
  <key>Replace</key>
  <data>
  BgAmCgEDAwMAAAACAAAwAQAAkAA=
  </data>
</dict>
<dict>
  <key>Comment</key>
  <string>Boot graphics glitch, 10.12</string>
  <key>Disabled</key>
  <false/>
  <key>Find</key>
  <data>
  AQAAdSU=
  </data>
  <key>MatchOS</key>
  <string>10.12.x</string>
  <key>Name</key>
  <string>com.apple.iokit.IOGraphicsFamily</string>
  <key>Replace</key>
  <data>
  AQAA6yU=
  </data>
</dict>
  • Intel Fake PCI ID
<key>IntelGFX</key>
<string>0x04128086</string>

USB Configuration

The USB ports are as follows:

|PORTNAME|USB TYPE|LOCATION|USB CONNECTOR|NOTES|

|---|---|---|---|---|

|HS01|USB2|LEFT FRONT USB3|3|SAME AS SSP1|

|HS02|USB2|LEFT BACK USB3|3|SAME AS SSP2|

|HS03|USB2|RIGHT USB2|0|USB2 ONLY|

|HS05|USB2|CAMERA|255|INTERNAL|

|SSP1|USB3|LEFT FRONT USB3|3|SAME AS HS01|

|SSP2|USB3|LEFT BACK USB3|3|SAME AS HS02|


HS01/SSP1

HS02/SSP2

HS03

HS05


We need to add SSDT-UIAC.aml to /EFI/EFI/CLOVER/ACPI/patched to inject the correct USB port, USB type and then map them all to the XCH controller and disable ECH01 & ECH02.

/*
 * Intel ACPI Component Architecture
 * AML/ASL+ Disassembler version 20161210-64(RM)
 * Copyright (c) 2000 - 2016 Intel Corporation
 *
 * Disassembling to non-symbolic legacy ASL operators
 *
 * Disassembly of iASL20Bncf.aml, Sun Feb 26 12:47:17 2017
 *
 * Original Table Header:
 *     Signature        "SSDT"
 *     Length           0x00000222 (546)
 *     Revision         0x02
 *     Checksum         0x27
 *     OEM ID           "hack"
 *     OEM Table ID     "UIAC"
 *     OEM Revision     0x00000000 (0)
 *     Compiler ID      "INTL"
 *     Compiler Version 0x20161210 (538317328)
 */
DefinitionBlock ("", "SSDT", 2, "hack", "UIAC", 0x00000000)
{
    External (_SB_.PCI0, DeviceObj)    // (from opcode)
    External (_SB_.PCI0.EH01, DeviceObj)    // (from opcode)
    External (_SB_.PCI0.LPCB, DeviceObj)    // (from opcode)
    External (EH01, DeviceObj)    // Warning: Unknown object
    External (LPCB, DeviceObj)    // Warning: Unknown object

    Device (UIAC)
    {
        Name (_HID, "UIA00000")  // _HID: Hardware ID
        Name (RMCF, Package (0x02)
        {
            "XHC",
            Package (0x02)
            {
                "ports",
                Package (0x0C)
                {
                    "HS01",
                    Package (0x04)
                    {
                        "UsbConnector",
                        0x03,
                        "port",
                        Buffer (0x04)
                        {
                             0x01, 0x00, 0x00, 0x00                         
                        }
                    },

                    "HS02",
                    Package (0x04)
                    {
                        "UsbConnector",
                        0x03,
                        "port",
                        Buffer (0x04)
                        {
                             0x02, 0x00, 0x00, 0x00                         
                        }
                    },

                    "HS03",
                    Package (0x04)
                    {
                        "UsbConnector",
                        Zero,
                        "port",
                        Buffer (0x04)
                        {
                             0x03, 0x00, 0x00, 0x00                         
                        }
                    },

                    "HS05",
                    Package (0x04)
                    {
                        "UsbConnector",
                        0xFF,
                        "port",
                        Buffer (0x04)
                        {
                             0x05, 0x00, 0x00, 0x00                         
                        }
                    },

                    "SSP1",
                    Package (0x04)
                    {
                        "UsbConnector",
                        0x03,
                        "port",
                        Buffer (0x04)
                        {
                             0x0A, 0x00, 0x00, 0x00                         
                        }
                    },

                    "SSP2",
                    Package (0x04)
                    {
                        "UsbConnector",
                        0x03,
                        "port",
                        Buffer (0x04)
                        {
                             0x0A, 0x00, 0x00, 0x00                         
                        }
                    }
                }
            }
        })
    }

    Scope (_SB.PCI0)
    {
        Scope (EH01)
        {
            OperationRegion (PSTS, PCI_Config, 0x54, 0x02)
            Field (PSTS, WordAcc, NoLock, Preserve)
            {
                PSTE,   2
            }
        }

        Scope (LPCB)
        {
            OperationRegion (RMLP, PCI_Config, 0xF0, 0x04)
            Field (RMLP, DWordAcc, NoLock, Preserve)
            {
                RCB1,   32
            }

            OperationRegion (FDM1, SystemMemory, Add (And (RCB1, 0xFFFFFFFFFFFFC000), 0x3418), 0x04)
            Field (FDM1, DWordAcc, NoLock, Preserve)
            {
                    ,   15,
                FDE1,   1
            }
        }

        Device (RMD1)
        {
            Name (_HID, "RMD10000")  // _HID: Hardware ID
            Method (_INI, 0, NotSerialized)  // _INI: Initialize
            {
                Store (0x03, ^^EH01.PSTE)
                Store (One, ^^LPCB.FDE1)
            }
        }
    }
}

Touchpad Configuration

  • Edit the .plist in VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Mouse.kext/Contents/Info.plist
<key>ActLikeTrackpad</key>
<true/>
<key>DefaultResolution</key>
<integer>240</integer>
<key>ForceDefaultResolution</key>
<true/>
<key>ForceSetResolution</key>
<true/>
  • Copy the old trackpad preference pane from 10.11 to /System/Library/PreferencePanes/ (Make sure to backup the original!, may not be required on mojave)
  • Run the following to complete installation of VoodooPS2
sudo rm -rf /System/Library/Extensions/AppleACPIPS2Nub.kext
sudo rm -rf /System/Library/Extensions/ApplePS2Controller.kext
sudo cp org.rehabman.voodoo.driver.Daemon.plist /Library/LaunchDaemons
sudo cp VoodooPS2Daemon /usr/bin

DSDT Fixes in config.plist

This is the full config.plist with the fixes above and for;

  • Renaming GPU to IGPU
  • USB fixes EH01 & EH02
  • Change BD03 to HDAU
  • Change _DSM to XDSM
  • Trim enabler for SSD
  • SMBIOS info for MacbookAir6,2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>ACPI</key>
	<dict>
		<key>DSDT</key>
		<dict>
			<key>Fixes</key>
			<dict>
				<key>AddDTGP_0001</key>
				<true/>
				<key>AddIMEI_80000</key>
				<true/>
				<key>AddPNLF_1000000</key>
				<true/>
				<key>DeleteUnused_400000</key>
				<true/>
				<key>FIX_INTELGFX_100000</key>
				<true/>
				<key>FIX_RTC_20000</key>
				<true/>
				<key>FIX_S3D_2000000</key>
				<true/>
				<key>FIX_TMR_40000</key>
				<true/>
				<key>FIX_WAK_200000</key>
				<true/>
				<key>FixHPET_0010</key>
				<true/>
				<key>FixIPIC_0040</key>
				<true/>
				<key>FixRegions_10000000</key>
				<true/>
				<key>FixShutdown_0004</key>
				<true/>
				<key>NewWay_80000000</key>
				<true/>
			</dict>
			<key>Name</key>
			<string>DSDT.aml</string>
			<key>Patches</key>
			<array>
				<dict>
					<key>Comment</key>
					<string>change EHC1 to EH01</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					RUhDMQ==
					</data>
					<key>Replace</key>
					<data>
					RUgwMQ==
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change EHC2 to EH02</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					RUhDMg==
					</data>
					<key>Replace</key>
					<data>
					RUgwMg==
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change _OSI to XOSI</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					X09TSQ==
					</data>
					<key>Replace</key>
					<data>
					WE9TSQ==
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change PCI0.GFX0 to PCI0.IGPU</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					UENJMC5HRlgw
					</data>
					<key>Replace</key>
					<data>
					UENJMC5JR1BV
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change GFX0 to IGPU</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					R0ZYMA==
					</data>
					<key>Replace</key>
					<data>
					SUdQVQ==
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change B0D3 to HDAU</string>
					<key>Disabled</key>
					<false/>
					<key>Find</key>
					<data>
					QjBEMw==
					</data>
					<key>Replace</key>
					<data>
					SERBVQ==
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change Method(XSEL,0,S) to XXEL</string>
					<key>Find</key>
					<data>
					WFNFTAg=
					</data>
					<key>Replace</key>
					<data>
					WFhFTAg=
					</data>
				</dict>
				<dict>
					<key>Comment</key>
					<string>change _DSM to XDSM</string>
					<key>Find</key>
					<data>
					X0RTTQ==
					</data>
					<key>Replace</key>
					<data>
					WERTTQ==
					</data>
				</dict>
			</array>
		</dict>
		<key>SSDT</key>
		<dict>
			<key>DropOem</key>
			<false/>
			<key>Generate</key>
			<false/>
			<key>PluginType</key>
			<string>1</string>
		</dict>
	</dict>
	<key>Boot</key>
	<dict>
		<key>Arguments</key>
		<string>dart=0 nv_disable=1</string>
		<key>DefaultVolume</key>
		<string>Macintosh HD</string>
		<key>Legacy</key>
		<string>PBR</string>
		<key>NeverHibernate</key>
		<true/>
		<key>Timeout</key>
		<integer>3</integer>
		<key>XMPDetection</key>
		<false/>
	</dict>
	<key>CPU</key>
	<dict/>
	<key>Devices</key>
	<dict>
		<key>Audio</key>
		<dict>
			<key>Inject</key>
			<string>3</string>
		</dict>
		<key>FakeID</key>
		<dict>
			<key>ATI</key>
			<string>0x0</string>
			<key>IMEI</key>
			<string>0x0</string>
			<key>IntelGFX</key>
			<string>0x04128086</string>
			<key>LAN</key>
			<string>0x0</string>
			<key>NVidia</key>
			<string>0x0</string>
			<key>SATA</key>
			<string>0x0</string>
			<key>WIFI</key>
			<string>0x0</string>
			<key>XHCI</key>
			<string>0x0</string>
		</dict>
		<key>USB</key>
		<dict>
			<key>AddClockID</key>
			<false/>
			<key>FixOwnership</key>
			<false/>
			<key>Inject</key>
			<false/>
		</dict>
	</dict>
	<key>GUI</key>
	<dict>
		<key>Hide</key>
		<array>
			<string>\EFI\BOOT\BOOTX64.EFI</string>
		</array>
		<key>Language</key>
		<string>en:0</string>
		<key>Mouse</key>
		<dict>
			<key>DoubleClick</key>
			<integer>500</integer>
			<key>Enabled</key>
			<true/>
			<key>Mirror</key>
			<false/>
			<key>Speed</key>
			<integer>8</integer>
		</dict>
		<key>Scan</key>
		<dict>
			<key>Entries</key>
			<true/>
			<key>Legacy</key>
			<string>First</string>
			<key>Linux</key>
			<false/>
			<key>Tool</key>
			<true/>
		</dict>
		<key>ScreenResolution</key>
		<string>1366x768</string>
		<key>Theme</key>
		<string>embedded</string>
	</dict>
	<key>Graphics</key>
	<dict>
		<key>CustomEDID</key>
		<data>
		</data>
		<key>Inject</key>
		<dict>
			<key>ATI</key>
			<false/>
			<key>Intel</key>
			<true/>
			<key>NVidia</key>
			<false/>
		</dict>
		<key>InjectEDID</key>
		<true/>
		<key>ig-platform-id</key>
		<string>0x0a260006</string>
	</dict>
	<key>KernelAndKextPatches</key>
	<dict>
		<key>AppleRTC</key>
		<true/>
		<key>KernelPm</key>
		<true/>
		<key>KextsToPatch</key>
		<array>
			<dict>
				<key>Comment</key>
				<string>Enable TRIM for SSD</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				AEFQUExFIFNTRAA=
				</data>
				<key>Name</key>
				<string>IOAHCIBlockStorage</string>
				<key>Replace</key>
				<data>
				AAAAAAAAAAAAAAA=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>AppleHDA ALC283 (1 of 4) 0x11d41984 to 0x10ec0283</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				PYQZ1BE=
				</data>
				<key>Name</key>
				<string>com.apple.driver.AppleHDA</string>
				<key>Replace</key>
				<data>
				PYMC7BA=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>AppleHDA ALC283 (2 of 4) 0x10ec0884 to zero</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				PYQI7BA=
				</data>
				<key>MatchOS</key>
				<string>10.9.x,10.10.x</string>
				<key>Name</key>
				<string>com.apple.driver.AppleHDA</string>
				<key>Replace</key>
				<data>
				PQAAAAA=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>AppleHDA ALC283 (3 of 4) 0x10ec0885 to zero</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				PYUI7BA=
				</data>
				<key>MatchOS</key>
				<string>10.9.x,10.10.x,10.11.x,10.12.x</string>
				<key>Name</key>
				<string>com.apple.driver.AppleHDA</string>
				<key>Replace</key>
				<data>
				PQAAAAA=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>AppleHDA ALC283 (4 of 4) 0x11d41983 to zero</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				PYMZ1BE=
				</data>
				<key>MatchOS</key>
				<string>10.11.x</string>
				<key>Name</key>
				<string>com.apple.driver.AppleHDA</string>
				<key>Replace</key>
				<data>
				PQAAAAA=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>0x0a260006 9MB cursor bytes, vbo</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				BgAmCgEDAwMAAAACAAAwAQAAYAA=
				</data>
				<key>Name</key>
				<string>com.apple.driver.AppleIntelFramebufferAzul</string>
				<key>Replace</key>
				<data>
				BgAmCgEDAwMAAAACAAAwAQAAkAA=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>Boot graphics glitch, 10.12</string>
				<key>Disabled</key>
				<false/>
				<key>Find</key>
				<data>
				AQAAdSU=
				</data>
				<key>MatchOS</key>
				<string>10.12.x</string>
				<key>Name</key>
				<string>com.apple.iokit.IOGraphicsFamily</string>
				<key>Replace</key>
				<data>
				AQAA6yU=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>HDMI-audio, port 0105(12), 0x0a260006</string>
				<key>Find</key>
				<data>
				AQUJAAAEAACHAAAA
				</data>
				<key>Name</key>
				<string>com.apple.driver.AppleIntelFramebufferAzul</string>
				<key>Replace</key>
				<data>
				AQUSAAAIAACHAAAA
				</data>
			</dict>
		</array>
	</dict>
	<key>RtVariables</key>
	<dict>
		<key>BooterConfig</key>
		<string>0x28</string>
		<key>CsrActiveConfig</key>
		<string>0x3</string>
		<key>MLB</key>
		<string></string>
		<key>ROM</key>
		<string></string>
	</dict>
	<key>SMBIOS</key>
	<dict>
		<key>BiosReleaseDate</key>
		<string>12/22/2016</string>
		<key>BiosVendor</key>
		<string>Apple Inc.</string>
		<key>BiosVersion</key>
		<string>MBA61.88Z.0099.B26.1612221826</string>
		<key>Board-ID</key>
		<string>Mac-7DF21CB3ED6977E5</string>
		<key>BoardManufacturer</key>
		<string>Apple Inc.</string>
		<key>BoardSerialNumber</key>
		<string></string>
		<key>BoardType</key>
		<integer>10</integer>
		<key>ChassisAssetTag</key>
		<string>Air-Enclosure</string>
		<key>ChassisManufacturer</key>
		<string>Apple Inc.</string>
		<key>ChassisType</key>
		<string>0x10</string>
		<key>Family</key>
		<string>MacBook Air</string>
		<key>LocationInChassis</key>
		<string>Part Component</string>
		<key>Manufacturer</key>
		<string>Apple Inc.</string>
		<key>Mobile</key>
		<true/>
		<key>ProductName</key>
		<string>MacBookAir6,2</string>
		<key>SerialNumber</key>
		<string></string>
		<key>SmUUID</key>
		<string></string>
		<key>Trust</key>
		<true/>
		<key>Version</key>
		<string>1.0</string>
	</dict>
	<key>SystemParameters</key>
	<dict>
		<key>CustomUUID</key>
		<string></string>
		<key>InjectKexts</key>
		<string>Yes</string>
		<key>InjectSystemID</key>
		<true/>
	</dict>
</dict>
</plist>

Final Configuration

Reboot and then once back in desktop most things should be working now.

Rebuild kextcache and repair permissions

sudo touch /System/Library/Extensions && sudo kextcache -u /

Now reboot again and everything should be mostly working.

Two things left to complete, the first is SSDT for working power states using [Pikeralpha](https://github.com/Piker-Alpha/ssdtPRGen.sh) script.

curl -o ~/ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/Beta/ssdtPRGen.sh
chmod +x ~/ssdtPRGen.sh
./ssdtPRGen.sh

The generated SSDT.aml should be placed on the EFI partition at /EFI/Clover/ACPI/patched/SSDT.aml

The second is time to refine your SMBIOS to define the MacbookAir6,2 and generate some valid serial/MLB/ROM numbers. This solves various issues including imessage & facetime.