Contribute
Register

[GUIDE] Mac OS 10.8 on Sony Vaio SA/SB/SE

Status
Not open for further replies.
Cheers buddy, i figured it would probably be linux, luckily I got triple boot with Win7x64 and Ubuntu so quick and easy for me, native and current DSDT in attached zip file.

Jay



I can tell from the diff that your DSDT is (so far) not subject to random changes because of config/machine/bios upgrades.

There are some differences between the base DSDT that was original and your current native one though.

If you want to see them, you could use diffmerge (free from Source Gear). It is an interesting task, especially if you're learning and know little about what you have. Note that I renamed the files for convenience from the command line (short names with no spaces):

Code:
# in Terminal
iasl -d native.aml
iasl -d patched.aml
diffmerge native.dsl patched.dsl

Then you can scroll through the diffs and see their context...

Diffs that seem related to BIOS upgrades (eg. changes made by OEM in native since patched was created):
- B1DR, B2DR EC registers and related code in battery methods
- large section at the end with a few differences, but this is probably all WMI code and not used by OS X
- Notify (HDEF, 0x02) added to _WAK (not sure what this is for...; could be patch)


The patches applied are fairly normal:
- HDEF patch for audio layout-id
- GFX0 -> IGPU rename
- ADP1 _PRW addition (for native AC adapter detection)
- PWRB change of _HID to _CID (is this power button patch?)
- HPET (rewritten and moved)
- IRQ patch
- PS2K has-embedded-fn-keys _DSM (not needed as current drivers don't look at this)
- _HID fix for PS2M
- PNLF patch
- sleep fix in _PTS
- turning off PEGP (nvidia/amd) card in various places
- changing brightness to BRTL in _WAK (not sure if this makes sense, given that OS X is not using ACPI brightness... unless you are using ACPIBacklight.kext instead of native AppleBackLight?)
- Notify (HDEF, 0x02) added to _WAK (not sure what this is for...; could be native change)
- some PNOT changes (not sure what this is for either)
- _SB.PCI0._INI removal of "Windows*" checks OSYS=0x7D9 (Windows 2009)
- removed extra CPU declares from scope _PR (not necessary, AFAIK)
- _PLD buffer vs. package fix (not the correct one, but probably does not matter)
- EHC[1|2] injections
- AR9287 AirPort inject
- SAT0 (SATA) device mapping to 0x2681 (necessary?). Note: maps standard AHCI to ICH6. Not sure why this would be done, unless by default the SATA device wasn't recognized.
- SMBUS patch
- snb-platform-id inject with EDID and probably a lot more than is necessary... (interesting though... it makes me wonder how much of this stuff is useful... eg. what part of it solves real problems)
- _HID LCD1234 added to DD02
- LPC device mapping to 0x1c49 (necessary? if it is necessary, it won't work on 10.8.5+ as it is missing "name", "pci8086,1c49")
 
RehabMan,

Thanks for taking a look and giving me your thoughts, some of the changes you mention i recall from the development we did last year, i do seem to remember a ton of stuff when it came to the EDID, i sent it all to CW so he may have put in unnecessary code, i cant say for sure as i didn't do the work. Like you say a lot of the patches are standard stuff, the items you question i cant say for sure if there necessary or not.

- changing brightness to BRTL in _WAK (not sure if this makes sense, given that OS X is not using ACPI brightness... unless you are using ACPIBacklight.kext instead of native AppleBackLight?)

I think this was to restore the brightness after wake from sleep, we are not using ACPIBacklight.kext

I must say i like MACiASL, much better than the old DSDT editor i've been using since i can remember, i had a go at patching the native DSDT with MACiASL and got it down to a few errors quite quickly, did all the standard stuff like renames and corrected the NotSerialised errors and used your repo to patch the stuff i understand like HD3000 ...etc. I've attached the DSL but not really sure where to go from here, do you think its worth taking the edits from CW's DSDT and inserting them into the new one ?, or do you think what we got is OK ?

I'll do the diffs tomorrow (its 2AM here in the UK) as brain is hurting now, I'm starting to drift out of my comfort zone when it gets down to the nitty gritty stuff in the DSDT not even sure how to fix the remaining few errors ( maybe return (zero) ? )

Cheers
Jay


 

Attachments

  • Jay-New_DSDT.dsl.zip
    25.3 KB · Views: 60
...

I must say i like MACiASL, much better than the old DSDT editor i've been using since i can remember, i had a go at patching the native DSDT with MACiASL and got it down to a few errors quite quickly, did all the standard stuff like renames and corrected the NotSerialised errors and used your repo to patch the stuff i understand like HD3000 ...etc. I've attached the DSL but not really sure where to go from here, do you think its worth taking the edits from CW's DSDT and inserting them into the new one ?, or do you think what we got is OK ?

I think what you have is OK, although if you want to continue with trying to get current ACPIPlatform working, I would focus on those things in _WAK.

You could certainly create a set of patches that could be used with your current native DSDT, but you should use the diffs as a way to discover what the patches should be.
 
RehabMan,

Gosh why is the DSDT stuff so confusing ?

I've spent the whole morning trying to build a new DSDT but what ever i do I cant get OSX to boot with my new DSDT. Am I correct in assuming that I can take my native DSDT extracted from Linux correct the compile errors, then use your repo and DSDT patches after which it should work ?, thats how i read your instructions here :-

https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/wiki/How-to-patch-your-DSDT

Sort of makes sense as Ubuntu works perfectly

Obviously some of your guide is HP specific but I used your HD3000 High Res, GFX0 rename, Sony S battery ... etc patches and it compiles now with no errors and no warnings, but when i try to use the new DSDT (with the M.L ACPIPlatform V1.8) I get the dreaded Waiting for Root Device ..

If I try to compile the existing (current) DSDT written by CW I get a load of problems with buffers which i do not understand at all and it will always fail to compile with errors, i think there are some coding errors in there, as i said my knowledge is really limited when it comes to DSDT's. All my other CustoMAC builds use Gigabyte Z77-UD5H which don't need custom DSDT or H77N-Wifi for which there is a DSDT in the TonyMacX86 database.

As you say it would be beneficially to try and get it working with the current ACPIPlatform so that we have got a good chance of running Mavericks when it finally goes public.

Really stuck now . . . . any suggestions ?

Cheers
Jay


 

Attachments

  • Archive.zip
    79.5 KB · Views: 60
RehabMan,

Gosh why is the DSDT stuff so confusing ?

I've spent the whole morning trying to build a new DSDT but what ever i do I cant get OSX to boot with my new DSDT. Am I correct in assuming that I can take my native DSDT extracted from Linux correct the compile errors, then use your repo and DSDT patches after which it should work ?, thats how i read your instructions here :-

https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/wiki/How-to-patch-your-DSDT

Sort of makes sense as Ubuntu works perfectly

Either way you get a native DSDT is the same (Windows, Ubuntu, OS X [without a patched one already installed]). The bits come from BIOS and so are the same on each OS.

Obviously some of your guide is HP specific but I used your HD3000 High Res ... etc patches and it compiles now with no errors, no warnings but when i try to use the new DSDT with the M.L ACPIPlatform (V1.8) I get the dreaded Waiting for Root Device ..

What is your native SATA device ID? Use 'lspci -nn' to get a PCI device inventory. Having accurate information is very important to know what to do.

If I try to compile the existing (current) DSDT written by CW I get a load of problems with buffers which i do not understand at all and it will always fail to compile with errors,

Sounds like a buffer/package error with _PLD (just guessing) which is easily fixed. But you don't want a DSDT from another computer anyway, except as an information source about what you might have to patch.

Really stuck now . . . . any suggestions ?

See above.
 
RehabMan,

PCI Dump from Linux ...

Code:
jay@Jay-Linux:~$ lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation 2nd Generation Core Processor Family DRAM Controller [8086:0104] (rev 09)
00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port [8086:0101] (rev 09)
00:02.0 VGA compatible controller [0300]: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0126] (rev 09)
00:16.0 Communication controller [0780]: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 [8086:1c3a] (rev 04)
00:1a.0 USB controller [0c03]: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 [8086:1c2d] (rev 04)
00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 04)
00:1c.0 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 [8086:1c10] (rev b4)
00:1c.1 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 [8086:1c12] (rev b4)
00:1c.2 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 3 [8086:1c14] (rev b4)
00:1c.3 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 [8086:1c16] (rev b4)
00:1d.0 USB controller [0c03]: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 [8086:1c26] (rev 04)
00:1f.0 ISA bridge [0601]: Intel Corporation HM67 Express Chipset Family LPC Controller [8086:1c4b] (rev 04)
00:1f.2 RAID bus controller [0104]: Intel Corporation 82801 Mobile SATA Controller [RAID mode] [8086:282a] (rev 04)
00:1f.3 SMBus [0c05]: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller [8086:1c22] (rev 04)
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI Whistler [AMD Radeon HD 6600M Series] [1002:6741]
02:00.0 Network controller [0280]: Atheros Communications Inc. AR9287 Wireless Network Adapter (PCI-Express) [168c:002e] (rev 01)
03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5116 PCI Express Card Reader [10ec:5209] (rev 01)
04:00.0 USB controller [0c03]: NEC Corporation uPD720200 USB 3.0 Host Controller [1033:0194] (rev 04)
05:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 06)
jay@Jay-Linux:~$
Cheers
Jay
 
