overdue-scratch

Author Topic: FSB issue with Chameleon. To be fair apple smbios did the same thing back in leo  (Read 14915 times)

0 Members and 1 Guest are viewing this topic.

00diabolic

  • Observer
  • Posts: 25
Problem: I have had a long standing issue with FSB in OSX. Back in 10.5 when it was just netkas efi and the cpu and fsb were detached by apples smbios I had an issue where fsb was seen at 184mhz instead of 200mhz. Making my fsb 738mhz and cpu slower and my system overall slower.

Solution for 10.5: Superhai made me a custom smbios with a locked 800mhz fsb. Problem fixed in leo..

New solution for 10.6: Edit the smbios.plist and add your fsb speed 200mhz.. Sweet a fix.. wait that was to easy and it does not work for me.

Now I have chameleon 2.0 Rc4. I found this post here.. http://www.hackint0sh.org/f152/138168.htm
It seems that is exactly my problem but I cant figure out where the libsaio directory is and cant find the files "freq_detect.h, and freq_detect.c".. I think those are from the source for chameleon and i have never compiled anything but It does seem I need that fix? Or are those part of an old chameleon and some sort of new edit must be done to chameleon 2.0?

I'm sure I cant use that smbios from leo in SL as it would cause a lot of issues right? Can anyone offer another fix or can I get instructions to compiling my own chameleon 2.0?

My specs are as follows..

Lenovo 3000 N200 0769AVU Laptop/Macbook 4,1

OS: Leo 10.6.2 Snow Uni + Chameleon 2.0rc4
CPU: Intel Core2Duo T9300 2.5GHz 800fsb running at 738fsb due to SMBIOS issue
RAM: 4GB DDR2 @ 333MHz Dual Channel
Video: Intel X3100 965 Express NO CI/QE but all effects work default OSX kext
Sound: HDA 0862 works with VoodooHDA feb 2010 ver only
Wifi: BCM4328 Draft N card seen as Airport Extream 3rd Party
Webcam: Chicony Device ID 04f2 B013 Works with manycam
NW* Network: Broadcom 5906 Netlink Ethernet

UPDATE.. I added the line fsb=200000000 to my com.apple.boot.plist and it made no difference. cpu-i still shows 738fsb.

Guys here have same issue.. no solution
http://osx86.net/f57/how-to-force-the-efi-calculated-fsb-value-t3750/


Thanks
00D


« Last Edit: June 12, 2010, 06:04:40 PM by 00diabolic »

Blackosx

  • Forum Moderator
  • Posts: 1150
I cant figure out where the libsaio directory is and cant find the files "freq_detect.h, and freq_detect.c".. I think those are from the source for chameleon and i have never compiled anything but It does seem I need that fix? Or are those part of an old chameleon and some sort of new edit must be done to chameleon 2.0?
Hi 00diabolic

The answer to your request is beyond my knowledge, but hopefully somebody can come along and help you further. But I can tell you that I can't see the freq_detect.h and freq_detect.c files either. Here's a link to the source code libsaio directory.

I hope you can find the answer.
10.10.5 / 10.11 GM1 | Asus Maximum IV Gene-Z | i7-2600 3.40GHz | 4GB | Radeon 5770 1GB

Azimutz

  • VoodooLabs
  • Posts: 420
  • Paranoid Android
@00diabolic,

freq_detect files are on RC4.
On RC5/trunk the code mentioned on the guide is in cpu.c... just do a search for fsb on the code and you'll find pretty much everything related :) my bit of help.
 System & Patches: http://goo.gl/i961
 Chameleon:
- trunk builds: http://goo.gl/9G1Hq
- pref pane: http://goo.gl/OL2UT

00diabolic

  • Observer
  • Posts: 25
@00diabolic,

freq_detect files are on RC4.
On RC5/trunk the code mentioned on the guide is in cpu.c... just do a search for fsb on the code and you'll find pretty much everything related :) my bit of help.

Azimutz or anyone.. I'm a bit of a noob when it comes to this stuff.. I dont see those files under the i386 folder.. All I see is boot, boot0, boot1f32 etc. You must be talking about the source for RC4. Right? Even if I get the source I have never compiled anything. How would I even began to do that (once I make the edits that is)?

