Jump to content

Clover General discussion


ErmaC
30,171 posts in this topic

Recommended Posts

17 hours ago, Sherlocks said:

what is your boot type? UEFI or legacy?
do you have max brightness when booting without nvram script?

 

1) I use UEFI
2) yes backlight level is preserved after reboot.

if set to level 1 (almost dark) it reboots to level 1. Note: level 0 is black.

reboot if set to level 16 (max brightness), it stays at max after reboot.
Note: i use whatevergreen.kext for HD3000 on Catalina for this box.

from the log:
10:924  0:000  AddNvramVariable (backlight-level, guid, 0x7, 2): -> already exists, abort

 

Link to comment
Share on other sites

ConfigValidator its a command Line script for verifying config.plist

 

Tools to check the config.plist, always using the latest release of CloverConfigPlistValidator from Jief_Machak.

This is a simple script, no fancy app

Command:

cd ConfigValidator

make

 

How to use it ☞  see video

 

 

Edited by chris1111
  • Like 2
  • Thanks 1
Link to comment
Share on other sites

 
1) I use UEFI
2) yes backlight level is preserved after reboot.
if set to level 1 (almost dark) it reboots to level 1. Note: level 0 is black.
reboot if set to level 16 (max brightness), it stays at max after reboot.
Note: i use whatevergreen.kext for HD3000 on Catalina for this box.

from the log:
10:924  0:000  AddNvramVariable (backlight-level, guid, 0x7, 2): -> already exists, abort
 
therefore does your t420 laptop have native nvram support?
my hp 4230 sandybridge laptop support UEFI. but i can't save brightness level after reboot.
i have been used Aptiofix+nvramscript for long time with old clover.

if i want to write nvram, ForceOcWriteFlash that you requested is useful?

Sent from my SM-N960N using Tapatalk


Link to comment
Share on other sites

On 11/17/2021 at 1:12 PM, Sherlocks said:

therefore does your t420 laptop have native nvram support?
my hp 4230 sandybridge laptop support UEFI. but i can't save brightness level after reboot.
i have been used Aptiofix+nvramscript for long time with old clover.

if i want to write nvram, ForceOcWriteFlash that you requested is useful?

yes the T420 has native nvram.  (i dont need this driver EmuVariableUefi)
Note: I moved from Aptiofix to OpenRuntime.efi

ForceOcWriteFlash=True (+ WriteFlash=True) was added since an extra attribute was needed to boot on some BIOS
T420 needs OPEN_CORE_NVRAM_NV_ATTR

#define OPEN_CORE_NVRAM_NV_ATTR    (EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE)
#define OPEN_CORE_NVRAM_ATTR       (EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS)

clover (or OC) is able to write to the nvram - see examples below
 

tluck@Toms-Mac ~
$ nvram -p|sort
Clover.BackupDirOnDestVol	No
Clover.KeepBackupLimit	2
Clover.LogEveryBoot	10
Clover.LogLineCount	2000
Clover.SoundDevice	%02%01%0c%00%d0A%03%0a%00%00%00%00%01%01%06%00%00%1b%03%0a%18%00%eb?%00%a9%06%d8%dbA%a4%91T%05%fe%efF%c3%00%00%00%00%7f%ff%04%00
Clover.SoundIndex	%01
Clover.SoundVolume	F
Clover.Theme	ThinkPad
IONVRAM-SYNCNOW-PROPERTY	IONVRAM-SYNCNOW-PROPERTY
LocationServicesEnabled	%01
SystemAudioVolume	@
SystemAudioVolumeDB	%f6
backlight-level	%0b%07

 

Link to comment
Share on other sites

Hello @MifJpnAlphaPlus,

Clover can set a NVRAM variable and then finished giving control to boot.efi. At this moment Clover existed and can't do anything else.

Boot.efi reads the variable and uses it to start macOS.

So Clover has not a time to erase this variable. It is out of control.

