Administrators Hervé Posted March 1 Administrators Share Posted March 1 You only patch connectors if you want/need to. And if you do, you need the framebuffer-conX-enable properties set to true. Property framebuffer-patch-enable is to patch framebuffer general properties, not connectors characteristics. I think you're all over the place in your attempts to obtain 4K@60Hz and doing things wrong. Why do you increase NVRAM to 2GB? It's not really necessary and won't help towards getting 4K@60Hz. I see a commented property (thank God!) for EDID injection! Only laptops may require this, not external screens. You may have other items such as boot args that now cause your graphics-related KP. Make sure to proceed cautiously with a bootable USB key and to experiment with suitable parameters not just anything you can throw at the Hack. I would invite you to read the Whatevergreen manual + Github information for details about patches and boot-args. Link to comment Share on other sites More sharing options...
robi62 Posted March 2 Author Share Posted March 2 ok I understand This is my new dp config I took out 2gb config so If I don't get 4k@60 I just have to try with a different device??? Is that correct???? What about DVMT in bios ??? What should it be???? Link to comment Share on other sites More sharing options...
Administrators Hervé Posted March 2 Administrators Share Posted March 2 Those connector patches are somehow incorrect; if you opt for alldata connector patches, know that it's a 12byte value as stated in the WEG user manual. You inject 14, so... Maybe you should opt for the specific individual patches like index (8bit), busId (8bit), pipe (16bit), type (32bit), flags (32bit). You may find this less confusing. You need to read the WEG user manual with all due attention, all these are thoroughly explained at the bottom of the document. Framebuffer layout and iGPU device id are not aligned, meaning that if you opt for, say, framebuffer 0x59260000 (AAPL,ig-platform-id 00002659), you do not have to set iGPU device id to 0x5926 (device-id 26590000). Start with default/native device id (i.e. remove the injected property), then experiment with different layouts. You may then fake a different iGPU id and start all over with framebuffers. Proceed in an orderly and logical manner. If you're able to boot without the stolenmem and fbmem patches, then DVMT is already set to, at least, 64MB and you can forget about it. Nothing prevents you from checking if you have an option in your computer's BIOS settings to adjust this. But as long as it's set to 64MB minimum, you're Ok for graphics acceleration and should be Ok for 4K. More than 64MB is a plus but rarely necessary. See our dedicated thread on DVMT in our FAQ section. My Skylake E7270 gives me 4K@60Hz with DVMT patched to 64MB, KBL framebuffer 0x59100000 and fake device id 0x5916. Make sure to consult the KBL framebuffers information detailed in the Whatevergreen user manual re: connectors and DVMT. Careful if you experiment with framebuffer 0x59260007 because that one is stipulated with 79MB total stolen memory. With DVMT set to 64MB, I expect you'll encounter KP. Ok if DVMT is set to 96MB. Link to comment Share on other sites More sharing options...
robi62 Posted March 2 Author Share Posted March 2 hi so you are telling not to put device-id and use only AAPL,ig-platform-id The values for connector are copied form whatever green manual???? Maybe I need to delete space in between??? It would help it you could post a facsimile dp config file so I can understand what do you mean..... Link to comment Share on other sites More sharing options...
Administrators Hervé Posted March 2 Administrators Share Posted March 2 The WEG manual details the connectors patches very clearly and as follows; I really don't know where you copied your values from... framebuffer-conX-enable (enabling patches for connector X) framebuffer-conX-index framebuffer-conX-busid framebuffer-conX-pipe framebuffer-conX-type framebuffer-conX-flags framebuffer-conX-alldata (completely replace the connector) framebuffer-conX-YYYYYYYY-alldata (completely replace the connector, if the current framebuffer matches YYYYYYYY) Where X is the connector index. Alldata patches can patch multiple connectors in sequence by putting them in a single string and specifying the index of a connector to start with. The string length should be a multiple of 12 bytes (the length of a single connector) You may have missed that 12-bytes alldata property is comprised of index + busid + pipe + type + flags. I specified the size of each element in my previous post. This parameter can cover multiple connectors as long as you specify a multiple of 12 bytes and these will cover the specified connector and the following multiple-1 connectors. For instance: framebuffer-con0-alldata AAAAAAAABBBBBBBBCCCCCCCCLLLLLLLLMMMMMMMMNNNNNNNNXXXXXXXXYYYYYYYYZZZZZZZZ DATA is the same as framebuffer-con0-alldata AAAAAAAABBBBBBBBCCCCCCCC DATA framebuffer-con1-alldata LLLLLLLLMMMMMMMMNNNNNNNN DATA framebuffer-con2-alldata XXXXXXXXYYYYYYYYZZZZZZZZ DATA and framebuffer-con1-alldata DDDDDDDDEEEEEEEEFFFFFFFFRRRRRRRRSSSSSSSSTTTTTTTT DATA is the same as framebuffer-con1-alldata DDDDDDDDEEEEEEEEFFFFFFFF DATA framebuffer-con2-alldata RRRRRRRRSSSSSSSSTTTTTTTT DATA Note that you can't patch con0 and con2 (without patching con1) in a single 24-bytes alldata injection. This being said, experiment with iGPU properties injections such as this: AAPL,ig-platform-id 00001659 DATA (-> KBL framebuffer 0x59160000) AAPL,slot-name Built-in STRING (-> this is purely cosmetic) force-online 1 NUMBER (-> same as igfxonln=1 boot-arg) Given that your screen appeared attached to connector con1 in a previous IOReg extract, it's fair to say that you may experiment with any other framebuffer that has con1 as DP by default. These include: Desktop: 0x59120000 (the recommended framebuffer for KBL desktop but does not seem to suit you) 0x59230000 0x59260000 0x59260007 (watch, max stolenmem set to 79MB so DVMT must be 96MB, else KP most probably) 0x59270000 Laptop: 0x59160000 (this is the default framebuffer if you do not inject any specific AAPL,ig-platform-id property) 0x59160009 0x591C0005 0x591E0000 0x591E0001 0x59260002 0x59270004 0x59270009 0x87C00000 0x87x00005 Mobile framebuffer 0x591B0000 defines 3 ports: LVDS + HDMI + DP so, if you use that one, you'll have to patch con1 to DP by adding the following properties: framebuffer-patch-enable 1 NUMBER framebuffer-con1-enable 1 NUMBER framebuffer-con1-type 00040000 DATA If you do not get anywhere with any of those framebuffer and default/native device id 0x5912 (that of your particular iGPU), then you may add the following property: device-id 0x16590000 DATA and start your experimentation again with all those frame buffers above. Then, you may consider doing it all again with other device ids but that's a rather unusual thing to do. Supported device ids are listed in the WEG user manual. If nothing works out to provide you 4K@60Hz, you may then consider patching connector's Flags but I'm dry on that one; never had to. This would be done with the following additional properties: framebuffer-patch-enable 1 NUMBER framebuffer-conX-enable 1 NUMBER (-> where X is target connector framebuffer-conX-flags XXXXXXXX DATA (-> where X is target connector and XXXXXXXX target flags value) NB: Please note that you never enter any space in DATA values; spaces are simply displayed by tools such as OCC or CC for ease of reading. Good luck. Link to comment Share on other sites More sharing options...
robi62 Posted March 8 Author Share Posted March 8 hi still trying but why is it that when I manage to connect with dp colour is funny???? I enclose ioreg iMac.zip Link to comment Share on other sites More sharing options...
Administrators Hervé Posted March 8 Administrators Share Posted March 8 No idea what you mean by colour being "funny". If colours look funny to you on screen, maybe you just need to tune/calibrate your screen profile or use a different one. IOReg shows KBL framebuffer 0x59120000, yet you still inject patches to set con0/con1/con2 to DP, which is what they natively are... ID: 59120000, STOLEN: 38 MB, FBMEM: 0 bytes, VRAM: 1536 MB, Flags: 0x0000110B TOTAL STOLEN: 39 MB, TOTAL CURSOR: 1 MB (1572864 bytes), MAX STOLEN: 115 MB, MAX OVERALL: 116 MB (122171392 bytes) Model name: Intel HD Graphics KBL CRB Camellia: CamelliaDisabled (0), Freq: 1388 Hz, FreqMax: 1388 Hz Mobile: 0, PipeCount: 3, PortCount: 3, FBMemoryCount: 3 [1] busId: 0x05, pipe: 9, type: 0x00000400, flags: 0x00000187 - ConnectorDP [2] busId: 0x04, pipe: 10, type: 0x00000400, flags: 0x00000187 - ConnectorDP [3] busId: 0x06, pipe: 10, type: 0x00000400, flags: 0x00000187 - ConnectorDP 01050900 00040000 87010000 02040A00 00040000 87010000 03060A00 00040000 87010000 No harm of couse, just totally useless. Link to comment Share on other sites More sharing options...
robi62 Posted March 9 Author Share Posted March 9 Hi colour was like violet and if I dont specify connectords it would connet as hdmi and not dp as I checked with ioreg Link to comment Share on other sites More sharing options...
Administrators Hervé Posted March 9 Administrators Share Posted March 9 Try and change con1's pipe to 0x12. Link to comment Share on other sites More sharing options...
robi62 Posted March 12 Author Share Posted March 12 Im not having much luck It always connects to HDMI instead of DP If I set connector to dp black screen on boot and then I have to figit with dp cable until display work but then colours are violet. hopeless cause also after sleep screen stays black I think putting back windows and sell it again Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now