But before you answer that.. I think I may or may not have this problem, I'm not quite sure now after finally getting ahold of netkas cup-x app. This is strange but here goes. I have tried to read my fsb from a few mac based apps to see what it really is. I am not sure which app is telling me the true value now. Here is a list of what I have tried.

1. Netkas cpu-z says I have 800fsb
2. Geekbench says I have 800fsb
3. cpu-i says I have 738fsb & says I have 19 p states (using voodoo power mini, the app does not show its reading from voodoo power or where it gets it data from)
4. sysctl -a | grep freq says I have 800fsb no p states, always 2.5ghz
5. ioreg -lw0 -p IODeviceTree | Grep "FSB" gives me "FSBFrequency" = <33b0020b00000000>
6. sysctl hw.busfrequency gives me hw.busfrequency: 800000000
7. Intels CPU info for mac... Tells me cpu info but does not tell the fsb
8. Ioregistry explorer says I have bus frequency of <00 08 af 2f> (I think thats 800fsb, not sure)

Those are all the tricks I know that can tell fsb. Maybe there are some more out there. The problem is I dont know which one is telling the truth. I bet some are just reading from the smbios data that I edited and not reading the real value calculated by EFI. I  think CPU-i is the only right one. Why else would cpu-i say I have 738mhz the exact value I had reported in leopard and also why 19 p states.. It has to be right. Unless its reading right from the bios and osx is not using that value. Which would also mean I have no p states, but I know my cpu is throttling cpu-i shows it going up and down.

Update.. Just found out cpu-i is now called voodoomonitor. So now I know its right. The fsb is wrong on my system and the rest of the apps are simply reading my failed smbios.plist. I'm glad I have 19 p states though lol. I really dont see it using all of those though. However because the FSB is clocked lower so is my cpu and ram. Is there any solution besides a locked smbios for me?

Hope someone can Help......


« Last Edit: June 12, 2010, 06:31:56 PM by 00diabolic »

Azimutz

  • VoodooLabs
  • Posts: 420
  • Paranoid Android
hum.. as far as i can read, your fsb is being reported correctly, 800MHz.
If it's only cpu-i, or whatever it's called, that gives you 738mhz, trash it :)
Maybe what you're looking for is on VoodooPower forum, not on Chameleon's!?? talking about p-states...
 System & Patches: http://goo.gl/i961
 Chameleon:
- trunk builds: http://goo.gl/9G1Hq
- pref pane: http://goo.gl/OL2UT

00diabolic

  • Observer
  • Posts: 25
Azimutz... Actually I know its the only one telling me the truth. I have voodoo monitor now and its the same result. Here is why I know its right. Back when I was running 10.5 and had this issue superhai had me run io output and give it to him. He said there are 2 issues with your output.

1. The bios reports your fsb wrong to the system, windows ignores this and reads the cpu code. OSX cant do this. Its a bios bug and if there is ever an update get it. There has not been an update to my bios for a long time now. They also have not fixed it with the most recent one which was at the beginning of 2009. Thats the one I have now.

2. Also we discovered that my battery plug in data was wrong. Most laptops show 01 for when plugged in and 02 when unplugged. Mine however shows 81 and 82. Thats not normal. Now I am betting superhai has seen this second issue on more laptops at some point after I left osx 10.5 and made sure this was address in voodoobattery. My system knows exactly when its on battery and vice versa now.

I have found 3 possible solutions:

1. Get a locked or editable smbios for 10.6.2
I have found 1 person still making custom smbios files. The guys name is anv. I am looking to see if I can use his. Although I hate this solution.

2. Use some old solution like smbios resolver. This was not around when I was on 10.5 so I'm not sure how it works. I know this along with using a locked smbios is an outdated solution, even for my problem. But I might have no choice I'm being crippled by the speed decrease. I also hate this solution.

3. Find a DSDT fix for fsb. This would be the best solution. I am so new to DSDT that I dont know where to began but I know there has to be a entry in my dsdt for fsb. It simply has to be there. I've googled the hell out of it. Isnt the DSDT basically the structure of a mac bios? One that we can edit per system and solve almost all issues with pcs that run funny in OSX?

If someone can help me find the entries in the dsdt for cpu and front side bus Ill start experimenting to see if I can fix my issue.

Update.... apparently chameleon 2.0 RC4 is full of lil bugs and code quality is bad.. http://www.efixusers.com/showthread.php?t=644
http://www.insanelymac.com/forum/index.php?showtopic=216726

