Jump to content

LaptopDisplay


np_
 Share

429 posts in this topic

Recommended Posts

Testing IOGraphics_NvEFI.zip

 

- with and without external screen (Dell 2707)

- with and without Titan.kext

 

Hardware:

Toshiba P20 (psp26)

NVidia GeForce FX Go5700 64mb ram

 

Dumps done via ssh with:

ioreg -l -w 1024

tail -n 50 /var/log/system.log

 

/oisteink

ioreg.txt

system.txt

external.ioreg.txt

external.system.txt

titan.ioreg.txt

titan.system.txt

external.titan.ioreg.txt

external.titan.system.txt

Link to comment
Share on other sites

okay, as promised, here's a little tutorial about editing info.plist, you'll need PlistEdit Pro:

 

Natit:

 

>

 

Under Vendors, you'll see 0x1002 and 0x10DE, 1002 is for ATI, and 10DE is for nVidia. If I got a GeForce 6800 Ultra (DevID = 0x004010de) and it's not shown on the list, you can simply add a child to 0x10DE branch, or duplicate any child there and modify the value to fit your card.

 

NVDAResman:

 

>

 

At IOPCIMatch, add your DevID here if it's not listed, for example, if 0x004010de not there, simply add it but remember to keep the existing string.

 

NVDANVx0HAL:

 

>

 

Same as NVDAResman, but you must know which one to edit, there're 10, 20, 30, and 40. I'm only sure 40 is for 6/7x00 series and 30 for 5x00 series, for older card, better ask other pirates here.

 

GeForce:

 

>

 

At IOPCIMatch, put exactly your DevID here (ie. 0x004010de if you have a 6800 Ultra).

 

That's about it, I'm absolutely an idiot on programming, just keep reading posts from all the experts here and now I know a little bit about Plist editing, so, correct me if I'm wrong.

Enjoy~~ :idea:

 

PS: Don't know why the board doesn't allow me to add inline image, so..... please click the link to check out the screen shots.

Link to comment
Share on other sites

Speculative :pirate2:

 

My monitor (internal fp on tosh p20) don't give any edid info through i2c, but I can get an edid 1.1 block through ddc.

My block generated from SwitchResX (removed GeForce.kext, NVDANV30Hal.kext and NVDAResman.kext to boot with vesa drivers) is attached. This is probably why i got no info from linux/windows edid tools. In windows I got a pseudo-edid from registry, probably generated by the NVidia driver (Manufacturer ID was Nvid)

 

Will look into this more later, but RL is calling :thumbsup_anim:

/oisteink

VGA_SVGA_Display.txt

Link to comment
Share on other sites

Hello all.

 

This is my first post on IM and I really want to thank the community for being so helpful and creative. Tonight after my ~15th install of osX I finally was able to get titan working with CI and QE and I was overjoyed, but then after a reboot the dreaded blank screen began. I have gone through the tutorial and am posting my ioreg. I tried to follow protocol but if something needs to be changed let me know. I hope someone can help. Thank you.

 

Jason

 

Try rebooting a few more times. Most of the time my machine boots fine with the video stuff in this thread, but sometimes, and sometimes a few times in a row, it insists on booting to the blank screen. I just turn it off with the power switch when it seems to be done with disk activity and reboot it. And in a try or two, the proper screen gets initialized. This is not a real solution, but it is the best I can get for my own system at the moment.

Link to comment
Share on other sites

hi,romanosgr, this is wangning from china. :D

 

i am struggling to get the problem over soon enough,however i have made little progress. :)

 

i guess that the problem is not that osx's own nvidia drivers have not been activated,but that they have not been correctly informed the details of my main display device,my laptop's internal lcd.that's why i've got a black screen to be staring at while the osx is enjoying itself behind.this is also our savior,np_, is trying to deal with.

 

first of all, he gave us a kext named laptopdisplay.kext,which is used to inject into the system registry some keys about the laptop lcd.to make it work,we also need another modified kext named iographicfamily.kext,which reads the details of lap lcd we put into /system/library/displays/overrides,generated by a tool provided by np_,named diplayutility.the left is using nvidiaefi.kext or some combinations such as nvidiaefi+titan or nvidiaefi+natit to activate the apple nvidia drivers.

 