RehabMan,

PCI Dump from Linux ...

Code:
jay@Jay-Linux:~$ lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation 2nd Generation Core Processor Family DRAM Controller [8086:0104] (rev 09)
00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port [8086:0101] (rev 09)
00:02.0 VGA compatible controller [0300]: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0126] (rev 09)
00:16.0 Communication controller [0780]: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 [8086:1c3a] (rev 04)
00:1a.0 USB controller [0c03]: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 [8086:1c2d] (rev 04)
00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 04)
00:1c.0 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 [8086:1c10] (rev b4)
00:1c.1 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 [8086:1c12] (rev b4)
00:1c.2 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 3 [8086:1c14] (rev b4)
00:1c.3 PCI bridge [0604]: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 [8086:1c16] (rev b4)
00:1d.0 USB controller [0c03]: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 [8086:1c26] (rev 04)
00:1f.0 ISA bridge [0601]: Intel Corporation HM67 Express Chipset Family LPC Controller [8086:1c4b] (rev 04)
00:1f.2 RAID bus controller [0104]: Intel Corporation 82801 Mobile SATA Controller [RAID mode] [8086:282a] (rev 04)
00:1f.3 SMBus [0c05]: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller [8086:1c22] (rev 04)
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI Whistler [AMD Radeon HD 6600M Series] [1002:6741]
02:00.0 Network controller [0280]: Atheros Communications Inc. AR9287 Wireless Network Adapter (PCI-Express) [168c:002e] (rev 01)
03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5116 PCI Express Card Reader [10ec:5209] (rev 01)
04:00.0 USB controller [0c03]: NEC Corporation uPD720200 USB 3.0 Host Controller [1033:0194] (rev 04)
05:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 06)
jay@Jay-Linux:~$
Cheers
Jay

