Contribute
Register

[Solved] LVDS full QE/CI on HD3000 (Toshiba R835/Z835 ok)

Status
Not open for further replies.
Joined
May 12, 2011
Messages
13
Motherboard
Asus Desktop
CPU
Core 2 Duo E6550
Graphics
NV 9600GT
Mac
  1. 0
Classic Mac
  1. 0
Mobile Phone
  1. 0
CHECK BELOW FOR GUIDE FOR WORKING HDMI and LVDS​


Hi Everybody!

I finally managed to get the display working on my Toshiba Portege R835-P56X

I have an Intel Core i5-2410 with Intel HD Graphics 3000

Here is my laptop:
OSX_LVDS_working_4.jpg

Sysinfo:
OSX_LVDS_working_3.jpg

Now here come the details:

First of all I would like to point out that the work is not finished. You get LVDS with full QE/CI, but there are still bugs in the DSDT that I haven't had time to remove and cause the HDMI to have wrong EDID.

I started working with a MacBook Air 4,1 smbios as this has the same resolution as my Toshiba.

I added the following code to my DSDT.

To the beginning:
Code:
Method (DTGP, 5, NotSerialized)
    {
        If (LEqual (Arg0, Buffer (0x10)
                {
                    /* 0000 */    0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, 
                    /* 0008 */    0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
                }))
        {
            If (LEqual (Arg1, One))
            {
                If (LEqual (Arg2, Zero))
                {
                    Store (Buffer (One)
                        {
                            0x03
                        }, Arg4)
                    Return (One)
                }

                If (LEqual (Arg2, One))
                {
                    Return (One)
                }
            }
        }

        Store (Buffer (One)
            {
                0x00
            }, Arg4)
        Return (Zero)
    }


and to the GFX0 device:

Code:
Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x28)
                        {
                            "device_type", 
                            Buffer (0x08)
                            {
                                "display"
                            }, 

                            "model", 
                            Buffer (0x13)
                            {
                                "Intel HD Graphics 3000"
                            }, 

                            "built-in", 
                            Buffer (One)
                            {
                                0x01
                            }, 

                            "device-id", 
                            Buffer (0x04)
                            {
                                0x16, 0x01, 0x00, 0x00
                            }, 

                           
                           
                            "AAPL,backlightRestore", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 
                            
                            "AAPL,HasLid", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,HasPanel", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,NumDisplays", 
                            Buffer (0x04)
                            {
                                0x04, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,NumFramebuffers", 
                            Buffer (0x04)
                            {
                                0x02, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,SelfRefreshSupported", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,aux-power-connected", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,backlight-control", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 
                            
                            "AAPL00,blackscreen-preferences", 
                            Buffer (0x04)
                            {
                                0x00, 0x00, 0x00, 0x08
                            }, 

                            "AAPL01,BacklightIntensity", 
                            Unicode ("d"), 
                            "AAPL01,blackscreen-preferences", 
                            Buffer (0x04)
                            {
                                0x00, 0x00, 0x00, 0x08
                            }, 

                            "AAPL01,BootDisplay", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            },
                           
                           
                            "AAPL01,DualLink", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL00,DualLink", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "@0,override-no-edid", 
                            Buffer (0x80)
                            {
                                /* 0000 */    0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 
                                /* 0008 */    0x51, 0xF3, 0x91, 0x50, 0x04, 0x00, 0x00, 0x00, 
                                /* 0010 */    0x0E, 0x10, 0x01, 0x03, 0x80, 0x1D, 0x11, 0xFF, 
                                /* 0018 */    0x2F, 0x00, 0x00, 0xA0, 0x57, 0x49, 0x9B, 0x26, 
                                /* 0020 */    0x10, 0x48, 0x4F, 0x00, 0x00, 0x00, 0x01, 0x01, 
                                /* 0028 */    0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 
                                /* 0030 */    0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xC6, 0x1D, 
                                /* 0038 */    0x56, 0x02, 0x51, 0x00, 0x0C, 0x30, 0x22, 0x70, 
                                /* 0040 */    0x12, 0x00, 0x27, 0xA6, 0x10, 0x00, 0x00, 0x18, 
                                /* 0048 */    0xDA, 0x13, 0x56, 0x02, 0x51, 0x00, 0x0C, 0x30, 
                                /* 0050 */    0x22, 0x70, 0x12, 0x00, 0x27, 0xA6, 0x10, 0x00, 
                                /* 0058 */    0x00, 0x18, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x49, 
                                /* 0060 */    0x6E, 0x74, 0x65, 0x72, 0x6E, 0x61, 0x6C, 0x20, 
                                /* 0068 */    0x4C, 0x43, 0x44, 0x0A, 0x00, 0x00, 0x00, 0xFD, 
                                /* 0070 */    0x00, 0x00, 0x3C, 0x00, 0x3D, 0x08, 0x00, 0x00, 
                                /* 0078 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA7
                            }, 

                            "AAPL01,override-no-edid", 
                            Buffer (0x80)
                            {
                                /* 0000 */    0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 
                                /* 0008 */    0x51, 0xF3, 0x91, 0x50, 0x04, 0x00, 0x00, 0x00, 
                                /* 0010 */    0x0E, 0x10, 0x01, 0x03, 0x80, 0x1D, 0x11, 0xFF, 
                                /* 0018 */    0x2F, 0x00, 0x00, 0xA0, 0x57, 0x49, 0x9B, 0x26, 
                                /* 0020 */    0x10, 0x48, 0x4F, 0x00, 0x00, 0x00, 0x01, 0x01, 
                                /* 0028 */    0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 
                                /* 0030 */    0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xC6, 0x1D, 
                                /* 0038 */    0x56, 0x02, 0x51, 0x00, 0x0C, 0x30, 0x22, 0x70, 
                                /* 0040 */    0x12, 0x00, 0x27, 0xA6, 0x10, 0x00, 0x00, 0x18, 
                                /* 0048 */    0xDA, 0x13, 0x56, 0x02, 0x51, 0x00, 0x0C, 0x30, 
                                /* 0050 */    0x22, 0x70, 0x12, 0x00, 0x27, 0xA6, 0x10, 0x00, 
                                /* 0058 */    0x00, 0x18, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x49, 
                                /* 0060 */    0x6E, 0x74, 0x65, 0x72, 0x6E, 0x61, 0x6C, 0x20, 
                                /* 0068 */    0x4C, 0x43, 0x44, 0x0A, 0x00, 0x00, 0x00, 0xFD, 
                                /* 0070 */    0x00, 0x00, 0x3C, 0x00, 0x3D, 0x08, 0x00, 0x00, 
                                /* 0078 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA7
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }

Now as you can see the code contains two EDID overrides because at the beginning this was the only way to get a recognized LVDS. As this is a work in progress I hope I can remove one of them and get the HDMI back. (I will work on it some more after my phd :D )

If we include an AAPL01, DisplayConfig key, the screen is recognized as built-in, but not one but two built-in screens are "recognized". I don't currently know what the values mean and I need help to find out. Also most of the code in the GFX0 section is not working yet, or maybe not needed at all.

I will work on it some next week. Until then anybody with time can experiment with it. And please share your findings.

Oliver

PS. in the zip file is my dsdt, smbios and boot plist
 

Attachments

  • LVDS_1.zip
    43.2 KB · Views: 796
  • OSX_LVDS_working_4.jpg
    OSX_LVDS_working_4.jpg
    77.7 KB · Views: 1,851
  • OSX_LVDS_working_3.jpg
    OSX_LVDS_working_3.jpg
    112.3 KB · Views: 2,066
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

wow, awsome results!!! congrats!

too bad I finished by going to a acer S3!
well, I'm happy with my system, but I prefered the toshiba.

keep the good work!
cheers
 
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

__lio__ said:
Now as you can see the code contains two EDID overrides

i have a question these EDID overrides yours?? because with this DSM method a had white screen :eek: :D
 
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

pasha_infest said:
i have a question these EDID overrides yours?? because with this DSM method a had white screen :eek: :D

Hi!

Yes they are mine, you need to get your own EDID (easy under Windows with this:
http://www.entechtaiwan.com/util/moninfo.shtm)

Also check if you need the device properties from my org.chameleon.Boot.plist.
 
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

__lio__ said:
http://www.entechtaiwan.com/util/moninfo.shtm[/url])

Also check if you need the device properties from my org.chameleon.Boot.plist.[/quote:zq73ko59]
;)
thx dude! i will check this

update: now my screen is grey :eek: ...with dev properties in org.chameleon.Boot.plist ....hhmmm
 
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

Oh sweet I have the same laptop as you!!

Could you post an installation guide?
 
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

tsuna said:
Could you post an installation guide?


I will do one, but I still have some two days work on my thesis.

Oliver
 
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

Finally I had time to work some more on my laptop. (no more phd to write :D )

Current state of things:

LVDS working completely, QE/CI, HDMI working under OSX Lion 10.7.3
It works either as Macbook Air 4,1 or Pro 8,1
twomon.jpg

Now the guide:

To access your OSX:
1.) You can use an HDMI capable monitor. Start the computer with the HDMI plugged in.
2.) If you don't have HDMI boot to single user mode (-s flag), and rename AppleIntelSNBGraphicsFB.kext to AppleIntelSNBGraphicsFB.kext.backup, so it wont load. This way I got my LVDS at 720p resolution.

First update to 10.7.3. You can use either the combo update or through software update.

I used champlist to set my SMBIOS to macbook pro 8,1. smbios.plist

Download DSDTSE and extract your DSDT.

In the GFX or IGP (IGPU) device section (depending on what you have) insert the following code just at the beginning:
After this:
Code:
 Device (GFX0)
            {
                Name (_ADR, 0x00020000)
Insert this:
Code:
Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x1E)
                        {
                            "device_type", 
                            Buffer (0x08)
                            {
                                "display"
                            }, 

                            "built-in", 
                            Buffer (One)
                            {
                                0x01
                            }, 

                            "AAPL00,backlight-control", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,snb-platform-id", 
                            Buffer (0x04)
                            {
                                0x00, 0x00, 0x01, 0x00
                            }, 

                            "AAPL00,blackscreen-preferences", 
                            Buffer (0x04)
                            {
                                0x00, 0x00, 0x00, 0x08
                            }, 

                            "VRAM,totalsize", 
                            Buffer (0x04)
                            {
                                0x00, 0x00, 0x00, 0x20
                            }, 

                            "device-id", 
                            Buffer (0x04)
                            {
                                0x16, 0x01, 0x00, 0x00
                            }, 

                            "vendor-id", 
                            Buffer (0x04)
                            {
                                0x86, 0x80, 0x00, 0x00
                            }, 

                            "model", 
                            Buffer (0x17)
                            {
                                "Intel HD Graphics 3000"
                            }, 

                            "AAPL,HasLid", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,HasPanel", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,NumDisplays", 
                            Buffer (0x04)
                            {
                                0x02, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,NumFramebuffers", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL,DualLink", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 

                            "AAPL00,override-no-edid", 
                            Buffer (0x80)
                            {
                                /* 0000 */    0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 
                                /* 0008 */    0x51, 0xF3, 0x91, 0x50, 0x04, 0x00, 0x00, 0x00, 
                                /* 0010 */    0x0E, 0x10, 0x01, 0x03, 0x80, 0x1D, 0x11, 0xFF, 
                                /* 0018 */    0x2F, 0x00, 0x00, 0xA0, 0x57, 0x49, 0x9B, 0x26, 
                                /* 0020 */    0x10, 0x48, 0x4F, 0x00, 0x00, 0x00, 0x01, 0x01, 
                                /* 0028 */    0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 
                                /* 0030 */    0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xC6, 0x1D, 
                                /* 0038 */    0x56, 0x02, 0x51, 0x00, 0x0C, 0x30, 0x22, 0x70, 
                                /* 0040 */    0x12, 0x00, 0x27, 0xA6, 0x10, 0x00, 0x00, 0x18, 
                                /* 0048 */    0xDA, 0x13, 0x56, 0x02, 0x51, 0x00, 0x0C, 0x30, 
                                /* 0050 */    0x22, 0x70, 0x12, 0x00, 0x27, 0xA6, 0x10, 0x00, 
                                /* 0058 */    0x00, 0x18, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x49, 
                                /* 0060 */    0x6E, 0x74, 0x65, 0x72, 0x6E, 0x61, 0x6C, 0x20, 
                                /* 0068 */    0x4C, 0x43, 0x44, 0x0A, 0x00, 0x00, 0x00, 0xFD, 
                                /* 0070 */    0x00, 0x00, 0x3C, 0x00, 0x3D, 0x08, 0x00, 0x00, 
                                /* 0078 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA7
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }

In the above code there a three places to make changes according to your

Code:
"VRAM,totalsize", 
                            Buffer (0x04)
                            {
                                0x00, 0x00, 0x00, 0x20
                            },

change 0x20 to fit your laptop:
0x18 for 384 MB VRAM size (4GB or less memmory)
0x20 for 512 MB VRAM

Code:
"device-id", 
                            Buffer (0x04)
                            {
                                0x16, 0x01, 0x00, 0x00
                            },

Change 0x16, 0x01 to your device id. This is for 116-8086 You can find out yours under Windows (device manager for example, or use AIDA64) or Linux

The third part to change is "AAPL00,override-no-edid",
Find out your EDID under Windows or Linux and replace my code.
(easy under Windows with this:http://www.entechtaiwan.com/util/moninfo.shtm)

What is very important is to use "AAPL,DualLink", not AAPL00 or 01. This was the reason why it wasn't working for me previously.


To get display brightness slider you need to insert the following code in Scope SB, after the _INI method:

Code:
Device (PNLF)
        {
            Name (_HID, EisaId ("APP0002"))
            Name (_CID, "backlight")
            Name (_UID, 0x0A)
            Name (_STA, 0x0B)
        }

Compile your DSDT and install it.

If you have renamed your KEXT, please restore it.

Use kext utility to correct KEXT errors.

You are done, reboot.
 

Attachments

  • smbios.plist
    489 bytes · Views: 652
  • LVDS81_working_bright.dsl
    329.6 KB · Views: 470
  • AppleIntelSNBGraphicsFB.kext.zip
    217.1 KB · Views: 525
  • twomon.jpg
    twomon.jpg
    125.3 KB · Views: 1,570
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

****. ! don't work 4 me...all i want is working HD3000~ :eek: don't know what this lenovo edge e420 want from me!?!?!?!?!) o_O
 
Re: Solved Toshiba Portege R835 LVDS full QE/CI with HD3000

[quote="_
Now the guide:


You are done, reboot.[/quote]

YEA! Fantastic! ..... It works on my Toshiba PORTEGE Ultrabook Z835-P330 ....

Where I had a black screen I now have 1366 x 768 x 32 with full acceleration on the internal display. And HDMI concurrently at 1920 x 1200 x 32 on my DVI display (via adapter).

I am greatly pleased.

Now I have to move this from the external USB drive to the internal SSD.

Also find a fix for audio. Details details.

neil
 
Status
Not open for further replies.
Back
Top