Jump to content

EFI strings


tommytom02
 Share

15 posts in this topic

Recommended Posts

If you are anything like me you might be having trouble making sense of the various guides to creating EFI-GFX strings found here and at netkas' forums. I thought it would be nice to have a place where people might post their specific EFI strings for common devices in hex (it would seem that alot of these devices will have the same device address on any rig, correct me if I am wrong) so the community might use them for their devices (no sense in reinventing the wheel here right?). This would also be a nice place for requests, if you are requesting maybe attach an IOreg dump. I'm not a noob, but after reading the forums for a week this is just a bit beyond me at this point.

 

 

When posting your working strings:

Device Name:

Motherboard (if on board):

Hex string:

.plist content (so that if it is not on board we can see where the device is):

 

I, personally, am looking for one for ALC882 for a P5W DH Deluxe motherboard, and anything else for that board, for that matter. I'll upload my dump file once I'm home (at work now).

 

[EDIT] I'm home now, here is the reg dump for my machine. I hope someone can help here.

 

Is it possible to get a sticky on this?

Link to comment
Share on other sites

Well I guess I'll get the ball rolling here. I finally got what seems to be a working string for ALC882 sound on a P5W DH.

Device: ALC882

Mobo: Asus P5W DH

Hex: 2f0100000100000001000000230100000700000002010c00d041030a0000000001010600001b7fff

4001c0000007200650076006900730069006f006e002d00690064000000080000000100000028000

00500069006e0043006f006e00660069006700750072006100740069006f006e0073000000040000

018000000760065006e0064006f0072002d0069006400000008000000868000002c0000007300750

6200730079007300740065006d002d00760065006e0064006f0072002d0069006400000008000000

31000001e000000730075006200730079007300740065006d002d0069006400000008000000d8810

00180000006c00610079006f00750074002d00690064000000080000000c00000016000000620075

069006c0074002d0069006e0000000500000000

.plist: <?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>PciRoot(0x0)/Pci(0x1b,0x0)</key>

<dict>

<key>PinConfigurations</key>

<string></string>

<key>built-in</key>

<string>0x00</string>

<key>layout-id</key>

<string>0x0000000c</string>

<key>revision-id</key>

<string>0x00000001</string>

<key>subsystem-id</key>

<string>0x000081d8</string>

<key>subsystem-vendor-id</key>

<string>0x00001043</string>

<key>vendor-id</key>

<string>0x00008086</string>

</dict>

</dict>

</plist>}

 

[EDIT] the system profiler still reports no built in audio but it worked after removing alcinject. any fixes on that?

Link to comment
Share on other sites

Well I guess I'll get the ball rolling here. I finally got what seems to be a working string for ALC882 sound on a P5W DH.

Device: ALC882

Mobo: Asus P5W DH

Hex: 2f0100000100000001000000230100000700000002010c00d041030a0000000001010600001b7fff

4001c0000007200650076006900730069006f006e002d00690064000000080000000100000028000

00500069006e0043006f006e00660069006700750072006100740069006f006e0073000000040000

018000000760065006e0064006f0072002d0069006400000008000000868000002c0000007300750

6200730079007300740065006d002d00760065006e0064006f0072002d0069006400000008000000

31000001e000000730075006200730079007300740065006d002d0069006400000008000000d8810

00180000006c00610079006f00750074002d00690064000000080000000c00000016000000620075

069006c0074002d0069006e0000000500000000

.plist: <?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>PciRoot(0x0)/Pci(0x1b,0x0)</key>

<dict>

<key>PinConfigurations</key>

<string></string>

<key>built-in</key>

<string>0x00</string>

<key>layout-id</key>

<string>0x0000000c</string>

<key>revision-id</key>

<string>0x00000001</string>

<key>subsystem-id</key>

<string>0x000081d8</string>

<key>subsystem-vendor-id</key>

<string>0x00001043</string>

<key>vendor-id</key>

<string>0x00008086</string>

</dict>

</dict>

</plist>}

 

[EDIT] the system profiler still reports no built in audio but it worked after removing alcinject. any fixes on that?

 

please, can u post (list) your full plist file?

 

thanx

Link to comment
Share on other sites

Have you tried NETKAS.ORG there's about 200 EFI strings!

 

SticMAN

 

 

Dell Dimension 9200(XPS410)

ASUS EN7300GS, Sigmatel 9227, IONetworkingFamily

 

 

Plist:

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">'>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></string>

<key>device-properties</key>

<string>610300000100000003000000850000000300000002010c00d041030a0400000001010600001b7

ff040028000000500069006e0043006f006e00660069006700750072006100740069006f006e0073

0000004000000180000006c00610079006f00750074002d00690064000000080000000c000000160