I might use one of these other ones to see if it will read my fsb setting in smbios.plist and see if that fixes my issue.
« Last Edit: June 13, 2010, 04:42:04 AM by 00diabolic »

Azimutz

  • VoodooLabs
  • Posts: 420
  • Paranoid Android
I answered you under the impression that you needed help with locating some code on Chameleon sources... that seems to not be the case and your path goes way out of mine so, i can't help ya on that! This talk is also starting to go of topic.. sorry...
Stay safe.
 System & Patches: http://goo.gl/i961
 Chameleon:
- trunk builds: http://goo.gl/9G1Hq
- pref pane: http://goo.gl/OL2UT

riws

  • Entrant
  • Posts: 3
I'm in the same boat, Intel Core2Duo T7250 with 2000/200. It detects the 183Mhz FSB instead of 200Mhz.  ??? Hardcoded SMBIOS from Superhai worked nicely in Leopard.

Try with that kext and Kernel Option FSB=200?
« Last Edit: June 13, 2010, 03:34:35 PM by riws »

00diabolic

  • Observer
  • Posts: 25
I'm in the same boat, Intel Core2Duo T7250 with 2000/200. It detects the 183Mhz FSB instead of 200Mhz.  ??? Hardcoded SMBIOS from Superhai worked nicely in Leopard.

Try with that kext and Kernel Option FSB=200?

RIWS...... THANK YOU.. Ill look into this. I dont know why Azimutz got so mad.. My issue is fsb not being properly detected by chameleon period.. :-P

Azimutz

  • VoodooLabs
  • Posts: 420
  • Paranoid Android
00diabolic,

i'm not mad.. it's just like i said, i can't help ya on that.. my fsb always been reported correctly so, i never had to mess around with that stuff, thus no experience to help you :) simple. And besides i'm pretty busy with my stuff... i just stopped 5 min to tell you were the code files where. No time to get mad here, man :P
« Last Edit: June 13, 2010, 01:30:11 PM by Azimutz »
 System & Patches: http://goo.gl/i961
 Chameleon:
- trunk builds: http://goo.gl/9G1Hq
- pref pane: http://goo.gl/OL2UT

Kabyl

  • VoodooLabs
  • Posts: 158
RIWS...... THANK YOU.. Ill look into this. I dont know why Azimutz got so mad.. My issue is fsb not being properly detected by chameleon period.. :-P

I think you don't know what your issue is. Sometimes you say it's the booter, sometimes it's the BIOS...

You really need to explain it in a few simple words.

00diabolic

  • Observer
  • Posts: 25
RIWS...... THANK YOU.. Ill look into this. I dont know why Azimutz got so mad.. My issue is fsb not being properly detected by chameleon period.. :-P

I think you don't know what your issue is. Sometimes you say it's the booter, sometimes it's the BIOS...

You really need to explain it in a few simple words.


Kably fair enough I have added a lot of extra info to this thats prob not needed. It was all because I am seeing a lot of potential fixes for this problem and not sure which one will address it completely.

Simply put my problem is that my bios is not very good and it incorrectly reports my fsb to osx as 738mhz. There has not been an update to my bios to address this and there probably never will be one.

Because my bios says my front side bus is 184mhz x 4 I get a fsb of 738mhz in osx.

Now back when I was in Leopard the apple smbios would use the bios fsb for the system. The solution was a hard coded smbios with fsb locked at 800mhz. I saw a dramatic increase when this was done. Benchmark scores increased by at least 15-25%.

Later I found I could also use a kernal flag to force the FSB to 800mhz.

Fast forward to 10.6 Now I am looking for a new solution to  fix this problem again. Like I said I have edited the smbios.plist and added the fsb code but it does not seem to realize its there. It also seems like whatever is in the smbios.plist is read by other programs further confusing the underlying problem.

I have 2 cmds/apps that will show I have 738mhz front side bus.

1. is cpu-i and voodoo monitor

