Jump to content
  • Announcements

    • Allan

      Forum Rules   04/13/2018

      Hello folks! As some things are being fixed, we'll keep you updated. Per hour the Forum Rules don't have a dedicated "Tab", so here is the place that we have our Rules back. New Users Lounge > [READ] - InsanelyMac Forum Rules - The InsanelyMac Staff Team. 
fassl

DSDT Patcher

752 posts in this topic

Recommended Posts

i tried new version of chameleon dsdt override, but still no luck. Chameleon wrote messages: New DSDT loaded. ...... No ACPI Version 2. Ignoring.

 

Everything ok, but HPET still dont work with AppleIntelCPUManagement.kext.

 

Or perhaps you have some kind of disabler kext installed. I would try it again on a clean install

Share this post


Link to post
Share on other sites

I was thinking about... This trick can't solve some commons problems ?

 

For example use of PCGenUSB to make USB 2.0 working (force acquiring ownership), or the use of some resolvers for SMBios (By modding DMI ???? no ?)...?

Battery ---yes i've seen it somewhere....? (Don't think about Audio and Graphics...)

 

....Just to know what we could hope !!!?

 

Thanks man, your work is great.

 

What do you think about OpenBIOS ???

Share this post


Link to post
Share on other sites
I was thinking about... This trick can't solve some commons problems ?

 

For example use of PCGenUSB to make USB 2.0 working (force acquiring ownership),

I don't know how exactly ownership is acquired probably modifing DSDT could help (since ACPI is the main interface to whatever stays from BIOS in protected mode) but perhaps not if problem is in reality somehow controlled-related. Will have a look at ACPI specs

or the use of some resolvers for SMBios

SMBIOS can indeed be loaded the same way as modified DSDT. I'll probably implement it.

Battery ---yes i've seen it somewhere....?

Again I don't know the exact protocol for battery on macs but it seems to involve SMC. And fassl already began emulating it. Let's wish him good luck

(Don't think about Audio and Graphics...)

Perhaps even that I heard that people make the built-in audio information appear by BIOS mod. Now I'm also looking for people having "VGA dongle" problem since perhaps it can be resolved by DSDT-mod

 

About coreboot: to use coreboot you need to flash your BIOS. Actually flashing BIOS you could modify DSDT since a long time OriginalMACNUT is doing this. Using coreboot is probably risky if you have no way of recovering your old BIOS. Also I don't think that coreboot wil ever support more than a handful of mobos. But I would like to be proven wrong about this last statement

Share this post


Link to post
Share on other sites

Again i was wondering... :D :D :)

 

With DSDT could you emulate a "redirection" ?

 

Explication :

I have a card reader not recognized by OS X, like a lot of users, because it seems to be not attached to any USB, Firewire or PCMCIA/ExpressCard controller:

 

08:03.1 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 22)
08:03.2 System peripheral [0880]: Ricoh Co Ltd R5C843 MMC Host Controller [1180:0843] (rev 12)
08:03.3 System peripheral [0880]: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter [1180:0592] (rev 12)
08:03.4 System peripheral [0880]: Ricoh Co Ltd xD-Picture Card Controller [1180:0852] (rev 12)

 

These components works natively for some users (like EEE users...), because they're attached to usb controller...That's why i have this idea...

These "SD Host controller" and "System peripherical" needs drivers (seems not to be USB or PCMCIA...), or perhaps could you attach them to usb, firewire (who has the same brand for me and works as an OHCI component=RICOH) or expresscard controller ???

 

No ?

I'm dreaming... But for those simple composants...perhaps...? :P^_^:huh: :huh: :huh: :huh: :huh:

Share this post


Link to post
Share on other sites
These components works natively for some users (like EEE users...), because they're attached to usb controller...That's why i have this idea...

These "SD Host controller" and "System peripherical" needs drivers (seems not to be USB or PCMCIA...), or perhaps could you attach them to usb, firewire (who has the same brand for me and works as an OHCI component=RICOH) or expresscard controller ???

