Jump to content

Dell Studio 1557 Discussion Thread


107 posts in this topic

Recommended Posts

Update:-

- Update to 10.6.5 without any problem

- ATIRadeonX2000.kext doesn't cause kernel panic anymore but if booting with GraphicsEnabler=Yes, you'll see garbage screen on internal monitor. If boot without GraphicsEnabler=Yes, RadeonHD.kext work properly for native resolution support. Didn't test with external monitor yet. Anyway, I use this script just for precaution to prevent kernel panic during update:-

i=0; while ([ $i == 0 ]); do if ([ -d "ATIRadeonX2000.kext" ]); then i=$(( $i + 1 )); echo "ATIRadeonX2000.kext found $i time"; mv ATIRadeonX2000.kext ATIRadeonX2000.kext.10.6.5; else echo "ATIRadeonX2000.kext Not Found"; echo "Resetting..."; i=0; fi; done;

- Need to patched AppleHDA binary with audio codec ID.

- Looks like C-State & P-State as usual working, I think. I can see the CPU frequency changes between 0.99GHz to 2.66GHz. Monitored with MSR Tools.

- As usual CPU run much cooler compared on windows.

- Now using Chameleon 2 RC5 r629.

Link to comment
Share on other sites

  • 2 weeks later...

Kizwan I desperately need your help. Have been trying to get various different versions of OSX up and running on my 1557 for about 6 weeks now, several hours every day and am completely stumped. Using your method I have managed to get 10.6.5 running with pretty much everything you've got minus Speedstep/Fan control which is driving me insane. I've loaded your DSDT file which boots fine but something's not right about how my machine is recognising my processor - 4 cores but not 2 threads per core. I've tried running msr tools to take a look at my speedstep settings but when it opens the window is empty, i suspect because speedstep isn't working properly. Which kext should i be using to take care of power management (something seems to be blacklisting appleintelcpumanagement.kext but i'm not sure if this is right)?

Sorry if this isn't enough info to work with, let me know if you need to know anything else.

 

Thanks

 

Dis_Turbed

Link to comment
Share on other sites

New update at first post. I have uploaded my Extra folder, updated DSDT, how to patch AppleHDA binary (well, not step by step guide), etc.

 

It would be nice if everyone share your experience in this thread. Discussion on how to reverse engineering the ATI driver would be nice too. Especially why the driver doesn't detect the internal LCD. I found out that on Dell Studio 1557, the internal LCD is connected to or using TMDS instead of LVDS. I already checked real iMac7,1 with ATI GPU & I found out it use LVDS.

Link to comment
Share on other sites

  • 1 month later...
  • 2 months later...

Good news!

 

I'm able to get HD4570 working with 10.6.6 but only external monitor working right now. QE/CI also enabled.

 

Result:-

Output only on external monitor with QE/CI supported. Internal monitor remain black.

 

Requirements:-

  1. Mac OS X 10.6.6
  2. Lion (10.7) kexts:-
    • ATI4600Controller.kext
    • ATIFramebuffer.kext
    • ATISupport.kext

[*]Boot with GraphicsEnabler=Yes

[*]Required files - Result_With_10.7_Kexts.zip

 

Notes:-

  1. ATI4570.Fix.v2.kext in 1557 folder is responsible in automatically injecting ATI device & vendor ID on the fly to ATI4600Controller.kext on every boot.
  2. 1557 folder contains legacy kexts.
  3. AppleHDA.kext (10.6.6) already patched with IDT device ID.
  4. dsdt.aml contain basic patch. Contain injection code for ATI GPU to use Vervet framebuffer.
  5. Tested on 32bit mode.

 

System Profiler & IOReg:-

post-125711-1299519408_thumb.jpgpost-125711-1299519435_thumb.jpg

 

Pictures show "water effect" which proved the QE/CI are enabled:-

post-125711-1299519480_thumb.jpg

Link to comment
Share on other sites

  • 2 weeks later...

Another good news!

 

I'm able to get HD4570 working with 10.6.6. All connections; LVDS, VGA & HDMI; are working. QE/CI also enabled.

 

##########################################################################################################

(Update 6 April 2011)

This is new package containing everything you need:-

Contains:-

  • 1557 folder
    - contains legacy kexts
  • boot file
    - Chameleon 2 (trunk) recompiled (set Shrike as default framebuffer for HD4570)
  • dsdt.aml
    - extracted from BIOS A08 (have basic fixed - dsdt_A08_final_002.aml)
  • ATIFramebuffer.kext.zip
    - 10.6.6 ATIFramebuffer.kext (already patched for HD4570)
  • AppleHDA.kext
    - 10.6.6 AppleHDA.kext (already patched with IDT sound device ID)
  • smbios.plist
    - machine identifier
  • com.apple.Boot.plist
  • OFFSET_IN_FILE_SHRIKE_32BIT.TXT & OFFSET_IN_FILE_SHRIKE_64BIT.TXT
    - simple/brief instruction on how to do from scratch for 32bit & 64bit

