Jump to content

GMA X4500


aldo77
 Share

1,615 posts in this topic

Recommended Posts

What about faking the Intel HD device ID on DSDT? This may lead us to sth....

Well, i don't know but it should also work…

Try it and say us results!

 

NOTE:> We also have to change built-in value to Yes (0x01), compatible to pci1849,2A02 and subsystem-id to ".*" (022A)

 

Hope it works :rolleyes:

 

And please someone tell me the revision and all other parameters of your working CI/QE GMA X3100 from Registry info (GFX0).

This informationn is very useful!

Link to comment
Share on other sites

I was just about to say that..

 

I think that the first step is to make IntelHD work on Core i3/i5.

Once done, the second is to fake the device with dsdt on X4500.

 

Currently the driver doesn't work on my Core i3, I've tried to compile and run at boot the switcher, but it always says "No matching driver found".

Looking at source code, there's a loop that tries to enumerate all the instances of driver with class name "AppleGraphicsControl". If any instance is found, is asked to the driver to switch active card through "setMuxState", else the program returns that error.

 

So AppleGraphicsControl have to be loaded, and the only method left is to fake device.

 

What we need first is a dsdt and complete IOReg dump from a real new MacBookPro.

Link to comment
Share on other sites

injection in DSDT under GFX0 device in the DSDT

 

Method (_DSM, 4, NotSerialized)

{

Store (Package (0×06)

{

“AAPL,HasPanel”,

Buffer (0×04) {0×01, 0×00, 0×00, 0×00},

“model”,

Buffer (0×07) {”GMAX3100”},

“device-id”,

Buffer (0×04) {0×02, 0×2A, 0×00, 0×00}

}, Local0)

DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))

Return (Local0)

}

 

Now my card is shown as X3100 in the System Profiler but I`v got errors during the -v BOOT

Link to comment
Share on other sites

I was just about to say that..

 

I think that the first step is to make IntelHD work on Core i3/i5.

Once done, the second is to fake the device with dsdt on X4500.

 

Currently the driver doesn't work on my Core i3, I've tried to compile and run at boot the switcher, but it always says "No matching driver found".

Looking at source code, there's a loop that tries to enumerate all the instances of driver with class name "AppleGraphicsControl". If any instance is found, is asked to the driver to switch active card through "setMuxState", else the program returns that error.

 

So AppleGraphicsControl have to be loaded, and the only method left is to fake device.

 

What we need first is a dsdt and complete IOReg dump from a real new MacBookPro.

Hi I might be able to do it in a electronic shop, but i don't know how to dump IOREG.

Link to comment
Share on other sites

injection in DSDT under GFX0 device in the DSDT

 

Method (_DSM, 4, NotSerialized)

{

Store (Package (0×06)

{

“AAPL,HasPanel”,

Buffer (0×04) {0×01, 0×00, 0×00, 0×00},

“model”,

Buffer (0×07) {”GMAX3100”},

“device-id”,

Buffer (0×04) {0×02, 0×2A, 0×00, 0×00}

}, Local0)

DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))

Return (Local0)

}

 

Now my card is shown as X3100 in the System Profiler but I`v got errors during the -v BOOT

Lucky you, I don't have a GFX0 section in my dsdt.

Did you add it manually? I tried adding it in AGP and in PCIE sections, but nothing happened, the card wasn't showed. Where is located yours?

Link to comment
Share on other sites

Lucky you, I don't have a GFX0 section in my dsdt.

Did you add it manually? I tried adding it in AGP and in PCIE sections, but nothing happened, the card wasn't showed. Where is located yours?

 

You have a core i3 with intelhd graphics and don't have a gfx0 section? hmmm thats strange, i have that section on my i3 intelhd graphics... do you want my unpatched/unmodified dsdt straight from linux?

Link to comment
Share on other sites

You have a core i3 with intelhd graphics and don't have a gfx0 section? hmmm thats strange, i have that section on my i3 intelhd graphics... do you want my unpatched/unmodified dsdt straight from linux?

 

bro as you have core i3 could you please help me in getting native resolution with my laptop with core i3 and intelhd graphics? i tried so many things but couldnt get native resolution. it would be really appreciated.

Link to comment
Share on other sites

Tried with the DSDT faking and the OS X geunine X3100 and patched kexts, but no luck.

That what the System Profiler Shows:

28196690.jpg

 

The system Profiler recognize my 4500 as X3100, the kexts are loaded too but....nothing.

The revision of my card is 00007 and the X3100 revisions are 00003, 0000c and etc

 

May be if the VideoBIOS is available to downgrade with the X3100 VideoBIOS

Link to comment
Share on other sites

I extracted my at Ubuntu Linux because OS X is with UNIX core and Linux is more closer than Windows. The OS X extraction is very incomplete because OS X can not recognize the hardware properly. This is the idea of the DSDT patching, recognizing the hardware at OS X.

Link to comment
Share on other sites

Tried with the DSDT faking and the OS X geunine X3100 and patched kexts, but no luck.

That what the System Profiler Shows:

28196690.jpg

 

The system Profiler recognize my 4500 as X3100, the kexts are loaded too but....nothing.

The revision of my card is 00007 and the X3100 revisions are 00003, 0000c and etc

 

May be if the VideoBIOS is available to downgrade with the X3100 VideoBIOS

 

the bios is read only you cannot change the bios firmware for the GPU chip.

Link to comment
Share on other sites

the bios is read only you cannot change the bios firmware for the GPU chip.

 

KA, I`m using now your kexts. Changed the device ids in the .plist files back to 2a02 and with my patched DSDT kexts are loaded and works but only native resolution again.

Link to comment
Share on other sites

I GMA4500MD (EmachinesE525)

 

GMAX3100:

Модель набора микросхем: GMAX3100

Тип: GPU

Шина: Встроенный

VRAM-память (всего): 64 МБ совместно используемой памяти системы

Производитель: Intel (0x8086)

ID устройства: 0x2a42

Ревизия: 0x0009

Информация Kernel Extension: Не загружено Kext

Мониторы:

Монитор:

Разрешение: 1366 x 768

Пиксельная глубина: Цвет 32-бит (ARGB8888)

Основной монитор: Да

Синхронизация: Выкл.

Онлайн: Да

boot

http://www.insanelymac.com/forum/index.php?showtopic=216726

Link to comment
Share on other sites

Deviato`s boot file do tha same thing with no need to reinstall the Chameleon, just replace the boot file. It`s good otherwise that the RC5 edition of Chameleon supports native resolution for GMA4500 :(

Link to comment
Share on other sites

 

HD kexts wont work on X4500.

it is not processor-integrated and it is more like X3100 (features).

also we cant give more than it can, so lower is preferrable. X3100 is our hope

You cannot say for sure, and in any case, it would be good for Core GPUs: the driver is there, but we don't have a method yet.

 

Thanks, I'll take a look

 

You have a core i3 with intelhd graphics and don't have a gfx0 section? hmmm thats strange, i have that section on my i3 intelhd graphics... do you want my unpatched/unmodified dsdt straight from linux?

No.. I have a Dell Inspiron 1545 with GMA4500 with no GFX0, and a Core i3 desktop, that I cannot even boot with iGPU enabled, but only with the external PCIe Nvidia Card (I cannot enable both in the bios).

 

bro as you have core i3 could you please help me in getting native resolution with my laptop with core i3 and intelhd graphics? i tried so many things but couldnt get native resolution. it would be really appreciated.

What do you mean, are you running in vesa mode? Or with AppleIntelHDGraphics kexts from mbp update? However, as said before, I can't boot, so no resolution. Don't know if I can without the kexts, I already did the mbp update.

 

the bios is read only you cannot change the bios firmware for the GPU chip.

Not exactly.. it's done with driver update and with some tools, but it's not a good thing to replace the video bios with that of another card, it would in almost every case break the functionality. However it's possible to patch in ram, cause the vbios is copied at boot in shadow, that's what is done in 915resolution patch to correct the resolution table. You can experiment, but it's hard to decompile and patch..

Link to comment
Share on other sites

Patching X3100FB kext gave me this:

Монитор:

Разрешение: 800 x 600 @ 60 Гц

Пиксельная глубина: Цвет 32-бит (ARGB8888)

Синхронизация: Выкл.

Онлайн: Да

Встроенный: Да

Philips 170S:

Разрешение: 1280 x 1024 @ 60 Гц

Пиксельная глубина: Цвет 32-бит (ARGB8888)

Основной монитор: Да

Синхронизация: Выкл.

Онлайн: Да

I have two displays: "built-in" (with 800x600 res.) and my real display (connected to VGA)!

I will be grateful if you help me to remove it. My only display is Philips 170S, but desktop is extended on it (((

If I change resolution, it switches into unsupported video mode and i can do nothing! :P

Help needed, PLEEEEASEE!!!! :):trumpet:

Link to comment
Share on other sites

bro as you have core i3 could you please help me in getting native resolution with my laptop with core i3 and intelhd graphics? i tried so many things but couldnt get native resolution. it would be really appreciated.

I don't have native resolution, i have not tried yet to get it. Focused on getting the kexts loaded first.

Link to comment
Share on other sites

What do you mean, are you running in vesa mode? Or with AppleIntelHDGraphics kexts from mbp update? However, as said before, I can't boot, so no resolution. Don't know if I can without the kexts, I already did the mbp update.

 

i used the modified rc4 from ur site and the kexts u gave there. but i dont get native resolution. the best i get is 1024*768. i edited boot.plist in extra folder and put graphics mode. but it doesnt work. any idea?

Link to comment
Share on other sites

 i got a question, like hacked edition 10.6.3. when we get it done, it reboots with default 64bit enabled automatically, unless we input arch=i386 in the very beginning, i just want to know how we can modify and let it reboot with 32bit only automatically without any manual input in terminal.

 

why i need 32bit kernel, it is because native resolution can not be maintained in 64bit kernel circumstances.

 

 i got a question, like hacked edition 10.6.3. when we get it done, it reboots with default 64bit enabled automatically, unless we input arch=i386 in the very beginning, i just want to know how we can modify and let it reboot with 32bit only automatically without any manual input in terminal.

 

why i need 32bit kernel, it is because native resolution can not be maintained in 64bit kernel circumstances.

Link to comment
Share on other sites

 i got a question, like hacked edition 10.6.3. when we get it done, it reboots with default 64bit enabled automatically, unless we input arch=i386 in the very beginning, i just want to know how we can modify and let it reboot with 32bit only automatically without any manual input in terminal.

 

why i need 32bit kernel, it is because native resolution can not be maintained in 64bit kernel circumstances.

 

 i got a question, like hacked edition 10.6.3. when we get it done, it reboots with default 64bit enabled automatically, unless we input arch=i386 in the very beginning, i just want to know how we can modify and let it reboot with 32bit only automatically without any manual input in terminal.

 

why i need 32bit kernel, it is because native resolution can not be maintained in 64bit kernel circumstances.

 

Jamie, the modified x3100 kexts just work on 32bits that's why you need to specify the kernel flag arch=i386 to get them load. Regarding of how to tell your system to always boot on 32 bits, just add this:

 

<key>Kernel Flags</key>

<string>arch=i386</string>

 

on your "com.apple.Boot" file (you will find it on your root directory or in /Extra). Hope you find this useful.

 

i used the modified rc4 from ur site and the kexts u gave there. but i dont get native resolution. the best i get is 1024*768. i edited boot.plist in extra folder and put graphics mode. but it doesnt work. any idea?

 

dying4004, don't ask me why, but I needed to specify my resolution in both boot.plist files (the one from the root and the one in /Extra) to get my native resolution, maybe that's also your problem.....

 

BTW, in my case I wasn't able to load the x3100 modified kexts (always getting the blue - black screen issue) until I added the "dual link" method on GFX0 in my DSDT, that's a known problem with screen with big resolutions (like 1440x900). 

Link to comment
Share on other sites

Jamie, the modified x3100 kexts just work on 32bits that's why you need to specify the kernel flag arch=i386 to get them load. Regarding of how to tell your system to always boot on 32 bits, just add this:

 

<key>Kernel Flags</key>

<string>arch=i386</string>

 

on your "com.apple.Boot" file (you will find it on your root directory or in /Extra). Hope you find this useful.

 

 

 

dying4004, don't ask me why, but I needed to specify my resolution in both boot.plist files (the one from the root and the one in /Extra) to get my native resolution, maybe that's also your problem.....

 

BTW, in my case I wasn't able to load the x3100 modified kexts (always getting the blue - black screen issue) until I added the "dual link" method on GFX0 in my DSDT, that's a known problem with screen with big resolutions (like 1440x900).

 

both plist files are modified in my laptop with graphics mode. :D

Link to comment
Share on other sites

 Share

×
×
  • Create New...