Jump to content
buoo

RevoBoot

290 posts in this topic

Recommended Posts

I have tried Revoboot, but still no luck :(. I think SSDT_PR has been added properly, but only got 4 PState. If I use Chameleon and no dsdt or any other table, I can get 7 PState. both above situation can not get MAX turbo ratio. My Processor is 2600k, if I put Turbo Ratio to AUTO in bios, the Max PState is 37, I think it should be 38, right??

Jun 23 15:20:32 GeekmatoMac-Pro kernel[0]: MSRDumper PStatesReached: 16 26 30 34 35 36 37

Could anybody share a setting.h file for me?

 

Thanks very much!

Share this post


Link to post
Share on other sites
Advertisement

Have you tried to use a SSDT_PR taken from this thread?

 

Here we go man:

//--------------------------------------------------------------- ACPI.C -------------------------------------------------------------------


#define ACPI_10_SUPPORT                        0    // Set to 0 by Default. Set to 1 for ACPI 1.0 compliant BIOS versions.
                                               //
                                               // Note: Must go first (before acpi/essentials) since it is used there,
                                               //       and requires you to set PATCH_ACPI_TABLE_DATA to 1.


#define PATCH_ACPI_TABLE_DATA                1    // Set to 1 by default (enabling patching). Use 0 to keep the original 
                                               // unmodified ACPI tables, but please note (very well) that this is 
                                               // only supported by very few motherboards / BIOS'es. You may also 
                                               // need a kext like OSXRestart.kext to be able to restart your system, 
                                               // this due to a possibly broken FACP table in your BIOS!
                                               //
                                               // Note: Requires one of the following STATIC_* and/or LOAD_* settings:


#define USE_STATIC_ACPI_BASE_ADDRESS        0    // Set to 0 by default. Use 1 only after gathering the base address!
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#if USE_STATIC_ACPI_BASE_ADDRESS
   #define    STATIC_ACPI_BASE_ADDRESS        0x000f0420    // Set DEBUG_ACPI to 1 to get this address.
#endif


#define STATIC_APIC_TABLE_INJECTION            0    // Set to 0 by default. Use 1 when you want to inject a modified copy 
                                               // with say stripped out unused CPU's or other required modifications.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_APIC2_TABLE_INJECTION        0    // Set to 0 by default. Use 1 when you want to inject a second APIC 
                                               // (ACPI-1) table data for additional CPU core support.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_DSDT_TABLE_INJECTION            0    // Set to 0 by default. Use 1 when you want to inject static DSDT data.


#define STATIC_ECDS_TABLE_INJECTION            0    // Set to 0 by default. Use 1 when want to inject a custom ECDT table.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_FACS_TABLE_INJECTION            0    // Set to 0 by default. Use 1 when want to inject a custom FACS table.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_HPET_TABLE_INJECTION            0    // Set to 0 by default. Use 1 when you want to inject a static copy 
                                               // of a custom HPET table.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_SSDT_TABLE_INJECTION            0    // Set to 0 by default. Use 1 when you want to inject modifications
                                               // that can / should be done from this ACPI table.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_SSDT_GPU_TABLE_INJECTION        0    // Set to 0 by default. Use 1 when you want to inject modifications
                                               // for your graphics card (like I do for my ATI PCI-E card).
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_SSDT_PR_TABLE_INJECTION        1    // Set to 0 by default. Use 1 when you want to inject your Intel 
                                               // SpeedStep related modifications (like I do).
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_SSDT_SATA_TABLE_INJECTION    0    // Set to 0 by default. Use 1 when want to inject SATA related modifications.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define STATIC_SSDT_USB_TABLE_INJECTION        1    // Set to 0 by default. Use 1 when want to inject USB related modifications.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define LOAD_DSDT_TABLE_FROM_EXTRA_ACPI        1    // Set to 1 by default. Use 0 only when your configuration can do 
                                               // without patching the ACPI tables i.e. when you don't need to 
                                               // inject your modified DSDT table from /Extra/ACPI/
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define LOAD_SSDT_TABLE_FROM_EXTRA_ACPI        0    // Set to 0 by default. Use 1 when you know how to override / patch 
                                               // your SSDT table, by injection the modifications from /Extra/ACPI/
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define LOAD_EXTRA_ACPI_TABLES                (LOAD_DSDT_TABLE_FROM_EXTRA_ACPI || LOAD_SSDT_TABLE_FROM_EXTRA_ACPI)


#define DROP_SSDT_TABLES                    1    // Set to 0 by default. Use 1 with caution (might disable SpeedStep).
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define AUTOMATIC_SSDT_PR_CREATION            0    // Set to 0 by default. Change to 1 when you want RevoBoot to generate and inject SSDT_PR for you.
                                               //
                                               // Note: Optional feature for 'Sandy Bridge' based configurations.


#define AUTOMATIC_PROCESSOR_BLOCK_CREATION    0    // Set to 0 by default. Change to 1 when you want to inject processor blocks into SSDT_PR.
                                               //
                                               // Note: You can have Processor() {} blocks in your DSDT / SSDT so there is really 
                                               //         no reliable way of knowing when to inject them automatically.


#define REPLACE_EXISTING_SSDT_TABLES        0    // Set to 0 by default. Use 1 with caution (might disable SpeedStep).
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define    APPLE_STYLE_ACPI                    0    // Set to 0 by default. Use 1 to change the OEMID's to Mac likes.
                                               //
                                               // Note: Don't forget to set PATCH_ACPI_TABLE_DATA to 1.


#define DEBUG_ACPI                            0    // Set to 0 by default. Use 1 when things don't seem to work for you.


//--------------------------------------------------------------- BOOT.C -------------------------------------------------------------------


#define PRE_LINKED_KERNEL_SUPPORT            1    // Set to 1 by default. Change this to 0 to disable the use of pre-linked kernels.

#define HIBERNATE_SUPPORT                    0    // Set to 1 by default. Change this to 0 if you don't want hibernation support.

#define MUST_ENABLE_A20                        0    // Set to 0 by default. Change this to 1 when your hardware requires it.

#define SAFE_MALLOC                            0    // Set to 0 by default. Change this to 1 when booting halts with a memory allocation error.

#define DEBUG_BOOT                            0    // Set to 0 by default. Change this to 1 when things don't seem to work for you.


//---------------------------------------------------------------- CPU.C -------------------------------------------------------------------


#define USE_STATIC_CPU_DATA                    0    // Set to 0 by default (dynamic data collection). Change this to 1 to use static data.

#define CPU_VENDOR_ID                        CPU_VENDOR_INTEL // CPU_VENDOR_AMD is not supported.

#define OC_BUSRATIO_CORRECTION                0    // Set to 0 by default. Change this to busratio-100 (OC'ed systems with a changed busratio).

#define NUMBER_OF_TURBO_STATES                4    // Set to 4 by default.

#define BOOT_TURBO_RATIO                    0x2c00    // Set to 0 by default. Change this to the desired (and supported) turbo multiplier.
                                               //
                                               // Example:  0x2800 for 4.0 GHz on a i7-2600.

#define DEBUG_CPU                            0    // Set to 0 by default. Change this to 1 when things don't seem to work for you.
                                               // Note: CPU info data will not be displayed when USE_STATIC_CPU_DATA is set to 1

#if DEBUG_CPU
   #define DEBUG_CPU_TURBO_RATIOS            0    // Set to 0 by default. Change this to 1 when you want to check the core ratio.

   #define DEBUG_CST_SUPPORT                0    // Set to 0 by default. Change this to 1 to check the in BIOS enabled C-States.

   #define DEBUG_TSS_SUPPORT                0    // Set to 0 by default. Change this to 1 to check the T-State Clock Modulation.

   #define DEBUG_CPU_TDP                    0    // Set to 0 by default. Change this to 1 when you want to check the TDP.
#endif

//---------------------------------------------------------- CPU/STATIC_DATA.C -------------------------------------------------------------


#define STATIC_CPU_Type                        0x603            // kSMBTypeOemProcessorType - used in: libsaio/SMBIOS/dynamic_data.h

#define STATIC_CPU_NumCores                    4                // Used in: i386/libsaio/ACPI/ssdt_pr_generator.h
                                                           //
                                                           // Note: Also used in cpu.c and platform.c for both static / dynamic CPU data.

#define STATIC_CPU_NumThreads                4                // Used in: i386/libsaio/ACPI/ssdt_pr_generator.h

#define STATIC_CPU_FSBFrequency                100000000ULL    // 9 digits + ULL - used in: i386/libsaio/efi.c

#define STATIC_CPU_QPISpeed                    0                // kSMBTypeOemProcessorBusSpeed (0 for Sandy Bridge / Jaketown).


//--------------------------------------------------------------- DISK.C -------------------------------------------------------------------


#define EFI_SYSTEM_PARTITION_SUPPORT        0    // Set to 0 by default. Set this to 1 when your system boots from the hidden EFI partition.

#define LEGACY_BIOS_READ_SUPPORT            0    // Set to 0 by default. Change this to 1 for crappy old BIOSes.

#define DEBUG_DISK                            0    // Set to 0 by default. Change it to 1 when things don't seem to work for you.


//------------------------------------------------------------- DRIVERS.C -------------------------------------------------------------------


#define DEBUG_DRIVERS                        0    // Set to 0 by default. Change it to 1 when things don't seem to work for you.


//---------------------------------------------------------------- EFI.C -------------------------------------------------------------------


#define APPLE_STYLE_EFI                        1    // Set to 1 by default. Change this to 1 to add additional 'Mac-like' properties.

#define INJECT_EFI_DEVICE_PROPERTIES        1    // Set to 0 by default. Change this to 1 when you need to inject 'device-properties'.

#define EFI_64_BIT                            1    // Set to 1 by default for EFI64 on 64-bit platforms. Supporting both 
                                               // 32 and 64-bit boot modes (using arch=i386/x86_64 under Kernel Flags).
                                               // 
                                               // Change this to 0 for 32-bit only platforms (think Intel Atom CPU) 
                                               // or when you want to boot with EFI32 (for testing) on a 64-bit 
                                               // platform, but then you must make a small change in platform.c (see comment in file).
                                               //
                                               // Note: Do not change this setting, unless you know what you are doing.

#define STATIC_MODEL_NAME                    { 'i', 'M', 'a', 'c', '1', '2', ',', '2' }

#define STATIC_SMSERIALNUMBER                
[spoiler]"CK1029559W87"[/spoiler]


#define STATIC_SYSTEM_SERIAL_NUMBER            
[spoiler]{ 'C', 'K', '1', '0', '2', '9', '5', '5', '9', 'W', '8', '7' }[/spoiler]


#define STATIC_SYSTEM_ID                    { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F }

#define DEBUG_EFI                            0    // Set to 0 by default. Change this to 1 when things don't seem to work for you.

#define EFI_DEBUG_MODE                        0    // Set to 0 by default (for OS X 10.7 LION only).


//------------------------------------------------------------- GRAPICS.C ------------------------------------------------------------------


#define STATIC_SCREEN_WIDTH                    1280

#define STATIC_SCREEN_HEIGHT                1024


//-------------------------------------------------------------- SMBIOS.C ------------------------------------------------------------------


#define USE_STATIC_SMBIOS_DATA                0    // Set to 0 by default (dynamic data collection). Change this to 1 to use static data.


#define OVERRIDE_DYNAMIC_MEMORY_DETECTION    1    // Set to 0 by default. Change this to 0 only when your SMBIOS data (type 17) is fine!
                                               // Note: Defaults to n MB 1066 DDR3 when set to 0 (preventing errors in Profile Manager).


#define OVERRIDE_DYNAMIC_PRODUCT_DETECTION    1    // Set to 0 by default. Change this to 1 when you want to use a predefined product type.
                                               // Note: Defaults to STATIC_MAC_PRODUCT_NAME when set to 0.

#if OVERRIDE_DYNAMIC_PRODUCT_DETECTION
   #define STATIC_SMBIOS_MODEL_ID            IMAC    // Supported models: IMAC, MACBOOK, MACBOOKPRO, MACMINI or MACPRO
#endif

#define DEBUG_SMBIOS                        0    // Set to 0 by default. Change this to 1 when things don't seem to work for you.


//-------------------------------------------------------------- PLATFORM.C ----------------------------------------------------------------


#define STATIC_MAC_PRODUCT_NAME                "iMac12,2"    // New default for Sandy Bridge configurations.

#if USE_STATIC_SMBIOS_DATA
// Do nothing.
#elif OVERRIDE_DYNAMIC_MEMORY_DETECTION
// Setup RAM module info. Please note that you may have to expand this when you have more RAM modules.
   #define STATIC_RAM_SLOTS                4    // Number of RAM slots on mainboard.

   #define STATIC_RAM_VENDORS                { "G.Skill", "N/A", "G.Skill", "N/A", 0 }    // Use "N/A" for empty RAM banks.

   #define DYNAMIC_RAM_OVERRIDE_TYPE        0    // Set to 0 by default. See libsaio/platform.h for supported values.

   #define DYNAMIC_RAM_OVERRIDE_SIZE        0    // Set to 0 by default. Change this to 1 when you want to use override values (see below).

#if DYNAMIC_RAM_OVERRIDE_SIZE
   #define DYNAMIC_RAM_OVERRIDE_SIZES        { SMB_MEM_SIZE_2GB, SMB_MEM_BANK_EMPTY, SMB_MEM_SIZE_2GB, SMB_MEM_BANK_EMPTY, 0 } // See libsaio/platform.h for other values.
#endif

   #define DYNAMIC_RAM_OVERRIDE_FREQUENCY    0    // Set to 0 by default. Change this to the frequency that you want to use as override value.

   #define STATIC_RAM_PART_NUMBERS            { "F3-12800CL7-2GBXM", "N/A", "F3-12800CL7-2GBXM", "N/A", 0 }    // Use "N/A" for empty RAM banks.

   #define STATIC_RAM_SERIAL_NUMBERS        { "N/A", "N/A", "N/A", "N/A", 0 }    // Use "N/A" for empty RAM banks.
#endif

#define INCLUDE_MPS_TABLE                    0    // Set to 0 by default. Change this to 1 when you want to include the MP table.

#define DEBUG_PLATFORM                        0    // Set to 0 by default. Change this to 1 when things don't seem to work for you.


//================================================================= END ====================================================================

Share this post


Link to post
Share on other sites
Could anybody share a setting.h file for me?

You should familiarise yourself with the options in the long run to make a custom one for your system and preference.

 

For example mrmojo is using static usb injection, so you would need to use that as well or you get possible errors on boot.

 

You could also use the new automatic SSDT_PR generation, which I'm using. That gives you the freedom to choose different settings in UEFI without the need to edit and compile SSDT_PR every time.

 

---------------------------------

 

@mrmojo: have you tried the new RevoBoot with this https://github.com/RevoGirl/RevoBoot/wiki/E...e-advanced-SSDT ?

 

The idea is to use the factory DSDT and rename / add required devices by using one single SSDT.

 

You want the following settings with the new version:

AUTOMATIC_SSDT_PR_CREATION	= 7 (this will also add SBUS and processor definitions)
OVERRIDE_ACPI_METHODS = 1

 

You can remove the DSDT, SSDT_PR and static SSDT_USB and just use the new SSDT in /Exra/ACPI/SSDT.aml

 

This feature is currently in testing, before people ask.

Share this post


Link to post
Share on other sites

Added a new mini-guide "How to convert the GraphicsEnabler to Little Endian" in the second post.

Share this post


Link to post
Share on other sites

Trying to get this working.

Compiles fine but wont boot up.

 

How do you enable verbose mode (not the debug options).

 

Can i use a video card bios (Extracted with gpu-z in windows, saved as .bin file), converted to correct format with flAked's command.

Output comes out a lot bigger than device-properties way.

new.txt

Share this post


Link to post
Share on other sites
How do you enable verbose mode (not the debug options).

Press 'v' at boot time or edit the original com.apple.Boot.plist in /Library/Preferences/SystemConfiguration/

 

Can i use a video card bios (Extracted with gpu-z in windows, saved as .bin file), converted to correct format with flAked's command.

Output comes out a lot bigger than device-properties way.

I think you are mixing something up here, this is meant for EFI device injection only.

 

VBIOS loading is a Chameleon feature, if I'm not mistaken.

Share this post


Link to post
Share on other sites

OK got it to boot.

Cant get it to find the pre-linked-kernel though.

 

Also using blackosx revobuilder can only compile using static cpu info, guess thats because the settings.h file is newer than revobuilder.

Share this post


Link to post
Share on other sites

mrmojo might help with the pre-linked kernel, I didn't use one yet. Support must be compiled in, you'll find it in settings.h.

 

RevoBuilder is not up-to-date to the latest changes, better configure it manually.

Share this post


Link to post
Share on other sites

Any way to change/see what partition it is defaulting to? The UUIDs listed in debug mode do not match those any of my disks. I don't know if these UUIDs are static or if chameleon sets these.

 

Also, I get debug output up until:

execkernel-5
execkernel-5
execkernel-7 / gVerboseMode is false
Sleeping for 6 seconds...

which are referenced in the final lines of boot.c. From trying to read the source (my programing experience is limited) I assume this means the bootloader found the kernel and is in the process of initializing it. The output earlier already said it was unable to find a prelinked kernel, even though I specified this option during compilation (for 10.7).

After this point the system reboots instantly.

 

Also, I saw some references to kext loading in the source- does this bootloader pull from the usual Extra/Extensions of chameleon? I know in order to use the prelinked kernel kexts like FakeSMC need to be in S/L/E for this to work, but haven't gotten around to doing this yet.

Share this post


Link to post
Share on other sites

The UUID is unique for every disk, until you reformat/repartition it.

 

You can set the UUID in com.apple.Boot.plist in /L/P/S (see above).

 

For Lion you need to

make clean; make lion

Share this post


Link to post
Share on other sites

I've updated RevoBuilder to generate a settings.h file compatible with RevoBoot 1.0.21. Link

 

I'm sure there's a lot more than can be done in time to improve RevoBuilder but for now it should give users a helping hand with the initial setup. It's also worth mentioning that the RevoBoot wiki pages have been updated over the last week or so and go some way to give more about using the bootloader (example).

Share this post


Link to post
Share on other sites
I've updated RevoBuilder to generate a settings.h file compatible with RevoBoot 1.0.21. Link

 

I'm sure there's a lot more than can be done in time to improve RevoBuilder but for now it should give users a helping hand with the initial setup. It's also worth mentioning that the RevoBoot wiki pages have been updated over the last week or so and go some way to give more about using the bootloader (example).

 

 

Great!!

 

Thanks blackosx :)

