[Letux-kernel] LetuxOS: Replicant for GTA04
H. Nikolaus Schaller
hns at goldelico.com
Sun Oct 25 18:13:11 CET 2020
> Am 25.10.2020 um 10:05 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
> Hi folks,
>> Am 22.10.2020 um 18:04 schrieb Lukas Maerdian <luk at slyon.de>:
>> Hi Nikolaus,
>> Am 20.10.20 um 20:31 schrieb H. Nikolaus Schaller:
>>> The status of my tests is:
>>> Kernel 4.14.202 boots up to the Replicant logo and then stucks.
>>> Kernel 4.19.152 writes ANDROID to the framebuffer but then reboots - this kernel should already support the GTA04A5 if I remember correctly.
>>> Kernel 5.4.72 panics somewhere in omapdrm.
>>> Kernel 5.9.1 drivers/staging/android/logger.c does not compile (problems with struct timespec).
>>> So there is some progress and potentially fixable issues.
>>> The most important one is that I do not know how to debug that there
>>> is no progress after the Replicant logo with 4.14 kernel. There is
>>> no console message, processes are running but nothing visible happens.
>>> Touch remains inactive. Console shell works.
>>> Ideas? Suggestions?
>> Uhh... I remember something like this from a few years ago.
>> Unfortunately, I can't remember how I fixed it back then.
>> IIRC it was somehow related to a missing driver, I think it was omapdrm or panel related :-/ I think I got it somehow solved by loading all the required modules (and dependencies!) manually via load_modules.sh
> I have some progress in analysing the situation.
> 1. I did test on a GTA04A4 where the Modem is broken
> 2. GTA04A5 works with the kernel which is part of the image
> DEV=/dev/sdb makesd replicant -r https://download.goldelico.com/gta04-replicant/4.2/20170423-kernel-4.10-replicant.tbz
> 3. if I install the binary kernel from https://download.goldelico.com/gta04-kernel/letux-4.10.5-replicant in addition
> EV=/dev/sdb makesd replicant -r https://download.goldelico.com/gta04-replicant/4.2/20170423-kernel-4.10-replicant.tbz -kboot https://download.goldelico.com/gta04-kernel/letux-4.10.5-replicant/uImage -dboot https://download.goldelico.com/gta04-kernel/letux-4.10.5-replicant/device-trees.tbz -m https://download.goldelico.com/gta04-kernel/letux-4.10.5-replicant/modules.tgz
> it also works.
> 4. if I checkout letux-4.10.y-replicant and run my build script the result hangs
> So there is some subtle difference between https://download.goldelico.com/gta04-kernel/letux-4.10.5-replicant
> and a fresh build.
> Maybe a CONFIG or the way the kernel modules are built.
> But having a working and a non-working setup with not too much differences
> allows to inspect the diffs...
I have now used makesd to create a fresh SD card with both methods mentioned above, made a copy of all files and did run diff.
Nothing significantly different.
Then I copied all relevant files from https://download.goldelico.com/gta04-kernel/letux-4.10.5-replicant to a local directory and did run my download/installation script.
And again did a copy of all files and diffs. No significant diffs. And the SD card boots.
Next, I build a kernel from source and installed that on the SD card. Now there is a significant diff. Not in device trees, not in uImage and not even in kernel modules (they are all binary identical).
But my build installs a lot of modules.* files in /system/lib/modules.
This is intended to help modprobe know which modules are to be loaded.
And this SD card hangs...
So I started to delete the module.* files to prepare a reboot without them and interestingly, the modules.dep.bb did reappear!
Some background process must have created a fresh one!
And the GTA04 did complete the boot (without even trying a reboot).
This means I have found the issue. It looks as if my prebaked modules.dep.bb is bad. But not that bad as a missing one that is recreated.
The prebaking script is here:
With this fixed I should be able to rebuild letux-4.10.5-replicant and maybe letux-4.10.17-replicant.
And it will become interesting if 4.14 also works.
More information about the Letux-kernel