|
![]() |
|
Thread Tools | Search this Thread |
![]() |
#1 |
Zealot
![]() Posts: 147
Karma: 20
Join Date: Jul 2019
Device: Kindle Touch (K5) Wi-Fi x 2, Kindle (7th Gen, KT2), Paperwhite 3rd Gen
|
Backporting a newer version of the Kindle firmware/GUI from Paperwhite to Touch
Is it possible at all to take a rootfs from a Kindle Paperwhite (especially the original Paperwhite, since it is very similar to the Touch on the inside) and coax that into booting with a Kindle Touch kernel?
I specifically asked about transplanting the whole root partition, beacuse the UI part alone is apparently too complex to be moved. |
![]() |
![]() |
![]() |
#2 |
BLAM!
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 13,506
Karma: 26047202
Join Date: Jun 2010
Location: Paris, France
Device: Kindle 2i, 3g, 4, 5w, PW, PW2, PW5; Kobo H2O, Forma, Elipsa, Sage, C2E
|
Not the same CPU, not the same libc, possibly with a higher kernel requirement... Here be dragons.
|
![]() |
![]() |
![]() |
#3 |
Going Viral
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
|
|
![]() |
![]() |
![]() |
#4 | |
Zealot
![]() Posts: 147
Karma: 20
Join Date: Jul 2019
Device: Kindle Touch (K5) Wi-Fi x 2, Kindle (7th Gen, KT2), Paperwhite 3rd Gen
|
Quote:
As libc version is concerned, we're transplanting the whole shebang, not just /opt, so that shouldn't be a problem, should it? And even if it was, the SoCs are the same, so porting the kernel won't be a very big issue (regularly done in the world of Android and other embedded designs when the two devices share the same SoC). I've also skimmed though this thread, which seems to be the only attempt here at doing something similar, and it (kind of, somewhat, a little) worked, despite the fact that there are much more differences. Last edited by WaseemAlkurdi; 07-19-2019 at 05:46 PM. |
|
![]() |
![]() |
![]() |
#5 |
BLAM!
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 13,506
Karma: 26047202
Join Date: Jun 2010
Location: Paris, France
Device: Kindle 2i, 3g, 4, 5w, PW, PW2, PW5; Kobo H2O, Forma, Elipsa, Sage, C2E
|
@WaseemAlkurdi: My bad, I was thinking of the PW2, which moved to an i.MX6SL.
The rest still stands though ![]() EDIT: Although, you might be in luck, since FW 5.9.7 was apparently still setup to support Linux 2.6.32, even on PW2+ which moved at least to 3.0.35 ![]() The K4 was a funny beast in that it was essentially a K5 masquerading as a K3. The hardware is roughly similar to a K5, but it's running on what's essentially the K3 FW. There's even a nifty epdc shim to bridge between the two different epdc APIs. Last edited by NiLuJe; 07-19-2019 at 05:59 PM. |
![]() |
![]() |
![]() |
#6 | ||
Zealot
![]() Posts: 147
Karma: 20
Join Date: Jul 2019
Device: Kindle Touch (K5) Wi-Fi x 2, Kindle (7th Gen, KT2), Paperwhite 3rd Gen
|
Quote:
The PW and the Touch have the same SoC. I'm sure that you are aware that it takes some effort to bring up Linux on a particular SoC. So, since they decided to reuse the i.MX508, they are very, very likely to have reused their existing Linux kernel trees as well, but slightly modifying them to add drivers for the frontlight and so on. And doing otherwise means that there is a very serious disconnect between Lab126's various teams (which I don't believe to be the case). I'm betting that it runs none other than Linux Kernel 2.6.31, the one on my Kindle Touch. ![]() Edit (noticed yours after submitting mine): Quote:
I was initially thinking about targeting 5.4.x, since this is the last version released to the original Paperwhite, but let's shoot for the stars! Last edited by WaseemAlkurdi; 07-19-2019 at 06:01 PM. |
||
![]() |
![]() |
![]() |
#7 |
BLAM!
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 13,506
Karma: 26047202
Join Date: Jun 2010
Location: Paris, France
Device: Kindle 2i, 3g, 4, 5w, PW, PW2, PW5; Kobo H2O, Forma, Elipsa, Sage, C2E
|
@WaseemAlkurdi: I don't have access to my PW1, and I'm way too lazy to check the final PW1 sources, but that sounds sensible
![]() The most notable differences will be the touch input (IR -> capa) and lighting (ext. port -> FL). TL;DR: PW2+ FW is probably a no-go (req. 2.6.32), but PW1, eeeeeeh. Which begs the question: is there anything at all worth the trouble between 5.3.7.3 and 5.6.1.1? Last edited by NiLuJe; 07-19-2019 at 06:05 PM. |
![]() |
![]() |
![]() |
#8 | |
Zealot
![]() Posts: 147
Karma: 20
Join Date: Jul 2019
Device: Kindle Touch (K5) Wi-Fi x 2, Kindle (7th Gen, KT2), Paperwhite 3rd Gen
|
Quote:
![]() Edit: Wait ... isn't the kernel version on the Touch == 2.6.32? That means that it meets the base requirements, doesn't it? |
|
![]() |
![]() |
![]() |
#9 | |
Zealot
![]() Posts: 147
Karma: 20
Join Date: Jul 2019
Device: Kindle Touch (K5) Wi-Fi x 2, Kindle (7th Gen, KT2), Paperwhite 3rd Gen
|
Quote:
But if it works without porting the kernel ... then we're done! ![]() There is something odd ... whenever I edit one of my posts, the post before the last disappears ... is it related to my new-user state? |
|
![]() |
![]() |
![]() |
#10 | |
Going Viral
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
|
Quote:
You must have matching builds of all modules. Some of those are in the initramfs (u-image) and some are in the usual /lib/modules/<version>/* (rootfs.img) file system path. And when you are re-building the PW kernel&modules for the touch kernel&modules hardware (including e-ink differences) don't forget that you must get everything ABSOLUTELY correct. (If the newly built kernel hangs, while booting the kindle ...) If you must insist on doing this - You really should set-up the touch hardware to load the new, test u-image&rootfs.img combination over the network rather than committing to the flash drive hardware. (Yes, the 5.x series hardware support includes loading over the network.) Last edited by knc1; 07-19-2019 at 06:39 PM. |
|
![]() |
![]() |
![]() |
#11 |
BLAM!
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 13,506
Karma: 26047202
Join Date: Jun 2010
Location: Paris, France
Device: Kindle 2i, 3g, 4, 5w, PW, PW2, PW5; Kobo H2O, Forma, Elipsa, Sage, C2E
|
@WaseemAlkurdi: 2.6.31 on the Touch (at least originally. Might have been updated later, although I doubt it).
|
![]() |
![]() |
![]() |
#12 | |||
Zealot
![]() Posts: 147
Karma: 20
Join Date: Jul 2019
Device: Kindle Touch (K5) Wi-Fi x 2, Kindle (7th Gen, KT2), Paperwhite 3rd Gen
|
Quote:
This is currently my biggest fear, as I don't have a serial cable, nor are my soldering skills any good. ![]() Quote:
Quote:
But anyhow, it's going to be 5.4.x first, as no kernel work is required (if the versions turn out to be identical). |
|||
![]() |
![]() |
![]() |
#13 |
BLAM!
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 13,506
Karma: 26047202
Join Date: Jun 2010
Location: Paris, France
Device: Kindle 2i, 3g, 4, 5w, PW, PW2, PW5; Kobo H2O, Forma, Elipsa, Sage, C2E
|
In this case, yes, as 2.6.32 > 2.6.31, so the dynamic loader will gently tell you to get out of its lawn
![]() The K5 is very, very, very, very hard to permanently brick, as we can put it in downloader / fastboot mode or whatever it's actually called (see Kubrick) ![]() |
![]() |
![]() |
![]() |
#14 | |
Going Viral
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
|
Quote:
You had better test the 'modinfo' output from the same named module in both rootfs.img files.* "versions turn out to be identical" IS NOT the total criteria for getting the kernel to load modules from a different build. *because I really do know what I am writing about. |
|
![]() |
![]() |
![]() |
#15 | ||
Zealot
![]() Posts: 147
Karma: 20
Join Date: Jul 2019
Device: Kindle Touch (K5) Wi-Fi x 2, Kindle (7th Gen, KT2), Paperwhite 3rd Gen
|
Quote:
![]() Quote:
An easy way would be by cracking rootfs open and seeing what's the name of the folder under /lib/modules/. If for some reason that doesn't work, then it could be checked via extraction of uImage. What do you think? ![]() ![]() |
||
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Paperwhite w/ 3G firmware version question | cspittell | Amazon Kindle | 7 | 06-15-2018 07:29 PM |
Current Firmware Version of New Paperwhite or Voyage | victoryhollow | Kindle Developer's Corner | 17 | 06-11-2015 08:08 AM |
Paperwhite 2: what firmware version does it come with? | ixtab | Amazon Kindle | 48 | 11-08-2013 10:57 PM |
Backporting firmware 4.0.1 on Kindle 3 - in progress | giorgio130 | Kindle Developer's Corner | 49 | 04-02-2012 04:18 AM |
How to install prior version of Calibre when newer version installed? | SilentSeven | Calibre | 3 | 04-13-2011 12:46 PM |