Share this post


Link to post
Share on other sites
Cant get it to find the pre-linked-kernel though.

Dou you have correctly created it?

sudo touch /System/Library/Extensions

kextcache -system-caches

kextcache -system-prelinked-kernel

Naturally you have to put all the kexts in S/L/E.

Share this post


Link to post
Share on other sites

Upon compiling RevoBoot I get the below error

 

================= make all for boot2 =================
/bin/mkdir -p /Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2
cc  -Wa,-n -c -I. -I.. -I/Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/sym/i386 -I../libsa -I../libsaio -I../util -arch i386 -o /Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2/boot2.o boot2.s
cc   -Os -Oz  -arch i386 -g -Wmost -Werror -fno-builtin -DSAIO_INTERNAL_USER -static  -DMAKE_TARGET_OS=`echo 2;` -mpreferred-stack-boundary=2 -fno-align-functions -fno-stack-protector -march=pentium4 -msse2 -mfpmath=sse -msoft-float  -c -I. -I.. -I/Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/sym/i386 -I../libsa -I../libsaio -I../util boot.c -o /Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2/boot.o \
           -MD -dependency-file /Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2/boot.d
md -u /Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2/Makedep -f -d /Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2/boot.d
cc   -Os -Oz  -arch i386 -g -Wmost -Werror -fno-builtin -DSAIO_INTERNAL_USER -static  -DMAKE_TARGET_OS=`echo 2;` -mpreferred-stack-boundary=2 -fno-align-functions -fno-stack-protector -march=pentium4 -msse2 -mfpmath=sse -msoft-float  -c -I. -I.. -I/Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/sym/i386 -I../libsa -I../libsaio -I../util bootlogo.c -o /Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2/bootlogo.o \
           -MD -dependency-file /Users/nforcemac/tmp/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2/bootlogo.d
