Jump to content

[GUIDE]+[STUDIO] ZOTAC GEForce 9300 WIFI DDR2 and DDR3 Snow --> ML TEST 1082 sleep #795


Hugo_bee
 Share

850 posts in this topic

Recommended Posts

Scrax and Minihack.. HY!!

 

so before going bed.. I want to work to another pair of zotac.

the first one is marked as D-E but in the PCB the code reported shows 1.0 version..

but the two number does not match.. I mean: or is 3.0 or 1.0.. not the same

 

tomorrow I'll post the photo.. so.. for me is not a metter.. OS run fine even if I never go sleep..

 

but I want to talk about the recent Zotac DDR3.. markes as K-E ..

which has 3 sata port.. no firewire, 1 com port

 

so.. I'm asking you if you're working as me on the recent motherboard.. I never want to collide with your wonderful work.. and is important for me add some value ..

 

this is because I want to start from scratch.. I started with 10.6.2 setup.. and only with USB Full (not high) I have a good start.

 

to be quicky.. after 4 days I went to 10.6.6.. I think it's a magic update, because in S/L/E I have any mod or kext removed

 

APART from the audio.. that I haven't implemented yet..

 

In E/E I have only Evoreboot, nvinject, fakesmc 1.0

 

with the dsdt (just in developing) I can remove ElliottRTC, Nullcpupowermanagement..

 

and voilà.. ONLY after removing the nullcpu.. I have the sleep with VANILLA 10.6.6 and without ANY sleepenabler..

 

this is the video.. I'm tired.. but happy

 

 

so.. I'm asking to you if the recent AppleHDA patched files are working wor me and

If I have to replace Evoreboot with Zevoreboot and

if you have facesmc 2,5 hang as me

 

ah.. I've added in smbios.plist info about ddr3 (value is 24) and clock 1333..

see ya

 

ugo

Link to comment
Share on other sites

Scrax and Minihack.. HY!!

...

ugo

 

Hi, I have the same mobo you descrived I think the D-E pcb 01

it has 2 sata port and one not mounted i think that the 03 rev has only the 2 sata mounted and a different number of capacitors

I found this info on hardwareupgrade forum if I don't remember wrong

 

for tho k-e I think the biggest difference is in the usb power management (that on the other card is not correctly implemented)

but if you don't need the IOBlockstorage patch for orange icons maybe also the sata part has changed, how many hd have you yet connected?

can you post your lspci -nn results?

 

 

About my configuration and the latest file I posted

 

I use one of the last chameleon trunk with automaticP and C state inj for SpeedStep

 

Zevoreboot IS Evoreboot but in the info.plist inside i've added all the legacy stuff we/I need for our Zotac boards. If you open it with plist editor under "IOKitPersonalities" you can see the added data

post-464373-1299202907_thumb.png

Usb patch for the "not enough power" errors

Full Audio patch (AppleHDA injection, and LegacyHDA for pin config and path maps) it still need the binary binpatch done with ZotacAppleHDAFix (it will also remove a lot of unused path maps and coded id for all the apple supported devices. this is to gain ~5 spin at boot because osx find faster the correct config if it has only that config saved) in the dsdt you will see that I have only the device address in HDEF but I'm not sure it's really needed I never tested without

Orange icon fix

 

The DSDT has only the patch needed to avoid problems like cmos reset, hpet, power management etc.

No injection here because smaller=faster so I removed all the code osx don't use like floppy devices, com ports, system check (because we use this dsdt only with always the same os don't matter the version). I've also removed a lot of unnecessary methods.

I think that could be easy find out what are the difference with the one of the K-E

 

Last thing I do but it's almost cosmetic I think is SATA id override with the one Apple uses in his MCP7A to have it correctly recognized in sys profiler

This is done with an EFI string because the legacy way didn't worked

For the video I'm still testing my last EFI string when done i'll post it here. For now the one posted before are good.

I'm also trying to port it to a legacy.kext but for now still nothing...

 

In smbios I have only the vendor name and serial number for ram because other data are ok

but i don't know if it's because default cham value are the same as my config or because they are correctly recognized

As posted before, I'm using MacPro3,1 as model to avoid audio pops when the audio engine starts.

 

So this is what I use, a mix between dsdt patching and stripping, legacy inj and EFI inj

But for most of the patch one can use EFI, DSDT or kext as s/he prefer

 

