All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] u-boot chain-loading LineageOS bootimg
@ 2025-04-27 11:25 ` George Chan via B4 Relay
  0 siblings, 0 replies; 14+ messages in thread
From: George Chan @ 2025-04-27 11:25 UTC (permalink / raw)
  To: Tom Rini, Mattijs Korpershoek, Simon Glass, Casey Connolly,
	Neil Armstrong, Sumit Garg
  Cc: u-boot, u-boot-qcom, George Chan

This is a series of patches to enable chainloading LineageOS on qcom SOC.

First patch is to workaround kernel/ramdisk invalid addr by identify
its physical memory address out-of-range. Since qcom SOC usually have
0x80000000 as start/base/real memory address but androidboot img
specified to around 0x0. If other vendor bootloader behave similar then
this patch can also workaround it as well.

Second patch is enable bootmeth-android to have chance for extra mem block.
Usually the fastboot mem block, to hold androidboot img, and loadaddr for
unzipped kernel. If other SOC have extra mem block available but
fastboot block, we can add extra logic to take care of it.

Third patch is optional to enable snapdragon board to have extra cmdline
found from original bootloader that is required for LineageOS boot init. 
An alternate method is to put the append string into a dummy device-tree
file, as /chosen/bootarg ofnode porperty, that also contain msm-id. Then
encapsulate as androidboot img and let u-boot as kernel binary. Below is
an example for Xiaomi Miatoll device.

/dts-v1/;

/ {
        qcom,msm-id = <443 0x0>;
        qcom,board-id = <0 0>, 
			<0x10022 1>,
			<0x20022 1>,
			<0x30022 1>,
			<0x40022 1>,
			<0x50022 1>;

        #address-cells = <2>;
        #size-cells = <2>;

        memory {
                ddr_device_type = <0x07>;
                /* We expect the bootloader to fill in the size */
                reg = <0 0 0 0>;
        };

	chosen {
		bootargs = "";
	};
};

Signed-off-by: George Chan <gchan9527@gmail.com>
---
George Chan (3):
      boot/image-android.c: Workaround androidboot kernel/ramdisk addr
      boot/bootmeth-android.c: Reuse fastboot memory block for unzip kernel
      mach-snapdragon: Add support to append string to kernel cmdline

 arch/arm/mach-snapdragon/Kconfig | 11 +++++
 arch/arm/mach-snapdragon/board.c | 97 ++++++++++++++++++++++++++++++++++++++++
 boot/bootmeth_android.c          | 12 +++++
 boot/image-android.c             | 10 +++++
 4 files changed, 130 insertions(+)
---
base-commit: 5a0a93a768487e55ebe50a34cc90d751bf99cc56
change-id: 20250427-android-boot-ecbb768cda72

Best regards,
-- 
George Chan <gchan9527@gmail.com>


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2025-04-30 16:37 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-27 11:25 [PATCH 0/3] u-boot chain-loading LineageOS bootimg George Chan
2025-04-27 11:25 ` George Chan via B4 Relay
2025-04-27 11:25 ` [PATCH 1/3] boot/image-android.c: Workaround androidboot kernel/ramdisk addr George Chan
2025-04-27 11:25   ` George Chan via B4 Relay
2025-04-27 11:25 ` [PATCH 2/3] boot/bootmeth-android.c: Reuse fastboot memory block for unzip kernel George Chan
2025-04-27 11:25   ` George Chan via B4 Relay
2025-04-27 11:25 ` [PATCH 3/3] mach-snapdragon: Add support to append string to kernel cmdline George Chan
2025-04-27 11:25   ` George Chan via B4 Relay
2025-04-28 13:53 ` [PATCH 0/3] u-boot chain-loading LineageOS bootimg Casey Connolly
2025-04-29  4:04   ` george chan
2025-04-29  8:30   ` Mattijs Korpershoek
2025-04-30  3:58     ` george chan
2025-04-30 12:03       ` Mattijs Korpershoek
2025-04-30 15:13         ` george chan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.