dgsga Posted January 13, 2011 Share Posted January 13, 2011 Revolution 635: Magnificent Well done DHP, I love the EFI reworking On a more serious note, all seems to work fine here, I think BlackOSX and myself have 'similar' boards as ASUS and MSI acpi tables are usually identical for the same chipset. DB1, I hope you're up and running soon... Link to comment Share on other sites More sharing options...
scrax Posted January 13, 2011 Share Posted January 13, 2011 LOL So my check really works. Great. Anyway. Using 64-bit addresses should not work on a 32-bit configuration. We're missing something else. I mean looking at some old posts here: scrax used Revolution 6.20 with OS X 10.6.3 so why can't he boot anymore? Is that due to my changes in boot2/drivers.c or you guys not having the MKext(s) in the right spot, or maybe SMBIOS issues? I can't test now the last Revolution but I have revo 6.20 on another system, the P5KC in sign not the Zotac in sign that I'm using now for the test... so to be more clear: P5K-C --> Revolution 6.20 working good with DSDT and SSDT integrated in the bootloader Zotac --> Revolution 365 (not yet tested, but I think that it will load now because I had the same error of blackos with the older versions) Link to comment Share on other sites More sharing options...
DB1 Posted January 13, 2011 Share Posted January 13, 2011 1.) Change ACPI_10_SUPPORT 0 into 1 (using 32-bit address space). 2.) In boot2/boot.c block both calls to showBootLogo (in combination with verbose boot mode) add: "execKernel-8" to the debug output, and that there's no sign of kernel activity. Just got in and will try the adjustments. p.s. Without a patched boot loader, mach_kernel or the two kext's you get a KP and not a hang like now. Right? Correct. DB1, I hope you're up and running soon... Yeah me too. Link to comment Share on other sites More sharing options...
DB1 Posted January 13, 2011 Share Posted January 13, 2011 Thanks. Did I ask you if you can in boot safe mode with Chameleon? When not can you? Update: OMG. Checked your IOREG once more and found out that both AppleEFIRuntime and AppleEFINVRAM are not even loading for you with Chameleon... Not tried -x Chameleon Does that point you at the problem? 2.) In boot2/boot.c block both calls to showBootLogo (in combination with verbose boot mode) add: "execKernel-8" to the debug output, and that there's no sign of kernel activity. Sorry cannot work out what to do in boot.c (I'm no coder), please give example Link to comment Share on other sites More sharing options...
DB1 Posted January 13, 2011 Share Posted January 13, 2011 No problem. Just ignore it for now and read my last addition to my last post. That will make it drop AppleEFINVRAM.kext Ok done that no noticeable difference in debug, still hang at grey screen an apple. Tried ACPI set 0 & 1 kextstat -l with Chameleon 1 56 0 0 0 com.apple.kpi.bsd (10.6.0) 2 4 0 0 0 com.apple.kpi.dsep (10.6.0) 3 73 0 0 0 com.apple.kpi.iokit (10.6.0) 4 78 0 0 0 com.apple.kpi.libkern (10.6.0) 5 64 0 0 0 com.apple.kpi.mach (10.6.0) 6 27 0 0 0 com.apple.kpi.private (10.6.0) 7 46 0 0 0 com.apple.kpi.unsupported (10.6.0) 8 0 0 0 0 com.apple.kernel.6.0 (7.9.9) 9 0 0 0 0 com.apple.kernel.bsd (7.9.9) 10 3 0 0 0 com.apple.kernel.iokit (7.9.9) 11 4 0 0 0 com.apple.kernel.libkern (7.9.9) 12 3 0 0 0 com.apple.kernel.mach (7.9.9) 13 19 0x2fa68000 0x11000 0x10000 com.apple.iokit.IOPCIFamily (2.6) <7 5 4 3> 14 13 0x2f8df000 0x4000 0x3000 com.apple.iokit.IOACPIFamily (1.3.0) <7 6 4 3> 15 2 0x2fb27000 0x42000 0x41000 com.apple.driver.AppleACPIPlatform (1.3.5) <14 13 7 6 5 4 3> 16 0 0 0 0 com.meklort.symbols.cpuid (10.0.0) 18 0 0x2facc000 0x1e000 0x1d000 com.apple.driver.AppleIntelCPUPowerManagement (105.13.0) <7 6 5 4 3 1> 19 6 0x2fc11000 0x2c000 0x2b000 com.apple.iokit.AppleProfileFamily (41.4) <13 7 6 5 4 3 1> 20 2 0x2f884000 0x5000 0x4000 com.apple.iokit.CHUDKernLib (365) <7 6 5 4 3 1> 21 0 0x2faea000 0xc000 0xb000 com.apple.iokit.CHUDProf (366) <20 7 6 5 4 3> 22 0 0x2fabe000 0x7000 0x6000 com.apple.iokit.CHUDUtils (364) <20 5 4 3 1> 23 2 0x2faad000 0xa000 0x9000 com.apple.driver.AppleSMC (3.1.0d3) <14 7 5 4 3> 24 0 0x2fa89000 0x6000 0x5000 com.apple.Dont_Steal_Mac_OS_X (7.0.0) <23 7 4 3 1> 25 7 0x2fbc0000 0x22000 0x21000 com.apple.iokit.IOGraphicsFamily (2.2) <13 7 5 4 3> 26 6 0x2fcde000 0x18000 0x17000 com.apple.iokit.IOStorageFamily (1.6.2) <7 6 5 4 3 1> 27 0 0x2fb85000 0x11000 0x10000 com.apple.driver.DiskImages (289) <26 7 6 5 4 3 1> 28 0 0x2fb18000 0xb000 0xa000 com.apple.iokit.IOSurface (74.2) <7 5 4 3 1> 29 0 0x2fa65000 0x3000 0x2000 com.evosx86.driver.lspcidrv (1.0) <4 3> 30 0 0x2fc84000 0x8000 0x7000 com.apple.nke.applicationfirewall (2.1.11) <7 6 5 4 3 1> 31 2 0x2fac9000 0x3000 0x2000 com.apple.kext.AppleMatch (1.0.0d1) <4 1> 32 0 0x2fb96000 0x5000 0x4000 com.apple.security.quarantine (0) <31 7 6 5 4 2 1> 33 0 0x2fd39000 0x8000 0x7000 com.apple.security.sandbox (1) <31 7 6 5 4 2 1> 34 0 0x2fbe5000 0x3000 0x2000 com.apple.security.TMSafetyNet (6) <7 6 5 4 2 1> 35 1 0x2fd64000 0xb000 0xa000 com.apple.driver.IOPlatformPluginFamily (4.5.0d5) <6 5 4 3> 36 0 0x2fdc5000 0x10000 0xf000 com.apple.driver.ACPI_SMC_PlatformPlugin (4.5.0d5) <35 23 14 13 7 6 5 4 3> 41 0 0x2fbe2000 0x3000 0x2000 com.apple.driver.AppleProfileCallstackAction (20) <19 5 4 3 1> 42 0 0x2fcac000 0x3000 0x2000 com.apple.driver.AppleProfileKEventAction (10) <19 4 3 1> 43 0 0x2fd87000 0x3000 0x2000 com.apple.driver.AppleAPIC (1.4) <4 3> 44 0 0x2fd7a000 0x3000 0x2000 com.apple.driver.AppleIntelCPUPowerManagementClient (105.13.0) <7 6 5 4 3 1> 45 0 0x2fd7d000 0x3000 0x2000 com.apple.driver.AppleProfileRegisterStateAction (10) <19 4 3 1> 46 0 0x2fd8a000 0x3000 0x2000 com.apple.driver.AppleProfileThreadInfoAction (14) <19 6 4 3 1> 47 0 0x2fd9b000 0x3000 0x2000 com.apple.driver.AppleProfileTimestampAction (10) <19 5 4 3 1> 48 0 0x2fdf9000 0x4000 0x3000 com.apple.driver.AppleSMBIOS (1.6) <7 4 3> 49 0 0x2f6c3000 0x3000 0x2000 com.apple.driver.AppleProfileReadCounterAction (17) <19 6 4 3> 50 2 0x2f789000 0xd000 0xc000 com.apple.iokit.IONDRVSupport (2.2) <25 13 7 5 4 3> 51 0 0x2f720000 0x4000 0x3000 com.apple.driver.AppleBacklight (170.0.34) <50 25 13 5 4 3> 53 0 0x2f695000 0x2000 0x1000 com.apple.driver.AppleACPIPS2Nub (1.0.0d1) <14 11 7 6 4 3> 54 1 0x2f785000 0x4000 0x3000 com.apple.kext.OSvKernDSPLib (1.3) <5 4> 55 3 0x2fbe8000 0x18000 0x17000 com.apple.iokit.IOAudioFamily (1.8.0fc1) <54 5 4 3 1> 56 0 0x358c8000 0x1f000 0x1e000 org.voodoo.driver.VoodooHDA (0.2.54) <55 13 7 5 4 3> 59 4 0x35998000 0x3c000 0x3b000 com.apple.iokit.IOHIDFamily (1.6.5) <7 6 5 4 3 1> 60 0 0x2f6b8000 0x4000 0x3000 com.apple.driver.AppleACPIButtons (1.3.5) <59 15 14 7 6 5 4 3 1> 61 0 0x2f6b5000 0x3000 0x2000 com.apple.driver.AppleLPC (1.4.12) <13 5 4 3> 62 3 0x3593f000 0x16000 0x15000 com.apple.iokit.IONetworkingFamily (1.9) <7 6 5 4 3 1> 63 0 0x2f7b3000 0x6000 0x5000 com.psystar.RealtekR1000 (2.0.9) <62 13 7 5 4 3 1> 65 2 0x35acb000 0x6000 0x5000 com.apple.iokit.IOAHCIFamily (2.0.4) <5 4 3 1> 66 0 0x35b24000 0x14000 0x13000 com.apple.driver.AppleAHCIPort (2.1.5) <65 13 5 4 3 1> 67 1 0x2f715000 0x3000 0x2000 com.apple.iokit.IOSMBusFamily (1.1) <5 4 3> 68 0 0x35ad1000 0x6000 0x5000 com.apple.driver.AppleACPIEC (1.3.5) <67 15 14 5 4 3> 69 0 0x35b38000 0x11000 0x10000 com.apple.driver.AppleIntelIntegratedFramebuffer (6.2.6) <25 14 13 7 5 4 3 1> 70 0 0x35ba2000 0x36000 0x35000 com.apple.driver.AppleIntelGMA950 (6.2.6) <50 25 13 7 5 4 3 1> 71 0 0x35b73000 0x13000 0x12000 com.apple.iokit.IOAHCIBlockStorage (1.6.3) <65 26 5 4 3 1> 72 0 0x35b6a000 0x5000 0x4000 com.apple.driver.AppleACPIBatteryManager (1.0.15) <14 5 4 3 1> 73 0 0x35b86000 0x5000 0x4000 com.apple.driver.AudioAUUC (1.13) <55 25 14 13 7 5 4 3 1> 74 0 0x35b64000 0x3000 0x2000 com.apple.driver.AppleHPET (1.5) <14 7 5 4 3> 75 0 0x35b5b000 0x6000 0x5000 com.apple.driver.AppleRTC (1.3.1) <14 5 4 3 1> 76 0 0x35b6f000 0x4000 0x3000 org.netkas.fakesmc (2) <14 7 4 3> 78 2 0x35b8b000 0x5000 0x4000 com.apple.driver.ApplePS2Controller (1.1.0) <12 11 10> 79 0 0x359d9000 0x3000 0x2000 com.apple.driver.ApplePS2Keyboard (1.1.0) <78 59 12 11 10 7 6 5 4 3 1> 80 0 0x359ec000 0x6000 0x5000 com.apple.driver.ApplePS2Trackpad (1.1.0) <78 59 12 11 10 7 6 5 4 3 1> 81 1 0x359f2000 0x24000 0x23000 com.apple.iokit.IO80211Family (312) <62 7 5 4 3 1> 82 0 0x35f45000 0x176000 0x175000 com.apple.driver.AirPortBrcm43224 (426.36.1) <81 62 13 7 5 4 3 1> 84 8 0x35e6c000 0x34000 0x33000 com.apple.iokit.IOUSBFamily (4.1.7) <13 7 5 4 3 1> 85 0 0x35886000 0x10000 0xf000 com.apple.driver.AppleUSBUHCI (4.1.5) <84 13 7 5 4 3 1> 87 0 0x359dc000 0x6000 0x5000 com.apple.AppleFSCompression.AppleFSCompressionTypeZlib (1.0.0d1) <6 4 3 2 1> 88 0 0x35c59000 0x4000 0x3000 com.apple.driver.AudioIPCDriver (1.1.6) <55 5 4 3 1> 89 0 0x35c5d000 0x5000 0x4000 com.apple.BootCache (31) <7 6 5 4 3 1> 90 0 0x359e2000 0x2000 0x1000 com.apple.iokit.IOUSBUserClient (4.1.5) <84 7 5 4 3 1> 91 0 0x35dd2000 0x7000 0x6000 com.apple.driver.AppleMCCSControl (1.0.17) <25 13 7 5 4 3 1> 92 0 0x35d19000 0x5000 0x4000 com.apple.driver.AppleUpstreamUserClient (3.4.5) <25 14 13 7 5 4 3 1> 93 0 0x3623b000 0x16000 0x15000 com.apple.driver.AppleUSBEHCI (4.1.7) <84 13 7 5 4 3 1> 94 0 0x35f29000 0x12000 0x11000 com.apple.driver.AppleUSBHub (4.1.7) <84 5 4 3 1> 95 0 0x35dca000 0x3000 0x2000 com.apple.driver.XsanFilter (402.1) <26 5 4 3 1> 96 0 0x35ddf000 0x4000 0x3000 com.apple.driver.AppleUSBComposite (3.9.0) <84 4 3 1> 97 3 0x464f1000 0x1a000 0x19000 com.apple.iokit.IOSCSIArchitectureModelFamily (2.6.5) <5 4 3 1> 98 1 0x464c5000 0xb000 0xa000 com.apple.iokit.IOUSBMassStorageClass (2.6.5) <97 84 26 5 4 3 1> 99 1 0x464a8000 0x18000 0x17000 com.apple.iokit.IOSCSIBlockCommandsDevice (2.6.5) <97 26 5 4 3 1> 100 0 0x35f41000 0x4000 0x3000 com.apple.driver.AppleUSBCardReader (2.5.8) <99 98 97 84 26 5 4 3 1> 101 0 0x4652d000 0x6000 0x5000 com.apple.iokit.IOUSBHIDDriver (4.1.5) <84 59 5 4 3 1> 103 1 0x4668d000 0x9000 0x8000 com.apple.iokit.IOSerialFamily (10.0.3) <7 6 5 4 3 1> 104 0 0x466a2000 0x9000 0x8000 com.apple.iokit.IOBluetoothSerialManager (2.3.8f7) <103 7 5 4 3 1> 106 0 0x46e55000 0xa000 0x9000 com.apple.filesystems.autofs (2.1.0) <7 6 5 4 3 1> Just tried efi/essentials set at 1, but of course i got the EFI_64_BIT error Link to comment Share on other sites More sharing options...
DB1 Posted January 13, 2011 Share Posted January 13, 2011 p.s. Can you please attach your fake_efi.c from the Chameleon – the one that you use to compile and boot with – because I keep looking at it, and I really fail to see how the trunk version can possibly add EFI64 on your 32-bit only configuration. Thanks! Just having a break - here's the chameleon fake_efi.c from my latest compile. fake_efi.c.zip Link to comment Share on other sites More sharing options...
humph Posted January 14, 2011 Share Posted January 14, 2011 Have just managed to boot Lenovo S12 Atom N270 32 bit using 635 having spent several hours reading through and messing around. But things are not perfect yet: 1 - Locked onto the "wrong" partition (I have three, one at 10.6.6 and a SuperDuper Sandbox still at 10.6.5). So it's booting the sandbox 4th partition rather than the 2nd partition. 3rd is Ubuntu. Then again, not using UUID specifiers. So also get lots of refusing new kext warnings (10.6.5 version, as 10.6.6 ones loaded). 2 - Does not seem to be loading /Extra/Extensions.mkext at all, or perhaps just not in the same way as Chameleon. So no audio, no QE/CI, wrong resolution, no trackpad and possibly no speed-step via Meklorts CPUID kexts. Hard to check kextstat w/o trackpad working! But clearly it's loading some stuff (fakesmc, some PS2 stuff at least!). Stuff seems to (not) work in a similar way to what I'd get if doing an ignore caches boot on chameleon, where all /Extra/Extensionsxxx get loaded, but not "linked" together in same way as when the mkext gets loaded. EDIT: Looks like might be related to OSBundleRequired parameter. 3 - Has problem shutting down (USB Bluetooth kIOREturnAbort) Or perhaps all those issues are related to booting 10.6.5 stuff with 10.6 kernel. I guess I'll try rebuild the main Extensions.mkext or do a prelinked kernel now, to also include those from Extra, see if that gets everything working correctly, but will try that tomorrow. My SD-card config, just in case this is somehow messing things up: /boot /mach_kernel (Tea version for Atom) /Library/Preferences/SystemConfiguration with c.a.B.p (arch=i386 -v) /System/Library/Caches/com.apple.boot.caches/Startup with Extensions.mkext from the main /S/L/C... /Extra with Extensions.mkext and Extensions folder (and a DSDT.aml for use of old RC2 boot). /Extra/ACPI with a DSDT.aml To make it work: Various debug was turned on as below as well as a couple of critical flags (debug probably makes no difference, but listing just in case), but only other stuff I did was in private_data.h, and I suspect that does not make huge difference either! That was: - Entered the ACPI, DMI, BIOS parameter stuff with info from ACPI and BIOS dump, but seems this may not be needed as Revolution finds the tables (am using dynamic flag, and did not set the STATIC_ACPI_BASE_ADDRESS flag anway). - For fakesmc: Went with MBP6,1 "default"; Left SystemID as default 12345....as no idea where to find that info. - Entered manually SMBIOS table, and not the other stuff yet, but don't think thats used anyway as using dynamic. Flags I changed from default are: boot.c DEBUG 1 acpi_patcher.c ACPI_10_SUPPORT 1 LOAD_DSDT_TABLE_FROM_EXTRA_ACPI 1 LOAD_SSDT_TABLE_FROM _EXTRA_ACPI 0 DEBUG 1 efi.c DEBUG 1 platform.c DEBUG_PLATFORM 1 efi/essentials.h EFI_64_BIT 0 This is an amazing thread and extremely exciting. Really impressive stuff. Link to comment Share on other sites More sharing options...
scrax Posted January 14, 2011 Share Posted January 14, 2011 Good morning DHP. I really want to test your last code, but my hack is still down and I think that Revo has not yet support for original mac so now I need to chose go to sleep after 8h of work (finished 1 hour ago) or get it working asap... I know that sleep is important, but... I like testing revo and I like my hack when it works lol uhm reading the post tels me that maybe is better if I go sleep.. Link to comment Share on other sites More sharing options...
blackosx Posted January 14, 2011 Share Posted January 14, 2011 Good morning and good to hear of more progress. Have just managed to boot Lenovo S12 Atom N270 32 bit using 635 ../snip/.. Left SystemID as default 12345....as no idea where to find that info. Hi humph - well done with your success.. Feels good doesn't it? For SystemID, I'm currently using the value that Chameleon shows in it's log when booting (or quickly find it by running bdmesg after booting). It will be on the line: Customizing SystemID with : 00000000-0000-0000-0000-000000000000. I add this value in to private_data.h Also, I see you're using Tea's kernel to boot with. I wonder if DB1 i using it too? Now. Let me attach a new diff with some of the things I have been working on – in due course – that may break things again. One step forward, two backwards. Nah. Just kidding Hi DHP - I see again you've been busy. I'll have a look at this diff now and see what happens. Also. Please check the output of: sysctl -a machdep.cpu.feature sysctl -a machdep.cpu.extfeature From Chameleon I see the following with both commands: machdep: class is not implemented EDIT: Compiling with patch 636 gives the following error: efi/fake_efi.h: In function ‘setupEFITables’: efi/fake_efi.h:143: error: ‘MAX_CONFIGURATION_TABLE_ENTRIES’ undeclared (first use in this function) Link to comment Share on other sites More sharing options...
blackosx Posted January 14, 2011 Share Posted January 14, 2011 Sorry. That was a last minute change supposted to go in with the next update. Simply rename it to EFI_MAX_CONFIG_TABLES and it will compile fine. Yup. Compiles fine here. That's fixed it thanks. First boot failed with EFI_64_BIT setting (0) error detected!, then I found in /efi/essentials.h that #define EFI_64_BIT was set to 0. So I changed that to 1 et voila! - Now booted from the latest code However, sysctl -a machdep.cpu.feature and sysctl -a machdep.cpu.extfeature still show me: machdep: class is not implemented EDIT: I get the same feedback on my iMac 27" i7 too. I have #define DYNAMIC_CPU_DATA_GATHERING set to 1 EDIT: Just doing a quick comparison between sysctl -a results from my system booted with this version of Revolution and the latest Chameleon. The CPU sections are identical though interestingly I do see a difference (although not related to this particular issue): Revolution: kern.osrelease = 10.5.0 kern.version = Darwin Kernel Version 10.5.0: Fri Nov 5 23:20:39 PDT 2010; root:xnu-1504.9.17~1/RELEASE_I386 Chameleon: kern.osrelease = 10.6.0 kern.version = Darwin Kernel Version 10.6.0: Wed Nov 10 18:13:17 PST 2010; root:xnu-1504.9.26~3/RELEASE_I386 Link to comment Share on other sites More sharing options...
blackosx Posted January 14, 2011 Share Posted January 14, 2011 Lol.. yeah, silly me on both counts 1) Adding the missing 's' makes all the difference. 2) Yep - I forgot to update the kernel! I'm at work now so can't give feedback from my hack, but will report back tonight when I'm home. EDIT: From my iMac (for reference): $ sysctl -a machdep.cpu.features machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM SSE3 MON DSCPL VMX SMX EST TM2 SSSE3 CX16 TPR PDCM SSE4.1 SSE4.2 POPCNT $ sysctl -a machdep.cpu.extfeatures machdep.cpu.extfeatures: SYSCALL XD RDTSCP EM64T LAHF TSCI EDIT: Now back to my hack and I don't see any difference between Chameleon RC5 & Revolution 635: From my hack booted with Chameleon RC5: $ sysctl -a machdep.cpu.features machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM SSE3 MON DSCPL EST TM2 SSSE3 CX16 TPR PDCM SSE4.1 $ sysctl -a machdep.cpu.extfeatures machdep.cpu.extfeatures: SYSCALL XD EM64T LAHF From my hack booted with Revolution 635: $ sysctl -a machdep.cpu.features machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM SSE3 MON DSCPL EST TM2 SSSE3 CX16 TPR PDCM SSE4.1 $ sysctl -a machdep.cpu.extfeatures machdep.cpu.extfeatures: SYSCALL XD EM64T LAHF Link to comment Share on other sites More sharing options...
humph Posted January 14, 2011 Share Posted January 14, 2011 Well, I figured I'd better get me an avatar, then play some more.... So, did the printf stuff, and it all flew by too fast. But with boot debug on, managed to catch a whiz of kext names from my /E/E folder. So deleted the Extensions folder but keeping the mkext, and on reboot saw something like "need mkext" as part of the debug output. Surprise, surprise: did not see any of my "E/E" (mkext) kexts being loaded in verbose kernel log. And of course, never booted fully as no fakesmc. Thinking perhaps I've messed up Extensions.mkext generation, ownership etc but it works on all versions of Chameleon I've tried, including the test RC2 boot added to same SD booter card. I had thought, for a while, that the permission on mkext was bad. Had made the booter on the hd0,2 system, so when looking at it from the booted hd0,4 system the permissions are not correct even though had set to root:wheel + uncheck ignore ownership on volume when creating booter. But redid it from 0,4 and no difference - individual kexts load and not the mkext, as far as I can tell. Another interesting thing is that the shutdown problem is really a restart problem, and nothing related to USB/BT (that BT thing must have been related to 10.6 vs 10.5). So no messages on shutdown/restart other than usual halting CPU, but machine does not restart. It does do a shutdown OK. So, more like FADT not corrected correctly? I've cloned the sandbox to be same as the main partition, and use shared apps and user data, so only difference is booting via Chameleon RC5 or Revolution (also changed OSBundleRequired to Root on the kexts in SD's /E/E, to get everything working now same as if was loading the mkext). Here's some IORegs. S12_IORegs.zip EDIT: Not timed things yet, but does not seem to be faster than RC5, perhaps slower to boot. Will check more. Link to comment Share on other sites More sharing options...
humph Posted January 14, 2011 Share Posted January 14, 2011 Also. Please check the output of: sysctl machdep.cpu.features sysctl machdep.cpu.extfeatures with any boot loader you have and the latest Revolution update. This to see if one of the values has changed for you, but only when you use the attached diff (without changes). This for Atom N270: No Difference: RC5 machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM SSE3 MON DSCPL EST TM2 SSSE3 TPR PDCM REV machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM SSE3 MON DSCPL EST TM2 SSSE3 TPR PDCM RC5 machdep.cpu.extfeatures: XD LAHF REV machdep.cpu.extfeatures: XD LAHF EDIT: Ref speed. Oops. Totally forgot am loading Revo from slow SD card, vs SATA HD for RC5. Me dumb. Link to comment Share on other sites More sharing options...
scrax Posted January 14, 2011 Share Posted January 14, 2011 I have problems in appling the diff. can someone upload a working 636 I have this errors: tomaremac:Revolution-635 scriz$ patch -p1 </Users/scriz/Downloads/diff_635_636_1.txt patching file i386/libsaio/cpu/dynamic_data.h patching file i386/libsaio/device_tree.c patching file i386/libsaio/efi/efi.h patching file i386/libsaio/efi/essentials.h patching file i386/libsaio/efi/fake_efi.h patching file i386/libsaio/efi.c Reversed (or previously applied) patch detected! Assume -R? [n] y Hunk #1 succeeded at 29 with fuzz 2. Hunk #2 FAILED at 47. Hunk #3 FAILED at 55. Hunk #4 FAILED at 102. Hunk #5 FAILED at 136. Hunk #6 FAILED at 177. Hunk #7 FAILED at 249. 6 out of 7 hunks FAILED -- saving rejects to file i386/libsaio/efi.c.rej patching file i386/libsaio/platform.c patching file i386/libsaio/platform.h patching file revision patching file version Link to comment Share on other sites More sharing options...
blackosx Posted January 14, 2011 Share Posted January 14, 2011 I have problems in appling the diff.can someone upload a working 636 Hi Scrax - Here's my latest set of files - be sure to go through and check for any default switches that I may have changed. It's called 635_patched but you can call it 636. Revolution_635_patched.zip @DHP - Just updated the mach_kernel in my USB stick and double checked the sysctl commands on my hack (which now work) - I posted the results in my previous post. Link to comment Share on other sites More sharing options...
Time2Retire Posted January 14, 2011 Share Posted January 14, 2011 Hi Scrax - Here's my latest set of files - be sure to go through and check for any default switches that I may have changed. It's called 635_patched but you can it 636.Revolution_635_patched.zip @DHP - Just updated the mach_kernel in my USB stick and double checked the sysctl commands on my hack (which now work) - I posted the results in my previous post. I noticed. Thanks. Gentlemen. I will be gone tonight. Have a party (getting a field hockey award) and I am about to leave in 15 minutes (when the limo arrives in time). {censored}e. Make that right now. Bye. Link to comment Share on other sites More sharing options...
blackosx Posted January 14, 2011 Share Posted January 14, 2011 getting a field hockey award Congratulations - go girl Link to comment Share on other sites More sharing options...
DB1 Posted January 14, 2011 Share Posted January 14, 2011 @DB1: humph is using a patched kernel. Have you tried it already, to see if that boots? Yeeeeeeeeha. Or yes I'm up and running BUT had to go back to the patched Atom kernel. Many thanks to humph getting on board and identifying the problem. Seams like Meklort''s Atom kexts are not tricking the kernel (or not loading) with Revolution or is it maybe the Mkext thing perhaps? I would rather run native kernel, So the big question what does Chameleon do regarding cpu id / kernel panic avoidance that maybe Revolution does not? I loose lid sleep, webcam that I've noticed so far. Notably i dont use an smbios.plist to change model identifier and with Chameleon it is MacBook 4.1, with Revolution my model is MacBookPro 6.1 my speed stepping and hyperthreading ok, VoodooHDA not working (might try appleHDA now). Slow boot for me I'm afraid so far(seems very slow to find my apple wifi and it wont work if it aint on at startup) but it's a boot and thats a major move for me, I was starting to loose the will! I normally boot from EFI partition (a la Munkey style) with an mkext cashed between the kexts in my /EFI/Extra and S/L/E. An mkext built in same way on my SDCard works just as well but marginally slower with Chameleon. Using the same method with Revolution but with the mkext built in S/L/C/c.a.k.c/S on the SDCard with S/L/E of my install will not boot even with the patched kernel. mkext in Booter/E/E in the next build might be good for us, and it would be great to not have to use a patched kernel My ioreg with Revo RevoBoot.ioreg.zip Keep up the great work DHP, and congrats on the Hockey award. Thanks also to everyone else's support and input too. Gonna have a few glasses of red now and catch you all up tomorrow evening. Link to comment Share on other sites More sharing options...
humph Posted January 15, 2011 Share Posted January 15, 2011 Do you happen to have the original ACPI tables handy? Just grabbed this via Linux: FACP.aml.zip Don't have iasl on Linux which am also posting from, so not decoding - hope that's (and it's) OK. (Really missing OSX's two-finger scroll!!) Making me wonder about what it is that changes the table length into 0xf4 (244) because I can't find it in Chameleon, so you have to load a patched table. Do you? 0xF4 is the length of the original table (per dmesg from linux), booted via Chameleon & Grub, whereas I presume from your note (not really checked) that table in OSX-RC5 gets cropped. Weird. But does restart OK when booted via Chameleon (AsereBLN or RC5). This RC5 was Valv's, but think its OK with trunk or Kably's also). So never bothered with loading a separate table, as worked OK on Chameleon if restart fix applied, never even though to look into it! Congrats on the award! @DB1. Great that you have it working also! Agree, it'd sure be way nicer to be able to use a standard kernel. There's a Chameleon patch that Meklort (or someone) developed to handle that to do it on the fly, and now the functionality is also in his "modular" version of RC5. Am also using his CPU kexts CPUIDSymbols+CPUOverride in /E/E. Must be loading as getting speed step. AFAIK, you still need either a patched kernel or the Chameleon fix even using these kexts, but Meklort's now put the functionality of these kexts into RC5 modules also. P.S. Am OK on lid sleep here as using PNLF in DSDT rather than a kext. Link to comment Share on other sites More sharing options...
blackosx Posted January 15, 2011 Share Posted January 15, 2011 Yeeeeeeeeha. Or yes I'm up and running BUT had to go back to the patched Atom kernel. That's good news and sweet progress for you DB1 For you, humph and DHP, there's more about meklort's patching at Voodooprojects' forum. See this topic. Link to comment Share on other sites More sharing options...
DB1 Posted January 15, 2011 Share Posted January 15, 2011 @DB1. Great that you have it working also! Agree, it'd sure be way nicer to be able to use a standard kernel. There's a Chameleon patch that Meklort (or someone) developed to handle that to do it on the fly, and now the functionality is also in his "modular" version of RC5.Am also using his CPU kexts CPUIDSymbols+CPUOverride in /E/E. Must be loading as getting speed step. AFAIK, you still need either a patched kernel or the Chameleon fix even using these kexts, but Meklort's now put the functionality of these kexts into RC5 modules also. P.S. Am OK on lid sleep here as using PNLF in DSDT rather than a kext. Yeah have used the Chameleon kernel patch since RC5 r52 then flipped over to using the kexts when they hit the scene. I have also built the more recent Chameleon trunk (r635) with the patch and it works fine. And let me fix that MacBookPro4,1 versus MacBookPro6,1 issue (for 32-bit systems only) for the next update. DHP. MacBook 4.1 not MacBookPro was my model identifier before. And great your thinking future proofing. Looking forward to the next revision and will try the latest changes as soon as the netbook is free - the wife's messing around on facebook or something. Link to comment Share on other sites More sharing options...
DB1 Posted January 15, 2011 Share Posted January 15, 2011 Please use the attached files in addition/as replacement to the previous attachment.into: if (shouldLoadMKext) // We'll skip this in safe mode. { if (LoadDriverMKext("/System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext") == STATE_SUCCESS) { gKextLoadStatus |= 1; } if (LoadDriverMKext("/Extra/Extensions.mkext") == STATE_SUCCESS) { gKextLoadStatus |= 2; } } And that should do the trick for you Atom guys, but you may want to use this too: if (gKextLoadStatus != 3) { // Yes we do. Start by looking for kexts in: /Extra/Extensions/ if ((gKextLoadStatus & 2) == 0) { FileLoadDrivers("/Extra/Extensions", 0); } // Now progress to the system kexts. if ((gKextLoadStatus & 1) == 0) { FileLoadDrivers("/System/Library/Extensions", 0); } A few lines down. I can't test this myself (not having one) so one or both of you will have to step in here. Thanks! p.s. I'm not sure about the order: /E*/E/* before /S*/L*/E*/ first perhaps? Going off-line now (hockey training). Be back later... I get compile error after adding files and amending code above in boot2/drivers.c In file included from smbios_patcher.c:14: smbios/dynamic_data.h: In function ‘sm_get_memspeed’: smbios/dynamic_data.h:447: error: ‘PlatformInfo_t’ has no member named ‘RAM’ smbios/dynamic_data.h:449: error: ‘PlatformInfo_t’ has no member named ‘RAM’ make[2]: *** [smbios_patcher.o] Error 1 make[1]: *** [all] Error 2 Update setting smbios_patcher.c #define DYNAMIC_SMBIOS_DATA_GATHERING 0 allows compile (your probably set for static with the data in Private data file). Not sure if I can do static smbios as have not tried previous but will give it a go and report back Link to comment Share on other sites More sharing options...
humph Posted January 15, 2011 Share Posted January 15, 2011 Hi DHP, Still no restart here using 2b. But perhaps I've got smth wrong: - I still have the comment-out for //fadt=fadt_mod=NULL from post #444 in patcher.h. Didnt want to try w/o as seems - Also, not sure if need to add the stuff from post #448 about PMProfile. But can't see where to put it anyway!! The mkext load appears to be working, but need to recheck if still OK when no mkext etc. (I have all the changes including the !=3 one). I get compile error after adding files and amending code above in boot2/drivers.c Hi DB1, I worked around that by setting the if statement in dynamic_data.he to remove the "if 1 // CHAMELEON", so reads "if CHAMELEON" Just seem to mean will use the hard coded RAM values for now. Link to comment Share on other sites More sharing options...
DB1 Posted January 15, 2011 Share Posted January 15, 2011 Oops. Silly mistake. Changed one to many, or was I actually working on the new SMBIOS implementation. The one that I mentioned in post #134 Hmmm. Yup p.s. Please do as humph said. That should work (for now). Ok with 2a,2b and the workaround I can boot but not get to desktop. i.e. throbber stops and screen goes greyish blue just as in normally does before log in. Tried various: mkext in Extra kextcached, and mkext in startup cannot get beyond throbber. mkext in startup only get to grey screen, mkext in E/E only get to grey screen, mkext kextcached and in startup only gets to throbber. For all these tests dsdt was still in /E/ACPI and a.c.B.p in L/P/SC/. Link to comment Share on other sites More sharing options...
humph Posted January 15, 2011 Share Posted January 15, 2011 #1 Ah right, thought 2b superseded 2a files (didn't even look inside 2a!). Added, but still no restart. (Unless I'm out of sync on all the patches and updates!). #2 Does not seem to load any kexts from /Extra/Extensions in case no mkext. Only loads mkext, if present. Hm, lets reword that to make more sense. I mean loads mkext OK. Does never load any kexts from /E/E in the case where there's no mkext. Which I guess it should....try 1st for mkext, if none, then 2nd try for kexts. (Unless in the case of doing an ignore cache boot). #3 Also noted some other low-priority bugs, mention here in case you are running a list: 3.1 - Screen Resolution. Made changes to default in wherever it was..to 1280x800x32. Now the verbose text (Darwin stuff, not the booter debug) is "nice". But on non-verbose, the apple logo is off to right. With the default resolution, verbose was nasty, but apple logo in right place. Spinner OK in both cases. Strange, as code seems simple enough (X/2 etc). Then again, there's probably other stuff going on somewhere that's not obvious to a non-coder! 3.2 - (Atom) CPU Speed in sys prof. Shows as 800MHz. Real low priority as most RC5s still get it wrong also! Link to comment Share on other sites More sharing options...
Recommended Posts