keep us updated with you work, i'm curious to see what you will make :wacko:

 

ciao Scrax, a che versione di snow leopard sei arrivato e l'installazione è semplice con questa scheda?

Ciao

Ultima. 10.6.6

 

con chiavetta usb da 8GB

  1. ci ripristini il dmg di Snow,
  2. ci installi chameleon
  3. ci metti l'extra postata precedentemente
  4. ripari i permessi di Extra/Extensions trascinandola su kest utility
  5. avvi la zotac da chiavetta con il bios impostato come a inizio topic e istalli osx
  6. riavvi da chavetta scegli SnowLeo invece che installazione
  7. ripeti 2, 3 e 4 sul disco di snow questa volta
  8. puoi riavviare dal disco di snow
  9. aggiorni alla 10.6.6 con il combo update, riavvio
  10. fai partire ./ZotacAppleHDAFix e da terminale "sudo kextload /System/Library/Extensions/AppleHDA.kext" per avere l'audio (se non funziona col terminale allora riavvia e va)

Link to comment
Share on other sites

1st: the network card is interesting, but we should find,togheter,a good pci-e 16x card with more stuff!

So zotac has ONlY one slot! Wy don't find a good combo card with usb3...and other functions in a 5Ghz pipeline?

 

2nd: for everybody with problem in sleep... I had the same also in k-e pcb,BEFORE modding dsdtz

For everybody i suggest to buid your dsdt with 2 codes:

 

Simply find windows 2006

It occour only 2 times, so the complete silently sleep,snd the sleep process never complete if the cpupowermanagement do it's job!

Is a dependency: you never have the sleep because the order of the sleep process is depending on the last component of the process itself.

You did inj of power sleep wak and resume to Sata,usb..ok.but it is not sufficient

 

In the if clause that contain the word windows 2006 (aka from vista to earlier) you have to copy&paste the entire

Block with the IF and replace windows 2006 with the word

Darwin

 

Repeat the same into another part of dsdt

With those codes you tell to mac to use applecpupowermanagement

Without errors

And with full acpi support!!!!!!!!!!

 

Remove ANY repeat any cpudisabler or nullcpu

From E/E OR S/L/E

 

and verify:

 

The fan stops,the cpu stops

And the sleep flowchart can continue truely

So if it continues,the bios can truely Obtain the Return State

That IS NECESSARY to a resume

 

 

 

Scrax,these next days ill'try your suggestions

But i don't undetstand if the zevo apply audio mods or I have to run the perl script after

 

Other question about dsdt, i see zevo contsin usb and sata fix,so i must Erase tjos part in my dsdt?

And: after the 10.6.6 update with usb bios set to hi

I have etrors at boot but no hang and no uim error messages,but no usb storage is mounted!

So you use 2.0 usb as well as me?

 

Last q: ehe

Id strange,never hpenef before

After applying the 10.6.6 i thinked to have a clean and full S/L/E folder..but no!

Befor i had 3 kexts modded, one of them was iopcifamily, 2.3.6 (memoey,not sure take the version with springs) but after the upgrade, all kexts was upgraded except for it.. Strange

So what is your iopcifamily?

 

See ya!

Link to comment
Share on other sites

s rax here is my lspci...

 

yesterday I trierd to do something.. but no way to boot

same error .. KP instant at boot.. unable to find a platform for the processor

 

ah.. I've opened the 10.6.6 combo.. strange.. iopcifamily is 2.6.1..

so why mine is 2.6.3? I 've replaced it.. I'm wrong? no vanilla?

 

00:00.0 Host bridge [0600]: nVidia Corporation MCP79 Host Bridge [10de:0a80] (rev b1)

00:00.1 RAM memory [0500]: nVidia Corporation MCP79 Memory Controller [10de:0a88] (rev b1)

00:03.0 ISA bridge [0601]: nVidia Corporation MCP79 LPC Bridge [10de:0aac] (rev b2)

00:03.1 RAM memory [0500]: nVidia Corporation MCP79 Memory Controller [10de:0aa4] (rev b1)

00:03.2 SMBus [0c05]: nVidia Corporation MCP79 SMBus [10de:0aa2] (rev b1)

00:03.3 RAM memory [0500]: nVidia Corporation MCP79 Memory Controller [10de:0a89] (rev b1)