but my prolem is that if i put away all apple nvidia drivers,the laptopdisplay can insert the keys into the system device tree;if i restore all apple nvidia drivers,it doesn't work.besides,the modified iographicfamily.kext seems not be able to read my lcd's details.finally,i've got a black screen with nvidiaefi.kext or whatever nvidia driver activators installed.

 

i guess that the problem is cause by kext dependency or kext confict,but i believe that np_ can bring salvation back.

Link to comment
Share on other sites

First would like to thank SkyZ, with is simple but, "userFriendly" to learn tut i manage to find i edit my natit in the wrong line, know natit names my board correctly.

 

 

Jan 30 20:57:59 localhost kernel[0]: Natit: Starting.

Jan 30 20:57:59 localhost kernel[0]: device-id: 0x0348

Jan 30 20:57:59 localhost kernel[0]: Found device

Jan 30 20:58:00 localhost kernel[0]: Found device name

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @1,EDID=<data not shown>

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,NVMT=<data not shown>

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting device_type=NVDA,Parent

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @1,device_type=display

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,EDID=<data not shown>

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,compatible=NVDA,NVMac

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,fboffset=0x00020000

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @1,compatible=NVDA,NVMac

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @1,name=NVDA,Display-B

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,name=NVDA,Display-A

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting NVCAP=<data not shown>

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,device_type=display

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting model=nVidia GeForce FX Go5700

 

So with this in mind edit geforce, nvdaresman and nvdanv30hal, removed nvidiaEFI and take it for a ride...

 

NO LUCK...

 

Once again same ol same, black and then white screen. But found that if i remove nvdaresman on boot, I boot fine to desktop, with geforce and nvdanv30hal... Don´t if it´s normal or if it´s nvdaresman that gives me the problem, any ideas???

Link to comment
Share on other sites

First would like to thank SkyZ, with is simple but, "userFriendly" to learn tut i manage to find i edit my natit in the wrong line, know natit names my board correctly.

Jan 30 20:57:59 localhost kernel[0]: Natit: Starting.

Jan 30 20:57:59 localhost kernel[0]: device-id: 0x0348

Jan 30 20:57:59 localhost kernel[0]: Found device

Jan 30 20:58:00 localhost kernel[0]: Found device name

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @1,EDID=<data not shown>

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,NVMT=<data not shown>

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting device_type=NVDA,Parent

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @1,device_type=display

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,EDID=<data not shown>

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,compatible=NVDA,NVMac

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,fboffset=0x00020000

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @1,compatible=NVDA,NVMac

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @1,name=NVDA,Display-B

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,name=NVDA,Display-A

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting NVCAP=<data not shown>

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting @0,device_type=display

Jan 30 20:58:00 localhost kernel[0]: Natit: Setting model=nVidia GeForce FX Go5700

 

So with this in mind edit geforce, nvdaresman and nvdanv30hal, removed nvidiaEFI and take it for a ride...

 

NO LUCK...

 

Once again same ol same, black and then white screen. But found that if i remove nvdaresman on boot, I boot fine to desktop, with geforce and nvdanv30hal... Don´t if it´s normal or if it´s nvdaresman that gives me the problem, any ideas???

 

Okay, let's try put all components back in Extensions folder, set permission using terminal, run disk repair utilities to repair permission, then finally delete extensions.kextcache and extensions.mkext, reboot and see how it goes.

Link to comment
Share on other sites

Does everyone have dependency issues with LaptopDisplay.kext?

 

I have QE/CI and resoution switching on my Inspiron 8500 but fade to white on the internal screen, although i have resolution switching on that too.

 

I get the exact same results if i completely remove LaptopDisplay.kext, which has dependency issues if loaded. Could this be why?

 

I am using the new NvidiaEFI, IOGraphicsFamily, and LaptopDisplay.

Link to comment
Share on other sites

Does everyone have dependency issues with LaptopDisplay.kext?

 

