Test mainline kernel on an older Qualcomm SOC (msm89xx), explore current Qualcomm mainlining kernel effort
an invention by pvorel
an invention by pvorel
Updated
over 2 years
ago.
2 hacker ♥️.
1 follower.
Project Description
Qualcomm concentrate on supporting recent SOC, older ones aren't supported (use very old downstream kernel, e.g. 3.10).
Goal for this Hackweek
1. Boot mainline kernel to initramfs
I managed to boot mainline kernel (5.9.0-rc1 at the time) on msm89xx on my phone, but kernel crashes. Find why.
$ fastboot -c "debug ignore_loglevel earlycon" boot boot.img
[74500] Continuous splash enabled, keeping panel alive.
[74500] booting linux @ 0x80000, ramdisk @ 0x2700000 (1236022), tags/device tree @ 0x2500000
[74510] Jumping to kernel via monitor
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd032]
[ 0.000000] Linux version 5.9.0-rc1-00020-gabea2a011c54 (pmos@localhost) (aarch64-alpine-linux-musl-gcc (Alpine 10.2.0) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #3 SMP PREEMPT Tue Oct 6 12:24:55 UTC 2020
[ 0.000000] printk: debug: ignoring loglevel setting.
[ 0.000000] efi: UEFI not found.
[ 0.000000] [Firmware Bug]: Kernel image misaligned at boot, please fix your bootloader!
[ 0.000000] cma: Reserved 32 MiB at 0x00000000de000000
[ 0.000000] earlycon: msm_serial_dm0 at MMIO 0x00000000f991e000 (options '115200n8')
[ 0.000000] printk: bootconsole [msm_serial_dm0] enabled
...
[ 0.185155] pinctrl core: initialized pinctrl subsystem
[ 0.191761] DMI not present or invalid.
[ 0.196193] NET: Registered protocol family 16
[ 0.200769] DMA: preallocated 4096 KiB GFP_KERNEL pool for atomic allocations
[ 0.204611] DMA: preallocated 4096 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[ 0.211812] DMA: preallocated 4096 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.218962] audit: initializing netlink subsys (disabled)
[ 0.228072] thermal_sys: Registered thermal governor 'step_wise'
[ 0.228076] thermal_sys: Registered thermal governor 'power_allocator'
[ 0.232293] audit: type=2000 audit(0.144:1): state=initialized audit_enabled=0 res=1
[ 0.244954] cpuidle: using governor menu
[ 0.253102] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.256526] ASID allocator initialised with 32768 entries
[ 0.264698] Serial: AMBA PL011 UART driver
... RESET AND DOWNSTREAM KERNEL continues :(
D - 15524 - pm_driver_init, Delta
2. Explore current Qualcomm mainlining kernel effort
Resources
Results
- https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git/commit/?h=for-next&id=f890f89d9a80fffbfa7ca791b78927e5b8aba869
- https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git/commit/?h=for-next&id=9d1fc2e4f5a94a492c7dd1ca577c66fdb7571c84
- https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git/commit/?h=for-next&id=3cb6a271f4b04f11270111638c24fa5c0b846dec
- https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git/commit/?h=for-next&id=0e5ded926f2a0f8b57dfa7f0d69a30767e1ea2ce
This project is part of:
Hack Week 20
Activity
Comments
-
almost 4 years ago by pvorel | Reply
My fix posted into linux-arm-msm ML got accepted https://lore.kernel.org/linux-arm-msm/20210415193913.1836153-1-petr.vorel@gmail.com/ https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git/commit/?h=for-next&id=f890f89d9a80fffbfa7ca791b78927e5b8aba869
Unfortunately there is still issue preventing boot with commit 86588296acbf ("fdt: Properly handle "no-map" field in the memory region"). Reverting it allows booting. I need to have look into this issue.
Similar Projects
This project is one of its kind!