00:03.4 RAM memory [0500]: nVidia Corporation Unknown device [10de:0a98] (rev b1)

00:03.5 Co-processor [0b40]: nVidia Corporation MCP79 Co-processor [10de:0aa3] (rev b1)

00:04.0 USB Controller [0c03]: nVidia Corporation MCP79 OHCI USB 1.1 Controller [10de:0aa5] (rev b1)

00:04.1 USB Controller [0c03]: nVidia Corporation MCP79 EHCI USB 2.0 Controller [10de:0aa6] (rev b1)

00:06.0 USB Controller [0c03]: nVidia Corporation MCP79 OHCI USB 1.1 Controller [10de:0aa7] (rev b1)

00:06.1 USB Controller [0c03]: nVidia Corporation MCP79 EHCI USB 2.0 Controller [10de:0aa9] (rev b1)

00:08.0 Audio device [0403]: nVidia Corporation MCP79 High Definition Audio [10de:0ac0] (rev b1)

00:09.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Bridge [10de:0aab] (rev b1)

00:0a.0 Ethernet controller [0200]: nVidia Corporation MCP79 Ethernet [10de:0ab0] (rev b1)

00:0b.0 SATA controller [0106]: nVidia Corporation MCP79 AHCI Controller [10de:0ab8] (rev b1)

00:0c.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac4] (rev b1)

00:0d.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac5] (rev b1)

00:10.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0aa0] (rev b1)

00:16.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac7] (rev b1)

04:00.0 VGA compatible controller [0300]: nVidia Corporation C79 [GeForce 9300 / nForce 730i] [10de:086c] (rev b1)

 

 

ps. your various dsdt is not useful for me!

I prefer to boot with chamaleon RC5 651 that inject C and P states..

Link to comment
Share on other sites

sorry scrax... i'm seeing your dsdt but at the top I read

Revision 0x01 **** ACPI 1.0, no 64-bit math support

 

I don't have that limit

Link to comment
Share on other sites

I was unable to reply yesterday cause ips error or similar in the forum...

 

 

I have the same lspci with same dev id except for this part:

00:0c.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac4] (rev b1)

00:0d.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac5] (rev b1)

00:10.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0aa0] (rev b1)

00:16.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac7] (rev b1)

04:00.0 VGA compatible controller [0300]: nVidia Corporation C79 [GeForce 9300 / nForce 730i] [10de:086c] (rev b1)

 

I have this:

00:0c.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac4] (rev 0a)

00:10.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0aa0] (rev b1)

00:15.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac6] (rev 0a)

00:16.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac7] (rev 0a)

00:17.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac7] (rev 0a)

00:18.0 PCI bridge [0604]: nVidia Corporation MCP79 PCI Express Bridge [10de:0ac7] (rev 0a)

03:00.0 VGA compatible controller [0300]: nVidia Corporation C79 [GeForce 9300 / nForce 730i] [10de:086c] (rev b1)

 

So your GFX card has a different address than the one in my DSDT. Seems like you are ausing a rev b1 instead of rev 0a for the PCI Bridge but i don't think this would matter.

 

What CPU are you using?

 

If you can post your dsdt and ioreg i'll take a look at the differences...

Link to comment
Share on other sites

E8400

so I like it.. 1333 bus.. 6mb cache L2.. 3 ghz! 65W

 

now I have the same iopci not loaded error in LP with unable to find driver for this platform

 

I try to reapply the 10.6.6..

 

I see your dsdt is very light!! so mine .. is normal.. with cosmetic rename.. and vital patch i.e. HPET/RTC/CMOS

my dsdt is very rich of PWR,STA methods everywhere.. so is really strange because is new for me to see things normally I have to put manually. bah

 

I did too many mods yesterday.. so starting from a basicdsdt/elliott/nvinject and iopci 2.6.3 and a good osx (good but with no usb HI) now I can't boot

 

I'll try again

 

agree with you for the pspci

Link to comment
Share on other sites

My dsdt is the results of a lot of reduction from the original one posted here. I think this one would look more like yours.

 

what you need to have is compile errors and some patch: RTC, CMOS, HPET, and AZAL to HDEF I use Chameleon too for p and c states.

 

at first i was using also all the injiction in dsdt but now i've moved them so I have GFX data and SATA id inj in EFI string (here the plist)

EFIStringSATA_GFX_.txt

 