00006200750069006c0074002d0069006e0000000500000000700200000e00000002010c00d04103

a040000000101060000010101060000007fff04000e0000004e00560050004d00000020000000010

000000000000000000000000000000000000000000000000000024000000400030002c0056005200

1004d002c006d0065006d00730069007a00650000000c00000000000004000000081c00000064006

0076006900630065005f0074007900700065000000100000004e5644412c4765466f7263650e0000

06e0061006d00650000000f0000004e5644412c506172656e7422000000400030002c00640065007

006900630065005f00740079007000650000000b000000646973706c617922000000400031002c00

400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d0

6f00640065006c000000150000004153555320454e3733303047532045464920000000400031002c

063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631400000

400030002c006e0061006d0065000000120000004e5644412c446973706c61792d41140000004000

1002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002

0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d61631e0000

072006f006d002d007200650076006900730069006f006e0000000800000033313735100000004e0

560043004100500000001800000004000000000003000c0000000000000700000000240000004000

1002c005600520041004d002c006d0065006d00730069007a00650000000c0000000000000400000

08600000000200000002010c00d041030a0400000001010600001e0101060000037fff0400100000

06d006f00640065006c0000001100000033436f6d3343393035422d5458160000006200750069006

0074002d0069006e0000000500000001</string>

</dict>

</plist>

 

Dump:

<?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>PciRoot(0x4)/Pci(0x1,0x0)/Pci(0x0,0x0)</key>

<dict>

<key>@0,VRAM,memsize</key>

<data>

AAAABAAAAAg=

</data>

<key>@0,compatible</key>

<string>NVDA,NVMac</string>

<key>@0,device_type</key>

<string>display</string>

<key>@0,name</key>

<string>NVDA,Display-A</string>

<key>@1,VRAM,memsize</key>

<data>

AAAABAAAAAg=

</data>

<key>@1,compatible</key>

<string>NVDA,NVMac</string>

<key>@1,device_type</key>

<string>display</string>

<key>@1,name</key>

<string>NVDA,Display-B</string>

<key>NVCAP</key>

<data>

BAAAAAAAAwAMAAAAAAAABwAAAAA=

</data>

<key>NVPM</key>

<data>

AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==

</data>

<key>device_type</key>

<string>NVDA,GeForce</string>

<key>model</key>

<string>ASUS EN7300GS EFI</string>

<key>name</key>

<string>NVDA,Parent</string>

<key>rom-revision</key>

<string>0x35373133</string>

</dict>

<key>PciRoot(0x4)/Pci(0x1b,0x0)</key>

<dict>

<key>PinConfigurations</key>

<data>

</data>

<key>built-in</key>

<string>0x00</string>

<key>layout-id</key>

<string>0x0000000c</string>

</dict>

<key>PciRoot(0x4)/Pci(0x1e,0x0)/Pci(0x3,0x0)</key>

<dict>

<key>built-in</key>

<string>0x01</string>

<key>model</key>

<string>3Com3C905B-TX</string>

</dict>

</dict>

</plist>

Link to comment
Share on other sites

@ CicoMico: I won't post my com.apple.boot.plist file, I'm not sure that is legal to do here. Also, mine contains a big string for Marvell Yukon, ATI x1950xt and ALC882. However, I can post the plist I created to make a hex string to insert into the com.apple.boot.plist. It is attached to this post.

 

@SticMAN: I know there are a lot over there, but it is not very easy to find anything. I am hoping this will be an organized thread to find anything you need.

Link to comment
Share on other sites

  • 9 months later...

StickMAC, can you tell me where all those efi strings are located?

 