bootlogo.c: In function ‘showBootLogo’:
bootlogo.c:186: error: expected ‘)’ before numeric constant
bootlogo.c:186: error: expected ‘)’ before numeric constant
make[2]: *** [bootlogo.o] Error 1
make[1]: *** [all] Error 2
make: *** [all] Error 2

 

Using the most recent version of Revobuilder. Anyone have any suggestions?

 

Thanks

Share this post


Link to post
Share on other sites

I've just tested downloading and compiling RevoBoot 1.0.21 and didn't receive the error you've reported. Can you re-download the source and try again?

Share this post


Link to post
Share on other sites
I've just tested downloading and compiling RevoBoot 1.0.21 and didn't receive the error you've reported. Can you re-download the source and try again?

Im having the same error, redownload everything.

 

Im trying to compile in Lion DP4, maybe this is the problem.

 

RevoBuilder last version

RevoBoot last version

XCode 4.2 - SDK 5 - beta for Lion.

 

Code/RevoBoot-1.0.21/obj/i386/boot2/bootlogo.d
bootlogo.c: In function ‘showBootLogo’:
bootlogo.c:186: error: expected ‘)’ before numeric constant
bootlogo.c:186: error: expected ‘)’ before numeric constant
make[2]: *** [bootlogo.o] Error 1
make[1]: *** [all] Error 2
make: *** [all] Error 2

