Jump to content

HP G72 (model 150SF) with i3-330M, ATI Radeon HD 5430 and 1600x900 LCD - Mavericks


Hervé

Recommended Posts

  • Administrators

Work in progress...
 
Not exactly the freshest thing around, but one more to the list nevertheless...

Model: G72-150SF (part #VY081EA).
HP_G72.jpg HP_G72_sides.jpg
 
Target OS X release:

  • Mavericks 10.9.5

Installation successful with myHack v3.3.1 and attached G72 bootpack on a regular SATA HDD partitioned GUID and formatted Mac OS X (journaled).
 
HP_G72_Mavericks.jpg
HP_G72_Mav10.9.5.jpg HP_G72_CPUPM.jpg
HP_G72_GraphicsCard.jpg HP_G72_NoDisplayDetected.jpg
 
The specs:

  • BIOS F.37
  • Intel 5 Series/3400 Series (HM55) chipset
  • Intel Arrandale Core i3-330M 2.13GHz dual-Core CPU (built-in Intel HD graphics appears to be disabled)
  • 4Go DDR3-1333 RAM
  • 17.3" HD+ Brightview 1600x900 LED LCD
  • Discrete ATI Mobility Radeon HD 5430 512Mo (PCI ven id 0x1002, dev id 0x68e1)
  • Realtek PCIe RTL8101E FE Ethernet (PCI ven id 0x10ec, dev id 0x8136)
  • Qualcomm Atheros AR5B95H (AR9285) wireless card (PCI ven id 0x168c, dev id 0x002b)
  • Realtek (codec ALC270) high def audio (PCI ven id 0x10EC, dev id 0x0270) + ATI HDMI audio (PCI ven id 0x1002, dev id 0xaa68)
  • USB-internal Realtek 5:1 SD*MS/pro*MMC*XD card reader (PCI ven id 0x0bda, dev id 0x0158)
  • USB-internal HP (SuYin Corp.) Webcam-101 (PCI ven id 0x064e, dev id 0xf203)
  • Synaptics touchpad
  • CD/DVD drive
  • 3 x USB 2.0
  • 1 x VGA output
  • 1 x HDMI output
  • 1 x Microphone jack input
  • 1 x Headset jack output

 

HP-G72:~ admin$ lspci -nn

00:00.0 Host bridge [0600]: Intel Corporation Core Processor DRAM Controller [8086:0044] (rev 02)

00:01.0 PCI bridge [0604]: Intel Corporation Core Processor PCI Express x16 Root Port [8086:0045] (rev 02)
00:16.0 Communication controller [0780]: Intel Corporation 5 Series/3400 Series Chipset HECI Controller [8086:3b64] (rev 06)
00:1a.0 USB controller [0c03]: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller [8086:3b3c] (rev 05)
00:1b.0 Audio device [0403]: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio [8086:3b56] (rev 05)
00:1c.0 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 [8086:3b42] (rev 05)
00:1c.1 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 2 [8086:3b44] (rev 05)
00:1d.0 USB controller [0c03]: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller [8086:3b34] (rev 05)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev a5)
00:1f.0 ISA bridge [0601]: Intel Corporation Mobile 5 Series Chipset LPC Interface Controller [8086:3b09] (rev 05)
00:1f.2 SATA controller [0106]: Intel Corporation 5 Series/3400 Series Chipset 4 port SATA AHCI Controller [8086:3b29] (rev 05)
00:1f.3 SMBus [0c05]: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller [8086:3b30] (rev 05)
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI Manhattan [Mobility Radeon HD 5430 Series] [1002:68e1]
01:00.1 Audio device [0403]: Advanced Micro Devices [AMD] nee ATI Cedar HDMI Audio [Radeon HD 5400/6300 Series] [1002:aa68]
02:00.0 Network controller [0280]: Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) [168c:002b] (rev 01)
03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller [10ec:8136] (rev 02)
ff:00.0 Host bridge [0600]: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers [8086:2c62] (rev 02)
ff:00.1 Host bridge [0600]: Intel Corporation Core Processor QuickPath Architecture System Address Decoder [8086:2d01] (rev 02)
ff:02.0 Host bridge [0600]: Intel Corporation Core Processor QPI Link 0 [8086:2d10] (rev 02)
ff:02.1 Host bridge [0600]: Intel Corporation Core Processor QPI Physical 0 [8086:2d11] (rev 02)
ff:02.2 Host bridge [0600]: Intel Corporation Core Processor Reserved [8086:2d12] (rev 02)
ff:02.3 Host bridge [0600]: Intel Corporation Core Processor Reserved [8086:2d13] (rev 02)

 