Also, if efi strings are included, but do not match your hardware, will it cause issues? (I'm wondering if a generic com.apple.boot.plist with all known good efi strings included would be a possibility)

Link to comment
Share on other sites

I am new to exactly what is EFI strings? I have Dell Laptop both a D820 and a D830. I have everything working now with modified Kexts in the extension folder and a XNU 9.4 kernel to fix the CPUS=2 shutering.

 

I have nvkush right now since nvinject is not working in 10.5.5 leopard.

 

Are you saying by putting in EFI strings you no longer need hacked kexts and can go with vanilla kexts and just add these EFI strings?

 

How do you get these EFI strings? Some command in OSX terminal? WHere do you put these EFI strings?

 

 

I see people talking about PLIST files but are info.plist files in the kext folders?

 

Is there a tutorial or link on this?

 

I realize Netaks has some EFI strings and I was running Netkas EFI v8 but now I am running Chameleon.

 

Thanks

Link to comment
Share on other sites

I am new to exactly what is EFI strings? I have Dell Laptop both a D820 and a D830. I have everything working now with modified Kexts in the extension folder and a XNU 9.4 kernel to fix the CPUS=2 shutering.

 

I have nvkush right now since nvinject is not working in 10.5.5 leopard.

 

Are you saying by putting in EFI strings you no longer need hacked kexts and can go with vanilla kexts and just add these EFI strings?

 

How do you get these EFI strings? Some command in OSX terminal? WHere do you put these EFI strings?

 

 

I see people talking about PLIST files but are info.plist files in the kext folders?

 

Is there a tutorial or link on this?

 

I realize Netaks has some EFI strings and I was running Netkas EFI v8 but now I am running Chameleon.

 

Thanks

 

Yes, using strings in your com.apple.boot.plist file will mean you can use vanilla kexts (which can be updated by Apple with no ill effect)

Right now, there are strings for many video cards, as well as some audio and networking devices.

 

I would recommend using EFIStudio, although there are ways to get the strings manually

EFIStudio has worked great for me on several vanilla installs.

Here's where it is released, although I have seen a few versions around with even more supported video cards.

http://forum.netkas.org/index.php/topic,64...64.html#msg1864

Link to comment
Share on other sites

I have to say I think this topic is pointless, as the strings need to be generated on a per-machine basis. How many people have, for instance, exactly the same graphics card, motherboard, network card and soundcard at the same addresses? These attempts at "simplifying" the process run into huge problems of scale: better to spend the effort educating people on how to create strings for their own setup. The same is true for dsdt patching and all sorts of other attempts at making installation of the no-brainer OS on unsupported hardware a true no-brainer process.

Link to comment
Share on other sites

Hagar,

 

I agree with you. Been on the Hack scene now for almost 2 years and have workstations, 4 of them and two laptops running with modified kexts. A big hassle indeed.

 

Is there a comprehensive tutorial on how to create these strings yourself? Would I need the LSPCI tools as I have now or would I need Linux running as well to get more information about the hardware?

 

Should I use EFI studio or PC Wiz's OSX toolz?

 

I have EFI Studio and isn't OSX toolz on the Ideneb 10.5.5 Full Install DVD?

 

I no longer have Netkas EFI v8 , I installed Chameleon and I hear the next release is going to be God Awesome??

 

Will EFI strings work with Chameleon?

 

Sorry about the abundance of questions in one thread but would appreciate it if they could all be answered?

 

Thanks Again!!

Link to comment
Share on other sites

Hagar,

 

I agree with you. Been on the Hack scene now for almost 2 years and have workstations, 4 of them and two laptops running with modified kexts. A big hassle indeed.

 

Is there a comprehensive tutorial on how to create these strings yourself? Would I need the LSPCI tools as I have now or would I need Linux running as well to get more information about the hardware?

old but still good, I rather like this one:

 

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

 

I don't think you need linux, but stuff like lspci/dpcimanager and ioregistry explorer are handy.

 

Should I use EFI studio or PC Wiz's OSX toolz?

 

I have EFI Studio and isn't OSX toolz on the Ideneb 10.5.5 Full Install DVD?

EFI Studio is a reasonable tool which can save you some time, but they are both just frontends to gfxutils, and I see *a lot* of people who have messed up their installs with osx86tools. Basically all it does is enter your info into a plist template as you would do yourself.

I no longer have Netkas EFI v8 , I installed Chameleon and I hear the next release is going to be God Awesome??

 

Will EFI strings work with Chameleon?

 

yup, efi strings work just fine with chameleon

 

Sorry about the abundance of questions in one thread but would appreciate it if they could all be answered?

 

Thanks Again!!

 

As always, understanding what the tools do is just as important as being able to use them, so even if you go with efistudio, take a look at the entries it makes so you understand what's going on. It seems really complicated at first, but it's really worth getting you head around if you want to change an nvcap or something at a later stage.

 

best of luck.

Link to comment
Share on other sites

Hagar, what do you think about this approach? (it's a new direction for a project I've been working on)

 

1. Download a generic USB Key image, and restore it to your own usb device

2. Use the generic usb key to boot OSX retail DVD and install.

3. Boot into the new install using the same key

4. Run a script from the USB key which generates and adds the proper efi strings for your video/audio/networking (strings would be stored in com.apple.boot.plist on the usb key, similar to Munky's Boot-132 method, but on it's own device, meaning the Hard Drive is left completely untouched)

5. Add any additional specialized patches as needed for your particular hardware (assuming you've got alc audio, realtech networking, and a supported video card, I don't think any patches would be needed.

 

I plan to switch to the next chameleon release when it comes out, assuming it actually supports what Munky has done (he says it will)

Link to comment
Share on other sites

 Share

×
×
  • Create New...