Jump to content
30960 posts in this topic

Recommended Posts

Hi

Can I use clover to remove devices/methods "on the fly" from dsdt?

for example, in the attached dsdt (unpatched)

I would like to remove (among other)

 

 

                Device (HS04)
                {
                    Name (_ADR, 0x04)  // _ADR: Address
                }
and

    Scope (_SB.PCI0.XHC.RHUB.HS04)
    {
        Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
        {
            If (!PRTE (_ADR))
            {
                Return (UPCN) /* \_SB_.PCI0.XHC_.RHUB.UPCN */
            }


            Return (UPC3) /* \_SB_.PCI0.XHC_.RHUB.UPC3 */
        }


        Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
        {
            Return (PLD4) /* \_SB_.PCI0.XHC_.RHUB.PLD4 */
        }
    }

 

I think you can disassemble the dsdt to get the bytes for those routines, then use Find and Replace in the config.plist to remove those bytes.

http://www.insanelymac.com/forum/topic/312071-please-explain-entrys-in-clover-bootlog/?do=findComment&comment=2239055

https://clover-wiki.zetam.org/Configuration/ACPI#acpi_dsdt_dsdt-patches

 

Make sure the bytes are unique in the DSDT unless you want to remove all occurrences.

Yep:

unknown scope for symbol _InternalMemSetMem

 

..something is no longer visible, must be adjusted. Anyway that happen with last revisions of edk2.

I am not understanding what is happen with edk2. I can't compile with clang. Similar messages with different symbols.

OK with gcc49.

FV Space Information
DUETEFIMAINFVX64 [35%Full] 2752512 total, 984112 used, 1768400 free

- Done -
Build end time: 15:28:20, Jul.25 2016
Build total time: 00:04:05

Yes, I also narrow down troubleshooting to this stupid commit.

Rev 3657 is now compilable.

  • Like 1

Alright, I'm having a really weird issue. After updating to El Capitan and also updating my Clover installation, I have to press a key to get into Clover otherwise it just sits at the BIOS splash screen. I'm pretty sure it has something to do with me temporarily removing the drive yesterday. The correct drive is selected in the BIOS, and this only happens with Clover. I'm really confused... Has anyone ever seen this before? 

@Micky1979

 

Can't build here, error messages below.

 

post-922667-0-13321800-1469481981_thumb.png

 

EDIT: Builds fine in ElCap.  When running the script in Sierra I see early the script some warnings regarding permissions. Maybe I have something screwed up.

./VfrFormPkg.h:654:47: warning: field 'mEnd' is uninitialized when used here
      [-Wuninitialized]
               CIfrOpHeader (EFI_IFR_END_OP, &mEnd->Header) {}
                                              ^
