chris1111 Posted August 30, 2017 Share Posted August 30, 2017 What are the lines after this? It's probably that you have DDR4 and it is not reading from the first page of the SPD for that module. So it gets a weird value, says that and attempts to set the page to the first one, I'm assuming it then determines your memory fine after that? No. I couldn't even get it to work on some macs, lol. I apianti I think It works with Deploy Studio ? Also imagr, CasperNetInstallCreator ? I tried 5 or 6 years ago, I let go of it I could be discouraged, I did not know much about Mac If Clover could integrate Booting the Net boot install it would be a big plus with lots of fun Link to comment Share on other sites More sharing options...
truemac Posted August 31, 2017 Share Posted August 31, 2017 What are the lines after this? It's probably that you have DDR4 and it is not reading from the first page of the SPD for that module. So it gets a weird value, says that and attempts to set the page to the first one, I'm assuming it then determines your memory fine after that? === [ ScanSPD ] =========================================== 0:567 0:000 SMBus device : 8086 A123 class=0C0500 status=Success 0:567 0:000 SMBus CmdReg: 0x3 0:567 0:000 Scanning SMBus [8086:A123], mmio: 0xF7F4A004, ioport: 0xF000, hostc: 0x11 0:567 0:000 Slots to scan [8]... 0:567 0:000 SPD[1]: Got invalid type 0 @0x51. Will set page and retry. 0:568 0:000 SPD[1]: Type 12 @0x51 0:586 0:017 Unknown vendor bank=0x83 code=0x13 0:586 0:000 XMP Profile1: 7*125 -42 ns 0:586 0:000 Found module with XMP version 2.0 0:586 0:000 DDR speed 2132MHz 0:586 0:000 Slot: 1 Type 26 8192MB 2132MHz Vendor=NoName PartNo=CL16-16-16D4-2400 SerialNo=0000000000000000 0:586 0:000 SPD[3]: Type 12 @0x53 0:604 0:017 Unknown vendor bank=0x83 code=0x13 0:604 0:000 XMP Profile1: 7*125 -42 ns 0:604 0:000 Found module with XMP version 2.0 0:604 0:000 DDR speed 2132MHz 0:604 0:000 Slot: 3 Type 26 8192MB 2132MHz Vendor=NoName PartNo=CL16-16-16D4-2400 SerialNo=0000000000000000 Link to comment Share on other sites More sharing options...
joevt Posted September 1, 2017 Share Posted September 1, 2017 === [ ScanSPD ] =========================================== 0:567 0:000 SMBus device : 8086 A123 class=0C0500 status=Success 0:567 0:000 SMBus CmdReg: 0x3 0:567 0:000 Scanning SMBus [8086:A123], mmio: 0xF7F4A004, ioport: 0xF000, hostc: 0x11 0:567 0:000 Slots to scan [8]... 0:567 0:000 SPD[1]: Got invalid type 0 @0x51. Will set page and retry. 0:568 0:000 SPD[1]: Type 12 @0x51 0:586 0:017 Unknown vendor bank=0x83 code=0x13 0:586 0:000 XMP Profile1: 7*125 -42 ns 0:586 0:000 Found module with XMP version 2.0 0:586 0:000 DDR speed 2132MHz 0:586 0:000 Slot: 1 Type 26 8192MB 2132MHz Vendor=NoName PartNo=CL16-16-16D4-2400 SerialNo=0000000000000000 0:586 0:000 SPD[3]: Type 12 @0x53 0:604 0:017 Unknown vendor bank=0x83 code=0x13 0:604 0:000 XMP Profile1: 7*125 -42 ns 0:604 0:000 Found module with XMP version 2.0 0:604 0:000 DDR speed 2132MHz 0:604 0:000 Slot: 3 Type 26 8192MB 2132MHz Vendor=NoName PartNo=CL16-16-16D4-2400 SerialNo=0000000000000000 Looks fine except for the bank number for the vendor. The bank number is 0x83 but the code expects 3 because it does not take into account that the most significant bit is an odd parity bit. The code in file spd.c for DDR3 masks off the parity bit. Maybe the DDR4 code should do the same. Maybe both the DDR3 and DDR4 code should check the parity first and at least give an error message if it's wrong, then mask off the parity bit: UINT8 parity = bank; UINT8 testbit = bank; for (i=6; i >= 0; i--) { parity ^= (testbit <<= 1); } if ( (parity & 0x80) == 0 ) { DBG("Bad parity bank=0x%2X code=0x%2X\n", bank, code); } bank &= 0x7f; Bank 3, code 0x13 is manufacturer "Geil". Is that correct for your ram? How does this SPD data compare to the "Get Smbios" part of the log? Is there a valid manufacturer name there? 2 Link to comment Share on other sites More sharing options...
truemac Posted September 2, 2017 Share Posted September 2, 2017 Looks fine except for the bank number for the vendor. The bank number is 0x83 but the code expects 3 because it does not take into account that the most significant bit is an odd parity bit. The code in file spd.c for DDR3 masks off the parity bit. Maybe the DDR4 code should do the same. Maybe both the DDR3 and DDR4 code should check the parity first and at least give an error message if it's wrong, then mask off the parity bit: UINT8 parity = bank; UINT8 testbit = bank; for (i=6; i >= 0; i--) { parity ^= (testbit <<= 1); } if ( (parity & 0x80) == 0 ) { DBG("Bad parity bank=0x%2X code=0x%2X\n", bank, code); } bank &= 0x7f; Bank 3, code 0x13 is manufacturer "Geil". Is that correct for your ram? How does this SPD data compare to the "Get Smbios" part of the log? Is there a valid manufacturer name there? yes is GEIL manufacture will try to added it to spd.c and test thx 0:100 0:000 === [ Get Smbios ] ======================================== 0:100 0:000 Type 16 Index = 0 0:100 0:000 Total Memory Slots Count = 4 0:100 0:000 Type 17 Index = 0 0:100 0:000 Ignoring insane frequency value 0MHz 0:100 0:000 SmbiosTable.Type17->Speed = 0MHz 0:100 0:000 SmbiosTable.Type17->Size = 0MB 0:100 0:000 SmbiosTable.Type17->Bank/Device = BANK 0 DIMM_A1 0:100 0:000 SmbiosTable.Type17->Vendor = <null string> 0:100 0:000 SmbiosTable.Type17->SerialNumber = <null string> 0:100 0:000 SmbiosTable.Type17->PartNumber = <null string> 0:100 0:000 Type 17 Index = 1 0:100 0:000 SmbiosTable.Type17->Speed = 2400MHz 0:100 0:000 SmbiosTable.Type17->Size = 8192MB 0:100 0:000 SmbiosTable.Type17->Bank/Device = BANK 1 DIMM_A2 0:100 0:000 SmbiosTable.Type17->Vendor = GEIL 0:100 0:000 SmbiosTable.Type17->SerialNumber = 00000000 0:100 0:000 SmbiosTable.Type17->PartNumber = CL16-16-16 D4-2400 0:100 0:000 Type 17 Index = 2 0:100 0:000 Ignoring insane frequency value 0MHz 0:100 0:000 SmbiosTable.Type17->Speed = 0MHz 0:100 0:000 SmbiosTable.Type17->Size = 0MB 0:100 0:000 SmbiosTable.Type17->Bank/Device = BANK 2 DIMM_B1 0:100 0:000 SmbiosTable.Type17->Vendor = <null string> 0:100 0:000 SmbiosTable.Type17->SerialNumber = <null string> 0:100 0:000 SmbiosTable.Type17->PartNumber = <null string> 0:100 0:000 Type 17 Index = 3 0:100 0:000 SmbiosTable.Type17->Speed = 2400MHz 0:100 0:000 SmbiosTable.Type17->Size = 8192MB 0:100 0:000 SmbiosTable.Type17->Bank/Device = BANK 3 DIMM_B2 0:100 0:000 SmbiosTable.Type17->Vendor = GEIL 0:100 0:000 SmbiosTable.Type17->SerialNumber = 00000000 0:100 0:000 SmbiosTable.Type17->PartNumber = CL16-16-16 D4-2400 Link to comment Share on other sites More sharing options...
Dr. Hurt Posted September 4, 2017 Share Posted September 4, 2017 Feature request: Fix brightness range (max brightness) on 10.12.4+ (tested on HD3000) OperationRegion (IGD5, PCI_Config, Zero, 0x14) Field (IGD5, AnyAcc, NoLock, Preserve) { Offset (0x10), BAR1, 32 } OperationRegion (RMB1, SystemMemory, (BAR1 & 0xFFFFFFFFFFFFFFF0), 0x000E1184) Field (RMB1, AnyAcc, Lock, Preserve) { Offset (0xC8250), LEVW, 32, LEVX, 32 } Method (_INI, 0, NotSerialized) // _INI: Initialize { LEVX = 0x07100000 } Setting LEVX to 1007 (max brightness for Sandy Bridge) gives me full range of brightness using AppleBacklight.kext without having to binary patch. I think this could be implemented the same way as SetIntelBacklight (which doesn't fully work for me BTW, breaks brightness slider). Hope more people find this useful. Link to comment Share on other sites More sharing options...
RehabMan Posted September 4, 2017 Share Posted September 4, 2017 Feature request: Fix brightness range (max brightness) on 10.12.4+ (tested on HD3000) Setting LEVX to 1007 (max brightness for Sandy Bridge) gives me full range of brightness using AppleBacklight.kext without having to binary patch. I think this could be implemented the same way as SetIntelBacklight (which doesn't fully work for me BTW, breaks brightness slider). Hope more people find this useful. Note that this is fixed with my SSDT-PNLF.aml. (other fixes needed too: AppleBacklightInjector.kext + AppleBacklight patch) Link to comment Share on other sites More sharing options...
Dr. Hurt Posted September 4, 2017 Share Posted September 4, 2017 Note that this is fixed with my SSDT-PNLF.aml.(other fixes needed too: AppleBacklightInjector.kext + AppleBacklight patch) I only have the above code under igpu in DSDT and that gives me full brightness range. Link to comment Share on other sites More sharing options...
RehabMan Posted September 4, 2017 Share Posted September 4, 2017 I only have the above code under igpu in DSDT and that gives me full brightness range. You will not have correct brightness levels without the appropriate data for AppleBacklight.kext. 'Default' (look in ioreg under PNLF->AppleIntelPanelA) will get you close, but not perfect. And a side effect/feature of making a match, is that you can customize the levels. Another thing to note: The code required is different for Haswell and later because the PWM registers are laid out differently, and the PWMMax used is also different (actually depends on ig-platform-id in use). Link to comment Share on other sites More sharing options...
Slice Posted September 5, 2017 Share Posted September 5, 2017 Feature request: Fix brightness range (max brightness) on 10.12.4+ (tested on HD3000) Setting LEVX to 1007 (max brightness for Sandy Bridge) gives me full range of brightness using AppleBacklight.kext without having to binary patch. I think this could be implemented the same way as SetIntelBacklight (which doesn't fully work for me BTW, breaks brightness slider). Hope more people find this useful. I have to switch off this option too, it breaks brightness (Dell E6430 with Ivy). I think your proposition can be applied as new option SetIntelMaxBacklight. In my case brightness works with default clover FIX_PNLF. No new kexts. In system I did the trick: insert USB keyboard. Control Panel -> Keyboard -> Shotcuts -> Screen (it appears due to USB keyboard). Thanks to Andrey1970. and set Reduce brightness F1, Increase F2. Other key-combinations are not working. 3 Link to comment Share on other sites More sharing options...
RehabMan Posted September 5, 2017 Share Posted September 5, 2017 In my case brightness works with default clover FIX_PNLF. No new kexts. Full brightness range requires patching AppleBacklight.kext Info.plist or an injector (like I use). You will not get the lower levels if you match on 'Default'. 1 Link to comment Share on other sites More sharing options...
gujiangjiang Posted September 5, 2017 Share Posted September 5, 2017 Now i have a suggestion feature for kext load by clover. Could we add an list in clover boot GUI to select or cancel one or more kext. It is not just related with kext injection but also have good effect in update system. Sometimes when i update osx it shows kernel panic and i find the kext cause it but i must use such as PE to delete this kext to make me update successfully. If we have this list option can cancel some kext injection it will be more convenient for us to avoid some strange kernel panic which related to some unstable or incompatible kexts. Thanks. 从我的 iPhone 发送,使用 Tapatalk Link to comment Share on other sites More sharing options...
Slice Posted September 5, 2017 Share Posted September 5, 2017 Now i have a suggestion feature for kext load by clover. Could we add an list in clover boot GUI to select or cancel one or more kext. It is not just related with kext injection but also have good effect in update system. Sometimes when i update osx it shows kernel panic and i find the kext cause it but i must use such as PE to delete this kext to make me update successfully. If we have this list option can cancel some kext injection it will be more convenient for us to avoid some strange kernel panic which related to some unstable or incompatible kexts. Thanks. 从我的 iPhone 发送,使用 Tapatalk I also think about this menu. Should be made. Temporary you can use Shell provided with Clover to delete or move kexts from Clover folders. fs0:>rm -r EFI\CLOVER\kexts\Other\Bad.kext 4 Link to comment Share on other sites More sharing options...
Slice Posted September 6, 2017 Share Posted September 6, 2017 Looks fine except for the bank number for the vendor. The bank number is 0x83 but the code expects 3 because it does not take into account that the most significant bit is an odd parity bit. The code in file spd.c for DDR3 masks off the parity bit. Maybe the DDR4 code should do the same. Maybe both the DDR3 and DDR4 code should check the parity first and at least give an error message if it's wrong, then mask off the parity bit: UINT8 parity = bank; UINT8 testbit = bank; for (i=6; i >= 0; i--) { parity ^= (testbit <<= 1); } if ( (parity & 0x80) == 0 ) { DBG("Bad parity bank=0x%2X code=0x%2X\n", bank, code); } bank &= 0x7f; Bank 3, code 0x13 is manufacturer "Geil". Is that correct for your ram? How does this SPD data compare to the "Get Smbios" part of the log? Is there a valid manufacturer name there? Thanks for the proposition. I committed it to 4193 and want to see tests. Full brightness range requires patching AppleBacklight.kext Info.plist or an injector (like I use). You will not get the lower levels if you match on 'Default'. May be, but my simple method is enough for me. Feature request: Fix brightness range (max brightness) on 10.12.4+ (tested on HD3000) Setting LEVX to 1007 (max brightness for Sandy Bridge) gives me full range of brightness using AppleBacklight.kext without having to binary patch. I think this could be implemented the same way as SetIntelBacklight (which doesn't fully work for me BTW, breaks brightness slider). Hope more people find this useful. I will implement this but make please more accurate for the value 0x07100000 or 0x0710 or or 0x1007 2 Link to comment Share on other sites More sharing options...
ezsolt Posted September 6, 2017 Share Posted September 6, 2017 Sometimes my GPU fails, mainly on coldboot. I have to make a restart to get the nvidiawebdriwers to work. I am using Lilu and NvidiaFixup kexts, and I use iMac 17,1 and 18,3 smbioses 2017-09-06 07:10:47.897014+0200 localhost kernel[0]: (NVDAStartupWeb) <NVDAStartupWeb`NVDAStartupWeb::probe(IOService*, int*)> NVDAStartupWeb: ERROR: failed to find NVRAM registry entry <key>nvda_drv</key> <data> MQA= </data> The nvram key / value pair for the webdrivrs are always present, what could be the problem? Link to comment Share on other sites More sharing options...
LockDown Posted September 6, 2017 Share Posted September 6, 2017 <key>nvda_drv</key> <data> MQA= </data> ? Link to comment Share on other sites More sharing options...
Dr. Hurt Posted September 6, 2017 Share Posted September 6, 2017 Could someone please compile the latest Clover for me? I'm too lazy to debug the build environment Link to comment Share on other sites More sharing options...
SavageAUS Posted September 6, 2017 Share Posted September 6, 2017 Could someone please compile the latest Clover for me? I'm too lazy to debug the build environment https://www.dropbox.com/s/u6c32ir4f334tvp/Clover_v2.4k_r4194.pkg.zip?dl=0 1 Link to comment Share on other sites More sharing options...
Dr. Hurt Posted September 6, 2017 Share Posted September 6, 2017 https://www.dropbox.com/s/u6c32ir4f334tvp/Clover_v2.4k_r4194.pkg.zip?dl=0 Thank you very much. Saved me a lot of hard time Thanks for the proposition. I committed it to 4193 and want to see tests. May be, but my simple method is enough for me. I will implement this but make please more accurate for the value 0x07100000 or 0x0710 or <1007> or 0x1007 0x07100000 is correct. (at least for Sandy/Ivy, newer iGPUs might need other values) Just tested build 4194 with SetIntelMaxBacklight=True and it works perfectly. I get full range of brightness. 1 Link to comment Share on other sites More sharing options...
Slice Posted September 6, 2017 Share Posted September 6, 2017 Thank you very much. Saved me a lot of hard time 0x07100000 is correct. (at least for Sandy/Ivy, newer iGPUs might need other values) Just tested build 4194 with SetIntelMaxBacklight=True and it works perfectly. I get full range of brightness. Nice. Can you find Intel datasheet for this setting? Link to comment Share on other sites More sharing options...
SavageAUS Posted September 6, 2017 Share Posted September 6, 2017 Thank you very much. Saved me a lot of hard time 0x07100000 is correct. (at least for Sandy/Ivy, newer iGPUs might need other values) Just tested build 4194 with SetIntelMaxBacklight=True and it works perfectly. I get full range of brightness. Where is this option? SetIntelMaxBacklight=True ? Link to comment Share on other sites More sharing options...
Dr. Hurt Posted September 6, 2017 Share Posted September 6, 2017 Where is this option? SetIntelMaxBacklight=True ? You add it to config.plist under Devices. Read this post: #71 Link to comment Share on other sites More sharing options...
joevt Posted September 6, 2017 Share Posted September 6, 2017 Thanks for the proposition. I committed it to 4193 and want to see tests.I tested SavageAUS's build 4194 and compared my debug log before and after. The output for ScanSPD is unchanged for me because my ram is DDR4 with vendor "G Skill Intl" which is from bank 4 in memvendors.h, which has odd parity bit set to 0, so it doesn't have the problem that vendors from bank 0, 3, 5, 6, and 9 have. truesoldier should see an improvement in ScanSPD output because he has "Geil" ram (bank 3) which has the odd parity bit set. 1 Link to comment Share on other sites More sharing options...
Slice Posted September 6, 2017 Share Posted September 6, 2017 Thank you very much. Saved me a lot of hard time 0x07100000 is correct. (at least for Sandy/Ivy, newer iGPUs might need other values) Just tested build 4194 with SetIntelMaxBacklight=True and it works perfectly. I get full range of brightness. Probably it should resolve old problem kernel[0]: IG: Invalid firmware max backlight setting 1 Link to comment Share on other sites More sharing options...
SavageAUS Posted September 6, 2017 Share Posted September 6, 2017 You add it to config.plist under Devices. Read this post: #71 Yeah that's what I thought, so I did it on my Haswell laptop before and it made no difference with my backlight. Sent from my SM-G930F using Tapatalk Link to comment Share on other sites More sharing options...
Dr. Hurt Posted September 6, 2017 Share Posted September 6, 2017 Yeah that's what I thought, so I did it on my Haswell laptop before and it made no difference with my backlight. Sent from my SM-G930F using Tapatalk I wasn't sure that the max brightness issue affected newer models. Anyway, for Haswell and Broadwell, LEVX should be 0x0AD90000 and Skylake and Kabylake should be 0x056C0000. Perhaps this patch should be dynamic according to device id / CPU model. Or maybe customizable in config.plist 2 Link to comment Share on other sites More sharing options...
Recommended Posts