Notes:-

  1. Make sure to add ATI HD4570 device ID 0x95531002 in ATI4600Controller.kext
  2. Rename the dsdt_A08_final_002.aml to dsdt.aml
  3. After installing the ATIFramebuffer.kext do these in Terminal:-

    1. sudo -s
    2. touch /System/Library/Extensions
    3. diskutil repairPermissions /

[*]Install
DellBluetoothHCI.kext
in
/System/Library/Extensions/
folder

[*]Install
AppleHDA.kext
in
/System/Library/Extensions/ folder

[*]The "
OLD ATIFramebuffer
" folder contain
ATIFramebuffer.kext
which already patched
with this connection table using Shrike framebuffer.
This is tested & proved to works with standard &
Full HD LCD panel
:-

  02  00  00  00  40  00  00  00  09  01  00  00  12  00  00  01	 (LVDS)
 10  00  00  00  10  00  00  00  00  01  00  00  00  10  01  06	 (VGA)
 00  08  00  00  00  02  00  00  00  01  00  00  20  01  02  02	 (HDMI)

[*]The "
NEW ATIFramebuffer
" folder contain
ATIFramebuffer.kext
which already patched
with this connection table using Shrike framebuffer (transmitter & encoder are based on RadeonHD's log).
This is tested & proved to works only with standard LCD panel (1366x768)
.

dong's
log:-

Mapping DIG1 encoder to KLDSKP_UNIPHYB
Connector "DVI-D 1" uses Monitor "SMB2330H":
...
Mapping DIG2 encoder to KLDSKP_UNIPHYE
Crtc[1]: found native mode from Monitor[LVDS Panel]:
Modeline "1366x768"  67  1366 1383 1395 1434  768 771 773 781
Connector "PANEL" uses Monitor "LVDS Panel":
RHDValidateScaledToMode
rhdModeValidateCrtc
DxModeValid: ATOM CRTC 2
rhdAtomOutputModeValid
Listing modesetting layout:
ATOM CRTC 1: tied to Atom PLL 1 and LUT A:
Outputs: AtomOutputUniphyB (DVI-D 1)
ATOM CRTC 2: tied to Atom PLL 2 and LUT B:
Outputs: AtomOutputUniphyE (PANEL)
Unused Outputs: AtomOutputDACB

CRTC0 >
DIG1
>
UNIPHYB
> HDMI:
Encoder=0x00
Transmitter=0x20

CRTC1 >
DIG2
>
UNIPHYE
> LVDS:
Encoder=0x01
Transmitter=0x12

CRTC1 >
DAC
>
DACB
> VGA:
Encoder=0x10
Transmitter=0x10

  02  00  00  00  40  00  00  00  09  01  00  00  12  01  00  01	 (LVDS)
 10  00  00  00  10  00  00  00  00  01  00  00  10  10  01  06	 (VGA)
 00  08  00  00  00  02  00  00  00  01  00  00  20  00  02  02	 (HDMI)

##########################################################################################################

 

Requirements:-

  1. Mac OS X 10.6.6
  2. 10.6.6 kexts:-
    • ATI4600Controller.kext
    • ATIFramebuffer.kext (included in the compressed file - already patched)
    • ATISupport.kext

[*]Modified Chameleon 2 boot file (included in the compressed file - Shrike is default framebuffer for HD4570)

[*]Boot with GraphicsEnabler=Yes

[*]Required files - Final_10.6.6_kexts.zip (Old package. Please download the Final_10.6.6_kexts_R2.zip package)

 

Notes:-

  1. Please use legacy kexts available in previous post.
  2. Use AppleHDA.kext (10.6.6) already patched with IDT device ID - available at previous post. (also included in the Final_10.6.6_kexts_R2.zip package)
  3. Tested on 32bit & 64bit mode.

 

System Profiler & IOReg:-

post-125711-1300213506_thumb.jpgpost-125711-1300213543_thumb.jpg

 

Guides & references:-

Editing custom personalities for ATI Radeon HD[45]xxx, Build your own ATI personality for better ATI Radeon HD[45]xxx support

Mobility Radeon HD 4650:Full Resolution with QE & CI working on Internal LVDS screen, No Lion kext, only patched 10.6.6 kext (ATIFramebuffer.kext)

Link to comment
Share on other sites

I can't boot the vanilla 10.6 disc.

I use the [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] disc to load snow leopard. I've tried -x , -v , -x -v options but any of those works. While booting without any of these - I can hear it loads the disc but then it hangs after few seconds. With -v it shows something like this:

Read HFS+ file : blablabla

Loading Darwin 10.6

Loading kernel ...

Read HFS+ file..

(few of those)

ACPI table not found: DSDT.aml

No DSDT found, using 0 as uid value.

Using PCI-Root-UID value:0

Framebuffer @0xD0000000 MMIO @0xFC000000 I/O Port @0x00000000 ROM Addr @0x00000000

ATI card POSTed, reading VBIOS from legacy space

and then it freezes.

When booting with -v -x it loads sh*tload of kexts off the disc and then clears the screen and hangs.

Any ideas what might be wrong?

Oh, and I'm doing all of these on Dell Studio 1555.

 

/edit

Could this be the result of having two ext4 partitions (linux) on hard drive? I just read that there should be only fat32/ntfs partitions on the hd.

Link to comment
Share on other sites

I can't boot the vanilla 10.6 disc.

I use the [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] disc to load snow leopard. I've tried -x , -v , -x -v options but any of those works. While booting without any of these - I can hear it loads the disc but then it hangs after few seconds. With -v it shows something like this:

 

and then it freezes.

When booting with -v -x it loads sh*tload of kexts off the disc and then clears the screen and hangs.

Any ideas what might be wrong?

Oh, and I'm doing all of these on Dell Studio 1555.

 

/edit

Could this be the result of having two ext4 partitions (linux) on hard drive? I just read that there should be only fat32/ntfs partitions on the hd.

Sorry, I won't be able to help you with the OS X installation. Probably you'll need to use other boot CD to boot successfully on your notebook.

Link to comment
Share on other sites

I can't boot the vanilla 10.6 disc.

I use the [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] disc to load snow leopard. I've tried -x , -v , -x -v options but any of those works. While booting without any of these - I can hear it loads the disc but then it hangs after few seconds. With -v it shows something like this:

Read HFS+ file : blablabla
Loading Darwin 10.6
Loading kernel ...
Read HFS+ file..
(few of those)
ACPI table not found: DSDT.aml
No DSDT found, using 0 as uid value.
Using PCI-Root-UID value:0
Framebuffer @0xD0000000 MMIO @0xFC000000 I/O Port @0x00000000 ROM Addr @0x00000000
ATI card POSTed, reading VBIOS from legacy space

and then it freezes.

When booting with -v -x it loads sh*tload of kexts off the disc and then clears the screen and hangs.

Any ideas what might be wrong?

Oh, and I'm doing all of these on Dell Studio 1555.

It freezes after you see the "ATI card POSTed, reading VBIOS from legacy space" message is because it use Kabyl's boot file which doesn't contain device ID for our graphic card (0x9553). Please try EmpireEFI boot CD to install OS X on your Studio 1555.

 

Then, when OS X already up & running, you'll need to install Chameleon 2 bootloader on local disk.

Link to comment
Share on other sites

  • 2 weeks later...

  1. Bootloader:-
    • I didn't change anything in the bootloader (from trunk) except my graphic card's default framebuffer. I changed it from Peregrine to Shrike.

[*]SMBIOS machine identifier:-

  • I use smbios.plist to set machine identifier to iMac11,1.
  • smbios.zip
  • smbios.plist file should be in "Extra" folder.

[*]DSDT:-

  • I only add basic fix in it. The usual fix are:-
    • LPCB fix (AppleLPC). The Low Pin Count bus, or LPC bus, is used on IBM-compatible personal computers to connect low-bandwidth devices to the CPU, such as the boot ROM and the "legacy" I/O devices (behind a super I/O chip). With improved communication, it also improved everything including power management. For example, notifying the LPC peripherals that power will soon be removed. The result is CPU will run much cooler. If your notebook's LPC's device ID already in the AppleLPC.kext, you don't need this fix. The idea of this fix is to "change" the LPC's device ID to the one available in the AppleLPC.kext.
                  Device (LPCB)
                 {
                     Name (_ADR, 0x001F0000)
                     Method (_DSM, 4, NotSerialized)
                     {
                         Store (Package (0x02)
                             {
                                 "device-id", 
                                 Buffer (0x04)
                                 {
                                     0x02, 0x3B, 0x00, 0x00
                                 }
                             }, Local0)
                         DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                         Return (Local0)
                     }


    • Rename my video device from M86 to GFX0. This is purely cosmetic. I only inject EDID for the internal LCD (purely cosmetic) & hda-gfx for the HDMI audio support. Regarding the EDID injection, I found on some real macbook pro, EDID is injected at Port 0 (@0). So far I didn't see any advantage/improvement from it, so I guess it is just cosmetic. My HD4570 already working great. I also inject HDAU in M86/GFX0 for HDMI audio support.
                      Device (GFX0)
                     {
                         Name (_ADR, Zero)
                         Method (_DSM, 4, NotSerialized)
                         {
                             Store (Package (0x04)
                                 {
                                     "@0,EDID", 
                                     Buffer (0x80)
                                     {
                                         /* 0000 */    0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 
                                         /* 0008 */    0x25, 0xCC, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                         /* 0010 */    0x00, 0x13, 0x01, 0x03, 0x90, 0x22, 0x13, 0x78, 
                                         /* 0018 */    0x0A, 0xC8, 0x85, 0x9E, 0x57, 0x54, 0x9B, 0x26, 
                                         /* 0020 */    0x12, 0x50, 0x54, 0x00, 0x00, 0x00, 0x01, 0x01, 
                                         /* 0028 */    0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 
                                         /* 0030 */    0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x36, 0x1A, 
                                         /* 0038 */    0x56, 0x44, 0x50, 0x00, 0x0D, 0x30, 0x11, 0x0C, 
                                         /* 0040 */    0x32, 0x00, 0x58, 0xC2, 0x10, 0x00, 0x00, 0x1A, 
                                         /* 0048 */    0x36, 0x1A, 0x56, 0x44, 0x50, 0x00, 0x0D, 0x30, 
                                         /* 0050 */    0x11, 0x0C, 0x32, 0x00, 0x58, 0xC2, 0x10, 0x00, 
                                         /* 0058 */    0x00, 0x1A, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x31, 
                                         /* 0060 */    0x47, 0x35, 0x44, 0x33, 0x81, 0x31, 0x35, 0x36, 
                                         /* 0068 */    0x47, 0x57, 0x30, 0x31, 0x00, 0x00, 0x00, 0x00, 
                                         /* 0070 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                         /* 0078 */    0x00, 0x01, 0x01, 0x0A, 0x20, 0x20, 0x00, 0xF2
                                     }, 
                                     "hda-gfx", 
                                     Buffer (0x0A)
                                     {
                                         "onboard-1"
                                     }
                                 }, Local0)
                             DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                             Return (Local0)
                         }


                      Device (HDAU)
                     {
                         Name (_ADR, One)
                         Method (_DSM, 4, NotSerialized)
                         {
                             Store (Package (0x02)
                                 {
                                     "hda-gfx", 
                                     Buffer (0x0A)
                                     {
                                         "onboard-1"
                                     }
                                 }, Local0)
                             DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                             Return (Local0)
                         }
                     }


    • RTC fix. Change the Length value to 0x02 to prevent CMOS reset after reboot/shutdown or crashed. Removed IRQNoFlags (forgot what it is for but recommended fix).
    • HDEF fix for audio support. This works with patched AppleHDA or legacy AppleHDA kext.
                  Device (HDEF)
                 {
                     Name (_ADR, 0x001B0000)
                     Method (_DSM, 4, NotSerialized)
                     {
                         Store (Package (0x0C)
                             {
                                 "built-in", 
                                 Buffer (One)
                                 {
                                     0x00
                                 }, 
                                 "codec-id", 
                                 Buffer (0x04)
                                 {
                                     0x75, 0x76, 0x1D, 0x11
                                 }, 
                                 "ConfigData", 
                                 Buffer (0x50)
                                 {
                                     /* 0000 */    0x00, 0xA7, 0x1C, 0x40, 0x00, 0xA7, 0x1D, 0x10, 
                                     /* 0008 */    0x00, 0xA7, 0x1E, 0x21, 0x00, 0xA7, 0x1F, 0x01, 
                                     /* 0010 */    0x00, 0xD7, 0x1C, 0x30, 0x00, 0xD7, 0x1D, 0x01, 
                                     /* 0018 */    0x00, 0xD7, 0x1E, 0x10, 0x00, 0xD7, 0x1F, 0x90, 
                                     /* 0020 */    0x00, 0xE7, 0x1C, 0x20, 0x00, 0xE7, 0x1D, 0x30, 
                                     /* 0028 */    0x00, 0xE7, 0x1E, 0x81, 0x00, 0xE7, 0x1F, 0x01, 
                                     /* 0030 */    0x00, 0xF7, 0x1C, 0x50, 0x00, 0xF7, 0x1D, 0x10, 
                                     /* 0038 */    0x00, 0xF7, 0x1E, 0x21, 0x00, 0xF7, 0x1F, 0x01, 
                                     /* 0040 */    0x01, 0x37, 0x1C, 0x10, 0x01, 0x37, 0x1D, 0x01, 
                                     /* 0048 */    0x01, 0x37, 0x1E, 0xA0, 0x01, 0x37, 0x1F, 0x90
                                 }, 
                                 "layout-id", 
                                 Buffer (0x04)
                                 {
                                     0x0C, 0x00, 0x00, 0x00
                                 }, 
                                 "device-type", 
                                 Buffer (0x0F)
                                 {
                                     "IDT 92HD73C1X5"
                                 }, 
                                 "PinConfigurations", 
                                 Buffer (0x14)
                                 {
                                     /* 0000 */    0x40, 0x10, 0x21, 0x01, 0x30, 0x01, 0x10, 0x90, 
                                     /* 0008 */    0x20, 0x30, 0x81, 0x01, 0x50, 0x10, 0x21, 0x01, 
                                     /* 0010 */    0x10, 0x01, 0xA0, 0x90
                                 }
                             }, Local0)
                         DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                         Return (Local0)
                     }


    • PNLF fix for backlight/brightness support. Can put this after LID0 device.
              Device (PNLF)
             {
                 Name (_HID, EisaId ("APP0002"))
                 Name (_CID, "backlight")
                 Name (_UID, 0x0A)
                 Name (_STA, 0x0B)
             }


    • Added PRW control method in ADP1 device for AC adapter/module support.
              Device (ADP1)
             {
                 Name (_HID, "ACPI0003")
                 Name (_PRW, Package (0x02)
                 {
                     0x0A, 
                     0x03
                 })


    • SBUS fix for OSX usage. If the SMBUS's device ID is not in the AppleSMBusPCI.kext, will need to inject it's device ID too, the same way I did with LPCB device. Below fix is added at the end of the SBUS device.
                  Device (BUS0)
                 {
                     Name (_CID, "smbus")
                     Name (_ADR, Zero)
                     Device (DVL0)
                     {
                         Name (_ADR, 0x57)
                         Name (_CID, "diagsvault")
                         Method (_DSM, 4, NotSerialized)
                         {
                             Store (Package (0x03)
                                 {
                                     "address", 
                                     0x57, 
                                     Buffer (One)
                                     {
                                         0x00
                                     }
                                 }, Local0)
                             DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                             Return (Local0)
                         }
                     }
                 }


    • HPET already correct, so no need to fix it.

[*]My com.apple.Boot.plist:-

Remark: The DropSSDT=Yes is to drop/skip BIOS's SSDT table. This is because I already incorporated it in DSDT. If you applied speedstep fix, you'll need to use this parameter. My Studio 1557's cpu's speedstep already working out-of-the-box. I just make it better (using BITS to obtain it).

	<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string>arch=i386</string>
<key>GraphicsEnabler</key>
<string>Yes</string>
<key>DropSSDT</key>
<string>Yes</string>
<key>Legacy Logo</key>
<string>Yes</string>
<key>SMBIOSdefaults</key>
<string>Yes</string>

[*]Kexts in the "Extra" folder:-

Remark: IDT92HD73C1X5_R2.kext is for audio support. IONetworkingFamily.kext is for Realtek ethernet device.

AppleACPIPS2Nub.kext
ApplePS2Controller.kext
IDT92HD73C1X5_R2.kext
IONetworkingFamily.kext
fakesmc.kext

Link to comment
Share on other sites

Hi, i ve got also a dell 1557 i7 720qm, mobility radeon 4570 512mb, but wled 1920x1080.

Thanks for your topics about this notebook, i m able to run osx 10.6.6, but no qe/ci yet. I used your kexts and patched files.

After hours of reading, it seems to be a problem with the dual link dvi support. The injector dont recognize it properly , (if i m right). But i m noob with hexadecimal and compilation, can you help me to resolve this, i m ready to make test

Here is the output of radeon_bios_decode (i think it will be the same as you, but i would verified), and the dmesg in linux :

 

Mac-Pro-de-MysticJo:test mysticjo$ ./radeon_bios_decode < 1002_9553.rom

ATOM BIOS Rom:

SubsystemVendorID: 0x1028 SubsystemID: 0x02bd

IOBaseAddress: 0x2000

Filename: BR034783.006

BIOS Bootup Message:

BR034783-006 M92 DDR3 64bit 500e/800m

 

Connector at index 0

Type: VGA (1)

Encoder: id: 16 name: INTERNAL_KLDSCP_DAC2

i2cid: 0x95, OSX senseid: 0x6

Connector at index 1

Type: HDMI-A (11)

Encoder: id: 1e name: INTERNAL_UNIPHY

i2cid: 0x91, OSX senseid: 0x2

Connector at index 2

Type: LVDS (7)

Encoder: id: 21 name: INTERNAL_UNIPHY2

i2cid: 0x90, OSX senseid: 0x1

 

 

[ 4.648762] [drm] ring test succeeded in 1 usecs

[ 4.648901] [drm] radeon: ib pool ready.

[ 4.649118] [drm] ib test succeeded in 0 usecs

[ 4.649291] [drm] Radeon Display Connectors

[ 4.649348] [drm] Connector 0:

[ 4.649400] [drm] VGA

[ 4.649452] [drm] DDC: 0x7fa0 0x7fa0 0x7fa4 0x7fa4 0x7fa8 0x7fa8 0x7fac 0x7fac

[ 4.649527] [drm] Encoders:

[ 4.649579] [drm] CRT2: INTERNAL_KLDSCP_DAC2

[ 4.649635] [drm] Connector 1:

[ 4.649684] [drm] HDMI-A

[ 4.649733] [drm] HPD1

[ 4.649781] [drm] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c

[ 4.649850] [drm] Encoders:

[ 4.649898] [drm] DFP1: INTERNAL_UNIPHY

[ 4.649949] [drm] Connector 2:

[ 4.649998] [drm] LVDS

[ 4.650046] [drm] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c

[ 4.650115] [drm] Encoders:

[ 4.650164] [drm] LCD1: INTERNAL_UNIPHY2

[ 4.768166] usb 1-1: new high speed USB device using ehci_hcd and address 2

[ 4.785879] [drm] fb mappable at 0xD0141000

[ 4.785931] [drm] vram apper at 0xD0000000

[ 4.785981] [drm] size 8294400

[ 4.786029] [drm] fb depth is 24

[ 4.786078] [drm] pitch is 7680

[ 4.786173] fb0: radeondrmfb frame buffer device

[ 4.786227] registered panic notifier

[ 4.786280] [drm] Initialized radeon 2.0.0 20080528 for 0000:02:00.0 on minor 0

 

and the /var/log/Xorg.0.log with radeon.modeset=0

 

Xorglogmodeset0.txt

 

I use bios AO8

 

Thanks ;)

Link to comment
Share on other sites

Hi, i ve got also a dell 1557 i7 720qm, mobility radeon 4570 512mb, but wled 1920x1080.

Thanks for your topics about this notebook, i m able to run osx 10.6.6, but no qe/ci yet. I used your kexts and patched files.

After hours of reading, it seems to be a problem with the dual link dvi support.

Correction, it's dual-link (a.k.a 2 channel) LVDS transmitter.

 

Yes the radeon BIOS dump is identical with mine.

 

This is connection table for our GPU:-

CRTC0 > DIG1 > UNIPHYB > HDMI: Encoder=0x00 Transmitter=0x20

CRTC1 > DIG2 > UNIPHYE > LVDS: Encoder=0x01 Transmitter=0x12

CRTC1 > DAC > DACB > VGA: Encoder=0x10 Transmitter=0x10

 

Patched connection table:-

--> 00000000: 02 00 00 00 40 00 00 00 09 01 00 00 12 01 00 01 (LVDS)

--> 00000010: 10 00 00 00 10 00 00 00 00 01 00 00 10 10 01 06 (VGA)

--> 00000020: 00 08 00 00 00 02 00 00 00 01 00 00 20 00 02 02 (HDMI)

 

These are what I want you to try (please test the boot file first):-

  1. Please try this modified boot file. It inject missing property from latest macbook pro. In this boot file, our GPU will use Shrike framebuffer. Rename it to boot & installed it.
    boot.mobility.0x9553.zip
    (This boot file is compiled from trunk which contain modified ati.c file. The modified ati.c file can be found here.)
  2. If with the above modified boot file, you still unable to get LVDS working properly, please change the LVDS's transmitter (please keep using the above modified boot file):-
    CRTC0 > DIG1 > UNIPHYB > HDMI: Encoder=0x00 Transmitter=0x20
    CRTC1 > DIG2 > UNIPHYEF > LVDS: Encoder=0x01 Transmitter=0x02
    CRTC1 > DAC > DACB > VGA: Encoder=0x10 Transmitter=0x10
     
    Patched connection table:-
    --> 00000000: 02 00 00 00 40 00 00 00 09 01 00 00 02 01 00 01 (LVDS)
    --> 00000010: 10 00 00 00 10 00 00 00 00 01 00 00 10 10 01 06 (VGA)
    --> 00000020: 00 08 00 00 00 02 00 00 00 01 00 00 20 00 02 02 (HDMI)
    Offset of Shrike connections table (3 connections):-
    • 32bit: 0x00037298
    • 64bit: 0x00010F80

 

Please let me know the results. Good luck. ;)

Link to comment
Share on other sites

Hi,

Thanks to take time for that :P

 

Ive tried the two patched connection with your boot file, in 32 and 64 bit , and unfortunately it was not working.

But in the two cases, i am able to boot normaly with "graphic enabler=yes", and the screen appear in 1024x768, my graphic card is also detected, and apparently the monitor isnt detected

 

 

ATI Radeon 4500 Mobility Series :

 

Jeu de composants : ATI Radeon 4500 Mobility Series

Type : Processeur graphique (GPU)

Bus : PCIe

Logement : Slot-1

Longueur de la voie PCIe : x16

VRAM (totale) : 1024 Mo

Fournisseur : ATI (0x1002)

Identifiant du périphérique : 0x9553

Identifiant de révision : 0x0000

Révision de la ROM : 113-B7710C-176

Version du gestionnaire EFI : 01.00.318

Moniteurs :

Moniteur de type inconnu :

Résolution : 1024 x 768

Profondeur de pixels : Couleurs 32 bits (ARGB8888)

Moniteur principal : Oui

Miroir : Désactivé

Connecté : Oui

Connecteur pour le moniteur :

 

The strange thing is that it recognize 1024vram, and ive got 512...

 

I used your dsdt is it a good thing?

 

Ive got ioreg output, but i cannot upload them, i will retry later :)

Link to comment
Share on other sites

I used your dsdt is it a good thing?

 

Ive got ioreg output, but i cannot upload them, i will retry later ;)

Yes, you can use my DSDT.

 

Just zip it & upload here OR upload it at mediafire.com & post the link here.

Link to comment
Share on other sites

The ATI4600Controller.kext is not loaded. Please execute this command in terminal to refresh the kexts cache & then reboot:-

sudo -s
touch /System/Library/Extensions

 

(Below is just regular news for our notebook)

Updates

  1. I found out the "ATI4570.Fix.v2.kext" in Extra folder caused the HDMI audio not working. Please removed "ATI4570.Fix.v2.kext" from the Extra folder & add our graphic card's device ID in ATI4600Controller.kext (0x95531002) like this:-
    						<key>IOPCIMatch</key>
    					<string>0x94901002 0x94881002 0x95531002</string>


  2. I has reworked on the audio paths & pins configurations. Now I'm able to get both headphone ports working but only one port will work at one time (auto-switch - when headphones plugged in, internal speaker will "mute"). I tried to put both headhone ports at separate path so that we can configure 5.1 surround later but failed. When I tried it, the audio on the internal speaker & one of the headphone ports will mute after a couple of seconds (maybe 10 - 20 seconds, I didn't really counts it). Probably need to figure out the correct MuteGPIO's value. The one calculate from linux's codec dump doesn't work. For now internal speaker & both headphone ports works brilliantly in auto-switch mode. Internal mic & external mic (works in Line In mode) works with auto switch too. Except the regular sound assertion "Sound assertion "kTypePinComplex != fType" failed in...", I managed to reduced it to only these two lines sound assertions:-
    Apr  1 23:09:46 kizwans-iMac kernel[0]: Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-199.4.12/AppleHDA/AppleHDAPath.cpp" at line 1181 goto Exit
    Apr  1 23:09:46 kizwans-iMac kernel[0]: Sound assertion "0 != pathSet->getWidgetAmplifierGainRange ( &zeroValue, &minValue, &maxValue, &minDB, &maxDB, kPATH_CONTROL_SPATIAL_CHANNELID_Master )" failed in "/SourceCache/AppleHDA/AppleHDA-199.4.12/AppleHDA/AppleHDAEngine.cpp" at line 385 goto handler


    The above two lines sound assertions are because I changed the "Ext Mic" to "Line In". The external mic didn't show up in Sound preference in System Preferences. That's why I have to change it to "Line In". It seems external mic works differently on Apple computer.