At least on Aspire One the cardreaders (it has two) are attached on PCIe hotplug. They appear only when the card is inserted. But if OS doesn't support PCIe hotplug it doesn't see devices not initialised by BIOS. Perhaps sth can be done to make hotplug devices permanent (but I really doubt about it). You can also try inserting a card before boot. But even if you manage to show cardreader to OSX it won't help you much since unlike USB-attached cardreaders they need their own drivers and since AFAIK no mac comes with built-in cardreader your only option is to write your own driver.

P.S. I had a look and can say that writing a routine for overriding SMBIOS is easy but I wonder whether such solution would be practical since after nearly every hw change (eg RAM upgrade) you would need to recreate and repatch SMBIOS dump. Another solution would be to make the bootloader patch SMBIOS for known issues.

@superhai: since you have written SMBIOSresolver would you be interested in helping with SMBIOS patching in Chameleon? (just point me out what's generally needs to be fixed)

Share this post


Link to post
Share on other sites

I hope Superhai have seen it !!!

 

Thanks for reply, it's good to have clear answers after a year of questions....Time to make a kext for card reader... I will take some lessons and try.

Share this post


Link to post
Share on other sites

Is it possible that after loading appleintelcpupowermanagment.kext my CPU become 2x slower??? Xbench says just that. Before cpu=78 mark, after cpu=36 mark. When i unload kext CPU jump to 78. Is that normal or what??? :)

Share this post


Link to post
Share on other sites
Is it possible that after loading appleintelcpupowermanagment.kext my CPU become 2x slower??? Xbench says just that. Before cpu=78 mark, after cpu=36 mark. When i unload kext CPU jump to 78. Is that normal or what???

 

the CPU PM kext is Apple's version of speedstep I believe, and it does throttle cpu, you can actually confirm this with superhai power management additions, by watching the application, not being able to throttle your cpu to your maximum cpu freq.

 

So either you disable it, or you can try messing around with the power management for pstates, or you have to edit the pstates in your dsdt. Any of those are a possibility.

 

I hope this clears that up.

Share this post


Link to post
Share on other sites
@superhai: since you have written SMBIOSresolver would you be interested in helping with SMBIOS patching in Chameleon? (just point me out what's generally needs to be fixed)

 

There are certain things that are more important than others. But the values I change in SMBIOSResolver are the following that smbios uses:

 

Table Type 0 (bios):

version (MBP41.88Z.00C1.B00.0802091544)

 

Table Type 1 (system):

manufacturer (Apple Inc.)

productname (MacBookPro4,1)

version (1.0)

serial-number (SECRETSERIAL)

 

Table Type 4 (cpu):

external-clock

maximum-clock

 

Table Type 17 (memory):

manufacturer (Unknown)

memorytype

memoryspeed

serialnumber (Unknown)

partnumber (Unknown)

devicelocator

banklocator

 

You should check if they contain a sane value, and if not update with a dummy value (what I have in parentesis is what I used). Except clock and memoryspeed, which should be calculated or provided from some kind of input file, for memory you could also make routine to read spd data via smbus, but i dont think that is feasible due to space. Serialnumbers could be made more appleish or just provide whatever is there.

Share this post


Link to post
Share on other sites
You should check if they contain a sane value, and if not update with a dummy value (what I have in parentesis is what I used). Except clock and memoryspeed, which should be calculated or provided from some kind of input file, for memory you could also make routine to read spd data via smbus, but i dont think that is feasible due to space. Serialnumbers could be made more appleish or just provide whatever is there.

Thank you. I will implement it soon but first I want to improve hw support of OSX of my own computer. I think that the best way would be that Chameleon replaces theese fields from ones present in config file if present. Then an example config file can be easily put with chameleon distribution. And the space restriction has been recently lifted

Share this post


Link to post
Share on other sites
Again i was wondering... :D :D :thumbsup_anim:

 

With DSDT could you emulate a "redirection" ?

 

Explication :

I have a card reader not recognized by OS X, like a lot of users, because it seems to be not attached to any USB, Firewire or PCMCIA/ExpressCard controller:

 

08:03.1 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 22)
08:03.2 System peripheral [0880]: Ricoh Co Ltd R5C843 MMC Host Controller [1180:0843] (rev 12)
08:03.3 System peripheral [0880]: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter [1180:0592] (rev 12)
08:03.4 System peripheral [0880]: Ricoh Co Ltd xD-Picture Card Controller [1180:0852] (rev 12)

 

