tluck Posted May 12, 2021 Share Posted May 12, 2021 On 5/10/2021 at 3:21 AM, Hervé said: Has anyone ever tried to inject compatibility with Apple's SD card reader 14e4:16bc for the Ricoh SD card reader? It works for various O2 models fitted to several Dell Latitude laptops and was understood/claimed to work for Ricoh readers fitted to T420/T430 but we never got confirmation for those. The following properties can be injected either in a patched DSDT through a DSM method under the SD card reader's ACPI device: Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { If (LEqual (Arg2, Zero)) { Return (Buffer (One) { 0x03 }) } Return (Package () { "AAPL,slot-name", // Optional Buffer (0x09) // Optional { // Optional "Built-in" // Optional }, // Optional "device_type", // Optional Buffer (0x11) // Optional { // Optional "Media Controller" // Optional }, // Optional "model", // Optional Buffer () // Optional { // Optional "<specify your model here>" // Optional }, // Optional "compatible", Buffer (0x0D) { "pci14e4,16bc" } }) } or through the bootloader config (Clover, OpenCore) at the SD card's IO location PciRoot(0x0)/Pci(...)/... : compatible pci14e4,16bc STRING AAPL,slot-name built-in STRING // Optional model <model here> STRING // optional device_type Media controller STRING // Optional hmm... interestingly a device shows up by adding this method, but when i put an SD card in the slot nothing happened. Built in SD Card Reader: Vendor ID: 0x1180 Device ID: 0xe823 Subsystem Vendor ID: 0x17aa Subsystem ID: 0x21ce Revision: 0x0005 Link Width: x1 Link Speed: 2.5 GT/s Link to comment Share on other sites More sharing options...
tluck Posted May 14, 2021 Share Posted May 14, 2021 (edited) On 5/12/2021 at 11:11 AM, Hervé said: With no other stuff that could interfere, like an add-on kext? The claim might have been a red herring though, hence why I was asking. Thank you for checking anyway, I'll update our info at OSXL on the matter. test1: use inject the method - sees an internal card reader but non-functional test2: use Voodoo kext - get an external generic card reader - which say it has an un-initialted/unformatted sd card (but that's not true as it is formatted) so doesn't work - can't read/write to it. I gave up on this effort for this box years ago since using USB card reader is very common and cheap. Edited May 14, 2021 by tluck Link to comment Share on other sites More sharing options...
Jief_Machak Posted May 19, 2021 Share Posted May 19, 2021 Hi @tluck. I'm struggling with a x220. I know it's not a t420 but I think they have the same mobo (I mean same chipset and everything). I got GUI freezes (mouse still moves) and artifacts. Artifacts are not that many so I can live with them. But GUI freezes are ultra annoying. Did you manage to get rid of GUI freezes on your t420 ? They are HD3000, right ? I found some OC config.plist with ReservedMemory "HD3000: IGPU memory corruption errata". DO you know what that is and if it works ? Link to comment Share on other sites More sharing options...
tluck Posted May 20, 2021 Share Posted May 20, 2021 (edited) 5 hours ago, Jief_Machak said: Hi @tluck. I'm struggling with a x220. I know it's not a t420 but I think they have the same mobo (I mean same chipset and everything). I got GUI freezes (mouse still moves) and artifacts. Artifacts are not that many so I can live with them. But GUI freezes are ultra annoying. Did you manage to get rid of GUI freezes on your t420 ? They are HD3000, right ? I found some OC config.plist with ReservedMemory "HD3000: IGPU memory corruption errata". DO you know what that is and if it works ? Hey Jief, yeah from a Hack perspective X220 and T420 are the same. if you look in the system log and see a bunch of br-sync messages then you have hit typical problem with HD3000. 2 things help 16 GB of memory EDID replacement and/or LCD replacement - AUO are very problematic. so we have more options for 1600x900. but for 1368 there are some EDIDs that will help fix this problem. my bundle supports Sierra, High Sierra, Mojave and Catalina (Mojave and Catalina are installed via Dosdude1 method) my T420 16GB with LG LCD never freezes and very very rare to see artifacts my T420 8GB with AUO LCD doesnt freeze but has some artifacts. not sure if helps or not but i do patch my NVRAM to have 1024GB vs normal 512GB. again patches are available in my example in github. https://github.com/tluck/Lenovo-T420-Clover Edited May 20, 2021 by tluck Link to comment Share on other sites More sharing options...
Jief_Machak Posted May 20, 2021 Share Posted May 20, 2021 3 hours ago, tluck said: Hey Jief, yeah from a Hack perspective X220 and T420 are the same. if you look in the system log and see a bunch of br-sync messages then you have hit typical problem with HD3000. 2 things help 16 GB of memory EDID replacement and/or LCD replacement - AUO are very problematic. so we have more options for 1600x900. but for 1368 there are some EDIDs that will help fix this problem. my bundle supports Sierra, High Sierra, Mojave and Catalina (Mojave and Catalina are installed via Dosdude1 method) my T420 16GB with LG LCD never freezes and very very rare to see artifacts my T420 8GB with AUO LCD doesnt freeze but has some artifacts. not sure if helps or not but i do patch my NVRAM to have 1024GB vs normal 512GB. again patches are available in my example in github. https://github.com/tluck/Lenovo-T420-Clover If did this "log show --last boot | grep br-sync" and found nothing. But I do have this typical problems ! Do you also change VRAMMethod in info.plist ? You mean the physical LCD has an effect ? How do I know if it's AUO ? Link to comment Share on other sites More sharing options...
tluck Posted May 20, 2021 Share Posted May 20, 2021 @Jief_Machak I never messed with VRAMMethod since just replacing the EDID was working. yes. replaced the physical LCD. my son broke the screen and i replaced with beautiful glossy LG for about $45 and it never hangs. The EDID will tell you make and model MAKE: LG = 30e4 MODEL: 366 (byte swapped) ioreg -l|grep yEDID | | | | | "IODisplayEDID" = <00ffffffffffff0030e466030000000000150104901f117802fc45955855922820505400000001010101010101010101010101010101582f40f861843c30a060350035ae1000001a901f40f861843c30a060350035ae1000001a000000fe00334e505236803134305744320a00000000000041319e0110000002010a202000a7> AUO=06af Model: 213e ioreg -l|grep yEDID | | | | | "IODisplayEDID" = <00ffffffffffff0006af3e210000000021140104901f11780261959c59528f2621505400000001010101010101010101010101010101f82a409a61840c30402a330035ae10000018a51c409a61840c30402a330035ae10000018000000fe0041554f0a202020202020202020000000fe004231343052573032205631200a00d0> then i built matching Override files which $ ls -l /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-30e4 total 32 -rw-r--r-- 1 tluck wheel 3975 Dec 31 2016 DisplayProductID-2e2 -rw-r--r-- 1 tluck wheel 3754 Mar 8 2020 DisplayProductID-2e3 -rw-r--r-- 1 tluck wheel 3975 Mar 8 2020 DisplayProductID-366 -rw-r--r-- 1 tluck wheel 579 Jan 4 2017 DisplayProductID-50b sorry it would be BRSYNC that indicates the gfx hang. 2018-02-04 02:42:00.705849+0300 0x545 Default 0x0 0 0 kernel: (AppleIntelHD3000Graphics) BRSYNC: (0x22040) = 0x0 2018-02-04 02:42:01.285151+0300 0x12e3 Default 0x0 0 0 kernel: (AppleIntelHD3000Graphics) BRSYNC: (0x22040) = 0x Link to comment Share on other sites More sharing options...
Jief_Machak Posted May 20, 2021 Share Posted May 20, 2021 2 hours ago, tluck said: @Jief_Machak I never messed with VRAMMethod since just replacing the EDID was working. yes. replaced the physical LCD. my son broke the screen and i replaced with beautiful glossy LG for about $45 and it never hangs. The EDID will tell you make and model MAKE: LG = 30e4 MODEL: 366 (byte swapped) ioreg -l|grep yEDID | | | | | "IODisplayEDID" = <00ffffffffffff0030e466030000000000150104901f117802fc45955855922820505400000001010101010101010101010101010101582f40f861843c30a060350035ae1000001a901f40f861843c30a060350035ae1000001a000000fe00334e505236803134305744320a00000000000041319e0110000002010a202000a7> AUO=06af Model: 213e ioreg -l|grep yEDID | | | | | "IODisplayEDID" = <00ffffffffffff0006af3e210000000021140104901f11780261959c59528f2621505400000001010101010101010101010101010101f82a409a61840c30402a330035ae10000018a51c409a61840c30402a330035ae10000018000000fe0041554f0a202020202020202020000000fe004231343052573032205631200a00d0> then i built matching Override files which $ ls -l /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-30e4 total 32 -rw-r--r-- 1 tluck wheel 3975 Dec 31 2016 DisplayProductID-2e2 -rw-r--r-- 1 tluck wheel 3754 Mar 8 2020 DisplayProductID-2e3 -rw-r--r-- 1 tluck wheel 3975 Mar 8 2020 DisplayProductID-366 -rw-r--r-- 1 tluck wheel 579 Jan 4 2017 DisplayProductID-50b sorry it would be BRSYNC that indicates the gfx hang. 2018-02-04 02:42:00.705849+0300 0x545 Default 0x0 0 0 kernel: (AppleIntelHD3000Graphics) BRSYNC: (0x22040) = 0x0 2018-02-04 02:42:01.285151+0300 0x12e3 Default 0x0 0 0 kernel: (AppleIntelHD3000Graphics) BRSYNC: (0x22040) = 0x So, I'm a bit lost. For you, the gfx hang is caused by the physical LCD, or by a wrong EDID ? Link to comment Share on other sites More sharing options...
tluck Posted May 20, 2021 Share Posted May 20, 2021 (edited) 2 hours ago, Jief_Machak said: So, I'm a bit lost. For you, the gfx hang is caused by the physical LCD, or by a wrong EDID ? in my experience the gfx hang problem is related to a broken or incompatible EDID (from the AUO display). the fix is to inject a compatible EDID. LG displays seem to work quite well (using the EDID from the LCD). So taking/injecting the EDID from an LG display has proven to fix AUO issues in this case. for many years, on macOS 10.9-10.12 this approach was workable and glitch-free however, in HighSierra some glitches (and hangs) came back on my box with AUO display. LG has no problems. for Mojave and Catalina there is no HD 3000 support, but we use the older gfx frames and HighSierra kexts. more memory - 16 GB vs 4 or 8 - seems to remove/reduce artifacts. bottom line: inject/replace the EDID with a compatible one. Edited May 20, 2021 by tluck Link to comment Share on other sites More sharing options...
Jief_Machak Posted May 21, 2021 Share Posted May 21, 2021 Wow, since so much time I'm looking, and I never saw anyone talking about EDID. But it makes sense. Artifact is not huge problems. If 10.12 could be hangs free, I may downgrade to 10.12. How to I find a good EDID ? X220 are 1368x768 panels. Do you have a 1368x768 LG panel ? Link to comment Share on other sites More sharing options...
tluck Posted May 21, 2021 Share Posted May 21, 2021 11 hours ago, Jief_Machak said: Wow, since so much time I'm looking, and I never saw anyone talking about EDID. But it makes sense. Artifact is not huge problems. If 10.12 could be hangs free, I may downgrade to 10.12. How to I find a good EDID ? X220 are 1368x768 panels. Do you have a 1368x768 LG panel ? yeah. replacing the EDID was an amazing thing discovered around 2013/2014... 10.12 Sierra is solid, for me HighSiera -> Catalina are all great. Some see more artifacts etc. I dont have that size on my boxes, but there is a config.1368x768.plist in my repo that may provide an alternative EDID for you. Frankly, its been so long since I created that particular config I can not recall where that EDID came from... Link to comment Share on other sites More sharing options...
Jief_Machak Posted May 23, 2021 Share Posted May 23, 2021 On 5/21/2021 at 8:38 PM, tluck said: yeah. replacing the EDID was an amazing thing discovered around 2013/2014... 10.12 Sierra is solid, for me HighSiera -> Catalina are all great. Some see more artifacts etc. I dont have that size on my boxes, but there is a config.1368x768.plist in my repo that may provide an alternative EDID for you. Frankly, its been so long since I created that particular config I can not recall where that EDID came from... Ok, I'm trying your EDID. Let's see. Booted fine. Do you know a way to check if I still got gfx hangs ? Like, is there something that make it hangs all the time, or is it just random ? Same for artefact : is there a test ? Link to comment Share on other sites More sharing options...
tluck Posted May 24, 2021 Share Posted May 24, 2021 On 5/21/2021 at 2:13 PM, Hervé said: EDID basically defines the screen's capabilities to the GPU so I'm a little sceptical about re-using the data pertaining to a given screen on a different one. It's a bit like injecting the DSDT of a given computer on a totally different one if I may push that far... I'd opt for experimentations with SwitchResX on the other hand. https://osxlatitude.com/forums/topic/7914-dell-latitude-e6220-with-i5-2520m-hd3000-and-1366x768-lcd-mavericksyosemiteel-capitansierrahigh-sierramojavecatalina/?do=findComment&comment=96340 the EDID injection method has worked about 5-6 years here without problems. but sure, you need a similar EDID that may have slight differences in the timings. the EDIDs i posted are from LCD panels (1600x900) that are known to be compatible T420 screen replacements. after Inject the LG EDID into the box with AUO - voila - happiness. but of course, this may not be the only way to get a good EDID (SwitchResX for example) On 5/22/2021 at 9:38 PM, Jief_Machak said: Ok, I'm trying your EDID. Let's see. Booted fine. Do you know a way to check if I still got gfx hangs ? Like, is there something that make it hangs all the time, or is it just random ? Same for artefact : is there a test ? both a bit random. artifacts are more common. gfx hangs - will show up in syslogs as BRSYNC messages. artifacts - i can often make them show up by using remote desktop, or starting terminal on my AUO LCD box. Link to comment Share on other sites More sharing options...
Jief_Machak Posted May 24, 2021 Share Posted May 24, 2021 Do we know what was wrong in AUO EDID ? Link to comment Share on other sites More sharing options...
goodguess Posted June 22, 2021 Share Posted June 22, 2021 Fellows, I want to use my T420 for some more time, don´t really need a M1 MBA with all bells and whistles. As Catalina will be the last version which can be used more or less safely, I was looking for an alternative for mail and web browsing. Elementary did spring to mind and its running fine on a 128GB mSATA now. Just one little nag remains in Catalina. The OS keeps telling me this at boot time: "The disk you inserted was not readable by this computer - Initialise… / Ignore / Eject" Does anybody know how to get rid of this nag screen, telling Catalina to ignore the mSATA? Link to comment Share on other sites More sharing options...
ShroomKing Posted June 24, 2021 Share Posted June 24, 2021 On 6/22/2021 at 10:58 PM, goodguess said: Fellows, I want to use my T420 for some more time, don´t really need a M1 MBA with all bells and whistles. As Catalina will be the last version which can be used more or less safely, I was looking for an alternative for mail and web browsing. Elementary did spring to mind and its running fine on a 128GB mSATA now. Just one little nag remains in Catalina. The OS keeps telling me this at boot time: "The disk you inserted was not readable by this computer - Initialise… / Ignore / Eject" Does anybody know how to get rid of this nag screen, telling Catalina to ignore the mSATA? Look up documentation for "vifs", you can probably configure it in a way that it doesn't automatically try to mount the mSATA. Using sudo vifs opens /etc/fstab in a text editor, the file is used to configure mount options for volumes. adding this line works for me for a similar usecase: UUID=REPLACE_WITH_VOLUME_IDENTIFIER none auto noatime,noauto,ro Link to comment Share on other sites More sharing options...
ShroomKing Posted June 24, 2021 Share Posted June 24, 2021 @tluck sorry for the strange question, where do you get the OpenCore binaries? I have tried to update OpenCore with files from https://github.com/acidanthera/OpenCorePkg but after replacing OpenCore.efi it doesn't boot. Have you made any changes to source code to make it work? Link to comment Share on other sites More sharing options...
ShroomKing Posted June 24, 2021 Share Posted June 24, 2021 There's a lot more to update than just OpenCore.efi. You need to download the entire set of folders and replace boot file, drivers, resources, tools, etc. The updated resources are not in the package of course but in acidanthera's OcBinaryData GitHub repo. Make sure you're aligned on the versions.I'm aware.Of course i’m replacing all the binaries with updated versions.What i mean is the OpenCore.efi file is what makes the boot fail, all the other files work, even the new drivers work fine when i switch back to the older OpenCore.efi file provided in tlucks repository.I’m thinking either some recent change in opencore broke compatibility with the t420 or tluck made some changes to source code to make it work in the first place. Link to comment Share on other sites More sharing options...
tluck Posted June 25, 2021 Share Posted June 25, 2021 (edited) On 6/24/2021 at 9:03 AM, ShroomKing said: @tluck sorry for the strange question, where do you get the OpenCore binaries? I have tried to update OpenCore with files from https://github.com/acidanthera/OpenCorePkg but after replacing OpenCore.efi it doesn't boot. Have you made any changes to source code to make it work? In my github repo, there is a full set of files for Clover AND OC (both of which I compile - so yes the OC verions is a custom version) - one change in OC a while back broke it - so i have a work around. the change is line 92 of Library/OcMainLib/OpenCoreNvram.c: gRT->SetVariable ( OC_VERSION_VARIABLE_NAME, &gOcVendorVariableGuid, _ OPEN_CORE_NVRAM_ATTR, + Config->Nvram.WriteFlash ? OPEN_CORE_NVRAM_NV_ATTR : OPEN_CORE_NVRAM_ATTR, AsciiStrLen (Version), (VOID *) Version ); Edited June 26, 2021 by tluck 2 Link to comment Share on other sites More sharing options...
Jief_Machak Posted August 10, 2021 Share Posted August 10, 2021 @tluck Hi, I'm back on that EDID problem on the x220. When I inject an EDID, either by Clover or by a file in /System/Library/Displays/Contents/Resources/Overrides, I still get the original one in ioreg (ioreg -lw0 | grep EDID. Could you confirm if the EDID in ioreg is the original one or if it must be the overridden one ? Link to comment Share on other sites More sharing options...
tluck Posted August 17, 2021 Share Posted August 17, 2021 On 8/10/2021 at 5:38 AM, Jief_Machak said: @tluck Hi, I'm back on that EDID problem on the x220. When I inject an EDID, either by Clover or by a file in /System/Library/Displays/Contents/Resources/Overrides, I still get the original one in ioreg (ioreg -lw0 | grep EDID. Could you confirm if the EDID in ioreg is the original one or if it must be the overridden one ? hmm. well if you inject the EDID via Clover it should be the new one. this what my graphics section looks like <key>Graphics</key> <dict> <key>DualLink</key> <integer>1</integer> <key>EDID</key> <dict> <key>#Comment</key> <string>LCD 1600x900</string> <key>Custom</key> <data> AP///////wAw5GYDAAAAAAAVAQSQHxF4AvxFlVhVkiggUFQAAAAB AQEBAQEBAQEBAQEBAQEBWC9A+GGEPDCgYDUANa4QAAAakB9A+GGE PDCgYDUANa4QAAAaAAAA/gAzTlBSNoAxNDBXRDIKAAAAAAAAQTGe ARAAAAIBCiAgAKc= </data> <key>Inject</key> <true/> </dict> <key>Inject</key> <dict> <key>Intel</key> <true/> </dict> </dict> Link to comment Share on other sites More sharing options...
Jief_Machak Posted August 24, 2021 Share Posted August 24, 2021 @tluck Have you checked that you have the same info as in your config.plist in ioreg ? You have nothing in /System/Library/Displays/Contents/Resources/Overrides ? Link to comment Share on other sites More sharing options...
tluck Posted August 27, 2021 Share Posted August 27, 2021 On 8/24/2021 at 8:52 AM, Jief_Machak said: @tluck Have you checked that you have the same info as in your config.plist in ioreg ? You have nothing in /System/Library/Displays/Contents/Resources/Overrides ? of course! the config.plist and ioreg is the same. the log verifies the EDID is updated. i do create a matching overrides but that doesnt contain the EDID - since clover does that. i use these files to change the color profile so that the LCD looks more natural instead of bluish and provide more sizes. 10:892 0:000 === [ RestSetup macOS ] ========================= 10:892 0:000 --- Custom EDID Table size:128 10:892 0:000 000 | 00 FF FF FF FF FF FF 00 30 E4 10:892 0:000 010 | E2 02 00 00 00 00 01 14 01 03 10:892 0:000 020 | 80 1F 11 78 E2 33 85 99 56 55 10:892 0:000 030 | 91 27 17 50 54 00 00 00 01 01 10:892 0:000 040 | 01 01 01 01 01 01 01 01 01 01 10:892 0:000 050 | 01 01 01 01 80 25 40 80 60 84 10:892 0:000 060 | 1A 30 30 20 35 00 36 AE 10 00 10:892 0:000 070 | 00 18 00 00 00 00 00 00 00 00 10:892 0:000 080 | 00 00 00 00 00 00 00 00 00 00 10:892 0:000 090 | 00 00 00 FE 00 4C 65 6E 6F 76 10:892 0:000 100 | 6F 0A 20 20 20 20 20 20 00 00 10:892 0:000 110 | 00 FE 00 31 36 30 30 78 39 30 10:892 0:000 120 | 30 0A 20 20 20 20 00 AD 10:892 0:000 Intel HD Graphics 3000 [8086:0126] :: PciRoot(0x0)\Pci(0x2,0x0) 10:892 0:000 Additional Intel GFX properties injected, continue 10:892 0:000 IntelHDMI: used 10:892 0:000 Intel: no default properties 10:892 0:000 Intel GFX revision = 0x9 10:892 0:000 setting specified layout-id=14 (0xE) 10:892 0:000 stringlength = 1204 10:892 0:000 CurrentMode: Width=1024 Height=768 ioreg -l|grep yEDID | | | | | "IODisplayEDID" = <00ffffffffffff0030e4e2020000000001140103801f1178e233859956559127175054000000010101010101010101010101010101018025408060841a303020350036ae10000018000000000000000000000000000000000000000000fe004c656e6f766f0a202020202020000000fe0031363030783930300a2020202000ad> Link to comment Share on other sites More sharing options...
roto31 Posted October 25, 2021 Share Posted October 25, 2021 This thread appears to be “finished” based on the comment thread. I hate to revive a “dead” thread but this is the thread I used to breathe life into my T420 before setting it aside a couple years ago. I have question regarding OpenCore? Can you upgrade to the later version of OpenCore or is it best yo stay with the version of OC this build originally came with? I’ve also tried an install with OC and the newest build of Clover. It successfully installs Catalina, goes through all of the post install patches from the USB. At the first startup I am presented with a weird rainbow effect and then it fades to completely black. It’s not a brightness issue. I have audio but no video. What needs to be changed? This has also happened with the newest Clover build as well. I have the basic T420 with Intel 3000 GPU, i5 and it has the 1366x768 panel. Link to comment Share on other sites More sharing options...
tluck Posted October 30, 2021 Share Posted October 30, 2021 On 10/24/2021 at 9:46 PM, roto31 said: This thread appears to be “finished” based on the comment thread. I hate to revive a “dead” thread but this is the thread I used to breathe life into my T420 before setting it aside a couple years ago. I have question regarding OpenCore? Can you upgrade to the later version of OpenCore or is it best yo stay with the version of OC this build originally came with? I’ve also tried an install with OC and the newest build of Clover. It successfully installs Catalina, goes through all of the post install patches from the USB. At the first startup I am presented with a weird rainbow effect and then it fades to completely black. It’s not a brightness issue. I have audio but no video. What needs to be changed? This has also happened with the newest Clover build as well. I have the basic T420 with Intel 3000 GPU, i5 and it has the 1366x768 panel. well this thread isn't dead or finished... but there isn't much activity! Not surprising as the T420 is about a decade old now. the github repo for thread is up to date with the lastest Clover and latest OC. Note I have not created a new zip bundle lately but the repo is current. However, to build an installer for Catalina you will need to use the dosdude1 tools to patch things up especially to get the Intel HD 3000 kexts. Since you you have the 1366x768 panel, I suggest you use Clover since there is low-res config option already to go - move config.1366x768.plist to config.plist. The OC config is for 1600x900 but can be easily modified. Link to comment Share on other sites More sharing options...
Tetonne Posted November 21, 2021 Share Posted November 21, 2021 thanks tluck for the last pack 🙂 1 Link to comment Share on other sites More sharing options...
Recommended Posts