[google-sargo] Boot fails due to missing FW files
I've built locally SSH-enabled sdm670 image, flashed it on top of already existing Mobian system (that needed manual tweaks as well to workaround this issue) and boot blocks with Mobian's "Extracting firmware" splash screen.
journal_6.12.8_sdm670_sargo_202501162201
relevant lines
$ cat journal_6.12.8_sdm670_sargo_202501162201 | grep -E 'error|Error|droid|part'
gen 07 20:48:26 mobian kernel: Kernel command line: rootwait ro init=/init androidboot.bootdevice=7c4000.sdhci androidboot.baseband=sdm androidboot.keymaster=1 msm_drm.dsi_display0=dsi_s6e3fa7_sdc_1080p_cmd_display::timing0 androidboot.serialno=96KAY0Y2Z2 androidboot.slot_suffix=_b androidboot.slot_retry_count=2 androidboot.slot_successful=no androidboot.hardware.platform=sdm670 androidboot.hardware=sargo androidboot.revision=MP1.0 androidboot.bootloader=b4s4-0.4-8048689 androidboot.hardware.sku=G020F androidboot.hardware.radio.subtype=1 androidboot.hardware.dsds=0 androidboot.secure_boot=PRODUCTION androidboot.cdt_hwid=0x05042801 androidboot.hardware.majorid=0x04 androidboot.dtb_idx=0 androidboot.dtbo_idx=9 androidboot.mode=recovery androidboot.bootreason=reboot androidboot.hardware.ddr=4GB,Micron,LPDDR4X androidboot.ddr_info=Micron androidboot.ddr_size=4GB androidboot.hardware.emmc=64GB,Micron androidboot.cid=00000000 androidboot.boottime=0BLE:261,1BLL:62,1BLE:315,2BLL:139,2BLE:455,SW:10019,KL:50,KD:304,ODT:39,AVB:1078,AFTL:0 androidb
gen 07 20:48:26 mobian kernel: remoteproc remoteproc0: Direct firmware load for qcom/sdm670/sargo/adsp.mbn failed with error -2
gen 07 20:48:26 mobian kernel: remoteproc remoteproc0: Direct firmware load for qcom/sdm670/sargo/adsp.mbn failed with error -2
gen 07 20:48:26 mobian kernel: ipa 1e40000.ipa: Direct firmware load for qcom/sdm670/sargo/ipa_fws.mbn failed with error -2
gen 07 20:48:26 mobian kernel: ipa 1e40000.ipa: error -2 requesting "qcom/sdm670/sargo/ipa_fws.mbn"
gen 07 20:48:26 mobian kernel: ipa 1e40000.ipa: probe with driver ipa failed with error -2
gen 07 20:48:26 mobian systemd[1]: systemd-repart.service - Repartition Root Disk was skipped because no trigger condition checks were met.
gen 07 20:48:27 mobian kernel: qcom-venus aa00000.video-codec: Direct firmware load for qcom/sdm670/sargo/venus.mbn failed with error -2
gen 07 20:48:27 mobian kernel: qcom-venus aa00000.video-codec: probe with driver qcom-venus failed with error -22
gen 07 20:48:28 mobian systemd[1]: systemd-repart.service - Repartition Root Disk was skipped because no trigger condition checks were met.
gen 07 20:48:30 mobian systemd[1]: Starting droid-juicer.service - Android vendor firmware extraction...
gen 07 20:48:30 mobian kernel: remoteproc remoteproc1: Direct firmware load for qcom/sdm670/sargo/mba.mbn failed with error -2
gen 07 20:48:30 mobian mobile-usb-gadget[493]: /usr/sbin/mobile-usb-gadget: 43: echo: echo: I/O error
gen 07 20:48:30 mobian polkitd[494]: Error opening rules directory: Error opening directory “/run/polkit-1/rules.d”: No such file or directory (g-file-error-quark, 4)
gen 07 20:48:30 mobian polkitd[494]: Error opening rules directory: Error opening directory “/usr/local/share/polkit-1/rules.d”: No such file or directory (g-file-error-quark, 4)
gen 07 20:48:40 mobian kernel: platform sound: deferred probe pending: sdm660-int-sndcard: MultiMedia1: error getting cpu dai name
Killing droid-juicer gets the "Extracting firmware" splash screen away, but screen stays black. AFAIK, a615_zap.* FW files are required for video to work.
journal_6.12.8_sdm670_sargo_killdroidjuicer_202501171815
relevant lines
$ cat journal_6.12.8_sdm670_sargo_killdroidjuicer_202501171815 | grep -E 'error|Error|droid|part'
gen 07 20:58:30 mobian kernel: Kernel command line: rootwait ro init=/init androidboot.bootdevice=7c4000.sdhci androidboot.baseband=sdm androidboot.keymaster=1 msm_drm.dsi_display0=dsi_s6e3fa7_sdc_1080p_cmd_display::timing0 androidboot.serialno=96KAY0Y2Z2 androidboot.slot_suffix=_b androidboot.slot_retry_count=2 androidboot.slot_successful=no androidboot.hardware.platform=sdm670 androidboot.hardware=sargo androidboot.revision=MP1.0 androidboot.bootloader=b4s4-0.4-8048689 androidboot.hardware.sku=G020F androidboot.hardware.radio.subtype=1 androidboot.hardware.dsds=0 androidboot.secure_boot=PRODUCTION androidboot.cdt_hwid=0x05042801 androidboot.hardware.majorid=0x04 androidboot.dtb_idx=0 androidboot.dtbo_idx=9 androidboot.mode=recovery androidboot.bootreason=reboot androidboot.hardware.ddr=4GB,Micron,LPDDR4X androidboot.ddr_info=Micron androidboot.ddr_size=4GB androidboot.hardware.emmc=64GB,Micron androidboot.cid=00000000 androidboot.boottime=0BLE:97,1BLL:62,1BLE:443,2BLL:137,2BLE:603,SW:10027,KL:51,KD:304,ODT:39,AVB:1153,AFTL:0 androidbo
gen 07 20:58:30 mobian kernel: remoteproc remoteproc0: Direct firmware load for qcom/sdm670/sargo/adsp.mbn failed with error -2
gen 07 20:58:30 mobian kernel: remoteproc remoteproc0: Direct firmware load for qcom/sdm670/sargo/adsp.mbn failed with error -2
gen 07 20:58:30 mobian kernel: ipa 1e40000.ipa: Direct firmware load for qcom/sdm670/sargo/ipa_fws.mbn failed with error -2
gen 07 20:58:30 mobian kernel: ipa 1e40000.ipa: error -2 requesting "qcom/sdm670/sargo/ipa_fws.mbn"
gen 07 20:58:30 mobian kernel: ipa 1e40000.ipa: probe with driver ipa failed with error -2
gen 07 20:58:30 mobian systemd[1]: systemd-repart.service - Repartition Root Disk was skipped because no trigger condition checks were met.
gen 07 20:58:31 mobian kernel: qcom-venus aa00000.video-codec: Direct firmware load for qcom/sdm670/sargo/venus.mbn failed with error -2
gen 07 20:58:31 mobian kernel: qcom-venus aa00000.video-codec: probe with driver qcom-venus failed with error -22
gen 07 20:58:31 mobian systemd[1]: Starting droid-juicer.service - Android vendor firmware extraction...
gen 07 20:58:31 mobian systemd[1]: systemd-repart.service - Repartition Root Disk was skipped because no trigger condition checks were met.
gen 07 20:58:31 mobian kernel: remoteproc remoteproc1: Direct firmware load for qcom/sdm670/sargo/mba.mbn failed with error -2
gen 07 20:58:31 mobian mobile-usb-gadget[481]: /usr/sbin/mobile-usb-gadget: 43: echo: echo: I/O error
gen 07 20:58:31 mobian polkitd[482]: Error opening rules directory: Error opening directory “/run/polkit-1/rules.d”: No such file or directory (g-file-error-quark, 4)
gen 07 20:58:31 mobian polkitd[482]: Error opening rules directory: Error opening directory “/usr/local/share/polkit-1/rules.d”: No such file or directory (g-file-error-quark, 4)
gen 07 20:58:42 mobian kernel: platform sound: deferred probe pending: sdm660-int-sndcard: MultiMedia1: error getting cpu dai name
gen 07 20:59:13 mobian sudo[890]: marco : TTY=pts/1 ; PWD=/home/marco ; USER=root ; COMMAND=/usr/bin/killall droid-juicer
gen 07 20:59:13 mobian systemd[1]: droid-juicer.service: Main process exited, code=killed, status=15/TERM
gen 07 20:59:13 mobian systemd[1]: droid-juicer.service: Failed with result 'signal'.
gen 07 20:59:13 mobian systemd[1]: Failed to start droid-juicer.service - Android vendor firmware extraction.
gen 07 20:59:13 mobian systemd[1]: droid-juicer.service: Consumed 41.126s CPU time, 1.7M memory peak.
gen 07 20:59:15 mobian wireplumber[945]: default: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:16 mobian phoc[947]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:16 mobian phoc[947]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:16 mobian phog[947]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:16 mobian phoc[947]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:16 mobian phoc[947]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "eglInitialize"
gen 07 20:59:16 mobian greetd[906]: error: check_children: greeter exited without creating a session
gen 07 20:59:17 mobian wireplumber[945]: default: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
gen 07 20:59:17 mobian wireplumber[945]: spa.bluez5.midi: org.bluez.GattManager1.RegisterApplication() failed: GDBus.Error:org.bluez.Error.AlreadyExists: Already Exists
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:17 mobian phoc[994]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:17 mobian phoc[994]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:17 mobian phog[994]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:17 mobian phoc[994]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:17 mobian phoc[994]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "eglInitialize"
gen 07 20:59:17 mobian greetd[988]: error: check_children: greeter exited without creating a session
gen 07 20:59:19 mobian wireplumber[945]: default: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
gen 07 20:59:19 mobian wireplumber[945]: spa.bluez5.midi: org.bluez.GattManager1.RegisterApplication() failed: GDBus.Error:org.bluez.Error.AlreadyExists: Already Exists
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:19 mobian phoc[1019]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:19 mobian phoc[1019]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:19 mobian phog[1019]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:19 mobian phoc[1019]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:19 mobian phoc[1019]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "eglInitialize"
gen 07 20:59:19 mobian greetd[1013]: error: check_children: greeter exited without creating a session
gen 07 20:59:21 mobian wireplumber[945]: default: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
gen 07 20:59:21 mobian wireplumber[945]: spa.bluez5.midi: org.bluez.GattManager1.RegisterApplication() failed: GDBus.Error:org.bluez.Error.AlreadyExists: Already Exists
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:21 mobian phoc[1035]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:21 mobian phoc[1035]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:21 mobian phog[1035]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:21 mobian phoc[1035]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:21 mobian phoc[1035]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "eglInitialize"
gen 07 20:59:21 mobian greetd[1029]: error: check_children: greeter exited without creating a session
gen 07 20:59:22 mobian wireplumber[945]: default: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
gen 07 20:59:22 mobian wireplumber[945]: spa.bluez5.midi: org.bluez.GattManager1.RegisterApplication() failed: GDBus.Error:org.bluez.Error.AlreadyExists: Already Exists
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:22 mobian phoc[1051]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:22 mobian phoc[1051]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: get_param:232: get-param failed! -6 (No such device or address)
gen 07 20:59:22 mobian phog[1051]: MESA: error: fd_pipe_new2:52: allocation failed
gen 07 20:59:22 mobian phoc[1051]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "DRI2: failed to create screen"
gen 07 20:59:22 mobian phoc[1051]: [EGL] command: eglInitialize, error: EGL_NOT_INITIALIZED (0x3001), message: "eglInitialize"
gen 07 20:59:22 mobian greetd[1045]: error: check_children: greeter exited without creating a session
@a-wai already pointed out, Android partitions as flashed by recent Google images are broken, therefore droid-juicer fails to collect FW files. And without FW files, Mobian fails to start...
Google's flashing script for latest factory image is broken, and I had to go through lots of manual commands to fix my own sargo, which is why I do believe it should be upgraded to latest from within Android; otherwise the partition scheme will likely be broken wrt. droid-juicer's expectations and Mobian won't work well
cc @erebion