r3outputspeaker.th.jpgr3outputhpport2.th.jpgr3outputhpport1.th.jpg

r3inputinternalmic.th.jpgr3inputexternalmiclinei.th.jpg

[*]At Post #42, I did said "HPET already correct, so no need to fix it." but I was wrong. I actually did fixed it (already fixed it in the DSDT) but forgot about it. I just want to mentioned here that I fixed it by adding two IRQNoFlags:-

                Device (HPET)
               {
                   Name (_HID, EisaId ("PNP0103"))
                   Name (BUF0, ResourceTemplate ()
                   {
                       IRQNoFlags ()
                           {0}
                       IRQNoFlags ()
                           {8}
                       Memory32Fixed (ReadOnly,
                           0xFED00000,         // Address Base
                           0x00000400,         // Address Length
                           )
                   })
                   Name (BUF1, ResourceTemplate ()
                   {
                   })
                   Method (_STA, 0, NotSerialized)
                   {
                       If (LGreaterEqual (OSYS, 0x07D1))
                       {
                           If (HPAE)
                           {
                               Return (0x0F)
                           }
                       }
                       Else
                       {
                           If (HPAE)
                           {
                               Return (0x0B)
                           }
                       }
                       Return (Zero)
                   }
                   Method (_CRS, 0, Serialized)
                   {
                       If (HPAE)
                       {
                           CreateDWordField (BUF0, 0x0A, HPT0)
                           If (LEqual (HPAS, One))
                           {
                               Store (0xFED01000, HPT0)
                           }
                           If (LEqual (HPAS, 0x02))
                           {
                               Store (0xFED02000, HPT0)
                           }
                           If (LEqual (HPAS, 0x03))
                           {
                               Store (0xFED03000, HPT0)
                           }
                           Return (BUF0)
                       }
                       Else
                       {
                           Return (BUF1)
                       }
                   }
               }