Compilation of RevoBoot for LION Failed.

Share this post


Link to post
Share on other sites
I've just tested downloading and compiling RevoBoot 1.0.21 and didn't receive the error you've reported. Can you re-download the source and try again?

 

For sure, will give it ago when I get back from work.

Share this post


Link to post
Share on other sites

EDIT: solved, i was making a small mistake on PinConfiguration injection. But Revoboot generates non-working PinConfiguration, i solved it by using the one from Chameleon.

 

I'm using Revoboot 1.0.21. I finally found a way to patch AppleHDA, so i added this code to my dsdt:

 

 Method (_DSM, 4, NotSerialized)
                 {
                     Store (Package (0x0C)
                         {
                             "codec-id", 
                             Buffer (0x04)
                             {
                                 0x72, 0x02, 0xEC, 0x10
                             }, 
                             "built-in", 
                             Buffer (One)
                             {
                                 0x00
                             }, 
                             "layout-id", 
                             Buffer (0x04)
                             {
                                 0x0C, 0x00, 0x00, 0x00
                             }, 
                             "model", 
                             Buffer (0x0F)
                             {
                                 "Realtek ALC272"
                             }, 
                             "device_type", 
                             Buffer (0x07)
                             {
                                 "alc272"
                             }, 
                             "PinConfigurations", 
                             Buffer (One)
                             {
                                 0x00
                             }
                         }, Local0)
                     DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                     Return (Local0)
                 }

