Hi,
I have successful build an OTA Android update. (Android 8.0.0)
When I go to Settings->System and check for updates on the device, the board get an information that an update is available (from my server)
When clicking on Update, the zip file is downloaded and checked. (I use the FSLOta update program)
Unfortunately the "reboot recovery" command cannot be executed and so the board cannot go into recovery mode...
After the reboot i can again check for updates and can download the same one...
From Commandline:
0|cgt_imx6:/ $ reboot recovery
init: [libfs_mgr]fs_mgr_read_fstab_dt(): failed to read fstab from dt
init: reboot-recovery: Error writing recovery_message: Bootloader command pending.
init: Clear action queue and start shutdown trigger
From OTA:
01-24 15:19:23.760 1278 1278 D OTA : OTAAppActivity : onStop
01-24 15:19:23.773 408 1308 W AppOps : Writing app ops before shutdown...
01-24 15:19:23.786 408 425 W system_server: kill(-1132, 9) failed: No such process
01-24 15:19:23.795 408 1308 I UsageStatsService: User[0] Flushing usage stats to disk
01-24 15:19:23.827 408 425 W system_server: kill(-1132, 9) failed: No such process
01-24 15:19:23.829 408 425 I system_server: Successfully killed process cgroup uid 10016 pid 1132 in 124ms
01-24 15:19:23.864 408 1308 W BatteryStats: Writing battery stats before shutdown...
01-24 15:19:23.869 408 1308 E BatteryStatsService: no controller energy info supplied
01-24 15:19:23.869 649 649 E PhoneInterfaceManager: [PhoneIntfMgr] queryModemActivityInfo: Empty response
01-24 15:19:23.869 408 1308 E BatteryStatsService: no controller energy info supplied
01-24 15:19:23.879 408 1308 E KernelUidCpuFreqTimeReader: Failed to read /proc/uid_time_in_state: java.io.FileNotFoundException: /proc/uid_time_in_state (No such file or directory)
01-24 15:19:23.887 408 1308 E BatteryStatsService: modem info is invalid: ModemActivityInfo{ mTimestamp=0 mSleepTimeMs=0 mIdleTimeMs=0 mTxTimeMs[]=[0, 0, 0, 0, 0] mRxTimeMs=0 mEnergyUsed=0}
01-24 15:19:23.914 408 1308 W ProcessStatsService: Writing process stats before shutdown...
01-24 15:19:23.930 408 1308 I ShutdownThread: Shutting down package manager...
01-24 15:19:23.958 649 664 V PhoneInterfaceManager: [PhoneIntfMgr] 1 Phones are shutdown.
01-24 15:19:23.959 408 1336 I ShutdownThread: Waiting for NFC, Bluetooth and Radio...
01-24 15:19:23.959 408 1336 I ShutdownThread: NFC, Radio and Bluetooth shutdown complete.
01-24 15:19:23.962 408 1308 I ShutdownThread: Shutting down StorageManagerService
01-24 15:19:23.965 408 1308 I StorageManagerService: Shutting down
01-24 15:19:23.966 408 468 D VoldConnector: SND -> {8 volume shutdown}
01-24 15:19:23.968 408 469 D VoldConnector: RCV <- {651 emulated 5}
01-24 15:19:24.797 408 469 D VoldConnector: RCV <- {651 emulated 0}
01-24 15:19:24.799 408 469 D VoldConnector: RCV <- {651 emulated 8}
01-24 15:19:24.800 408 469 D VoldConnector: RCV <- {659 emulated}
01-24 15:19:24.801 408 469 D VoldConnector: RCV <- {649 disk:179,40}
01-24 15:19:24.802 408 469 D VoldConnector: RCV <- {651 public:179,33 5}
01-24 15:19:24.810 533 533 D StorageNotification: Notifying about public volume: VolumeInfo{public:179,33}:
01-24 15:19:24.810 533 533 D StorageNotification: type=PUBLIC diskId=disk:179,32 partGuid=null mountFlags=VISIBLE
01-24 15:19:24.810 533 533 D StorageNotification: mountUserId=0 state=EJECTING
01-24 15:19:24.810 533 533 D StorageNotification: fsType=vfat fsUuid=B824-07B4 fsLabel=
01-24 15:19:24.810 533 533 D StorageNotification: path=/storage/B824-07B4 internalPath=/mnt/media_rw/B824-07B4
01-24 15:19:24.899 408 487 D NotificationSQLiteLog: Pruned event entries: 3
01-24 15:19:25.063 533 540 I zygote : Do partial code cache collection, code=245KB, data=165KB
01-24 15:19:25.066 533 540 I zygote : After code cache collection, code=245KB, data=165KB
01-24 15:19:25.066 533 540 I zygote : Increasing code cache capacity to 1024KB
01-24 15:19:25.081 533 579 W zygote : Checksum mismatch for dex SystemUI.apk
01-24 15:19:25.711 408 469 D VoldConnector: RCV <- {651 public:179,33 0}
01-24 15:19:25.712 408 469 D VoldConnector: RCV <- {651 public:179,33 8}
01-24 15:19:25.713 408 469 D VoldConnector: RCV <- {659 public:179,33}
01-24 15:19:25.715 408 init: [libfs_mgr]fs_mgr_read_fstab_dt(): failed to read fstab from dt
469 D VoldConnector: RCV <- {649 disk:179,32}
01-24 15:19:25.081 533 579 W zygote : Checksum mismatch for dex SystemUI.apk
01-24 15:19:25.715 533 533 D StorageNotification: Notifying about public volume: VolumeInfinit: reboot-recovery: Error writing recovery_message: Bootloader command pending.
o{public:179,33}:
01-24 15:19:25.715 533 533 D StorageNotification: type=PUBLIC diskId=disk:179,32 partGuid=null mountFlinit: Clear action queue and start shutdown trigger
ags=VISIBLE
01-24 15:19:25.715 533 533 D StorageNotification: mountUserId=0 state=UNMOUNTED
01-24 15:19:25.715 533 5init: processing action (shutdown_done) from (<Builtin Action>:0)
33 D StorageNotification: fsTinit: Reboot start, reason: reboot,recovery, rebootTarget: recovery
ype=vfat fsUuid=B824-07B4 fsLabelinit: Shutdown timeout: 0 ms
=
01-24 15:19:25.715 533 53init: Sending signal 9 to service 'healthd' (pid 291) process group...
3 D StorageNotification: path=/storage/B824-07B4 internalPath=/mnt/media_rw/B824-07B4
01-24 15:19:25.716 408 469 D VoldConnector: RCV <- {649 disk:179,40}
01-24 15:19:25.717 408 469 D VoldConnector: RCV <- {649 disk:179,56}
01-24 15:19:25.718 408 469 D VoldConnector: RCV <- {649 disk:179,48}
01-24 15:19:25.720 408 469 D VoldConnector: RCV <- {649 disk:179,56}
01-24 15:19:25.720 533 533 D StorageNotification: Notifying about public volume: VolumeInfo{public:179,33}:
01-24 15:19:25.720 533 533 D StorageNotification: type=PUBLIC diskId=disk:179,32 partGuid=null mountFlags=VISIBLE
01-24 15:19:25.720 533 533 D StorageNotification: mountUserId=0 state=BAD_REMOVAL
01-24 15:19:25.720 533 533 D StorageNotification: fsType=vfat fsUuid=B824-07B4 fsLabel=
01-24 15:19:25.720 533 533 D StorageNotification: path=/storage/B824-07B4 internalPath=/mnt/media_rw/B824-07B4
01-24 15:19:25.721 408 469 D VoldConnector: RCV <- {649 disk:179,48}
01-24 15:19:25.722 408 469 D VoldConnector: RCV <- {200 8 Command succeeded}
01-24 15:19:25.723 408 468 E VoldConnector: NDC Command {8 volume shutdown} took too long (1757ms)
01-24 15:19:25.725 408 468 W ShutdownThread: Result code 0 from StorageManagerService.shutdown
01-24 15:19:25.726 408 1308 I ShutdownThread: Rebooting, reason: recovery-update
01-24 15:19:25.726 408 468 D StorageManagerService: Volume emulated broadcasting ejecting to UserHandle{0}
01-24 15:19:25.769 408 423 I ActivityManager: Start proc 1342:com.android.externalstorage/u0a14 for broadcast com.android.externalstorage/.MountReceiver
01-24 15:19:25.773 408 419 W StorageManagerService: No primary storage defined yet; hacking together a stub
01-24 15:19:25.773 408 468 D StorageManagerService: Volume emulated broadcasting unmountebinder: undelivered death notification, 00000000a7731100
d to UserHandle{0}
01-24 15:19:25.775 533 533 I zygote : Deoptimizing void com.android.systemui.statusbar.stack.NotificationStackScrollLayout.updateContentHeight() due to JIT inline cache
01-24 15:19:25.780 408 1309 W StorageManagerService: No primary storage defined yet; hackingbinder: release 1278:1301 transaction 84409 out, still active
binder: undelivered transaction 85915
vdc: 200 1358 Command succeededandroid_work: did not send uevent (0 0 (null))
logd.reader: 20 output lines suppressed due to ratelimiting
init: umounted /dev/block/bootdevice/by-name/cache:/cache opts rw,seclabel,nosuid,nodev,noatime,data=ordered
init: umounted /dev/block/bootdevice/by-name/userdata:/data opts rw,seclabel,nosuid,nodev,noatime,nodiratime,noauto_da_alloc,errors=panic,data=ordered
binder: undelivered transaction 85918
binder: release 408:566 transaction 84409 in, still active
binder: send failed reply for transaction 84409, target dead
binder: undelivered transaction 85917
binder: undelivered transaction 85916
binder: 293:385 transaction failed 29189, size 68-0
init: powerctl_shutdown_time_ms:1657:0
init: Reboot ending, jumping to kernel
imx2-wdt 20bc000.wdog: Device shutdown: Expect reboot!
ci_hdrc ci_hdrc.1: remove, state 1
usb usb2: USB disconnect, device number 1
usb 2-1: USB disconnect, device number 2
usb 2-1.1: USB disconnect, device number 3
usb 2-1.2: USB disconnect, device number 4
ci_hdrc ci_hdrc.1: USB bus 2 deregistered
ci_hdrc ci_hdrc.0: remove, state 1
usb usb1: USB disconnect, device number 1
usb 1-1: USB disconnect, device number 2
ci_hdrc ci_hdrc.0: USB bus 1 deregistered
reboot: Restarting system with command 'recovery'U-Boot SPL 2016.01-00043-g2a24305 (Oct 06 2017 - 08:58:17)
Trying to boot from SPI
U-Boot 2016.01-gbf1432c-dirty (Jan 09 2019 - 17:52:18 +0100)CPU: Freescale i.MX6Q rev1.1 at 792MHz
CPU: Commercial temperature grade (0C to 95C) at 39C
Reset cause: WDOG
Board: conga-QMX6 Quad
I2C: ready
DRAM: 1 GiB
PFUZE100 Rev. [10/10] detected
MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
SF: Detected SST25VF032B with page size 256 Bytes, erase size 64 KiB, total 4 MiB
No panel detected: default to Hannstar-XGA
Display: Hannstar-XGA (1024x768)
In: serial
Out: serial
Err: serial
Net: configure Micrel KSZ9031 Ethernet Phy at address 6
FEC [PRIME]
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
9947128 bytes read in 511 ms (18.6 MiB/s)
2036755 bytes read in 148 ms (13.1 MiB/s)
46949 bytes read in 40 ms (1.1 MiB/s)
## Booting kernel from Legacy Image at 10800000 ...
Image Name: Linux-4.9.17-03472-gc0b0f0134895
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 9947064 Bytes = 9.5 MiB
Load Address: 10008000
Entry Point: 10008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 12800000 ...
Image Name: RAM Disk
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 2036691 Bytes = 1.9 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 12000000
Booting using the fdt blob at 0x12000000
Loading Kernel Image ... OK
Loading Ramdisk to 1fe0e000, end 1ffff3d3 ... OK
Loading Device Tree to 1fdff000, end 1fe0d764 ... OK
switch to ldo_bypass mode!Starting kernel ...
Can anyone help me to solve this problem?
(i use a imx6q congatec q7 module, booting from the micro sd card)
UPDATE:
After checking the source code i realized that the error "Error writing recovery_message: Bootloader command pending." is a result of the previous error "fs_mgr_read_fstab_dt(): failed to read fstab from dt".
This error message is shown when the function is_dt_compatible returns false who checks the file /proc/device-tree/firmware/android/compatible.
But on my device there is no such file in the device-tree folder...even the firmware folder does not exist...
cgt_imx6:/proc/device-tree # pwd
/proc/device-tree
cgt_imx6:/proc/device-tree # ls -a
#address-cells beeper fb@0 hannstar_cabc soc
#size-cells chosen fb@1 i2cmux sound
. clocks fb@2 memory sound-hdmi
.. compatible fb@3 model susp-signals
aliases cpus gpio-keys name v4l2_cap_1
backlight display-subsystem gpu-subsystem regulators v4l2_out
Maybe now anyone has a hint for me, fixing this problem.
Thanks!