Not sure about OpenCore but I imagine the process is exactly the same.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Clover writes something into NVRAM once per computer start.

MacOS writes something into NVRAM once when shutdown.

If you will use sleep-wake mode 0 cycle then you may increase flash memory life.

Clover is the best bootloader ever existing which provides sleep-wake capabilities.

  • Like 5
Link to comment
Share on other sites

I noticed such a bug. If I select another config file in the Clover menu, a debug message appears and the interface freezes for 4 seconds. Then everything returns to normal.  The clover validator does not find any errors in the config file.

screenshot0.png

screenshot1.png

Link to comment
Share on other sites

On 11/19/2021 at 11:38 AM, Slice said:

Clover is the best bootloader ever existing which provides sleep-wake capabilities.

To me Clover is also the best for booting Windows natively even in Legacy and UEFI

  • Like 3
Link to comment
Share on other sites

12 minutes ago, chris1111 said:

To me Clover is also the best for booting Windows natively even in Legacy and UEFI

 

Because Clover doesn't inject ACPI and binary renames system wide into any OS. Definitely a plus when using 2 Systems on one physical disk

 

@AndyYa I think this error appears if BIOS Version and Release Date set in the SMBIOS are identical to what is the default which clover uses. Try to delete these fields from the config and the errors should disappear.

Link to comment
Share on other sites

1 hour ago, 5T33Z0 said:

@AndyYa I think this error appears if BIOS Version and Release Date set in the SMBIOS are identical to what is the default which clover uses. Try to delete these fields from the config and the errors should disappear.

These fields are missing in my config files

screenshot3.png

Link to comment
Share on other sites

2 hours ago, 5T33Z0 said:

....

@AndyYa I think this error appears if BIOS Version and Release Date set in the SMBIOS are identical to what is the default which clover uses. Try to delete these fields from the config and the errors should disappear.

 

Hi.

 

No this Warning isn't related to Bios Version and Release Date from SMBIOS

Bios Version and Release Date (and Efi Version) Warnings were fixed with commits 07b993b and e036b3d in r5141.

 

 "Warning : 'Tag 4' was already defined. Previous value ignored."  results from ACPI DSDT Fixes check in  rEFIt_UEFI/Settings/ConfigPlist/Config_ACPI_DSDT.cpp lines 31 or 46

        rEFIt_UEFI/Settings/ConfigPlist/Config_ACPI_DSDT.cpp:31:          xmlLiteParser->addWarning(true, S8Printf("Tag '%s:%d' was already defined. Previous value ignored.", xmlPath.c_str(), keyPos.getLine()));
        
rEFIt_UEFI/Settings/ConfigPlist/Config_ACPI_DSDT.cpp:46:          xmlLiteParser->addWarning(true, S8Printf("Tag '%s:%d' was already defined. Previous value ignored.", xmlPath.c_str(), keyPos.getLine()));
 

This Warning is displayed ONLY when you try to change, select another config file than the default one "config.plist".

 

Regards

Spoiler

Settings/ConfigPlist/Config_ACPI_DSDT.cpp:31:          xmlLiteParser->addWarning(true, S8Printf("Tag '%s:%d' was already defined. Previous value ignored.", xmlPath.c_str(), keyPos.getLine()));
Settings/ConfigPlist/Config_ACPI_DSDT.cpp:46:          xmlLiteParser->addWarning(true, S8Printf("Tag '%s:%d' was already defined. Previous value ignored.", xmlPath.c_str(), keyPos.getLine()));

