AnsweredAssumed Answered

OTA Android 8.0.0 Update Problem

Question asked by Georg Schöffl on Jan 24, 2019

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 succeeded

 

android_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!

Outcomes