Jump to content

I think i find the T61 graphics problem


clockrun
 Share

18 posts in this topic

Recommended Posts

I got a fresh "Stock 10.5.4" install on a T61 model 7663-BR1, and installed 82566mm driver and batterymeter driver, the final thing i want to do is to enable QE/CI on the NVS140m chipset. I extract the video rom from Lenovo Bios, but it do not contain any NVCAP value in it. Somehow, there is another file named Display0.rom, can be scaned by NVCAP_Maker.app, but i got a strang value:

040000000000ff00000000000000000700000000

 

After trying a lot of NVCAP value, i read a thread of a user who use NV140m on DELL D830 successfully enabled QE/CI, I decide to use original kext without any injector. and then i found:

when i delete the GeforceGA.plugin, system can boot, some graphics kext can be loaded, but with no QE/CI and Resolution support. In About this Mac, it said

 

Display:

 

Type: Display

Bus: PCIe

PCIe Lane Width: x16

VRAM (Total): 32 MB

Vendor: NVIDIA (0x10de)

Device ID: 0x0429

Revision ID: 0x00a1

Displays:

Display:

Resolution: 1280 x 800

Depth: 32-bit Color

Core Image: Software

Main Display: Yes

Mirror: Off

Online: Yes

Quartz Extreme: Not Supported

 

 

then i use "ioreg -l -w0" to locate the problem, several lines attract me:

 

| | | +-o .Display_boot <class IONDRVFramebuffer, registered, matched, active, busy 0, retain 10>

| | | | | {

| | | | | "CFBundleIdentifier" = "com.apple.iokit.IONDRVSupport"

| | | | | "IOPMStrictTreeOrder" = Yes

| | | | | "IOMatchCategory" = "IOFramebuffer"

| | | | | "IOAccelRevision" = 2

| | | | | "IOFBGammaWidth" = 8

| | | | | "IOFBTransform" = 0

| | | | | "IOFBWaitCursorPeriod" = 33333333

| | | | | "IONameMatched" = "display"

| | | | | "IONameMatch" = "display"

| | | | | "IOFBWaitCursorFrames" = 15

| | | | | "IOFBCursorInfo" = ()

| | | | | "IOProbeScore" = 20000

| | | | | "IOAccelTypes" = "IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/AGP@1/IOPCI2PCIBridge/VID@0/NVKernel"

| | | | | "IOFBGammaHeaderSize" = 12

| | | | | "IOAccelIndex" = 0

| | | | | "graphic-options" = 0

| | | | | "IOFBConfig" = {"dims"=<ffffffffffffffff0000000000000000>,"IODisplayConnectFlags"=0,"IOFBModes"=({"AID"=870640396,"DM"=<000500002003000000000000000000000300000000000000000000000000000000000000>,"DF"=3,"ID"=100}),"IOFB0Hz"=Yes}

| | | | | "IOPowerManagement" = {"ChildrenPowerState"=2,"CurrentPowerState"=2,"DriverChangePowerState"=1}

| | | | | "IOProviderClass" = "IOPCIDevice"

| | | | | "IOCFPlugInTypes" = {"ACCF0000-0000-0000-0000-000a2789904e"="GeForceGA.plugin"}

| | | | | "IOFramebufferOpenGLIndex" = 0

| | | | | "IODisplayParameters" = "IOFramebufferParameterHandler is not serializable"

| | | | | "IOFBMemorySize" = 33554432

| | | | | "IOGeneralInterest" = "IOCommand is not serializable"

| | | | | "IONDRVFramebufferGeneration" = <0100000001000000>

| | | | | "IOClass" = "IONDRVFramebuffer"

| | | | | "IOFBGammaCount" = 256

| | | | | }

 

 

| | +-o AGP@1 <class IOPCIDevice, registered, matched, active, busy 0, retain 10>

| | | | {

| | | | "IOPCIResourced" = Yes

| | | | "#address-cells" = <03000000>

| | | | "IOName" = "pci-bridge"

| | | | "IOInterruptControllers" = ("io-apic-0","IOPCIMessagedInterruptController")

| | | | "IOPCIExpressLinkCapabilities" = 33631489

| | | | "class-code" = <00040600>

| | | | "IOPowerManagement" = {"ChildrenPowerState"=2,"CurrentPowerState"=2}

| | | | "revision-id" = <0c000000>

| | | | "IOInterruptSpecifiers" = (<1000000007000000>,<0000000000000100>)

| | | | "built-in" = <00>

| | | | "acpi-device" = "IOACPIPlatformDevice is not serializable"

| | | | "device-id" = <012a0000>

| | | | "vendor-id" = <86800000>

| | | | "acpi-path" = "IOACPIPlane:/_SB/PCI0@0/AGP@10000"

| | | | "ranges" = <0000008200000000000000d00000008200000000000000d00000000000000003000000c200000

00000000e0000000c200000000000000e00000000000000010000000810000000000200000000000

100000000002000000000000000100000>

| | | | "name" = "pci-bridge"

| | | | "IOPCIExpressLinkStatus" = 4353

| | | | "reg" = <0008000000000000000000000000000000000000>

| | | | "compatible" = <"pci8086,2a01","pciclass,060400">

| | | | "IODTPersist" = <780afb2dc00afb2d>

| | | | "#size-cells" = <02000000>

| | | | "IOPCIConfigured" = Yes

| | | | }

 

 