[*]This is new modified DSDT with internal LCD backlight/brightness support. Fn keys still not working but there is a slider in System Preferences to control the brightness. Unfortunately the brightness setting will reset back to maximum brightness after reboot. In the DSDT I also tried to fix the "USB device forced removal" error (sorry, can't remember the exact error message) after waking up from sleep/hibernate but it doesn't work as I thought it should worked. However, this is latest & recommended DSDT for all:-

dsdt_A08_ssdt_hda_gfx_pnlf_ehci_01.aml.zip

brightnesssupport.th.jpg

[*]New com.apple.Boot.plist file. Added "DropSSDT=Yes" to use new P-States & C-States which I already put in DSDT. The new P-States & C-States in DSDT are fixed using BITS tool. The improvement won't be noticeable since only one to two things need to be fixed, mostly related to C-States.

com.apple.Boot.plist.zip

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string>arch=i386</string>
<key>GraphicsEnabler</key>
<string>Yes</string>
<key>DropSSDT</key>
<string>Yes</string>
<key>Legacy Logo</key>
<string>Yes</string>
<key>SMBIOSdefaults</key>
<string>Yes</string>
</dict>
</plist>

Link to comment
Share on other sites

Thanks for the update

 

Ive retried with refreshing kext cache, and ive got this time for the two patched connection with your updated bootloader, a garbage screen in the two cases. Test only with 32 bit.

I will tried to connect a monitor to vga and hdmi, and se what append, and tried to send you ioreg.

 

There are the ATIFramebuffer that ive patched, let me know if they are rightly patched:

 

Framebuffer_1.zip

 

Framebuffer_2.zip

 

Where is the log output, when verbose booting?

 

Thanks in advance

 

***Edit***

the Framebuffer 2 is'not good,

there is a repatched version that i think is good:

 

Framebuffer_repatched_2.zip

 

And ive got a garbage screen too

Link to comment
Share on other sites

Ok, thanks to have verified my patched files :hysterical:

 

I have been able to enable 4600controller, and after boot , with the two patched conections, ive got a blank screen for 0,5 sec. and then black screen, the fan run much lower, and the boot sequence seems to be finish. I have retest with a vga monitor, and after with hdmi, the same thing's going, and ive got no output on the external screen.

 

for the moment i can't have a ioreg output

Link to comment
Share on other sites

Ok, thanks to have verified my patched files :(

 

I have been able to enable 4600controller, and after boot , with the two patched conections, ive got a blank screen for 0,5 sec. and then black screen, the fan run much lower, and the boot sequence seems to be finish. I have retest with a vga monitor, and after with hdmi, the same thing's going, and ive got no output on the external screen.

 

for the moment i can't have a ioreg output

Setup remote connection. You can connect to your mac remotely via vnc.

 

I also need you to obtain RadeonHD's log in Mac OS X using dong's RadeonHD.kext. Please use dong's RadeonHD (10/20/2009 update). You'll need to setup remote connection. In the package there is a tool called RadeonDump. Use it to obtain RadeonHD's log. Make sure you installed the RadeonHD.kext first & at least one external monitor connected to HDMI (if possible).

 

Both of us have identical machine except internal LCD panel. I want to see how dong's RadeonHD detect the link on your notebook. dong's RadeonHD was able to detect mine correctly. I want to compare it with yours.

Link to comment
Share on other sites

Setup remote connection. You can connect to your mac remotely via vnc.

 

I also need you to obtain RadeonHD's long in Mac OS X using dong's RadeonHD.kext. Please use dong's RadeonHD (10/20/2009 update). You'll need to setup remote connection. In the package there is a tool called RadeonDump. Use it to obtain RadeonHD's log. Make sure you installed the RadeonHD.kext first & at least one external monitor connected to HDMI (if possible).

 

Hi,

 

Very useful thing the remote connection ^_^

 

ive got the output with dong radeonhd from 10.20.2009.

 

I dont know if this informations are utils, i ve made 3 output

 

1. with a vga monitor : internal lcd black after boot, with backlight, and external monitor working in all res that he can support. When i change resolution from 1024x768 to 1280x1024 with system preference, the internal monitor got an output, but absolutely wrong colors and resolution

 

2. with a hdmi monitor : internal lcd black after boot, with backlight, external monitor working, when i change the resolution nothing append to internal monitor.

 

3. just the internal monitor, no external : surprising, after boot ive got the native resolution

 

This is the folder, inside there are the 3 files :

 

radeondump_1557.zip

 

 

For the moment, i cant post you ioreg with the atiframebuffer patched and your modified bootloader : ive got black screen with backlight, fan running slower, the external monitor, if connected dont work (like if they are disconnected), and i cannot have vnc connections (wich is running fine in other configuration, or with radeon kext, and ive made it to start automatically)

Suppositions :I think that the boot sequence isnt finish, and it block just when the graphic would come.

 

I will make a fresh installation, and retest

Link to comment
Share on other sites

 Share

×
×
  • Create New...