In Zevoreboot I have all the audio injections, Usb power patch (not complete) and orange icon fix plus rebbot fix with evorebbot of course.

 

If you want to have all in dsdt check this

this is the updated text (because LPCB inj is not needed):

In less than 200 lines of code we have our dsdt.dsl with all the patch added name changed to the one of a iMac9,1 (now we have almost the same ioreg but with the original dsdt) RTC fix, TIMR & HPET fix, missed mac Device names and SBUS injection ,integrated GFX injection, SATA injection, HDEF injection, USB injection.

the blue part are the inj I removed from dsdt and added to Zevoreboot

green one are the one i inject with EFI strings

other patch are applied in the reduced dsdt

 

It is "easy" to remove a lot of unused devices from the dsdt after you can start with it just check in ioreg, you will find that a lot of them will not appear there. After in the dsdt you will notice that the one that don't appears are related to an if method that can be replaced by a name and the correct devices, thus removing the unused one...

 

 

To boot without problem with USB in HI Ineed to disable USB drive support or if there is a usb key connected it never boot.

but with it to low I wave a faster kernel loading.

 

with hi it hangs for a litte at:

kernel[0]: IOAPIC: Version 0x11 Vectors 64:87

kernel[0]: ACPI: System State [s0 S3 S4 S5] (S3)

...

 

I use low because in osx it works in High mode anyway i think.

 

The only issue I can't still get rid of is the devices disconnected after sleep. But after many try i start thinking it's impossible to avoid because our mobo switches off usb when we go in sleep mode and this is the reason why usb wake up don't works.

A workaround could be a script that removes the usb devices before sleep.

Link to comment
Share on other sites

SOLVED KP arror at boot

 

not happy but..

If I chenge in DSDT