personally i believed this is the problem, where the graphics card were recognise as using an AGP bus but not PCI bus. Then I try to upgrade my iopcifamily.kext from 2.4.1 to 2.4.4, but it could not help.

 

I will continue my research, anyone who can give me some advice?? Thank you very much.

 

Attach is my ioreg result

ioreg.txt

Link to comment
Share on other sites

good news, thread bookmarked :(

 

what I just discovered is that T61 140M is incompatible with 10.5.5 Nvidia drivers (I had to use Geforce* and NVD* kexts from 10.5.3 to make the upgrade functional). Since they are changed, it can be a chance to make it work by "tunning" the new drivers also.

Link to comment
Share on other sites

  • 3 weeks later...
  • 4 weeks later...

I was totally wrong.

Sorry i haven't update this post in time.

 

The new discovery is, the problem could due to the memory detect. i think maybe the video bios was integrated into MB bios, the remap address could be changed but Mac OS fail to detect video bios.

 

this could explain when i delete GeforceGA.Plugin but keep NVDARESMAN.kext in my system, it can boot up normally but report only 32m memory, which means it worked on VESA mode.

 

thanks for giving me the useful link. i will read it after my exam.

 

following is the information Lenovo gave:

 

Reserved Area The following conventional memory addresses are reserved by the BIOS and others. (When Intel Turbo Memory is installed in your system, conventional memory addresses are reserved 12k bytes more.) nVIDIA Quadro NVS 140M models

 

  • C0000-CEFFF : Reserved for Video BIOS
  • CF000-D0FFF : Reserved for Option ROM of Ethernet (*1)
  • E0000-FFFFF : Reserved for System BIOS

nVIDIA Quadro FX 570M models

 

  • C0000-CF7FF : Reserved for Video BIOS
  • CF800-D17FF : Reserved for Option ROM of Ethernet (*1)
  • E0000-FFFFF : Reserved for System BIOS

Intel Graphics Media Accelerator GM965 models

 

  • C0000-CFFFF : Reserved for Video BIOS
  • D0000-D1FFF : Reserved for Option ROM of Ethernet (*1)
  • E0000-FFFFF : Reserved for System BIOS

Note: (*1) This area becomes free by disabling the Internal Network Option ROM option under Config and Network in BIOS Setup Utility. This choice will disable PXE and WOL features.

 

 

Usable Area The following memory address can be used by the memory manager such as EMM386. nVIDIA Quadro NVS 140M models

 

  • D1000-DFFFF

nVIDIA Quadro FX 570M models

 

  • D1800-DFFFF

Intel Graphics Media Accelerator GM965 models

 

  • D2000-DFFFF

Note: Certain addresses in this area will be reserved for CardBus Controllers or others by Operating Systems. The addresses vary and depend on the design of each Operating System.

 

I am curious what will happened if i do COPY memory content from C0000-CEFFF to other place. will the video card work then?

can anyone please tell me some information about this? thank you.

Link to comment
Share on other sites

It's been a full year since people have been messing with Thinkpads with 140m's trying to get QE and CI working in Leopard. I think this problem is long over-do for a solution, so I'll definitely cheer you on. :huh:

 

I'd like to go back to college in my spring semester with one of the only fully functional installation of Leopard on the Thinkpads my school gave us. Hehe...

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...
  • 2 weeks later...

guys.........

 

please get this to work. i took leopard off my t61 for now because the sound kext would always {censored} out, no sleep support, and the graphics obviously. if you could get the graphics to work, i would most likely put 10.5.6 on and just learn to live without sound and sleep support for now.

Link to comment
Share on other sites

  • 2 months later...
  • 1 year later...

Again, any news guys?

 

I managed to install Snow Leopard 10.6.2 on T61p. Back in 10.5.7 even with the framebuffer I was getting acceptable performance opening and closing windows. Now it's dragging quite a bit.

 

How can I determine how much memory is reported to OS X ?

 

Any ideas how to speed things up even in framebuffer?

Currently screen is running slower than in a vmware image...

 

Thanks

Link to comment
Share on other sites

Again, any news guys?

 

I managed to install Snow Leopard 10.6.2 on T61p. Back in 10.5.7 even with the framebuffer I was getting acceptable performance opening and closing windows. Now it's dragging quite a bit.

 

How can I determine how much memory is reported to OS X ?

 

Any ideas how to speed things up even in framebuffer?

Currently screen is running slower than in a vmware image...

 

Thanks

 

Just use vanilla kexts and remove NVDAResman.kext. Then use any method (efi, injectors) for 8600GT or something

and set NVRAM to 256MB. You should get good performance.

Link to comment
Share on other sites

  • 1 year later...
 Share

×
×
  • Create New...