motorola-rtwo: no earlycon, clean /chosen, framebuffer at root

New hypotheses from re-comparing with the stock boot:
- 'earlycon' (bare) brings up uart7 in setup_arch(), before the clock
  framework. Stock uses console=null and almost certainly leaves the
  QUP0 clock gated -> touching uart7 MMIO faults before any console.
  Drop earlycon + the serial console; keep console=tty0 only.
- Also drop clk_ignore_unused / pd_ignore_unused (can break qcom power
  domain init) and ignore_loglevel stays for the fb console.
- Move the simple-framebuffer out of /chosen and drop the
  #address-cells override there, so the bootloader's /memory + initrd
  patching into /chosen is not disturbed.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QF5HebjUsRaxbW4cBX6HJP
This commit is contained in:
2026-09-09 00:10:58 -03:00
co-authored by Claude Sonnet 5
parent aca8c5265e
commit 988dd10251
4 changed files with 21 additions and 25 deletions
+2 -2
View File
@@ -2,7 +2,7 @@
maintainer="snlavaise <snlavaise@gmail.com>"
pkgname=device-motorola-rtwo
pkgver=1
pkgrel=9
pkgrel=10
pkgdesc="Motorola Moto Edge 40 Pro"
url="https://postmarketos.org"
arch="aarch64"
@@ -36,6 +36,6 @@ package() {
}
sha512sums="
e1edb54b515de674ded1a0443901f41a37655d79da8273a504bca8a23e7c789b13ddad9ddef99e5eed8ce352502339b14e55b20eacfcf734334daf19edc7b876 deviceinfo
a4effea052cb41df51212f5f7b3ba480f6bfafcdf2c2fd0ea8ddeb446f0b6e016b68a33ec746dd5881ef3f9f1d811d0b288bb9b0b429dd9f4a951dff68ba5d95 deviceinfo
c572e21cb0624b554a22a218b0c4faab9b6412654bed6bfef530f3068d076b21c573bd7f4b3ca65f510f8756f636a861191cce925ef49587db7d68d09558826c modules-initfs
"
@@ -32,7 +32,7 @@ deviceinfo_create_initfs_extra="true"
deviceinfo_flash_method="fastboot"
deviceinfo_flash_fastboot_partition_dtbo="dtbo"
deviceinfo_flash_fastboot_partition_vbmeta="vbmeta"
deviceinfo_kernel_cmdline="console=tty0 console=ttyMSM0,115200n8 earlycon clk_ignore_unused pd_ignore_unused ignore_loglevel"
deviceinfo_kernel_cmdline="console=tty0 ignore_loglevel"
deviceinfo_generate_bootimg="true"
# The Motorola bootloader places the DTB / kernel at the addresses in the
# vendor_boot header. mkbootimg defaults to base 0x10000000 (dtb ends up at
@@ -5,7 +5,7 @@ maintainer="snlavaise <snlavaise@gmail.com>"
_flavor="postmarketos-qcom-sm8550"
pkgname=linux-$_flavor
pkgver=7.2
pkgrel=6
pkgrel=7
pkgdesc="Mainline kernel for Qualcomm SM8550 (Snapdragon 8 Gen 2) + Motorola rtwo"
arch="aarch64"
_carch="arm64"
@@ -120,5 +120,5 @@ sha512sums="
52d5aa7f94f6aa6141debf4ceb4fc7a2e75505a7cd38b8854e501be83c2b57863020f463f2fdb2fc93667e6cfe13274d077e5207a611e4797bd9404ee0e64c58 linux-postmarketos-qcom-sm8550-7.2.tar.gz
f9ae52489f6b9e6fef64952943cd09732a5bef90a0e8765db03c256483028368687d6d5a1d80dd813a513e7e80d91f8b47f49b91cff67266b76f1d6275a7fea0 config-motorola-rtwo.aarch64
53441c23146d76bb0eaa358a25f6cce4f21740cfb65b755df52bbb218daf2cda30b3d80fa6ca4e283ea1afe2b0fa708307b678b421898100710b8fb99b08d6c5 rtwo.config
740ac374913a1304d6b52048d89e14321952f0357d5bfd3c1305f76570fda6c1233b963ae77cc9631c60cc590885ed3c0877b19ad4cd65e66c5c441a94cd610b sm8550-motorola-rtwo.dts
43f5147f474ad4fbbc926e21b1305991b04c88bac869c684aee6fa4bb548663c4079d4d389a002ed3502af746566cf8fc31261221825c8f3c6b3949fc36c518d sm8550-motorola-rtwo.dts
"
@@ -63,18 +63,15 @@
};
chosen {
#address-cells = <2>;
#size-cells = <2>;
ranges;
stdout-path = "serial0:115200n8";
/* Keep this minimal - the Motorola bootloader patches
* /memory, bootargs and initrd pointers in here. */
};
/*
* Bootloader continuous-splash framebuffer, reused as an early
* console (CONFIG_FB_SIMPLE / CONFIG_DRM_SIMPLEDRM). No panel
* driver needed. Geometry is a guess (1080x2400, 32bpp) from the
* stock cont_splash region; garbled = wrong format/stride, black
* = the kernel dies before this probes.
* Bootloader continuous-splash framebuffer, reused as a console
* (CONFIG_FB_SIMPLE). No panel driver needed. Geometry is a guess
* (1080x2400, 32bpp) from the stock cont_splash region: garbled =
* wrong format/stride, black = the kernel dies before this probes.
*/
framebuffer0: framebuffer@b8000000 {
compatible = "simple-framebuffer";
@@ -84,7 +81,6 @@
stride = <(1080 * 4)>;
format = "a8r8g8b8";
};
};
reserved-memory {
/*