I have QE/CI and resoution switching on my Inspiron 8500 but fade to white on the internal screen, although i have resolution switching on that too.

 

I get the exact same results if i completely remove LaptopDisplay.kext, which has dependency issues if loaded. Could this be why?

 

I am using the new NvidiaEFI, IOGraphicsFamily, and LaptopDisplay.

I have the exact problems you describe - dependency errors for laptopdisplay.kext (to iographicsfamily and iondrvsupport). I cant check an external monitor, since I don't have one to test.

Link to comment
Share on other sites

I have the exact problems you describe - dependency errors for laptopdisplay.kext (to iographicsfamily and iondrvsupport). I cant check an external monitor, since I don't have one to test.

 

beside kext dependency,it seems that NVidiaKEFI won't get along with apple drivers because os boots with black screen as long as i put it into the entensions.

and laptopdisplay also has problem with apple drivers,because with apple drivers in extensions,it can't insert keys into system device tree.

Link to comment
Share on other sites

new pack for test

 

include iographicsfamily, nvidiaefi and latopdisplay.kext

 

install, test and report

 

that pack is for nvidia cards only, i will do latter same but for natit

 

i am sorry i do respond on this "lappie" problem slowly but i am overloaded with my own life , work .etc

 

and almost no time for nothing :(

 

thanks

 

np_

 

np_,

any news on a similar package for us ATI owners?

 

Thanks for your great work :)

Link to comment
Share on other sites

it seems that NVidiaKEFI won't get along with apple drivers because os boots with black screen as long as i put it into the entensions.

 

NvidiaEFI does get along with the Apple drivers, as long as the proper device id is added to the apple kexts. Add your device id to the kexts you need, and it will work. It did for me, and delivers much better performance than natit and titan.

Link to comment
Share on other sites

np_,

any news on a similar package for us ATI owners?

 

Thanks for your great work :(

 

yes i am working on some like this for ATI ie AtiEFI

 

but because i don't have ati and i am not familiar with i2c interface for ati will need some time to found all info i need to

 

from now on all updates, tools, drivers ..etc i will post on http://www.macvidia.com/forums/index.php/board,29.0.html

 

:)

Link to comment
Share on other sites

NvidiaEFI does get along with the Apple drivers, as long as the proper device id is added to the apple kexts. Add your device id to the kexts you need, and it will work. It did for me, and delivers much better performance than natit and titan.

 

well,i've tried put my device id into geforce.kext,nvdaremon.kext and nvdanv40hal.kext,which looks like 0x01d810de&0xfff0ffff or 0x01d810de&0xfff8ffff.instead of booting with a black screen,i've got a message prompting me to restart my computer which is in four different languages.

Link to comment
Share on other sites

well,i've tried put my device id into geforce.kext,nvdaremon.kext and nvdanv40hal.kext,which looks like 0x01d810de&0xfff0ffff or 0x01d810de&0xfff8ffff.instead of booting with a black screen,i've got a message prompting me to restart my computer which is in four different languages.

 

you must remove everything from the string except 0x01d810de, so that it looks like

 

<string>0x01d810de</string>

 

Thats what i did and it worked. Try using NvdiaEFI insted of natit, and make sure that nvdanv40hal.kext is the one you need. If your device id is in the wrong one, that may cause the panic.

 

It is necessary to have either natit or NvidiaEFI loading correctly if NVDAResman is also loading. If NVDAResman loads on its own without natit or NvidiaEFI, you will get a kernel panic, so double check that natit or NvidiaEFI is loading properly.

 

If you continue getting the panic, remove NVDAResman completely, but you will need to put it back to have resolution swiching.

Link to comment
Share on other sites

Okay, let's try put all components back in Extensions folder, set permission using terminal, run disk repair utilities to repair permission, then finally delete extensions.kextcache and extensions.mkext, reboot and see how it goes.

 

Hello

 

Did all you said:

 

Edit GeFore.kext with 0x034810de without the &0x0fff etc

Edit NVDANV30Hall.kext adding my devID 0x034810de without &0x0fff etc

Also the same to NVDAResman.kext

 