...
begin :  line 15 
XmlAbstractType& ConfigPlistClass::ACPI_Class::DSDT_Class::ACPI_DSDT_Fixes_Class::parseValueFromXmlLite(XmlLiteParser* xmlLiteParser, const XString8& xmlPath, XBool generateErrors, const XmlParserPosition &keyPos, const char *keyValue, size_t keyValueLength, XBool* keyFound)
{
#ifdef JIEF_DEBUG
  if ( strncmp(keyValue, "FixHeaders", strlen("FixHeaders")) == 0 ) {
    NOP;
  }
#endif
    for ( size_t idx = 0 ; idx < sizeof(ACPI_DSDT_Fixe_Array)/sizeof(ACPI_DSDT_Fixe_Array[0]) ; idx++ )
    {
      if ( ACPI_DSDT_Fixe_Array[idx].getNewName() && strnIsEqualIC(keyValue, keyValueLength, ACPI_DSDT_Fixe_Array[idx].getNewName()) ) {
        // new name
        if ( ACPI_DSDT_Fixe_Array[idx].oldEnabled.isDefined() ) {
          xmlLiteParser->addWarning(true, S8Printf("Tag '%s:%d' was already defined with the old name '%s'. Previous value ignored.", xmlPath.c_str(), keyPos.getLine(), ACPI_DSDT_Fixe_Array[idx].m_oldName));
          ACPI_DSDT_Fixe_Array[idx].oldEnabled.reset();
        }
        if ( ACPI_DSDT_Fixe_Array[idx].newEnabled.isDefined() ) {
          xmlLiteParser->addWarning(true, S8Printf("Tag '%s:%d' was already defined. Previous value ignored.", xmlPath.c_str(), keyPos.getLine()));
          ACPI_DSDT_Fixe_Array[idx].newEnabled.reset();
        }
        ACPI_DSDT_Fixe_Array[idx].newEnabled.parseFromXmlLite(xmlLiteParser, xmlPath, true);
        ACPI_DSDT_Fixe_Array[idx].setDefined();
        *keyFound = true;
        return ACPI_DSDT_Fixe_Array[idx].newEnabled;
      }else
      if ( ACPI_DSDT_Fixe_Array[idx].m_oldName && strnIsEqualIC(keyValue, keyValueLength, ACPI_DSDT_Fixe_Array[idx].m_oldName) ) {
        // old name
        if ( ACPI_DSDT_Fixe_Array[idx].newEnabled.isDefined() ) {
          xmlLiteParser->addWarning(true, S8Printf("Tag '%s:%d' was already defined with the new name '%s'. Previous value ignored.", xmlPath.c_str(), keyPos.getLine(), ACPI_DSDT_Fixe_Array[idx].getNewName()));
          ACPI_DSDT_Fixe_Array[idx].newEnabled.reset();
        }
        if ( ACPI_DSDT_Fixe_Array[idx].oldEnabled.isDefined() ) {
          xmlLiteParser->addWarning(true, S8Printf("Tag '%s:%d' was already defined. Previous value ignored.", xmlPath.c_str(), keyPos.getLine()));
          ACPI_DSDT_Fixe_Array[idx].oldEnabled.reset();
        }
        ACPI_DSDT_Fixe_Array[idx].oldEnabled.parseFromXmlLite(xmlLiteParser, xmlPath, true);
        ACPI_DSDT_Fixe_Array[idx].setDefined();
        *keyFound = true;
        return ACPI_DSDT_Fixe_Array[idx].oldEnabled;
      }
    }
    *keyFound = false;
    return nullXmlType;
}
end : line 57
...

 

  • Like 3
Link to comment
Share on other sites

1 hour ago, AndyYa said:

These fields are missing in my config files

screenshot3.png

 

Which "these fields" are your referring to? You know that you can use colors and forms in preview…

Link to comment
Share on other sites

9 hours ago, AndyYa said:

I noticed such a bug. If I select another config file in the Clover menu, a debug message appears and the interface freezes for 4 seconds. Then everything returns to normal.  The clover validator does not find any errors in the config file.

Hello, I reported this a few pages ago, I have this tag:4 error whenever I change to another valid configuration. @Slice or @Jief_Machak could provide some deeper insight, as this doesn't seem to be coming from the config.plist itself. Something else is wrong...

Link to comment
Share on other sites

3 hours ago, Slice said:

There was initially wrong idea to change config.plist from Clover. I am thinking to disable this possibility.

 

I don't think, it was wrong idea. On the contrary, it is very convenient for users. This tag:4 error is just a warning after all. 😊

  • Like 1
  • Thanks 2
Link to comment
Share on other sites

I agree with @Matgen84 here @Slice please do not remove it. It is very very convenient as it allows different configs to be used and tested. This made my transition to Quirks easier as I was able to test some stuff that "worked" on the same platform for other users but eventually not mine. It's just weird that we cannot debug this tag:4 error.

 

So @Slice if you change configs on your own hack, do you get the error or not? I've been meaning to ask you for some time :D :D:D Спасибо!

 

Edited by MacKonsti
  • Like 3
  • Thanks 1
Link to comment
Share on other sites

I like the idea of being able to switch configs on the fly. It's a unique, clover-only-feature . And it's has its uses. For example, I have a 10th Gen i9 which I also configured to run macOS Mojave which needs an extra config since it requires both a Fake CPU-ID and a different SMBIOS. So being able to switch the config from the boot menu is a great feature.

Link to comment
Share on other sites

On 11/22/2021 at 5:59 AM, Slice said:

There was initially wrong idea to change config.plist from Clover. I am thinking to disable this possibility.

@Slice

 

slice

the idea is not only practical but great!
I always use it and it's a good idea to have it, it makes Clover the most practical bootloader for those who know and those who know less.

I would leave this way to be able to change the config when we want in the clover menu, leave a note for those who don't know not to use it.

It's true that on some pc the config that is primary will always leave the args loaded but we learned how to handle it the way it is

  • Like 4
Link to comment
Share on other sites

Changing configs on the fly is a GREAT feature of Clover

Take for instance kexts folders 11 and 12

That solves the different kext needed for Monterey and Big Sur

But there may be other things to take into account as per different quirks etc

 

e.g. AirportItlwm.kext is different so Big Sur kext goes into 11 and Monterays goes into 12

May also need tweaking in config.plist as well. so the ability to change configs is needed in this case

Edited by STLVNUB
  • Like 3
Link to comment
Share on other sites

On 11/21/2021 at 3:49 PM, MacKonsti said:

Hello, I reported this a few pages ago, I have this tag:4 error whenever I change to another valid configuration. @Slice or @Jief_Machak could provide some deeper insight, as this doesn't seem to be coming from the config.plist itself. Something else is wrong...

Send me your efi. If I can reproduce, I'll fix.

  • Like 2
Link to comment
Share on other sites

15 hours ago, Jief_Machak said:

Send me your efi. If I can reproduce, I'll fix.

 

Hi @Jief_Machak the tag 4 error has been happening for a long time, and even on the last commits. I upload the old CLOVERX64.efi commit c10a0b7, to reproduce the warning issue.

Thanks

CLOVERX64_c10a0b7.efi

Link to comment
Share on other sites

On 11/11/2021 at 7:35 PM, Sherlocks said:

hi tluck, can you saved brightness value when reboot with nvram script?

Where I can find this script?

 

On 11/19/2021 at 1:38 PM, Slice said:

If you will use sleep-wake mode 0 cycle then you may increase flash memory life.

Clover is the best bootloader ever existing which provides sleep-wake capabilities.

I'm still facing NVRam issues on Clover, and I'm interested to know how I can set what you mentioned: sleep-wake mode 0

 

Hints?

 

Thanks to both 😉

Link to comment
Share on other sites

Hi,

It's been a long time that I don't have the battery tab in energy saver settings on my laptop.

I've read about setting system-type to 2 in /Library//Preferences/SystemConfiguration/com.apple.Boot.plist. Doesn't work.

 

1) Could you check if you have that battery tab in energy saver if you have a laptop ?

2) Anyone know how to get it back ?

 

Thanks.

Link to comment
Share on other sites

×
×
  • Create New...