./VfrFormPkg.h:663:64: warning: field 'mDefaultStore' is uninitialized when used
      here [-Wuninitialized]
                       CIfrOpHeader (EFI_IFR_DEFAULTSTORE_OP, &mDefaultS...
                                                               ^
./VfrFormPkg.h:705:49: warning: field 'mForm' is uninitialized when used here
      [-Wuninitialized]
                CIfrOpHeader (EFI_IFR_FORM_OP, &mForm->Header) {
                                                ^
./VfrFormPkg.h:737:56: warning: field 'mFormMap' is uninitialized when used here
      [-Wuninitialized]
                   CIfrOpHeader (EFI_IFR_FORM_MAP_OP, &mFormMap->Header) {
                                                       ^
./VfrFormPkg.h:774:56: warning: field 'mVarStore' is uninitialized when used
      here [-Wuninitialized]
                   CIfrOpHeader (EFI_IFR_VARSTORE_OP, &mVarStore->Header) {
                                                       ^
./VfrFormPkg.h:814:63: warning: field 'mVarStoreEfi' is uninitialized when used
      here [-Wuninitialized]
                      CIfrOpHeader (EFI_IFR_VARSTORE_EFI_OP, &mVarStoreE...
                                                              ^
./VfrFormPkg.h:870:78: warning: field 'mVarStoreNameValue' is uninitialized when
      used here [-Wuninitialized]
  ...CIfrOpHeader (EFI_IFR_VARSTORE_NAME_VALUE_OP, &mVarStoreNameValue->Heade...
                                                    ^
./VfrFormPkg.h:890:51: warning: field 'mImage' is uninitialized when used here
      [-Wuninitialized]
                 CIfrOpHeader (EFI_IFR_IMAGE_OP, &mImage->Header) {
                                                  ^
./VfrFormPkg.h:905:55: warning: field 'mModal' is uninitialized when used here
      [-Wuninitialized]
                 CIfrOpHeader (EFI_IFR_MODAL_TAG_OP, &mModal->Header) {
                                                      ^
./VfrFormPkg.h:916:53: warning: field 'mLocked' is uninitialized when used here
      [-Wuninitialized]
                  CIfrOpHeader (EFI_IFR_LOCKED_OP, &mLocked->Header) {}
                                                    ^
./VfrFormPkg.h:926:49: warning: field 'mRule' is uninitialized when used here
      [-Wuninitialized]
                CIfrOpHeader (EFI_IFR_RULE_OP, &mRule->Header) {
                                                ^
./VfrFormPkg.h:948:44: warning: field 'mDefault' is uninitialized when used here
      [-Wuninitialized]
        CIfrOpHeader (EFI_IFR_DEFAULT_OP, &mDefault->Header, Size) {
                                           ^
./VfrFormPkg.h:976:44: warning: field 'mDefault' is uninitialized when used here
      [-Wuninitialized]
        CIfrOpHeader (EFI_IFR_DEFAULT_OP, &mDefault->Header, sizeof (EFI...
                                           ^
./VfrFormPkg.h:996:50: warning: field 'mValue' is uninitialized when used here
      [-Wuninitialized]
                CIfrOpHeader (EFI_IFR_VALUE_OP, &mValue->Header) {}
                                                 ^
./VfrFormPkg.h:1006:49: warning: field 'mRead' is uninitialized when used here
      [-Wuninitialized]
                CIfrOpHeader (EFI_IFR_READ_OP, &mRead->Header) {}
                                                ^
./VfrFormPkg.h:1016:50: warning: field 'mWrite' is uninitialized when used here
      [-Wuninitialized]
                CIfrOpHeader (EFI_IFR_WRITE_OP, &mWrite->Header) {}
                                                 ^
./VfrFormPkg.h:1028:38: warning: field 'mGet' is uninitialized when used here
      [-Wuninitialized]
      CIfrOpHeader (EFI_IFR_GET_OP, &mGet->Header) {
                                     ^
./VfrFormPkg.h:1048:38: warning: field 'mSet' is uninitialized when used here
      [-Wuninitialized]
      CIfrOpHeader (EFI_IFR_SET_OP, &mSet->Header) {
                                     ^
./VfrFormPkg.h:1066:55: warning: field 'mSubtitle' is uninitialized when used
      here [-Wuninitialized]
                  CIfrOpHeader (EFI_IFR_SUBTITLE_OP, &mSubtitle->Header),
                                                      ^
./VfrFormPkg.h:1067:25: warning: field 'mSubtitle' is uninitialized when used
      here [-Wuninitialized]
  CIfrStatementHeader (&mSubtitle->Statement) {
                        ^
./VfrFormPkg.h:1086:48: warning: field 'mText' is uninitialized when used here
      [-Wuninitialized]
               CIfrOpHeader (EFI_IFR_TEXT_OP, &mText->Header), 
                                               ^
./VfrFormPkg.h:1087:38: warning: field 'mText' is uninitialized when used here
      [-Wuninitialized]
               CIfrStatementHeader (&mText->Statement) {
                                     ^
./VfrFormPkg.h:1102:46: warning: field 'mRef' is uninitialized when used here
      [-Wuninitialized]
              CIfrOpHeader (EFI_IFR_REF_OP, &mRef->Header), 
                                             ^
./VfrFormPkg.h:1103:36: warning: field 'mRef' is uninitialized when used here
      [-Wuninitialized]
              CIfrQuestionHeader (&mRef->Question) {
                                   ^
./VfrFormPkg.h:1118:47: warning: field 'mRef2' is uninitialized when used here
      [-Wuninitialized]
               CIfrOpHeader (EFI_IFR_REF_OP, &mRef2->Header, sizeof (EFI...
                                              ^
./VfrFormPkg.h:1119:37: warning: field 'mRef2' is uninitialized when used here
      [-Wuninitialized]
               CIfrQuestionHeader (&mRef2->Question) {
                                    ^
./VfrFormPkg.h:1139:47: warning: field 'mRef3' is uninitialized when used here
      [-Wuninitialized]
               CIfrOpHeader (EFI_IFR_REF_OP, &mRef3->Header, sizeof (EFI...
                                              ^
./VfrFormPkg.h:1140:37: warning: field 'mRef3' is uninitialized when used here
      [-Wuninitialized]
               CIfrQuestionHeader (&mRef3->Question) {
                                    ^
./VfrFormPkg.h:1165:47: warning: field 'mRef4' is uninitialized when used here
      [-Wuninitialized]
               CIfrOpHeader (EFI_IFR_REF_OP, &mRef4->Header, sizeof(EFI_...
                                              ^
./VfrFormPkg.h:1166:37: warning: field 'mRef4' is uninitialized when used here
      [-Wuninitialized]
               CIfrQuestionHeader (&mRef4->Question) {
                                    ^
./VfrFormPkg.h:1196:46: warning: field 'mRef5' is uninitialized when used here
      [-Wuninitialized]
              CIfrOpHeader (EFI_IFR_REF_OP, &mRef5->Header, sizeof (EFI_...
                                             ^
./VfrFormPkg.h:1197:36: warning: field 'mRef5' is uninitialized when used here
      [-Wuninitialized]
              CIfrQuestionHeader (&mRef5->Question) {
                                   ^
./VfrFormPkg.h:1207:64: warning: field 'mResetButton' is uninitialized when used
      here [-Wuninitialized]
                       CIfrOpHeader (EFI_IFR_RESET_BUTTON_OP, &mResetBut...
                                                               ^
./VfrFormPkg.h:1208:25: warning: field 'mResetButton' is uninitialized when used
      here [-Wuninitialized]
  CIfrStatementHeader (&mResetButton->Statement) {
                        ^
./VfrFormPkg.h:1223:58: warning: field 'mCheckBox' is uninitialized when used
      here [-Wuninitialized]
                     CIfrOpHeader (EFI_IFR_CHECKBOX_OP, &mCheckBox->Header), 
                                                         ^
./VfrFormPkg.h:1224:43: warning: field 'mCheckBox' is uninitialized when used
      here [-Wuninitialized]
                     CIfrQuestionHeader (&mCheckBox->Question) {
                                          ^
./VfrFormPkg.h:1263:52: warning: field 'mAction' is uninitialized when used here
      [-Wuninitialized]
                 CIfrOpHeader (EFI_IFR_ACTION_OP, &mAction->Header), 
                                                   ^
./VfrFormPkg.h:1264:39: warning: field 'mAction' is uninitialized when used here
      [-Wuninitialized]
                 CIfrQuestionHeader (&mAction->Question) {
                                      ^
./VfrFormPkg.h:1279:48: warning: field 'mDate' is uninitialized when used here
      [-Wuninitialized]
               CIfrOpHeader (EFI_IFR_DATE_OP, &mDate->Header),
                                               ^
./VfrFormPkg.h:1280:37: warning: field 'mDate' is uninitialized when used here
      [-Wuninitialized]
               CIfrQuestionHeader (&mDate->Question) {
                                    ^
./VfrFormPkg.h:1322:55: warning: field 'mNumeric' is uninitialized when used
      here [-Wuninitialized]
                   CIfrOpHeader (EFI_IFR_NUMERIC_OP, &mNumeric->Header),
                                                      ^
./VfrFormPkg.h:1323:41: warning: field 'mNumeric' is uninitialized when used
      here [-Wuninitialized]
                   CIfrQuestionHeader (&mNumeric->Question),
                                        ^
./VfrFormPkg.h:1324:41: warning: field 'mNumeric' is uninitialized when used
      here [-Wuninitialized]
                   CIfrMinMaxStepData (&mNumeric->data, TRUE) {
                                        ^
./VfrFormPkg.h:1383:52: warning: field 'mOneOf' is uninitialized when used here
      [-Wuninitialized]
                 CIfrOpHeader (EFI_IFR_ONE_OF_OP, &mOneOf->Header),
                                                   ^
./VfrFormPkg.h:1384:39: warning: field 'mOneOf' is uninitialized when used here
      [-Wuninitialized]
                 CIfrQuestionHeader (&mOneOf->Question),
                                      ^
./VfrFormPkg.h:1385:39: warning: field 'mOneOf' is uninitialized when used here
      [-Wuninitialized]
                 CIfrMinMaxStepData (&mOneOf->data) {
                                      ^
./VfrFormPkg.h:1440:52: warning: field 'mString' is uninitialized when used here
      [-Wuninitialized]
                 CIfrOpHeader (EFI_IFR_STRING_OP, &mString->Header),
                                                   ^

Is not the script.. is edk2 with clang 800+ (also is in Beta ...).

BTW

EFI_IFR_END  *mEnd;

should be I guess

EFI_IFR_END  *mEnd = NULL;

... and so on for others in VfrFormPkg.h. Cannot exclude other similar stuff will fails (they can't are warnings) else where (I'm in bed, wont test now :P ).

 

EDIT

for fdisk440 can't say but should be something related linking to a shared/static libgcc

apparently edk2 devs does not care about clang with their last(s) commit  :cry:

Edited by Micky1979

Guys, thanks for using my script  :wub: ... but consider to move to my topic for that, this thread has nothing to do with it. Code (what matter) is done by Slice & co,  so may you intrested in posting how your PC works booting with Clover here  :wink_anim:, the script is only an easy way to automate what devs do everyday manually, and don't make the build better than other, no magician   ;)

Not sure what you say is good for me :hysterical:

EDIT

BTW agreed ("results"/"revisions" now I see your edit :P).  For that users should look at commits done (Clover and edk2) before update, not always there are "hotfix" or thoroughly tested code. Also you wait before posting a new package on source forge (stable release? I hope this is clear to users ... mmhm ..maybe).

  • Like 1

Uhm @DF tomorrow will do test to set that variable outside workspace before calling edksetup.. Previously I use build "-conf" options to set a custom conf path with ebuild, Windows untested :)https://sourceforge.net/p/cloverefiboot/code/HEAD/tree/ebuild.sh#l392

×
×
  • Create New...