Loaded fine to desk with no resolution change and qe/ci.

 

sytem pro stats:

Jan 31 20:28:54 localhost kernel[0]: IOPanelDevice: Machine Is Laptop!

Jan 31 20:28:55 localhost kernel[0]: IOPanelDevice: Registered OK!

Jan 31 20:28:55 localhost kernel[0]: LaptopPanelA: Started Ok!

Jan 31 20:28:55 localhost kernel[0]: ApplePS2Trackpad: Synaptics TouchPad v5.8

Jan 31 20:28:55 localhost kernel[0]: AppleAC97CodecAD198x: 2-to-4 channel spreading enabled

Jan 31 20:28:55 localhost kernel[0]: wl0: Broadcom BCM4320 802.11 Wireless Controller

Jan 31 20:28:55 localhost kernel[0]: 4.80.46.0Natit: Starting.

Jan 31 20:28:55 localhost kernel[0]: device-id: 0x0348

Jan 31 20:28:55 localhost kernel[0]: Found device

Jan 31 20:28:55 localhost kernel[0]: Found device name

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @1,EDID=<data not shown>

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @0,NVMT=<data not shown>

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting device_type=NVDA,Parent

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @1,device_type=display

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @0,EDID=<data not shown>

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @0,compatible=NVDA,NVMac

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @0,fboffset=0x00020000

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @1,compatible=NVDA,NVMac

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @1,name=NVDA,Display-B

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @0,name=NVDA,Display-A

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting NVCAP=<data not shown>

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting @0,device_type=display

Jan 31 20:28:55 localhost kernel[0]: Natit: Setting model=nVidia GeForce FX Go5700

Jan 31 20:28:55 localhost kernel[0]: NV: NVidiaEFI Support Version 1.0.1, build 1301072018

Jan 31 20:28:55 localhost kernel[0]: NV: Internal LCD Panel Detected On Output: B, Head N: 1

Jan 31 20:28:55 localhost kernel[0]: NV: Internal LCD Panel Max Resolution: 1280x1024

Jan 31 20:28:55 localhost kernel[0]: IPv6 packet filtering initialized, default to accept, logging disabled

Jan 31 20:28:54 localhost mDNSResponder-108.2 (Aug 25 2006 14: 50:48)[63]: starting

Jan 31 20:28:55 localhost memberd[70]: memberd starting up

Jan 31 20:28:57 localhost lookupd[77]: lookupd (version 369.6) starting - Wed Jan 31 20:28:57 2007

Jan 31 20:28:58 localhost kernel[0]: BCM5701Enet: Ethernet address 00:c0:9f:41:1e:b8

Jan 31 20:28:58 localhost diskarbitrationd[69]: disk0s2 hfs D61F50E2-9F8F-3155-A9DD-FD7A6AE787B9 Mac Os /

Jan 31 20:28:58 localhost kernel[0]: AirPort_Brcm43xx: Ethernet address 00:0b:6b:4b:88:15

Jan 31 20:28:59 localhost diskarbitrationd[69]: disk0s1 ntfs 00000000-0000-0000-0000-000000000000 Untitled /Volumes/Untitled

Jan 31 20:28:59 localhost DirectoryService[82]: Launched version 2.1 (v353.5)

Jan 31 20:29:00 localhost kernel[0]: NVDA,Display-A: Not usable

 

 

one thing i´ve noticed, system pro does not mention NVDANV30Hal.kext as loaded, like in so many others...

 

after i haded NVidiaEFI.kext also with natit and same lame thing

 

Also on terminal

 

kextload -t /System/Library/Extensions/NVDANV30Hal.kext

kextload: extension /System/Library/Extensions/NVDANV30Hal.kext appears to be valid

kld(): Undefined symbols:

_NvRmAlloc

_NvRmAllocChannelDma

_NvRmAllocChannelPio

_NvRmAllocContextDma

_NvRmAllocContextDma2

_NvRmAllocDevice

_NvRmAllocEvent

_NvRmAllocMemory

_NvRmAllocMemory64

_NvRmAllocObject

_NvRmAllocRoot