I booted using my usb stick with chameleon and it worked fine. Then i used Revobuilder to compile boot file, restarted, but sound didn't work. When i looked into IOReg i saw PinConfigurations is different with Chameleon and Revoboot. Then i tried adding efi strings but that didn't work with Revoboot. I even tried adding Chameleon's PinConfigurations to my dsdt or efi but that didn't work too.

 

 

Screen%20shot%202011-07-01%20at%2007.38.43.png

Left side Revoboot, other one Chameleon.

 

What can be causing this? Thanks for helping.

Share this post


Link to post
Share on other sites

RevoBoot doesn't generate any EFI injections!

 

RevoBuilder uses the current injections and stores that into data.h that get's compiled into RevoBoot.

 

Booting with Chameleon and then running RevoBuilder is the correct method to get some auto-generated device-properties. I'm not sure why they differ once you boot wit RB.

Share this post


Link to post
Share on other sites
RevoBoot doesn't generate any EFI injections!

 

I know that, i just mean when i use "PinConfigurations" "0x00" in dsdt with both bootloaders, they give me different "outputs" like in the pictures. But it is not an important thing i think, at least for now.

Share this post


Link to post
Share on other sites
But Revoboot generates non-working PinConfiguration, i solved it by using the one from Chameleon.

Are you using static data for your DSDT? if so, can you try loading your DSDT.aml file at boot time?

 

