Sherlocks Posted May 6, 2017 Share Posted May 6, 2017 i changed your code to this: if DualLink set in clover - set DualLink=1 otherwise check resolution to see if we need DualLink default: if (gSettings.DualLink != 0) { devprop_add_value(device, "AAPL00,DualLink", (UINT8*)&gSettings.DualLink, 1); DBG(" AAPL00,DualLink = 1\n"); } else { if (UGAWidth >= 1400) { DBG(" High Resolution Display\n"); DBG(" AAPL00,DualLink: set to 1\n"); DualLink = 1; devprop_add_value(device, "AAPL00,DualLink", (UINT8*)&DualLink, 1); } else { /* if (UGAWidth < 1400) { */ DBG(" Low Resolution Display\n"); DBG(" AAPL00,DualLink: not used\n"); } } break; i see. now, duallnk detect is good except only one your case. many users maybe will add manually duallink=0 in config.plist or Duallink <0x00, 0x00, 0x00, 0x00> in ACPI injection. ofc like you said, need override. since users use clover, i wonder they(have low resolution) always set duallink 0 in config or acpi injection i now think better solution to cover. thank you for report Link to comment Share on other sites More sharing options...
tluck Posted May 6, 2017 Share Posted May 6, 2017 it seems that DualLink = 0 is the same is not setting it? so it seems ok to skip it. meaning not create a property to set it to 0 i think the best option to really override settings for experts or some other reason is to use the Clover Device Properties section. Link to comment Share on other sites More sharing options...
Sherlocks Posted May 6, 2017 Share Posted May 6, 2017 it seems that DualLink = 0 is the same is not setting it? so it seems ok to skip it. meaning not create a property to set it to 0 i think the best option to really override settings for experts or some other reason is to use the Clover Device Properties section. I know. Duallink default 1 now in clover.1400 down resolution need duallink 0 in config or acpi injection to skip duallink value.(old gma also same) I return code to override duallink from config.plist. In next gma, low resolution users have to set duallink 0 in config.plist or acpi injection(you can check rehabman igpu ssdt). Some low cost laptop with latest intel graphic(broadwell and skylake) has 1366x768. They will also include this case I just considered it between comfortable or un comfortable. Thank you for suggestion 나의 LG-F410S 의 Tapatalk에서 보냄 Link to comment Share on other sites More sharing options...
tluck Posted May 6, 2017 Share Posted May 6, 2017 ah yes. so then to me seems that DualLink=0 in platformdata.c makes more sense? the logic seems easier: Default = 0 if DualLink=1 set in clover use it, otherwise check resolution and set to 1 if needed? i just used the code above ... and changed DualLink=0 in platformdata.c 5:635 0:000 Intel HD Graphics 520 [8086:1916] :: PciRoot(0x0)\Pci(0x2,0x0)5:635 0:000 Found Full HD Display - 16:9 :: Width=1920 Height=10805:635 0:000 High Resolution Display5:635 0:000 AAPL00,DualLink: set to 15:635 0:000 FakeID Intel GFX: not set5:635 0:000 ig-platform-id: not set5:635 0:000 Beginning Intel GFX auto-detection with ACPI injection5:635 0:000 Found FakeID Intel GFX = 0x191680865:635 0:000 Found ig-platform-id = 0x191600005:635 0:000 Intel GFX revision = 0x7 Link to comment Share on other sites More sharing options...
Sherlocks Posted May 6, 2017 Share Posted May 6, 2017 ah yes. so then to me seems that DualLink=0 in platformdata.c makes more sense? the logic seems easier: Default = 0 if DualLink=1 set in clover use it, otherwise check resolution and set to 1 if needed? i just used the code above ... and changed DualLink=0 in platformdata.c 5:635 0:000 Intel HD Graphics 520 [8086:1916] :: PciRoot(0x0)\Pci(0x2,0x0) 5:635 0:000 Found Full HD Display - 16:9 :: Width=1920 Height=1080 5:635 0:000 High Resolution Display 5:635 0:000 AAPL00,DualLink: set to 1 5:635 0:000 FakeID Intel GFX: not set 5:635 0:000 ig-platform-id: not set 5:635 0:000 Beginning Intel GFX auto-detection with ACPI injection 5:635 0:000 Found FakeID Intel GFX = 0x19168086 5:635 0:000 Found ig-platform-id = 0x19160000 5:635 0:000 Intel GFX revision = 0x7 try build and test with this and clean r4069 source. then please clover boot log. please no edit this, just build and test your lenovo hd3000 non-mod bios Link to comment Share on other sites More sharing options...
tluck Posted May 6, 2017 Share Posted May 6, 2017 exactly in my case, on T420#1 where BIOS resolution != LCD, I need to add DualLink=1 otherwise it automatically figures out I need DualLink =1 (works on T420#2 and T460) with my code (gma.c), and DualLink=0 (platformdata.c) low-res bios: Set DualLink=1 in Clover Graphics 5:793 0:000 Intel HD Graphics 3000 [8086:0126] :: PciRoot(0x0)\Pci(0x2,0x0)5:793 0:000 IntelHDMI: used5:793 0:000 AAPL00,override-no-connect: added5:793 0:000 AAPL00,DualLink = 15:793 0:000 FakeID Intel GFX: not set5:793 0:000 snb-platform-id: not set5:794 0:000 Beginning Intel GFX auto-detection with ACPI injection5:794 0:000 Found FakeID Intel GFX = 0x012680865:794 0:000 Found snb-platform-id = 0x000100005:794 0:000 Intel GFX revision = 0x95:794 0:000 setting specified layout-id=12 (0xC)5:794 0:000 stringlength = 28425:794 0:000 CurrentMode: Width=960 Height=600 high-res bios - DualLink not set 4:991 0:000 Intel HD Graphics 3000 [8086:0126] :: PciRoot(0x0)\Pci(0x2,0x0)4:991 0:000 Found HD Plus Display - 16:9 :: Width=1600 Height=9004:991 0:000 IntelHDMI: used4:991 0:000 AAPL00,override-no-connect: added4:991 0:000 High Resolution Display4:991 0:000 AAPL00,DualLink: set to 14:991 0:000 FakeID Intel GFX: not set4:991 0:000 snb-platform-id: not set4:991 0:000 Beginning Intel GFX auto-detection with ACPI injection4:991 0:000 Found FakeID Intel GFX = 0x012680864:991 0:000 Found snb-platform-id = 0x000100004:991 0:000 Intel GFX revision = 0x94:991 0:000 setting specified layout-id=12 (0xC)4:992 0:000 stringlength = 28424:992 0:000 CurrentMode: Width=1600 Height=900 your new code (last post) on low-res bios: 5:772 0:000 EdidDiscovered size=05:772 0:000 Intel HD Graphics 3000 [8086:0126] :: PciRoot(0x0)\Pci(0x2,0x0)5:772 0:000 Found Unknown Resolution Display - ?:? :: Width=960 Height=6005:772 0:000 IntelHDMI: used5:772 0:000 AAPL00,override-no-connect: added5:772 0:000 AAPL00,DualLink = 15:772 0:000 FakeID Intel GFX: not set5:772 0:000 snb-platform-id: not set5:772 0:000 Beginning Intel GFX auto-detection with ACPI injection5:772 0:000 Found FakeID Intel GFX = 0x012680865:772 0:000 Found snb-platform-id = 0x000100005:772 0:000 Intel GFX revision = 0x95:772 0:000 setting specified layout-id=12 (0xC)5:772 0:000 stringlength = 28425:773 0:000 CurrentMode: Width=960 Height=600 1 Link to comment Share on other sites More sharing options...
Sherlocks Posted May 6, 2017 Share Posted May 6, 2017 exactly in my case, on T420#1 where BIOS resolution != LCD, I need to add DualLink=1 otherwise it automatically figures out I need DualLink =1 (works on T420#2 and T460) with my code (gma.c), and DualLink=0 (platformdata.c) low-res bios: Set DualLink=1 in Clover Graphics 5:793 0:000 Intel HD Graphics 3000 [8086:0126] :: PciRoot(0x0)\Pci(0x2,0x0) 5:793 0:000 IntelHDMI: used 5:793 0:000 AAPL00,override-no-connect: added 5:793 0:000 AAPL00,DualLink = 1 5:793 0:000 FakeID Intel GFX: not set 5:793 0:000 snb-platform-id: not set 5:794 0:000 Beginning Intel GFX auto-detection with ACPI injection 5:794 0:000 Found FakeID Intel GFX = 0x01268086 5:794 0:000 Found snb-platform-id = 0x00010000 5:794 0:000 Intel GFX revision = 0x9 5:794 0:000 setting specified layout-id=12 (0xC) 5:794 0:000 stringlength = 2842 5:794 0:000 CurrentMode: Width=960 Height=600 high-res bios - DualLink not set 4:991 0:000 Intel HD Graphics 3000 [8086:0126] :: PciRoot(0x0)\Pci(0x2,0x0) 4:991 0:000 Found HD Plus Display - 16:9 :: Width=1600 Height=900 4:991 0:000 IntelHDMI: used 4:991 0:000 AAPL00,override-no-connect: added 4:991 0:000 High Resolution Display 4:991 0:000 AAPL00,DualLink: set to 1 4:991 0:000 FakeID Intel GFX: not set 4:991 0:000 snb-platform-id: not set 4:991 0:000 Beginning Intel GFX auto-detection with ACPI injection 4:991 0:000 Found FakeID Intel GFX = 0x01268086 4:991 0:000 Found snb-platform-id = 0x00010000 4:991 0:000 Intel GFX revision = 0x9 4:991 0:000 setting specified layout-id=12 (0xC) 4:992 0:000 stringlength = 2842 4:992 0:000 CurrentMode: Width=1600 Height=900 your new code (last post) on low-res bios: 5:772 0:000 EdidDiscovered size=0 5:772 0:000 Intel HD Graphics 3000 [8086:0126] :: PciRoot(0x0)\Pci(0x2,0x0) 5:772 0:000 Found Unknown Resolution Display - ?:? :: Width=960 Height=600 5:772 0:000 IntelHDMI: used 5:772 0:000 AAPL00,override-no-connect: added 5:772 0:000 AAPL00,DualLink = 1 5:772 0:000 FakeID Intel GFX: not set 5:772 0:000 snb-platform-id: not set 5:772 0:000 Beginning Intel GFX auto-detection with ACPI injection 5:772 0:000 Found FakeID Intel GFX = 0x01268086 5:772 0:000 Found snb-platform-id = 0x00010000 5:772 0:000 Intel GFX revision = 0x9 5:772 0:000 setting specified layout-id=12 (0xC) 5:772 0:000 stringlength = 2842 5:773 0:000 CurrentMode: Width=960 Height=600 okay thank you. resolved your case. Now you dont need duallink in config.plist On your non-modbios lenovo @Slice fixes duallink rare case considered desktop and device-id properly according to fakepciid thanks in advance gma.c-Update.zip 2 Link to comment Share on other sites More sharing options...
apianti Posted May 6, 2017 Share Posted May 6, 2017 sherlocks, dude, I just added you to the developer group on sf.net. You can commit these changes yourself now, these look fine, but your commits will be under review - so, please don't destroy stuff. LOL. I am not sure if you'll need to re-checkout the source R/W or not, but I think so. 2 Link to comment Share on other sites More sharing options...
tluck Posted May 6, 2017 Share Posted May 6, 2017 okay thank you. resolved your case. Now you dont need duallink in config.plist On your non-modbios lenovo yup. was able remove all custom Gfx properties, DualLink and ig-platform from all my config.plist good on all these boxes: T420 - HD 3000 (1600x900 with high and low res BIOS) H61N-USB - HD 3000 (Full HD) Dell - HD 4600 (Full HD) T460 - HD 520 (Full HD) 3 Link to comment Share on other sites More sharing options...
Sherlocks Posted May 7, 2017 Share Posted May 7, 2017 sherlocks, dude, I just added you to the developer group on sf.net. You can commit these changes yourself now, these look fine, but your commits will be under review - so, please don't destroy stuff. LOL. I am not sure if you'll need to re-checkout the source R/W or not, but I think so.Thank you. I will check more more more source.And will commit. Dont worry. I dont want to touch other source. Thanks in advance 나의 LG-F410S 의 Tapatalk에서 보냄 1 Link to comment Share on other sites More sharing options...
apianti Posted May 7, 2017 Share Posted May 7, 2017 Nah, if you want to change something, change it, as long as it doesn't change configured behavior or break something, it's cool. Slice or I will revert changes if needed... 4 Link to comment Share on other sites More sharing options...
Max.1974 Posted May 8, 2017 Share Posted May 8, 2017 IntelGraphicsFixup Lilu Tks so much Ukr55 works like a charm to me, and perfect Monitor without glitches!!! God bless you all!!! 2 Link to comment Share on other sites More sharing options...
Philip Petev Posted May 14, 2017 Share Posted May 14, 2017 @Slice: this is not bug report or patch, more like an improvement. Tested a new code in Build_Clover.command that determines the NASM version, using string-based pattern matching and since that code is the same as the one that does the same in ebuild.sh, made some modifications in it too. The result is code, reduced to only 9 lines, that does the same thing, and all IFS-related stuff, removed from the script. ebuild.sh_noIFS.zip 2 Link to comment Share on other sites More sharing options...
Philip Petev Posted May 14, 2017 Share Posted May 14, 2017 @Slice: another proposition, courtesy of @Micky1979 1. Clover/CloverPackage/Makefile - three new targets are added for generation of package with removed options: make slimpkg1 - generates install package with removed the Themes subgroup make slimpkg2 - generates install package with removed the Themes subgroup, Clover Updater and Clover Prefpane make slimpkg3 - generates install package with removed the Themes subgroup, Clover Updater, Clover Prefpane, the RC scripts and Clover EFI (UEFI boot minimum package only) the make pkg target works as usual 2. The following files are updated to reflect those changes: Clover/CloverPackage/makepkg Clover/CloverPackage/package/buildpkg.sh Clover_noextras.zip 4 Link to comment Share on other sites More sharing options...
apianti Posted May 14, 2017 Share Posted May 14, 2017 These changes look fine, I committed them for revision 4073. 1 Link to comment Share on other sites More sharing options...
apianti Posted May 18, 2017 Share Posted May 18, 2017 Ummmm.... so does clover.... The reason why there is an EDK2 revision is because that revision is known to be stable and there are also some patches to prevent things in the legacy firmware from asserting. 1 Link to comment Share on other sites More sharing options...
mhaeuser Posted May 18, 2017 Share Posted May 18, 2017 If these patches really make any sense, how about 1) submitting them 2) at least use patches and not full files? 2 Link to comment Share on other sites More sharing options...
cecekpawon Posted May 18, 2017 Share Posted May 18, 2017 Ozmosis builds on a stock standard EDK2 with GCC7.1 Thats a news brother, good luck! 1 Link to comment Share on other sites More sharing options...
vector sigma Posted May 18, 2017 Share Posted May 18, 2017 What's Ozmosis? found Link to comment Share on other sites More sharing options...
apianti Posted May 18, 2017 Share Posted May 18, 2017 If these patches really make any sense, how about 1) submitting them 2) at least use patches and not full files? Um, you don't think we do? I have submitted several fixes and they usually in turn just completely destroy features instead. Full files because then you would absolutely need to use a specific revision then to apply a patch.... Also only applies to legacy firmware, you don't need otherwise, I never use the patches. Ha Ha Why is there a modified tools_def.txt then???? Why still using gcc4.9-ld-script???? Not stock standard, so no it don't... And it goes on, if you want to use standard EDK2, where is the Conf Folder I don't use any of that stuff. So I think you are making assumptions about things that were created to make it easier for building, doesn't mean that you must use that stuff. Link to comment Share on other sites More sharing options...
mhaeuser Posted May 18, 2017 Share Posted May 18, 2017 Um, you don't think we do? Considering how long some of these fixes(files) are around, actually I didn't think so. Full files because then you would absolutely need to use a specific revision then to apply a patch.... Yes, that was my point. I don't think it's smart to copy a patch file when it is obviously outdated. So I think you are making assumptions about things that were created to make it easier for building, doesn't mean that you must use that stuff. It is not clear at all what file is needed for what purpose. As I suggested you for v3, Clover should integrate with EDK2, not EDK2 be bowed to work with Clover. I can build every EDK2 package ever via its tools, except for Clover v2 (aside from the patches, the code is not clean...) and Clover v3, which needs its own set of build scripts... Link to comment Share on other sites More sharing options...
apianti Posted May 18, 2017 Share Posted May 18, 2017 Considering how long some of these fixes(files) are around, actually I didn't think so. Yes, that was my point. I don't think it's smart to copy a patch file when it is obviously outdated. Sometimes stuff in EDK does not get fixed, like ever. And just because it's a full file doesn't mean it's outdated, there are plenty of syncing with EDK commits. The difference is that even if you had kept up with every EDK revision and fixed that newest source, a patch would break older revisions. So either way with patches you would be looking at a situation where the patch would fail.... It is not clear at all what file is needed for what purpose. As I suggested you for v3, Clover should integrate with EDK2, not EDK2 be bowed to work with Clover. I can build every EDK2 package ever via its tools, except for Clover v2 (aside from the patches, the code is not clean...) and Clover v3, which needs its own set of build scripts... Ok...... ? That's like saying EDK should integrate into the build systems of the tools it uses to build instead of creating it's own.... Link to comment Share on other sites More sharing options...
mhaeuser Posted May 18, 2017 Share Posted May 18, 2017 Ok...... ? That's like saying EDK should integrate into the build systems of the tools it uses to build instead of creating it's own.... EDK is a Development Kit (more a Development Environment) with a standardized way to build and not some dependency you embed. Link to comment Share on other sites More sharing options...
Slice Posted May 18, 2017 Share Posted May 18, 2017 Any movements in clover v3? I am not theorist, I am practitioner and I made Clover v2 to be compilable and working regardless of EDK2 bugs. EDK2 was developed same time with Clover. Link to comment Share on other sites More sharing options...
apianti Posted May 18, 2017 Share Posted May 18, 2017 @DF, But you could completely disregard it's build system and not use it.... So I think you are getting too caught up on whether you say build or another_build in the terminal.... What's the difference? You can still use build it just doesn't build all the extra stuff, or correctly generate some files needed.... @Slice, Yeah, I have a bunch more not pushed into the repo, I have just been busy and not coded in a minute. Link to comment Share on other sites More sharing options...
Recommended Posts