Processor (P001,

into CPU0

 

etc 1,2,3..

 

I have the KP.. unable to load driver for this platform..

or

should have 2 threads ..

 

 

If I Use YOUR EFI strings in c.a.b.p.

I have KP!

 

I replaced AppleHDA with the one in the 18'th page.. and your last zip with zevoreboot..

no nullcpupowermgm.. only fakesmc and zevoreboot

 

but audio is not audible.. I see it in the system panel..

 

and ok.. is good to reduce dsdt.. in the next days I'll manage your post!

thanks!!!

Link to comment
Share on other sites

hy!

 

good news..

I start from scratch again.. from a 10.6.6 hazard ppf

so I suppose it has a IOATA always patched. but other kext untouched

apart from it, I see in SLE a lot of unwanted kext.. the I removed Elliott..Nullcpu.. Disabler..

and moved Evoreboot.. OPENHALT.. FAKE.. (so I ask myself why hazard put both evoreboot and also openhaltrestart !) in E/E

then:

I booted with my DSDT

boot ok.. but no more full sleep.. as my youtube video

put your dsdt.. KP

put your last DSDT simply replacing CPU0/1/2/3 with P001/2/3/4 .. KP but new answer.. it say that there's no HPET for my CPU.

 

put your cosmetic name (gige etc,,) and some mods into my dsdt..

boot ok but no more sleep..

 

for both good boot.. I found my E/E and S/L/E are equal to your.. except for ZEVOreboot.. and Applehda patch

 

so I'm still using 10.6.6 hazard voodoohda 2.7.2 and it works for zotac K-E

 

I remove voodoohda, put vanilla applehda.kext

run your patcher

put Zevoreboot instead of Evoreboot

 

the OS run fine.. but no volume icon.

in System profiler I see Alc662.. but in control panel all is grey

 

ah: in system profiler I never have seen a good name for SATA device... always unknowh SATA

 

for the other things.. I suppose it run fine!

Yes.. starting in Full USB Speed at bios I see effectively a 480kb/sec speed in system profiler.. as you told

 

but I'm not sure it run as quickly as it say. So I haven't any benckmark in osx fot those ports..

If I put 2 usb HDD in the front panel of the case.. (2 usb port connected into one of the 3 motherboard usb expansions) one of the two usb storage is not visible anymore, until I detach the other. (low current?)

 

And in full speed I mean that If I've an OS running from a 32gb esata usb external storage.. it run very low from boot.. think about it!

When I run OS setup from that pen.. I have a snow welcome setup in about 4 secs with e8400 and less of 4 secs with an i7!

 

for the dsdt.. you cut a lot of parts.. are you sure it satisfy the performances of the os? I want to do the same.. but I see fragmented parts.. I mean that in my DSDT for example the SCOPE (_SB) is written in 2 points of the DSDT.. and is not the only one fragmentation!! it drives me nut

 

night!

Link to comment
Share on other sites

cut all _SB.PCI0 section

discovered that if I enablem CPUID in bios.. I cannot boot due to KP (unsupported cpu)

 

so.. today I'll finish my test.. and try lion

Link to comment
Share on other sites

cut all _SB.PCI0 section

discovered that if I enablem CPUID in bios.. I cannot boot due to KP (unsupported cpu)

 

so.. today I'll finish my test.. and try lion

 

those are my bios settings (listed only the one changed from default):

 

[b]Advanced BIOS Features[/b]:
>CPU Feature:					<---- NOTE : KernelPanic with "Execute disable bit" enabled
	C1E Function			[Enabled]
	Virtualization Technology 	[Enabled]
Virus Warning				[CPU Related]  I have it enabled
CPU L3 Cache				[CPU Related]  I have it disabled
APIC Mode				[Enabled]
[b]Advanced Chipset Features[/b]:
On Board GPU 				[always Enable]
iGPU FrameBuffer Control 		[manual]
Frame Buffer Size 			[512M]
iGPU clock 				[Auto] or over clocked like you suggest in the first post
[b]Integrated Peripherals[/b]:
>MPC Storage Config:
	SATA Operation Mode		[AHCI]
>Hardware Monitor: (Optional)
	CPU SmartFan Control		[Disabled]
	CPU Fan Control 		[50%]
>MCP Superio Config
	On Chip Serial Port 		[Disabled]
	MAC Lan				[Disabled]
	Machine MAC(NV) Address		[Disabled]
	Onboard Serial Port 1		[Disabled]
>USB Device Setting:
	USB Operation Mode		[Low Speed]
[b]Power Management Setup[/b] (Optional):
ACPI Suspend Type 			[S1+S3]

 

 

can yo post your KE dsdt?

Link to comment
Share on other sites

so I'm still using 10.6.6 hazard voodoohda 2.7.2 and it works for zotac K-E

 

I remove voodoohda, put vanilla applehda.kext

run your patcher

put Zevoreboot instead of Evoreboot

 

the OS run fine.. but no volume icon.

in System profiler I see Alc662.. but in control panel all is grey

 

Do you have changed AZAL to HDEF in DSDT? I have only this code in it with Zevoreboot:

			Device (HDEF) {Name (_ADR, 0x00080000)		// HDEF was AZAL
			Name (_PRW, Package (0x02) {0x15,0x05})  // this _PWR is the only thing we need to keep from the original dsdt code

If you delete from the info.plist of Zevoreboot the " ALC662 Device Inject AUDIO 6.1" dictionary you can use the code below

 

Without zevoreboot ALC662 inj:

				Method (_DSM, 4, NotSerialized) {Store (Package (0x0E) { // Added for audio device
						"subsystem-id", Buffer (0x04) {0x79, 0xCB, 0x00, 0x00}, 
						"subsystem-vendor-id", Buffer (0x04) {0xDE, 0x10, 0x00, 0x00},
						"codec-id", Buffer (0x04) {0x62, 0x06, 0xEC, 0x10}, // we need to be sure your KE is still using this 662 codec-id and for this we need a dump from linux
						"layout-id", Buffer (0x04) {0x96, 0x02, 0x00, 0x00  },//ID 662 
						"device-id", Buffer (0x04) {0xC0, 0x0A, 0xDE, 0x10}, 
						"device-type", Buffer (0x0F) {"Realtek ALC662"}, 
						"PinConfigurations", Buffer (Zero) {} }, Local0)
				Return (MCDP (Arg2, RefOf (Local0))) } }  //attention here because I use MCDP instead of DTGP method
ah: in system profiler I never have seen a good name for SATA device... always unknowh SATA

 

Until the EFI string isn't working for you you can try using this code in dsdt (again keep in mind that it use MCDP not DTGP)

			Device (SATA) {Name (_ADR, 0x000B0000)											   // sata fix
			Method (_DSM, 4, NotSerialized) {Store (Package (0x06) {
						"device-id", Buffer (0x04) {0xB9, 0x0A, 0x00, 0x00},   //<---this is the important ID we need to inject to have correct sata driver loading
						"subsystem-id", Buffer (0x04) {0x79, 0xCB, 0x00, 0x00}, 
						"subsystem-vendor-id", Buffer (0x04) {0xDE, 0x10, 0x00, 0x00} }, Local0)
				Return (MCDP (Arg2, RefOf (Local0))) } }

this is the result in sys profiler

 

NVidia MCP79 AHCI:

 

Fornitore: NVidia

Prodotto: MCP79 AHCI

Velocità di connessione: 3 Gigabit

Velocità di connessione negoziata: 3 Gigabit

Descrizione: AHCI Version 1.20 Supported

note this is the same code but in a EFI strig hex format

 

	<key>PciRoot(0x1)/Pci(0xb,0x0)</key>
<dict>
	<key>device-id</key>
	<integer>282987193</integer>
	<key>subsystem-id</key>
	<data>ecsAAA==</data>	  /*it is <79cb0000>*/
	<key>subsystem-vendor-id</key>   /*it is <de100000>*/
	<data>3hAAAA==</data>
</dict>

I have not yet find out how to make it work from Zevoreboot like the usb patch for example.

 

Let's talk about it. The usb patch I use is to avoid error messages when a "power hungry" usb device is connected

the dsdt code to force the current we pass to the usb is this

 

			Device (EHC2) {Name (_ADR, 0x00060001)
			Name (_PRW, Package (0x02) {0x17,0x03})
			Method (_DSM, 4, NotSerialized) {Store (Package (0x07) {  //EHC2 FIX
						"AAPL,current-available", 0x05DC, 
						"AAPL,current-extra", 0x044C, 
						"AAPL,current-in-sleep", 0x09C4, 
						Buffer ( One) {0x00} }, Local0)
				Return (MCDP (Arg2, RefOf (Local0))) } }
		Device (EHC1) {Name (_ADR, 0x00040001)
			Name (_PRW, Package (0x02) {0x05,0x03})
			Method (_DSM, 4, NotSerialized) {Store (Package (0x07) { // EHC1 FIX
						"AAPL,current-available", 0x05DC, 
						"AAPL,current-extra", 0x044C, 
						"AAPL,current-in-sleep", 0x09C4, 
						Buffer ( One) {0x00} }, Local0)
				Return (MCDP (Arg2, RefOf (Local0))) } }

Notice again that from the original dsdt we kept only the _ADR and the _PWR data

 

the efi string code will be:

 

<key>PciRoot(0x1)/Pci(0x6,0x1)</key>
<dict>
<key>AAPL,current-available</key>
<integer>1500</integer>
<key>AAPL,current-extra</key>
<integer>1100</integer>
<key>AAPL,current-in-sleep</key>
<integer>2500</integer>
</dict>
<key>PciRoot(0x1)/Pci(0x4,0x1)</key>
<dict>
<key>AAPL,current-available</key>
<integer>1500</integer>
<key>AAPL,current-extra</key>
<integer>1100</integer>
<key>AAPL,current-in-sleep</key>
<integer>2500</integer>
</dict>

 

 

The code we add in Zevoreboot is instead this (under IOKitPersonalities):

 

	<key>EHC2 Inject							   USB</key>
<dict>
	<key>CFBundleIdentifier</key>
	<string>com.apple.driver.AppleUSBMergeNub</string>
	<key>IOClass</key>
	<string>AppleUSBMergeNub</string>
	<key>IONameMatch</key>
	<string>pci10de,aa9</string>
	<key>IOProviderClass</key>
	<string>IOPCIDevice</string>
	<key>IOProviderMergeProperties</key>
	<dict>
		<key>AAPL,current-available</key>
		<integer>1500</integer>
		<key>AAPL,current-extra</key>
		<integer>1100</integer>
		<key>AAPL,current-in-sleep</key>
		<integer>2500</integer>
	</dict>
</dict>
<key>EHC1 Inject							   USB</key>
<dict>
	<key>CFBundleIdentifier</key>
	<string>com.apple.driver.AppleUSBMergeNub</string>
	<key>IOClass</key>
	<string>AppleUSBMergeNub</string>
	<key>IONameMatch</key>
	<string>pci10de,aa6</string>
	<key>IOProviderClass</key>
	<string>IOPCIDevice</string>
	<key>IOProviderMergeProperties</key>
	<dict>
		<key>AAPL,current-available</key>
		<integer>1500</integer>
		<key>AAPL,current-extra</key>
		<integer>1100</integer>
		<key>AAPL,current-in-sleep</key>
		<integer>2500</integer>
	</dict>
</dict>

 

because we can't use the dev id like in the efi string to select the point where to inject our data, we use the IONameMatch string with the dev id that we need to find as string pci10de,aa6 or pci10de,aa9

Link to comment
Share on other sites

GOOOOOd news

 

so: I tried to apply yput fix in dsdt.. delete ALL SB_pci0 as I told before..

apply ZEVO with that dsdt and NO efi string

 

I have ALC662 working!!

 

thus MY BIOS IS NOT AS YOUR.. k-e is quite diferent..

I mean I have to choose from ACPI1.0 / 2.0 / 3.0..

I don't have some of yours values.. example S1+S3.. I can choose or S1 or S3

and I chose S3

In the CPU section I have to enable or disable PECI

and Instead of you.. NO KP if I use execute disable function

and YES KP if I enable Max CPUID

 

 

 

but I'm at a good point.. thanks!

 

then.. I tried to approach to accademic dsdt hacks and fixes.. but a lot of things are different

and removed a lot of IF when I'm absolutely sure of the consequences of the IF Clauses..

 

 

 

SATA in my dsdt is NATIVE (extraxted!) as here

 Device (SATA)
		 {
			 Name (_ADR, 0x000B0000)
			 Device (PRI0)
			 {
				 Name (_ADR, Zero)
				 Name (SPTM, Buffer (0x14)
				 {
					 /* 0000 */	0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 
					 /* 0008 */	0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 
					 /* 0010 */	0x17, 0x00, 0x00, 0x00
				 })
				 Method (_GTM, 0, NotSerialized)
				 {
					 Return (SPTM)
				 }

				 Method (_STM, 3, NotSerialized)
				 {
					 Store (Arg0, SPTM)
				 }

				 Device (MAST)
				 {
					 Name (_ADR, Zero)
					 Method (_GTF, 0, NotSerialized)
					 {
						 Store (Buffer (0x07)
							 {
								 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF
							 }, Local0)
						 Return (Concatenate (Local0, FZTF))
					 }
				 }

				 Device (SLAV)
				 {
					 Name (_ADR, One)
					 Method (_GTF, 0, NotSerialized)
					 {
						 Store (Buffer (0x07)
							 {
								 0x03, 0x46, 0x00, 0x00, 0x00, 0xB0, 0xEF
							 }, Local0)
						 Return (Concatenate (Local0, FZTF))
					 }
				 }
			 }

 

so is just a good DSDT.. strange..

 

 

I post mine

Link to comment
Share on other sites

I'm thinking about the GFX inj and the different address. this could be the cause of your problems with my efi strings

this is the file i posted previously but isn't reachable

EFIStringSATA_GFX.txt

Note that there is also SATA inj

 

Under the GFX part I think you need to change this line

<key>PciRoot(0x1)/Pci(0x10,0x0)/Pci(0x0,0x0)</key>

 

with the correct Device path (I use EFI Studio for all mi efi string stuff)

post-464373-1299421431_thumb.png

 

 

EFI STUDIO

EFIStudio.app.zip

Link to comment
Share on other sites

i've edited my last post.. CPUID = KP..

execute disable ... no KP

 

i'll try your app

 

ps.. what is the best way to enter in an EFI partition?

 

but your efi has invidia.. mine is already good without strings or dsdt mods.. zero mods.. zero injectors

Link to comment
Share on other sites

SATA in my dsdt is NATIVE (extraxted!) as here
 Device (SATA) { Name (_ADR, 0x000B0000)
			Device (PRI0) {Name (_ADR, Zero)
				Name (SPTM, Buffer (0x14) {0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00})
				Method (_GTM, 0, NotSerialized) {Return (SPTM)}
				Method (_STM, 3, NotSerialized) {Store (Arg0, SPTM)}
				Device (MAST) {Name (_ADR, Zero)
					Method (_GTF, 0, NotSerialized) {
						Store (Buffer (0x07) {0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF}, Local0)
						Return (Concatenate (Local0, FZTF)) } }
				Device (SLAV) {Name (_ADR, One)
					Method (_GTF, 0, NotSerialized) 
						Store (Buffer (0x07) {0x03, 0x46, 0x00, 0x00, 0x00, 0xB0, 0xEF}, Local0)
						Return (Concatenate (Local0, FZTF)) } }
			}

 

Nice! but is not complete i think... :D

 

Can you try with this:

			 Device (SATA) {Name (_ADR, 0x000B0000)
			Method (DRMP, 0, NotSerialized) {Store (0x08, Local0)
				ShiftRight (CPB0, Local0, Local1) nd (Local1, 0x3F, Local0)
				Return (Local0) }
			Method (_DSM, 4, NotSerialized) {Store (Package (0x06) {
						"device-id", Buffer (0x04) {0xB9, 0x0A, 0x00, 0x00},   //<---this is the important ID we need to inject to have correct sata driver loading
						"subsystem-id", Buffer (0x04) {0x79, 0xCB, 0x00, 0x00}, 
						"subsystem-vendor-id", Buffer (0x04) {0xDE, 0x10, 0x00, 0x00} }, Local0)
				DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } }

and if it works try this:

			 Device (SATA) {Name (_ADR, 0x000B0000)
			Method (_DSM, 4, NotSerialized) {Store (Package (0x06) {
						"device-id", Buffer (0x04) {0xB9, 0x0A, 0x00, 0x00},   //<---this is the important ID we need to inject to have correct sata driver loading
						"subsystem-id", Buffer (0x04) {0x79, 0xCB, 0x00, 0x00}, 
						"subsystem-vendor-id", Buffer (0x04) {0xDE, 0x10, 0x00, 0x00} }, Local0)
				DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } }

 

 

and here:

	Method (OSYS, 0, NotSerialized){Store (0x10, Local0)
	If (CondRefOf (_OSI, Local1))  {
		If (_OSI ("Windows 2000")) {Store (0x12, Local0)}
		If (_OSI ("Windows 2001")) {Store (0x13, Local0)}
		If (_OSI ("Windows 2001 SP1")) {Store (0x13, Local0)}
		If (_OSI ("Windows 2001 SP2")) {Store (0x13, Local0)}
		If (_OSI ("Windows 2001.1")) {Store (0x14, Local0)}
		If (_OSI ("Windows 2001.1 SP1")) {Store (0x14, Local0)}
		If (_OSI ("Windows 2006")) {Store (0x15, Local0)}
	If (_OSI ("Darwin")) {Store (0x15, Local0)}  }
	Else {If (MCTH (_OS, "Microsoft Windows NT"))  {Store (0x12, Local0)}
		Else {If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))  {Store (0x11, Local0)} }  }
   Return (Local0)
}

 