These components works natively for some users (like EEE users...), because they're attached to usb controller...That's why i have this idea...

These "SD Host controller" and "System peripherical" needs drivers (seems not to be USB or PCMCIA...), or perhaps could you attach them to usb, firewire (who has the same brand for me and works as an OHCI component=RICOH) or expresscard controller ???

 

No ?

I'm dreaming... But for those simple composants...perhaps...? :P^_^:lol:;) ;) :huh: :huh:

 

 

Most internal card readers are attached to the usb bus. just like RICOH(i have one too), i can see my controller in usb device list(with chunnan's pcmcia driver patch) but there is no driver to load...

 

But: i have an "old" pcmcia 5in1 card reader, inserted it into my pcmcia port and voila: recognized by osx(hotplug) and i can read all supported cards inserted. So i think there has to be a driver integrated in osx, but i don't know where to look for or which driver is loaded when card reader inserted.....

 

Perhaps someone can help me to search so i could take a look at it...

Share this post


Link to post
Share on other sites

Another nice thing to add in your laptop DSDT: (Under _SB)

 

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

 

Might help you in loading the backlight control

Share this post


Link to post
Share on other sites

I've got following problem while compiling fixed dsdt:

 

./dsdt_fixed.txt  1676:								 Name (XX_0, Zero)
Error	4111 -		  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  1750:								 Name (XX_0, Zero)
Error	4111 -		  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  1933:							 Name (XX_0, Zero)
Error	4111 -	  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  1945:										 Name (XX_1, Zero)
Error	4111 -				  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  1978:											 Name (XX_2, Zero)
Error	4111 -					  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  2011:												 Name (XX_3, Zero)
Error	4111 -						  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  2058:													 Name (XX_4, Zero)
Error	4111 -							  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  2091:														 Name (XX_5, Zero)
Error	4111 -								  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  2138:															 Name (XX_6, Zero)
Error	4111 -									  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  2185:																 Name (XX_7, Zero)
Error	4111 -										  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  2562:							 Name (XX_0, Zero)
Error	4111 -	  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  2636:							 Name (XX_0, Zero)
Error	4111 -	  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  4760:							 Name (XX_0, Zero)
Error	4111 -	  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  6737:			 Method (EVNT, 1, NotSerialized)
Warning  1087 -								^ Not all control paths return a value (EVNT)

./dsdt_fixed.txt  7055:					 Name (XX_0, Zero)
Error	4111 -									  ^ Creating a named object in a While loop

./dsdt_fixed.txt  7533:						 Name (XX_0, Zero)
Error	4111 -  Creating a named object in a While loop ^ 

./dsdt_fixed.txt  7624:						 Name (XX_0, Zero)
Error	4111 -  Creating a named object in a While loop ^ 

ASL Input:  ./dsdt_fixed.txt - 8075 lines, 321106 bytes, 3499 keywords
Compilation complete. 16 Errors, 1 Warnings, 0 Remarks, 37 Optimizations

 

Any ideas how to fix this issue?

 

Cheers,

mentorek

Debug_ToshibaP100.zip

Share this post


Link to post
Share on other sites
quick question: how to apply this to munky efi partition boot method??

 

thanks in advance ;)

 

From [Guide] Boot from EFI partition, zero modification installs on Intel SSE2 or better...:

 

