It is finally done!
My first #linux #kernel patch has made its way into the current 6.12 release!🥳
19.11.2024 20:34It is finally done!My first #linux #kernel patch has made its way into the current 6.12...Moved from #Plume to my #self_hosted #blog and published the prequel to my #Thinkpad #E531 #hacking series:
https://blog.der-fetzer.de/2024/08/05/thinkpad-e531-hacking-0.html
#Hacking, #reverseengineering and analyzing #UEFI images and EC #firmware is such a rabbit hole!
There is so much to explore. I simply cannot stop.😅
Submitted my first patch to the #Linux #kernel mailing list.🥳
Let's see what happens next.😅
I managed to gain R/W access to the whole EC address space on my #Thinkpad #E531!💪
And this does not even involve disassembly, soldering or other hardware shenanigans.
Game over #Lenovo!
12.7.2024 16:29I managed to gain R/W access to the whole EC address space on my #Thinkpad #E531!💪 And this does not even involve disassembly, soldering...IT IS CHARCHING!!!!!🥳
This has been quite a journey!
I plan to create a blogpost and/or repository in the next couple of days.
Hopefully that can help some people having the same problem. But to be fair it is not that easy to reflash the EC. At least you do not have to disassemble the laptop as much as when flashing the BIOS.
#lenovo #thinkpad #e531
#firmware #hacking #reversengineering
I hate #Lenovo for implementing all sorts of whitelisting rubbish!🤬
7.7.2024 20:10I hate #Lenovo for implementing all sorts of whitelisting rubbish!🤬Trying to figure out how my #ThinkPad Edge #E531 does the detection that it has a "genuine" battery.
Of course it has to be implemented inside the EC firmware.
It is an ENE KB9012. I have the datasheet as well as a dump of its firmware and the schematics for the laptop. But I cannot find where it writes to or reads from the right #SMBus registers.
Does anyone know where I can get in contact with the right people in this domain?
#reverseengineering #followerpower #firmware #hacking #8051
7.7.2024 20:09Trying to figure out how my #ThinkPad Edge #E531 does the detection that it has a "genuine" battery.Of course it has to be...As always the fix was simple. Of course the hard thing is to find out what to change.😉
When comparing the register values to the old stock kernel I noticed that the polarity of the RGB DCLK pin was set to inverted there.
The upstream kernel driver sets this to inverted unconditionally but the field was not defined for RK3188.
So I added it and now everything looks as it should!🥳
https://github.com/DerFetzer/linux-stable/commit/2914759acdf7f40d155086db53bd6f9915a20620
20.9.2023 22:59As always the fix was simple. Of course the hard thing is to find out what to change.😉 When comparing the register values to the old...Can somebody tell me what can cause such artifacts?
These are pictures taken from a #RK3188 tablet screen running Arch Linux Arm.
The artifacts are also present when using a framebuffer image viewer or on a buildroot image.
For some weeks I am working on porting a current #linux #kernel to this device.
20.9.2023 18:25Can somebody tell me what can cause such artifacts?These are pictures taken from a #RK3188 tablet screen running Arch Linux Arm.The...Schön, dass man auch mal die Ressourcen nutzt, die man so zur Verfügung hat!😉
#linux #kernel
Finally got audio working on my #rockchip #rk3188 tablet!🥳
7.9.2023 15:45Finally got audio working on my #rockchip #rk3188 tablet!🥳Of course I just found a version of the same driver inside a #linux #kernel 4.4 with device tree and so on.😅
As there are even new features in it I will try to use this instead. It should at least not be as complicated to port as the older one.
Porting a #linux driver from #kernel version 3.0 to 6.4 is quite a journey.😅
It does not work yet, but at least it compiles!🥳
#rockchip #embedded
I hate semiconductor companies that do not publish full reference manuals for their chips!😬
Of course I avoid using those ICs but when working with existing hardware you have no choice.
30.8.2023 12:26I hate semiconductor companies that do not publish full reference manuals for their chips!😬 Of course I avoid using those ICs but when...@plaimbock @edvans Of course in the end the root cause was quite trivial: There are no pull-up resistors on the board and the default #RK3188 device tree configures the SD pins without pull-up.🙈
So enabling the internal ones solved all the problems.
What puzzles me is that it worked without pull-up resistors in the first place.🤔
30.8.2023 12:07@plaimbock @edvans Of course in the end the root cause was quite trivial: There are no pull-up resistors on the board and the default...Are there any #rockchip #rk3188 #linux experts on the fediverse?
I know this chip is ancient but I am porting #linux to one of my old tablets and experience massive stability issues with everything related to SD(IO).
27.8.2023 19:25Are there any #rockchip #rk3188 #linux experts on the fediverse?I know this chip is ancient but I am porting #linux to one of my old tablets...Of course it never happened again and the lock verification mechansim inside the kernel did not trigger either.😅🤔
23.8.2023 06:31Of course it never happened again and the lock verification mechansim inside the kernel did not trigger either.😅🤔Deadlock inside the dw_mmc #linux driver.
Let's see how the built-in debugging tools work for something like this.
#embedded
@schnedan Even with 20MHz it works very unreliably and finally stalls the CPU on a small download. This is not very good.🧐
22.8.2023 17:13@schnedan Even with 20MHz it works very unreliably and finally stalls the CPU on a small download. This is not very good.🧐