why do we need to check wich sistem is loading this dsdt? It's always darwin so this is faster:

Name (OSYS, 0x15)

and we get rid of some useless if clause... with just some correction to two lines in the dsdt (140 and 4926)

 

note that at the end we will remove also this because it is used by other method that we can probably remove...

 

mi first suggestion are attached.

If all works good you will have your sata fixed

dsdtKEmod0.1.dsl.zip

Link to comment
Share on other sites

mine is 0xb8

 

pciroot I think is the same...

but I prefer to use dsdt method.. by now

 

..

test negative!

 

now I must leave.. thanks mitic scrax!

 

asap I'll post my experiences..

Link to comment
Share on other sites

but your efi has invidia.. mine is already good without strings or dsdt mods.. zero mods.. zero injectors

because of Graphics Enabler yes i suppose...

I had problem with vga output using it so I made my EFI string ad oc

 

the sata is fixed in the dsdt (I hope) so you can avoid to mess with efi string at all.

Link to comment
Share on other sites

ok. I'm agree with you

so now I've to study.. I tried too to test lion.. but no way to boot.. is too complext to apply a good boot in a few minuites..

time is time!!

 

thanks.. in the next days I try to test efi.

 

great man!

 

ugo

Link to comment
Share on other sites

UPDATED 1st POST..

 

LION CHAPTER 7 THANKS TO GAANSAN ..

 

read.. try if you can.. want.. and post.. please post your feedback!!

 

I have the DDR3 version.. so I'll try my personal test and hope that receipt will fit as DDR2

 

 

have a good weeks!!

happy Zotac

Link to comment
Share on other sites

 Share

×
×
  • Create New...