You'll need to make the following changes to settings.h:

#define STATIC_DSDT_TABLE_INJECTION to 0

#define LOAD_DSDT_TABLE_FROM_EXTRA_ACPI to 1

and then add the same DSDT.aml you use for Chameleon in to /Extra/ACPI/ in your RevoBoot drive.

Share this post


Link to post
Share on other sites
Are you using static data for your DSDT? if so can you try it loading your DSDT.aml file at boot time?

You'll need to make the following changes to settings.h:

#define STATIC_DSDT_TABLE_INJECTION to 0

#define LOAD_DSDT_TABLE_FROM_EXTRA_ACPI to 0

and then add the same DSDT.aml you use for Chameleon in to /Extra/ACPI/ in your RevoBoot drive.

Thanks for help blackosx. Yes i use static dsdt. But i tried that too, same thing happens. DHP explained in there what is PinConfiguration but i don't understand what causes the difference between bootloaders.

Share this post


Link to post
Share on other sites
For sure, will give it ago when I get back from work.

 

Pulled code down in a sperate directory. Copied my relevant data.h (EFI, SMBOIS and CPU) into the correct locations. Made the relevant changes to settings. Compiled and boom not a problems...

 

Which is really strange as the when I diff the two directorys they are identical :(

 

Any how, Now booting to the desktop in about 3 seconds!

Share this post


Link to post
Share on other sites
Pulled code down in a sperate directory. Copied my relevant data.h (EFI, SMBOIS and CPU) into the correct locations. Made the relevant changes to settings. Compiled and boom not a problems...

 

Which is really strange as the when I diff the two directorys they are identical :blink:

 

Any how, Now booting to the desktop in about 3 seconds!

Thanks for the info Nforce, I will try that too, will update here if works.

 

Nforce could you explain how you did?

 

Is not working for me, I downloaded the source code from RevoBuilder, and RevoBulider put inside:

 

/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21

 

When I choose Compile I had this error:

 -MD -dependency-file /Volumes/Documentos/RevoBuilder/RevoBoot_SourceCode/RevoBoot-1.0.21/obj/i386/boot2/bootlogo.d
bootlogo.c: In function ‘showBootLogo’:
bootlogo.c:186: error: expected ‘)’ before numeric constant
bootlogo.c:186: error: expected ‘)’ before numeric constant
make[2]: *** [bootlogo.o] Error 1
make[1]: *** [all] Error 2
make: *** [all] Error 2

Compilation of RevoBoot for LION Failed.

EDIT 2 SOLUTION:

 

OK, I discover what is happen!

 

RevoBuilder put this in Settings.h:

 

#define STATIC_SCREEN_WIDTH 2560 1920

#define STATIC_SCREEN_HEIGHT 1600 1200

I think it's because I had 2 monitors connected to the same video card, I just needed to edit:

 

#define STATIC_SCREEN_WIDTH 2560

#define STATIC_SCREEN_HEIGHT 1600

And the error gone. :)

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.

×