:excl:   :excl:   :excl:

  • This laptop will not boot GPT-partitioned USB medias, therefore use a MBR-partitioned USB installer (does not require MBR patch).
  • HP laptop oblige (and it's a classic), the G72 requires a lapic patched kernel to boot OS X without KP, USB installer included. The KernelPatcher.dylib Chameleon module is required to safely boot the vanilla kernel; failing that, option cpus=1 is mandatory. 

:excl:   :excl:   :excl:

 
Working:

  • full audio (with VoodooHDA v2.8.6 package)
  • built-in FastEthernet (with AppleRTL8169Ethernet kext or Realtek's driver package v2.0.6)
  • AR5B95 wireless (with Atheros40 kext device id patch).
  • battery management & monitoring (with VoodooBattery kext)
  • HP Webcam OOB
  • Card reader OOB
  • CD/DVD drive OOB
  • native SpeedStep (with MacBookPro6,1 SMBIOS + Kozlek's FakeSMC tuned up for SMC keys 1.57f18/smc-piketon)
  • system sleep/wake with GraphicsEnabler=Yes (sleeps Ok through active corner or energy savings setup) - set hibernate mode to 0 (sleep to RAM) and remove any sleepimage file found in /var/vm

 

Not working (yet):

  • full graphics support of ATI Radeon HD 5430 (so VGA & HDMI output not tested yet). Can't open DVDPlayer  -_-
  • built-in LCD recognition (probably needs EDID injection)

 

Mavericks full bootpack:

 

LAPIC kernel:

 

Booting with GraphicsEnabler=Yes option leads to black screen and Radeon HD 6230 512MB reported. Display remains "unknown". Was able to access the laptop through VNC after setting up screen sharing. According to the documentation I've found -and this is aligned with what Chameleon indicates-, GPU personality is "Eulemur". However, AMD5000Controller kext, which does include device id 0x68E1, lists ATI personalities "Hoolock", "Langur", "Orangutan" and "Zonalis", not "Eulemur", so one of those 4 is probably to be targeted.
 
I tried to patch the DSDT, to no effect. Could be an Optimus-like issue of course, but integrated Intel HD really seems disabled. I would probably have had to obtain the LCD screen EDID info to sort out the graphics but ran out of time and had to return the laptop to its owner.
 
Warning: this big laptop has a tendency to heat up and this is even stronger under OS X! It's mostly due to this specific low-end i3-330M that has no turbo boost and often runs at full speed. System runs much better and cooler with an i5-520M for instance.

HP-G72_IOReg_GE.zip

HP_G72_raw_DSDT.aml.zip

Patched_DSDT.aml.zip

HP_G72_SysProfiler.zip

  • Like 1
Link to comment
Share on other sites

  • Administrators

I got hold of that old PC again so took another chance at sorting out the graphics.

 

Radeon HD 5430 is handled through the following ATI/AMD controller and accelerator kexts under Mavericks:

  • AMD5000Controller
  • AMDRadeonX3000

 

The controller kext already contains the PCI id for the Radeon HD 5430 (1002:68e1) but not the accelerator. In order for the latter to load for the card, it is necessary to patch its Info.plist file to replace PCI id 1002:68e0 by 1002:68e1 under the AMDCedarGraphicsAccelerator personality, i.e.

Before:

<key>AMDCedarGraphicsAccelerator</key><dict>
[...]
<key>IOPCIMatch</key>
<string>0x68E01002</string>
[...]
</dict>

After:

<key>AMDCedarGraphicsAccelerator</key><dict>
[...]
<key>IOPCIMatch</key>
<string>0x68E11002</string>
[...]
</dict>

`

Thereafter, one of the AMD5000Controller personalities can be called to try and reach full graphics acceleration. These are: Douc / Langur / Uakari / Zonalis / Alouatta / Hoolock / Vervet / Baboon / Eulemur / Galago / Colobus / Mangabey /Nomascus / Orangutan
 
I won't go into explaining how ATI/AMD graphics works (because I don't master this) but AMD controller personalities basically define various models or profiles of graphics arrangements in terms of connector-type. I guess it's somehow similar to layout-ids of Intel HD iGPUs. There are excellent threads on the matter at InsanelyMac. These personalities contains a variable number of connector-type and the connector-type settings vary according to the personality.
 
This HP G72 is fitted with 3 video outputs: built-in LCD (LVDS), VGA and HDMI. The target is therefore a personality with 3 x connectors. Decoding the AMD5000Controller kext using bcc9 tools reveals 4 x personalities with 3 x connectors:
Personality: Baboon
ConnectorInfo count in decimal: 3
Disk offset in decimal 1447248
0000000    04  00  00  00  14  00  00  00  00  01  00  00  01  02  01  03
0000010    00  08  00  00  00  02  00  00  00  71  00  00  22  05  02  01
0000020    10  00  00  00  10  00  00  00  00  01  00  00  00  10  00  02
0000030

Personality: Eulemur
ConnectorInfo count in decimal: 3
Disk offset in decimal 1447296
0000000    04  00  00  00  14  00  00  00  00  01  00  00  01  02  01  04
0000010    00  08  00  00  00  02  00  00  00  71  00  00  12  04  04  02
0000020    10  00  00  00  10  00  00  00  00  00  00  00  00  10  00  01
0000030

Personality: Hoolock
ConnectorInfo count in decimal: 3
Disk offset in decimal 1447136
0000000    00  04  00  00  04  06  00  00  00  01  00  00  21  03  05  01
0000010    00  04  00  00  04  06  00  00  00  01  00  00  11  02  04  02
0000020    04  00  00  00  14  02  00  00  00  01  00  00  02  04  01  03
0000030

Personality: Langur
ConnectorInfo count in decimal: 3
Disk offset in decimal 1446864
0000000    00  04  00  00  04  06  00  00  00  01  00  00  21  03  04  02
0000010    00  04  00  00  04  06  00  00  00  01  00  00  11  02  01  01
0000020    04  00  00  00  14  02  00  00  00  01  00  00  02  04  05  03
0000030

`

Calling on any of those personalities and injecting LCD screen EDID does not bring life to the built-in LCD, nor graphics acceleration and access via ScreenSharing remained the only way to access the system. However, I noticed that if I plugged a screen to the HDMI port, I obtained graphics acceleration within ScreenSharing (despite a black screen too on HDMI display)
 
I therefore started to look at patching one of the AMD5000Controller personalities. I picked up Eulemur and, using the IM threads/guides here and/or here as a reference, I extracted the AMD ROM, decoded the video ports info (LVDS: 10 00 01 07, HDMI: 21 03 02 01, VGA: 00 10 03 08) and patched the personality as follows:
Before:
04 00 00 00 14 00 00 00 00 01 00 00 01 02 01 04 -> DVI
00 08 00 00 00 02 00 00 00 71 00 00 12 04 04 02 -> HDMI
10 00 00 00 10 00 00 00 00 00 00 00 00 10 00 01 -> VGA

After:

02 00 00 00 40 00 00 00 08 01 00 00 10 00 01 07 -> LVDS
or
02 00 00 00 40 00 00 00 09 00 00 00 10 00 01 07 -> LVDS
00 08 00 00 00 02 00 00 00 01 00 00 21 03 02 01 -> HDMI
10 00 00 00 10 00 00 00 00 01 00 00 00 10 03 08 -> VGA
All I managed to obtained was good video output off the HDMI port (no black screen) with full graphics acceleration. Nothing on built-in LCD and nothing on VGA, both remaining dark with undetected display.
 
Could try patching the other 3-port personalities but this remains an unfinished business...
Link to comment
Share on other sites

  • Administrators

In the end, I never managed to sort out the graphics issue with Chameleon or Enoch. Instead, Clover does support full graphics with the following options:

  • Inject EDID
  • Load VBIOS
  • Inject ATI
  • ATI framebuffer Orangutan

 

The ATI AMDRadeonX3000 accelerator kext must also be patched as detailed above in post #2 in order to inject Radeon HD 5430 id 1002:68E1.

 

config.plist.zip

Link to comment
Share on other sites

×
×
  • Create New...