2. is dmesg  and it gives more information on the problem..

 "Info" = {"CpuFeatures"=18446744072634498047,"CpuVendor"="GenuineIntel","CpuExtFeatures"=536870912,"CpuCount"=2,"FsbClock"=738,"CpuTjmax"=105,"BusClock"=184,"CpuCoreTech"=10,

The kernel I am running is Darwin Kernel Version 10.2.0: Tue Nov  3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386

If someone can tell me a fix for forcing the correct fsb thats all I need. I would love a fix that forces chameleon to give osx the right fsb.

As for kernel flags.. I have tried a kernal flag of fsb=200000000 (which I have read is the flag used by xnu kerels) but it did not seem to work. Maybe I have it wrong in my com.apple.Boot.plist

Just need that confirmed whats the best solution
« Last Edit: June 14, 2010, 08:21:28 AM by 00diabolic »

Azimutz

  • VoodooLabs
  • Posts: 420
  • Paranoid Android
Ok... i finished a big chunk of my work and had the opportunity to sleep 12h straight so, "i can see clearly now....la la la" :D

1- the reason why the kernel flag "fsb=" is not working is because you are using vanilla kernel! That flag is a feature on Voodoo kernel. Try this one: http://www.insanelymac.com/forum/index.php?showtopic=214528

2- you should really stop blaming Chameleon for this! Your crappy BIOS is the culprit :P

Check that kernel, it's a port of Voodoo kernel for Snow... fsb= works with it.
Afaik Chameleon doesn't have a similar feature... maybe it's time to add it?! Need to check that.
Kabil is right, you know... reading your last post cleared things out a bit; if that was your first post... I have to confess that was pissing me off a bit, but not enough to get me mad.
« Last Edit: June 14, 2010, 01:59:23 PM by Azimutz »
 System & Patches: http://goo.gl/i961
 Chameleon:
- trunk builds: http://goo.gl/9G1Hq
- pref pane: http://goo.gl/OL2UT

00diabolic

  • Observer
  • Posts: 25
1- the reason why the kernel flag "fsb=" is not working is because you are using vanilla kernel!

Wait I running the vanilla kernel? I thought because it said... xnu-1486.2.11~1/RELEASE_I386 i386

Xnu is voodoo isn't it? Snow universal 3.6 is what I'm running.  I just got ahold of Voodoo Kernel User Documentation.pdf.. I thought maybe I was using the flag wrong.

Are you sure apple vanilla kernel would say xnu in the details?

Sorry my other post was confusing. There is a lot of old and new ways of fixing the FSB/CPU/Ram ID problem and I wanted to give you guys details on what I have tried so I dont get told to do things Ive already done or know dont work.

As for Chameleon having a feature for forcing fsb why does the injection of the smbios.plist not force the fsb value? I remember when I used to use netkas smbios files back in 10.5 they would never get my fsb right but it looked right as it was mostly a superficial fix. Is that all smbios.plist is, a superficial fix? and I know my bios sucks ass. Nothing I can do there.. I wish there was. 

I attached both my com.apple.boot.plist and smbios plist. Let me know if they look alright. I built the smbios.plist after reading a few guides.
« Last Edit: June 14, 2010, 05:13:49 PM by 00diabolic »

Azimutz

  • VoodooLabs
  • Posts: 420
  • Paranoid Android
Yeah, you're running vanilla kernel. XNU is the name of the kernel.. some info: http://en.wikipedia.org/wiki/XNU
Patched kernels always (should) have a mention to the patcher (or whatever) on the name, so they are not confused with vanilla one.
The values on smbios.plist patch what's shown on System Profiler and afaik they are only cosmetics.
Your best bet at this point is a patched kernel.

As i said, i'm not very experienced with fsb or smbios stuff so i can be saying some bs :P

About the files you posted... on Boot.plist:
arch=i386, it's only needed if you have a 64 bit capable cpu and you need to force it to run 32 bit.
bus=200000000, place it under Kernel Flags, when using patched kernel.
SMBIOSdefaults=yes, it's the default value so, you don't need it on Boot.plist.
PciRoot=0, it's also the default value, but you can leave it for now; you don't need it on RC5, that's for sure!

On smbios.plist, i'd say remove it for now and later add only the needed values. And be careful with cross posting... to answer your question on IM, values on smbios.plist ALWAYS override the default ones ;)
« Last Edit: June 14, 2010, 08:41:26 PM by Azimutz »
 System & Patches: http://goo.gl/i961
 Chameleon:
- trunk builds: http://goo.gl/9G1Hq
- pref pane: http://goo.gl/OL2UT