** This functionality is coming to a Chameleon release very soon. Once Chameleon supports this approach, this project will be retired. Thanks to everyone who uses this bootloader, thanks for the support and the kind words :hysterical: **

Share this post


Link to post
Share on other sites
Most internal card readers are attached to the usb bus. just like RICOH(i have one too), i can see my controller in usb device list(with chunnan's pcmcia driver patch) but there is no driver to load...

Nearly all USB-attached controllers follow USB mass storage specs, so are supported by osx. Perhaps you have ownership problem. Try PCGenUSBEHCI.kext

 

But: i have an "old" pcmcia 5in1 card reader, inserted it into my pcmcia port and voila: recognized by osx(hotplug) and i can read all supported cards inserted. So i think there has to be a driver integrated in osx, but i don't know where to look for or which driver is loaded when card reader inserted.....

It's possible that OSX includes a driver since it's an external device. But it's also possible that your PCMCIA cardreader has a USB controller+USB cardreader

Share this post


Link to post
Share on other sites

There ara a few things this patcher doesn't do. It is OS checks, which seem differently implemented on every mb. On both my machines I have to remove the OS checks to get the HPET device.

 

And another neat and free tip on a saturday, if you edit your dsdt yourself, you can under each PCI (E/X) bus node put in a

Name (_SUN, 0xXX)

Where XX is bus number. This will show you the PCI device in system profiler. I recommend that you have a bit knowledge of ACPI DSDT before you do, so you dont put it wrong. And do not put in on motherboard internal bus devices.

Share this post


Link to post
Share on other sites
Post your DSDT. We'll have a look but promise nothing

 

BTW you can also search on the internet if some fixes are available for similar issues. DSDT-patching formely was used a lot in linux

 

Alright, thanks.

 

Here is my debug folder.

Hafnium.tar

Share this post


Link to post
Share on other sites
Another nice thing to add in your laptop DSDT: (Under _SB)

 

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

 

Might help you in loading the backlight control

 

 

Where ???? Here ?

 

Scope (_SB)

{

Method (_INI, 0, NotSerialized)

{

If (DTSE)

{

TRAP (0x47)

}

}

}

Share this post


Link to post
Share on other sites
There ara a few things this patcher doesn't do. It is OS checks, which seem differently implemented on every mb. On both my machines I have to remove the OS checks to get the HPET device.

 

Thanks for the tip, will mind that.

 

greetz

 

Hello Guys!

I have little question!

If i patch DSDT table wrong can I directly harm my BIOS?!

 

Thank you!

 

If you use the chameleon bootloader with DSDT override it won't touch your BIOS at all.

Share this post


Link to post
Share on other sites
Hello Guys!

I have little question!

If i patch DSDT table wrong can I directly harm my BIOS?!

 

Thank you!

 

Chameleon doesn't flash your BIOS so after a hardware reboot no traces of DSDT override should be left. And after deleting of DSDT.aml you should be able to boot as before. But still neither I nor fassl take any responsibility. Theoretically a wrong command sent to hardware could damage but it's really unlikely. The risk is not bigger that e.g. replacing you graphics driver. I heard only of one case of wrong driver damaging hardware: it was a while ago and LG (if I remember correctly) made a series of DVD-burners on which a valid ATAPI-command (sth like cache flushing, don't remember anymore) was used to drop the firmware. It happened that this command wasn't used by win but was by linux. But it was an LG-fault to use a valid generic not firmware-management related ATAPI-command for flashing

Share this post


Link to post
Share on other sites

mackerintel : Thank you!

I'm on Windows XP and with HP Compaq 6730s!

I just want to decrease my fan speed from 50 % to 20%!

I know how to do it, but in case someting goes wrong...i want to be sure my bios will be fine

Thank you for the information!

 

Sorry I know it is Mac Board, but now I have my anwer!Thank you again!

I will only edin DSDT Table nothing more!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Recently Browsing   0 members

    No registered users viewing this page.



×