Mac OS X on x86 Hardware 2008–2024 Technical Archive
InfiniteMac OSx86 › Snow Leopard 10.6 › About This Mac & AppleSMBIOS in Snow Leopard
34,841 reads · 2009-10-28 – 2009-11-11
Dossier Snow Leopard 10.6 Chameleon / Boot-132

About This Mac & AppleSMBIOS in Snow Leopard

Just moved from 10.5.6 using Munky's EFI bootloader to 10.6.1 using Chameleon 2 RC3 & PC-EFI 10.5 installed on the main drive, thanks in main to sk1nhd33t's easy to follow guide. Evrything is running very smoothly apart from two little…

Primary Author
@grumptink Published 2009-10-28
Collection
Snow Leopard 10.6
Archival Footprint
34,841 historical reads · 10 curated field notes (from 18 dispatches) · 2009-10-28 – 2009-11-11
Credited Voices (6)
@grumptink (7)@Imkantus (4)@00010 (2)@thorazine74 (2)@meattattat (2)@mingzhi

Just moved from 10.5.6 using Munky's EFI bootloader to 10.6.1 using Chameleon 2 RC3 & PC-EFI 10.5 installed on the main drive, thanks in main to sk1nhd33t's easy to follow guide.

Evrything is running very smoothly apart from two little problems, sleep *surprise* and "About This Mac" crashing. I think sleep failing might be related to my "About This Mac" problem so that's what I've been trying to fix.

I noticed that System Profiler was reporting my Processor speed and Bus Speed incorrectly so tried fixing it using Chameleon's smbios.plist, but it didn't fix my problem. I then read that the smbios.plist is only a cosmetic fix.

I decided to go looking for a Snow Leopard compatible SMBIOS enabler, but all I could find was andyvand's SMBIOS for Snow Leopard. As you can guess, it didn't work. As a randmom stab in the dark, to see if my theory was right, I set my install to use the 32bit kernel and installed the AppleSMBIOS.kext that I was using under 10.5.6. Low and behold, it worked.

From what I can see in System Profiler, it's changed my Boot ROM Version and System Serial Number, it looks like a Netkas AppleSMBIOS. But I might be wrong. What I'd like to know is, how can I patch my own 64bit Snow Leopard AppleSMBIOS based on the 32bit Leopard one.

I've attached a screen shot of the AppleSMBIOS loaded showing it's version and the Serial number values it's changed.

Cheers for reading guys

Author Updates & Technical Revisions

Follow-up dispatches by @grumptink

Author Update #1 @grumptink 2009-10-29

Chun-Nan's AppleSMBIOSEFI.kext doesn't help, but I think it's designed to work exclusively from the EFI partition, not an extra folder on the main partition or S/L/E.

As for my DSDT, it's patched for HPET, RTC, _WAK, ALC883 Audio and the Snow Leopard CMOS reset fix.

Am I missing something?

Author Update #2 @grumptink 2009-10-29

Update, Chun-Nan's AppleSMBIOSEFI.kext did the trick when i dumped it in S/L/E. No idea why I didn't try that before, probably used to using an "Extra" folder

I know Andy's AppleSMBIOS was loaded correctly when I gave it a whirl. Actually, it did sort of work, as it did correct my CPU speed in System Profiler, it just didn't fix the "About This Mac" crash.

I'm happy for now, but I would like a 64bit solution so I'm future proofed.

Author Update #3 @grumptink 2009-10-29 ↳ Re: @thorazine74
@thorazine74Try editing smbios.plist with your cpu's values.

Yes, but as I said before, it's only a cosmetic fix

@ImkantusWell the source code is avaible - so what's missing is someone to port it.

Well I can tell you right now, myself attempting that would be like putting wheels on a tomato. Time consuming, and completely pointless.

@ImkantusHaving 64-Bit Kernel & Extensions isn't that much important as 64-Bit application still work cause the 32-Bit Kernel uses virtual address space.

I know, I'm just fussy

@Imkantus@thorazine74 You're sure that just setting the values via smbios.plist fixes the "About this Mac" crash, alltough other smbios value injects he has tied didn't?

I'm sure it's something to do with how each method injects the info, I just don't know how.

Author Update #4 @grumptink 2009-11-04 ↳ Re: @thorazine74
@thorazine74What do you mean only chosmetic? SMBIOS.plist just injects the values so System Profiler displays them, some of them are only of chosmetic value (i.e. RAM speed or Manufacturer or Serial Number) but others like Mac Model seems to be very important because OS X read those valuse and acts different depending what Mac Model you have. Its…

Sorry guys, been away for a couple of days.

I don't know how it differs from other AppleSMBIOS injectors, but as for using a SMBIOS.plist, and it only fixing the System Profiler cosmetically, I was referring to a post I'd read on Prasys's blog, here (pra sys.co.cc/2009/09/guidecreating-your-own-smbios-plist/).

In regards to "About This Mac" crashing, I've tried using a properly filled in SMBIOS.plist, with no other injectors present, and the only difference in the information displayed is what I expect, serial number, Boot ROM version. I've even edited my SMBIOS.plist to match the injector's values on the off chance it might work, but nothing.

