joe82 Posted June 17, 2017 Share Posted June 17, 2017 This is my understanding of the Nvidia NVMT. This is for LVDS interfaces. Display port interfaces have more parameters. This is guess work and trial and error. I have never worked for Apple or Nvidia. Use a MacBookPro5,4 as an example. Start with the EDID. Most of the information comes from here. MacBookPro5,4 EDID: ================================================================================ Extracted contents: header: 00 ff ff ff ff ff ff 00 serial number: 06 10 a3 9c 00 00 00 00 00 13 version: 01 03 basic params: 80 21 15 78 0a chroma info: f5 95 a3 55 4f 9c 26 0f 50 54 established: 00 00 00 standard: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 descriptor 1: ab 22 a0 a0 50 84 1a 30 30 20 36 00 4b cf 10 00 00 18 descriptor 2: 00 00 00 01 00 06 10 30 00 00 00 00 00 00 00 00 0a 20 descriptor 3: 00 00 00 fe 00 4c 50 31 35 34 57 50 34 2d 54 4c 41 31 descriptor 4: 00 00 00 fe 00 43 6f 6c 6f 72 20 4c 43 44 0a 20 20 20 extensions: 00 checksum: 00 Manufacturer: APP Model 9ca3 Serial Number 0 Made week 0 of 2009 EDID version: 1.3 Digital display Maximum image size: 33 cm x 21 cm Gamma: 2.20 Supported color formats: RGB 4:4:4, YCrCb 4:2:2 First detailed timing is preferred timing Established timings supported: Standard timings supported: Detailed mode: Clock 88.750 MHz, 331 mm x 207 mm 1440 1488 1520 1600 hborder 0 900 903 909 926 vborder 0 -hsync -vsync Manufacturer-specified data, tag 1 ASCII string: LP154WP4-TLA1 ASCII string: Color LCD Checksum: 0x0 (valid) EDID block does NOT conform to EDID 1.3! Missing name descriptor Missing monitor ranges ================================================================================ MacBookPro5,4 NVMT: ================================================================================ 0b 03 7f 20 06 10 a3 9c a0 05 84 03 40 06 d0 05 f0 05 00 00 9e 03 87 03 8d 03 00 00 b0 37 4a 05 00 00 01 01 e1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 40 ff 10 05 02 00 00 00 00 00 00 00 00 08 00 00 86 03 00 00 ================================================================================ ================================================================================ 0b: This is a version number 03: Not clear. It seems to indicate the type of interface to the display 7f: This correlates with where to find the monitor name 7F is an ASCII string in the EDID FF is the Monitor Identifier field in the EDID 20: Not clear. This might be the type of display 06 10 a3 9c: This is the manufactor ID and Device ID from the EDID See the "serial number" above. For this section see "Detailed mode" above a0 05: This is 1440. This is the line length from the first set of resolutions. 84 03: This is 900. This is the number of lines in the first set of resolutions. For this section see "Detailed mode" above 40 06: This is 1600. This is the line length from the forth set of resolutions. d0 05: This is 1488. This is the line length from the second set of resolutions. f0 05: This is 1520. This is the line length from the third set of resolutions. 00 00: Unknown/Unused For this section see "Detailed mode" above 9e 03: This is 926. This is the number of lines in the forth set of resolutions. 87 03: This is 903. This is the number of lines in the second set of resolutions. 8d 03: This is 909. This is the number of lines in the third set of resolutions. 00 00: Unknown/Unused b0 37 4a 05: This is 88750000. This is the clock rate is Hertz. See "Detailed mode" above. 00 00: Unknown/Unused 01: This might be a lid flag. 01: Unknown/Unused. e1: Possible parameter for intensity at boot. 00 00 00 00 00 00 00 00 00 00 00: Unknown/Unused 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00: Unknown/Unused 00 00 00 00 ff ff 00 00 00 00 00 00: Unknown/Unused 40 ff 10 05: This is 85 MHz. This is the max per link frequency. 02: This means dual link. 01 for Single link. 00 00 00 00 00 00: Unknown/Unused 00: Possible parameter for Intensity at boot. 00 08 00 00: Unknown/Unused 86 03: This is 902. This goes to AppleBacklightAtBoot under the PNLF device. This is the LCD intensity at boot. 00 00: Unknown/Unused ================================================================================ There seems to be at least two ways to specify the intensity of the display at boot. The following are the NVMTs for a MacBookPro5,3 and MacBookPro5,4.MacBookPro5,3 NVMT: ================================================================================ 0b 03 7f 20 06 10 a3 9c a0 05 84 03 40 06 d0 05 f0 05 00 00 9e 03 87 03 8d 03 00 00 b0 37 4a 05 00 00 01 01 aa 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 40 ff 10 05 02 00 00 00 00 00 00 03 00 08 00 00 ab aa 00 00 ================================================================================ MacBookPro5,4 NVMT: ================================================================================ 0b 03 7f 20 06 10 a3 9c a0 05 84 03 40 06 d0 05 f0 05 00 00 9e 03 87 03 8d 03 00 00 b0 37 4a 05 00 00 01 01 e1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 00 00 00 00 40 ff 10 05 02 00 00 00 00 00 00 00 00 08 00 00 86 03 00 00 ================================================================================ The two machines use the same LCD display. The NVMTs are different. The only differences are bytes 36, 87, 92, and 93. For the MacBookPro5,3 these are AA, 03, AB, AAFor the MacBookPro5,4 these are E1, 00, 86, 03The difference seems to be the MacBookPro5,4 always sets the intensity to 0x0386 at boot. The MaxBookPro5,3 remembers the last setting and restores it to that value. For Clover, you need EmuVariableUefi-64.efi for this to work. Here are those values for various MacBook machines that use Nvidia.Sorted by NVMT[93], NVMT[92] then NVMT[87]: ================================================================================ MBA2,1: e0 00 0380 MBP5,4: e1 00 0386 MBP3,1: f3 00 03CF MBP5,1: ff 00 03FF ================================================================================ MBP7,1: 0a 03 0028 MBP5,5: 00 03 0400 ================================================================================ MBP4,1: ff 04 03FF MBP6,1: ff 04 03FF ================================================================================ MBP5,2: aa 03 AAAB MBP5,3: aa 03 AAAB MBP6,2: aa 04 AAAB ================================================================================ Those values seem to be correlated. 1 Link to comment Share on other sites More sharing options...
Recommended Posts