_NvRmArchHeap

_NvRmBindContextDma

_NvRmConfig

_NvRmConfigGet

_NvRmConfigGetEx

_NvRmConfigSet

_NvRmConfigSetEx

_NvRmConfigVersion

_NvRmControl

_NvRmDebugControl

_NvRmDirectMethodCall

_NvRmFree

_NvRmI2CAccess

_NvRmIdleChannels

_NvRmIdleDevice

_NvRmInterrupt

_NvRmMapMemory

_NvRmMapMemoryDma

_NvRmOsConfigGet

_NvRmOsConfigGetEx

_NvRmOsConfigSet

_NvRmOsConfigSetEx

_NvRmPowerManagement

_NvRmUnmapMemory

_NvRmUnmapMemoryDma

_NvRmUpdateContextDma

_NvRmVidHeapControl

_RmAdjustGlobalTask_Entry

_RmAdjustGlobalTask_Exit

_RmFree

_RmInitAdapter

_RmInitRm

_RmShutdownAdapter

_dacGetHeadFromDisplayMask

_destroyClientInfo

_ndrvDoDriverIO

_ndrvGetPrivateStorageSize

_nvExtEscape

_nv_devices

_osGetFrameBufferSize

_osGetMaxCrtcs_u

_osGetNVDAPtr

_osGetOpaquePHWINFO

_osIsrBottomHalf

_osIsrTopHalf

_osLockApi

_osRun1HzCallbacksNow_osX

_osUnLockApi

kextload: kld_load_from_memory() failed for module /System/Library/Extensions/NVDAResman.kext/Contents/MacOS/NVDAResman

kextload: a link/load error occured for kernel extension /System/Library/Extensions/NVDANV30Hal.kext

load failed for extension /System/Library/Extensions/NVDANV30Hal.kext

(run kextload with -t for diagnostic output)

luis-cunha-e-silvas-computer:~ root# Jan 31 20:28:54 localhost kernel[0]: IOPanelDevice: Machine Is Laptop!

Edited by nody
Link to comment
Share on other sites

OK, I can't be the only one having a hard time trying to figure out which kexts to use (Natit, NVidiaEFI, LaptopDisplay, etc) and what to edit. There are so many fragments of instructions that I'm not sure what to do to get this working. I think it would benefit everyone if someone posted complete instructions (i.e. how to test this driver starting with a stock OS X 8.8.1 Semthex install). That way more people can confidently test this out and post results so we can work out bugs ASAP. I'm certain we could get more input if more people could figure out how to test this stuff.

 

Thanks,

corndog

Link to comment
Share on other sites

OK, I can't be the only one having a hard time trying to figure out which kexts to use (Natit, NVidiaEFI, LaptopDisplay, etc) and what to edit. There are so many fragments of instructions that I'm not sure what to do to get this working. I think it would benefit everyone if someone posted complete instructions (i.e. how to test this driver starting with a stock OS X 8.8.1 Semthex install). That way more people can confidently test this out and post results so we can work out bugs ASAP. I'm certain we could get more input if more people could figure out how to test this stuff.

 

Thanks,

corndog

 

I agree. Let's create a thread in Tutorial sub forum, and no question ask there, just plain, successful instruction (with all details like mobo/laptop/desktop model, kernel version, kext version, hardware DevID.... etc).

Link to comment
Share on other sites

yes i am working on some like this for ATI ie AtiEFI

 

but because i don't have ati and i am not familiar with i2c interface for ati will need some time to found all info i need to

 

from now on all updates, tools, drivers ..etc i will post on http://www.macvidia.com/forums/index.php/board,29.0.html

 

;)

 

That's great news!! Maybe that's a new hope for users who using ATI card prior to X1x00 series!!

Link to comment
Share on other sites

Good to ear ppl getting sucess, and the idea of makin a all tut is a plain and simple great idea.

I´m one of those who´s havin a hard time, every time i put on nvdaresman.kext i get the infamous black and white screen, and my friends i´ve edit it in so many ways that i can´t really tell :(

Link to comment
Share on other sites

 Share

×
×
  • Create New...