When using EFI 10.5, which features a CPU auto detect, it picks up my CPU as a C2D 3.0 GHz, which is wrong, but it's the same as I got before the auto detect patch and also the same as when I boot without using any form of SMBIOS injector regardless of the bootloader being used. With AppleSMBIOSEFI.kext and Netkas's AppleSMBIOS.kext it reports it as a C2D 2.13 GHz, which is correct, and "About This Mac" doesn't crash.

Author Update #5 @grumptink 2009-11-04 ↳ Re: @Imkantus
@ImkantusMaybe it helps to use all the values SMBIOSEFI injects via smbios.plist? (Including modell, serial number and all the stuff) Ofcourse just an idea...

Tried using all the available values, and also with just main ones, model number, CPU & Bus speed etc.

Synthesized Community Field Notes

10 technical responses curated from 18 original dispatches

Field Note #1 @00010 2009-10-28

Thanx for letting me know how to use the SMBios.kext from leo in snow leo, just boot in -x32.

Thanx Dude/ Dudette!

BTW, Are you using a Dell?

Field Note #2 @Imkantus 2009-10-29

This is an ACPI compatibility issue. Do you have a fixed DSDT.aml applied?

AppleSMBIOSEFI.kext made by Chun-Nan does the fix, also - this might help you to keep using 1.4 stock AppleSMBIOS.kext - but I guess it's i386 only as well (not sure).

Field Note #3 @Imkantus 2009-10-29

Did you ensure, that SMBIOSEFI has been loaded, via kextstat command on Terminal?

I would alos recommend to try the SMBIOS of Andy again & to controll if the correct one has been loaded by checking the Copyright Information at Extensions section in the System Profiler - if you haven't done like that yet.

Field Note #4 @thorazine74 2009-10-29

Try editing smbios.plist with your cpu's values.

Field Note #5 @Imkantus 2009-10-29

Well the source code is avaible (rapid share.com/files/299673764/AppleSMBIOSEFI_28.zip.html) - so what's missing is someone to port it.

Having 64-Bit Kernel & Extensions isn't that much important as 64-Bit application still work cause the 32-Bit Kernel uses virtual address space.

@thorazine74
You're sure that just setting the values via smbios.plist fixes the "About this Mac" crash, alltough other smbios value injects he has tied didn't?

Field Note #6 @00010 2009-10-29

I have a fully 64-bit system.

I use the Vanilla kernel on my laptop. Most that can use Vanilla are fully 64bit (I think)

Field Note #7 @thorazine74 2009-10-30 ↳ Re: @grumptink
@grumptinkYes, but as I said before, it's only a cosmetic fix Well I can tell you right now, myself attempting that would be like putting wheels on a tomato. Time consuming, and completely pointless. I know, I'm just fussy I'm sure it's something to do with how each method injects the info, I just don't know how.

What do you mean only chosmetic? SMBIOS.plist just injects the values so System Profiler displays them, some of them are only of chosmetic value (i.e. RAM speed or Manufacturer or Serial Number) but others like Mac Model seems to be very important because OS X read those valuse and acts different depending what Mac Model you have. Its a good practice to have real data from a Mac Model close to your system specs, though I'm not sure which variables are really necessary apart from Mac Model...
It serves the same purpose as kext-based SMBIOS injectors, though it may not inject the same values as others like Andy's patched one, though arguably most of the values are useless. And it should work in 32 & 64 bits.
If you have a properly filled SMBIOS table About This Mac or System Profiler should not crash. What CPU do you have? I think you may have to edit the CPU and bus speeds in smbios.plist, I'm not sure because I never have to, I think its autodetected but maybe in your case it didnt work?
If you use smbios.plist injecting you probably should use vanilla unpatched AppleSMBIOS.kext and have no other SMBIOS injector kext installed.

Field Note #8 @Imkantus 2009-10-31

Maybe it helps to use all the values SMBIOSEFI injects via smbios.plist? (Including modell, serial number and all the stuff)

Ofcourse just an idea...

Field Note #9 @mingzhi 2009-11-11

oh yeah! Finally fixed about this mac problem using AppleSMBIOSEFI.kext. Greet done Chun-Nan and thanks Imkantus.

Field Note #10 @meattattat 2009-11-11 ↳ Re: @mingzhi
@mingzhioh yeah! Finally fixed about this mac problem using AppleSMBIOSEFI.kext. Greet done Chun-Nan and thanks Imkantus.

is that a 32-bit or a 64-bit kext? :

Corroborated & Participated: @meattattat
Sources & Contributor Provenance (6 credited usernames · Thread #4542)
UsernameDossier ContributionDispatchesActive Window
@grumptinkPrimary Author72009-10-28 → 2009-11-04
@ImkantusCore Contributor42009-10-29 → 2009-10-31
@00010Contributor22009-10-28 → 2009-10-29
@thorazine74Contributor22009-10-29 → 2009-10-30
@meattattatContributor22009-11-04 → 2009-11-11
@mingzhiContributor12009-11-11