Your SATA controller is in RAID mode (8086:28a2). If you can't change it in BIOS then it has to be mapped to an ID that is recognized by the system.

It can be fixed with DSDT patch, or a codeless kext. I would choose the latter, mostly because I already wrote a codeless kext for this device. See this post: http://www.tonymacx86.com/laptop-co...-7202se-compatible-post652734.html#post652734

You can place it in /Extra/Extensions on your USB installer (to get past waiting for root), and once you boot into your fresh install to the desktop, you can install it to /S/L/E with Kext Wizard.
 
RehabMan,

Humm yes I see that and I fully understand and have known for ages that OSX must have the SATA Device in AHCI mode. Running DCPI Manager on my current ML Install which boots fine (as did Lion 10.7.4)

Current-PCI-List.jpg

Do you think that this is an issue ?
Is it possible that there are existing DSDT edits in CW's Current DSDT that make it work now ?

Should I still try your codeless kext ?

Jay
 
RehabMan,

Humm yes I see that and I fully understand and have known for ages that OSX must have the SATA Device in AHCI mode. Running DCPI Manager on my current ML Install which boots fine (as did Lion 10.7.4)

View attachment 69373

Do you think that this is an issue ?

Is it possible that there are existing DSDT edits in CW's Current DSDT that make it work now ?

Should I still try your codeless kext ?

Jay

I think the DSDT is making it work:
Code:
        Device (SAT0)
        {
            Name (_ADR, 0x001F0002)
            Method (_DSM, 4, NotSerialized)
            {
                Store (Package (0x02)
                    {
                        "device-id", 
                        Buffer (0x04)
                        {
                            0x81, 0x26, 0x00, 0x00
                        }
                    }, Local0)
                DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                Return (Local0)
            }
        }

Of course, during installation, you don't (usually) have the DSDT to help...
 
Rehab Man,

Good spot, ok i've done a bit more work on the DSDT and it now boots (latest ACPIPlatfrom), Sound is working can change volume with fn keys .. but no display, i have not copied the EDID stuff from the old (current) DSDT to the new one as I am not sure if..

a) I actually need to do this as screen works with Native DSDT in Ubuntu .. or
b) just how much of the code I need to dump in the IGPU section of new DSDT (totally different)

Dude, could you take a look at the IGPU sections on the two attached DSL's ? and give me your thoughts, really appreciate your help with this, am making good progress I think I'm real close now, but it was this bit of the DSDT that I originally had trouble with and CW helped me out ( I sent him my EDID dump)

Cheers
Jay


 

Attachments

  • Archive 2.zip
    54.6 KB · Views: 79
Status
Not open for further replies.
Back
Top