i.MX8QXP OTA upgrade was successful, but reboot failed

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX8QXP OTA upgrade was successful, but reboot failed

Jump to solution
6,388 Views
DRAVE
Contributor III

We refer to the 'Over-The-Air (OTA) Update' method in the 'Android_User's_Guide.pdf' documentation. we builded a full update package. To update the system from board's storage. We use the logcat command to see the log of a successful OTA upgrade, but after restarting it gets stuck in 'Booting from bootloader_b... '. 

We try to burn the board using the official source package 'automat-12.0.0_1.1.0_image_8qmek_car.tar.gz', Then compile the full update package using the new source code 'imx-automote-12.0.0_1.1.0'. The result is stuck in 'Booting from bootloader_b... '. The log is shown in the attachment.

Software Version: imx-automotive-12.0.0_1.1.0

Hardware: i.MX8QXP C0 demo board

OTA upgrade successful part log:         04-28 03:18:13.947 450 450 I update_engine: [INFO:update_attempter_android.cc(546)] Processing Done.
         04-28 03:18:13.962 450 450 I update_engine: [INFO:update_attempter_android.cc(559)] Update successfully applied, waiting to reboot.
         04-28 03:18:13.976 450 450 E update_engine: UnmapAllSnapshots should never be called.
         04-28 03:18:13.994 450 450 I update_engine: [INFO:metrics_reporter_android.cc(159)] Current update attempt downloads 586 bytes data
         04-28 03:18:14.012 450 450 I update_engine: [INFO:metrics_utils.cc(335)] Updated Marker = 1/1/1970 0:10:10 GMT

Reboot failed log:

         U-Boot SPL 2021.04 (Apr 28 2022 - 03:08:10 +0200)
         Normal Boot
         Trying to boot from MMC1
         Authentication key not yet programmed
         Booting from bootloader_b...

OTA Upgrade Steps:

         1. Building target files

         $ cd ${MY_ANDROID}

         $ source build/envsetup.sh

         $ lunch mek_8q_car-userdebug

         $ ./imx-make.sh bootloader kernel -j4

         $ make target-files-package -j4

         2. Building a full update package

         $ cd ${MY_ANDROID}

         $ source build/envsetup.sh

         $ lunch mek_8q_car-userdebug

         $ ./imx-make.sh bootloader kernel -j4

         $ make otapackage -j

         3. Push payload.bin to board's storage:

         adb root

         adb push payload.bin /data/ota_package

         4. Input the following command in board's console to update:

update_engine_client --payload=file:///data/ota_package/payload.bin --update --
headers="FILE_HASH=8V5MbcnDzH7I2XMDJlzQ0fdbjC20pCYiBYYSV+AZvX0=
FILE_SIZE=615476465
METADATA_HASH=kC9zt177Au7KqIYrrYOC2ZN9OADNWNz7uF33cytlT/U=
METADATA_SIZE=120262"

 

 

 

0 Kudos
Reply
1 Solution
6,156 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hello @DRAVE ,

I hope you are doing well.
Thanks for the detailed logs.

->For building target files you have followed the correct steps but to build incremental OTA please follow the below-mentioned steps.
    1. make target-files-package -j4      
        //this will generate the previously changed target file in "{MY_ANDROID}/out/target/product/evk_8mq/obj/PACKAGING/target_files_intermediates/" directory
          Copy the PREVIOUS-target_files.zip to ${MY_ANDROID}
    2. Apply your changes in the source
    3. make target-files-package -j4
        //this will generate the previously changed target file in "{MY_ANDROID}/out/target/product/evk_8mq/obj/PACKAGING/target_files_intermediates/" directory
          Copy the NEW-target_files.zip to ${MY_ANDROID}
    4. ./build/tools/releasetools/ota_from_target_files -i PREVIOUS-target_files.zip NEW-target_files.zip incremental_ota_update.zip

->To apply the incremental OTA please follow the steps given in Section 7.1.3 of the Android User Guide attached here.
https://www.nxp.com/docs/en/user-guide/ANDROID_USERS_GUIDE.pdf

Thanks & Regards,

Sanket Parekh

View solution in original post

0 Kudos
Reply
12 Replies
6,319 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hello @DRAVE ,

I hope you are doing well.

Thanks for the detailed information and dmesg logs.

->make otapackage -j
This command is used for i.MX 8QuadMax

->For i.MX8QuadXPlus, Please use the command line
make OTA_TARGET=8qxp otapackage -j4.

Please use this command.

Thanks & Regards,

Sanket Parekh

0 Kudos
Reply
6,306 Views
DRAVE
Contributor III

Hi, @Sanket_Parekh 

I hope you are doing well.

The OTA upgrade can be done using the command 'make OTA_TARGET=8qxp otapackage -j4'. Reboot successfully. Thank you !

Thanks & Regards,

DRAVE

0 Kudos
Reply
6,294 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hello @DRAVE ,

I hope you are doing well.
I'm happy to help you.

The OTA upgrade can be done using the command 'make OTA_TARGET=8qxp otapackage -j4'. Reboot successfully.
So the issue is resolved now, can I close this case?

Thanks & Regards,

Sanket Parekh

0 Kudos
Reply
6,289 Views
DRAVE
Contributor III

HI, @Sanket_Parekh 

I hope you are doing well.

There is a new OTA upgrade issue. We builded an incremental update package failed. We use the command "./build/tools/releasetools/ota_from_target_files -i ota_old.zip mek_8q_car-target_files-eng.andrew.zip incremental_ota_update.zipto run it. But we get an 'ImportError: No module named google.protobuf' error. We renamed the first target files ota old.zip. Is there any other environment that needs to be configured?

Building target files:

$ cd ${MY_ANDROID}

$ source build/envsetup.sh

$ lunch mek_8q_car-userdebug

$ ./imx-make.sh bootloader kernel -j4

$ make target-files-package -j4

Building an incremental update package command:

./build/tools/releasetools/ota_from_target_files -i ota_old.zip mek_8q_car-target_files-eng.andrew.zip incremental_ota_update.zip

Failed log (As shown in attachment):

andrew@ubuntu18_a1:/home/workspace/imx-automotive-12.0.0_1.1.0/android_build$ ./build/tools/releasetools/ota_from_target_files -i ota_old.zip mek_8q_car-target_files-eng.andrew.zip incremental_ota_update.zip
Warning: releasetools script should be invoked as hermetic Python executable -- build and run `ota_from_target_files` directly.
Traceback (most recent call last):
File "./build/tools/releasetools/ota_from_target_files", line 241, in <module>
import ota_utils
File "/home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/releasetools/ota_utils.py", line 21, in <module>
import ota_metadata_pb2
File "/home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/releasetools/ota_metadata_pb2.py", line 7, in <module>
from google.protobuf import descriptor as _descriptor
ImportError: No module named google.protobuf

 

Thanks & Regards,

DRAVE

0 Kudos
Reply
6,254 Views
DRAVE
Contributor III

HI, @Sanket_Parekh 

I hope you are doing well.

We tried to install protobuf with the command "pip install protobuf".After running a new problem appears as shown below. What kind of problem could that be.

command: 

./build/tools/releasetools/ota_from_target_files -i ota_old.zip mek_8q_car-target_files-eng.andrew.zip incremental_ota_update.zip

Failed log:

andrew@ubuntu18_a1:/home/workspace/imx-automotive-12.0.0_1.1.0/android_build$ ./build/tools/releasetools/ota_from_target_files -i ota_old.zip mek_8q_car-target_files-eng.andrew.zip incremental_ota_update.zip
Warning: releasetools script should be invoked as hermetic Python executable -- build and run `ota_from_target_files` directly.
2023-04-23 03:10:26 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop
2023-04-23 03:10:26 - common.py - WARNING : Failed to read VENDOR/etc/build.prop
2023-04-23 03:10:26 - common.py - WARNING : Failed to read ODM/etc/build.prop
2023-04-23 03:10:26 - common.py - WARNING : Failed to read ODM/build.prop
2023-04-23 03:10:26 - common.py - WARNING : Failed to read VENDOR_DLKM/etc/build.prop
2023-04-23 03:10:26 - common.py - WARNING : Failed to read VENDOR_DLKM/build.prop
2023-04-23 03:10:26 - common.py - WARNING : Failed to read ODM_DLKM/etc/build.prop
2023-04-23 03:10:26 - common.py - WARNING : Failed to read ODM_DLKM/build.prop
2023-04-23 03:10:27 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop
2023-04-23 03:10:27 - common.py - WARNING : Failed to read VENDOR/etc/build.prop
2023-04-23 03:10:27 - common.py - WARNING : Failed to read ODM/etc/build.prop
2023-04-23 03:10:27 - common.py - WARNING : Failed to read ODM/build.prop
2023-04-23 03:10:27 - common.py - WARNING : Failed to read VENDOR_DLKM/etc/build.prop
2023-04-23 03:10:27 - common.py - WARNING : Failed to read VENDOR_DLKM/build.prop
2023-04-23 03:10:27 - common.py - WARNING : Failed to read ODM_DLKM/etc/build.prop
2023-04-23 03:10:27 - common.py - WARNING : Failed to read ODM_DLKM/build.prop
debugfs 1.45.4 (23-Sep-2019)
/apex: File not found by ext2_lookup
2023-04-23 03:13:13 - ota_from_target_files - ERROR :
ERROR:
Traceback (most recent call last):
File "./build/tools/releasetools/ota_from_target_files", line 1496, in <module>
main(sys.argv[1:])
File "./build/tools/releasetools/ota_from_target_files", line 1470, in main
source_file=OPTIONS.incremental_source)
File "./build/tools/releasetools/ota_from_target_files", line 1198, in GenerateAbOtaPackage
FinalizeMetadata(metadata, staging_file, output_file, needed_property_files)
File "/home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/releasetools/ota_utils.py", line 99, in FinalizeMetadata
prelim_signing = ComputeAllPropertyFiles(input_file, needed_property_files)
File "/home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/releasetools/ota_utils.py", line 84, in ComputeAllPropertyFiles
SignOutput(input_file, prelim_signing)
File "/home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/releasetools/ota_utils.py", line 571, in SignOutput
whole_file=True)
File "/home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/releasetools/common.py", line 2295, in SignFile
proc.returncode, stdoutdata))
ExternalError: Failed to run signapk.jar: return code 1:
Error: Unable to access jarfile /home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/framework/signapk.jar

 

Thanks & Regards,

DRAVE

0 Kudos
Reply
6,235 Views
DRAVE
Contributor III

Hi, @Sanket_Parekh 

I hope you are doing well. 

We copy the file command 'cp out/soong/host/linux-x86/* build/make/tools/ -rf '. Resolved file 'signapk.jar' not found.  Then use the command './build/tools/releasetools/ota_from_target_files -i ota_old.zip mek_8q_car-target_files-eng.andrew.zip incremental_ota_update.zip' compile to generate file 'incremental_ota_update.zip'. The incremental_ota_update.zip file can be generated. But the OTA upgrade failed !

Compile log:

andrew@ubuntu18_a1:/home/workspace/imx-automotive-12.0.0_1.1.0/android_build$ ./build/tools/releasetools/ota_from_target_files -i ota_old.zip mek_8q_car-target_files-eng.andrew.zip incremental_ota_update.zip
Warning: releasetools script should be invoked as hermetic Python executable -- build and run `ota_from_target_files` directly.
2023-04-23 06:55:16 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop
2023-04-23 06:55:16 - common.py - WARNING : Failed to read VENDOR/etc/build.prop
2023-04-23 06:55:16 - common.py - WARNING : Failed to read ODM/etc/build.prop
2023-04-23 06:55:16 - common.py - WARNING : Failed to read ODM/build.prop
2023-04-23 06:55:16 - common.py - WARNING : Failed to read VENDOR_DLKM/etc/build.prop
2023-04-23 06:55:16 - common.py - WARNING : Failed to read VENDOR_DLKM/build.prop
2023-04-23 06:55:16 - common.py - WARNING : Failed to read ODM_DLKM/etc/build.prop
2023-04-23 06:55:16 - common.py - WARNING : Failed to read ODM_DLKM/build.prop
2023-04-23 06:55:18 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop
2023-04-23 06:55:18 - common.py - WARNING : Failed to read VENDOR/etc/build.prop
2023-04-23 06:55:18 - common.py - WARNING : Failed to read ODM/etc/build.prop
2023-04-23 06:55:18 - common.py - WARNING : Failed to read ODM/build.prop
2023-04-23 06:55:18 - common.py - WARNING : Failed to read VENDOR_DLKM/etc/build.prop
2023-04-23 06:55:18 - common.py - WARNING : Failed to read VENDOR_DLKM/build.prop
2023-04-23 06:55:18 - common.py - WARNING : Failed to read ODM_DLKM/etc/build.prop
2023-04-23 06:55:18 - common.py - WARNING : Failed to read ODM_DLKM/build.prop
debugfs 1.45.4 (23-Sep-2019)
/apex: File not found by ext2_lookup

OTA upgrade command: 

update_engine_client --payload=file:///data/ota_package/payload.bin --update --headers="FILE_HASH=NUYR0yIbMDdxH/2hpF+IkzygCXIKl12JQqzUAENwMDQ=
FILE_SIZE=1002629
METADATA_HASH=08AOdMfD23nwKaHLkKVXb4srY06EncGdMA4a8hQQaQw=
METADATA_SIZE=146175"

OTA upgrade failure log ( As shown in attachment  

01-31 01:27:56.387 432 432 I update_engine: [INFO:delta_performer.cc(217)] Discarding 73272 unused downloaded bytes
01-31 01:27:56.419 432 432 I update_engine: [INFO:multi_range_http_fetcher.cc(177)] Received transfer terminated.
01-31 01:27:56.428 432 432 I update_engine: [INFO:multi_range_http_fetcher.cc(129)] TransferEnded w/ code 200
01-31 01:27:56.436 432 432 I update_engine: [INFO:multi_range_http_fetcher.cc(131)] Terminating.
01-31 01:27:56.446 432 432 I update_engine: [INFO:action_processor.cc(116)] ActionProcessor: finished DownloadAction with code ErrorCode::kDownloadStateInitializationError
01-31 01:27:56.454 432 432 I update_engine: [INFO:action_processor.cc(121)] ActionProcessor: Aborting processing due to failure.
01-31 01:27:56.462 432 432 I update_engine: [INFO:update_attempter_android.cc(546)] Processing Done.
01-31 01:27:56.473 432 432 I update_engine: [INFO:delta_performer.cc(1389)] Resetting recorded hash for prepared partitions.
01-31 01:27:56.483 432 432 I update_engine: [INFO:update_attempter_android.cc(570)] Resetting update progress.
01-31 01:27:56.492 432 432 E update_engine: UnmapAllSnapshots should never be called.
01-31 01:27:56.510 432 432 I update_engine: [INFO:metrics_reporter_android.cc(159)] Current update attempt downloads 0 bytes data

Thanks & Regards,

DRAVE

0 Kudos
Reply
6,157 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hello @DRAVE ,

I hope you are doing well.
Thanks for the detailed logs.

->For building target files you have followed the correct steps but to build incremental OTA please follow the below-mentioned steps.
    1. make target-files-package -j4      
        //this will generate the previously changed target file in "{MY_ANDROID}/out/target/product/evk_8mq/obj/PACKAGING/target_files_intermediates/" directory
          Copy the PREVIOUS-target_files.zip to ${MY_ANDROID}
    2. Apply your changes in the source
    3. make target-files-package -j4
        //this will generate the previously changed target file in "{MY_ANDROID}/out/target/product/evk_8mq/obj/PACKAGING/target_files_intermediates/" directory
          Copy the NEW-target_files.zip to ${MY_ANDROID}
    4. ./build/tools/releasetools/ota_from_target_files -i PREVIOUS-target_files.zip NEW-target_files.zip incremental_ota_update.zip

->To apply the incremental OTA please follow the steps given in Section 7.1.3 of the Android User Guide attached here.
https://www.nxp.com/docs/en/user-guide/ANDROID_USERS_GUIDE.pdf

Thanks & Regards,

Sanket Parekh

0 Kudos
Reply
6,116 Views
DRAVE
Contributor III

Hi,  @Sanket_Parekh 
I hope you are doing well.

I'm sorry for hitting the wrong 'Solved' button, but the problem still exists. OTA upgrades still failed !

We have compiled 'incremental_ota_update.zip' as per step 7.13 of document' Android_User's_Guide.pdf '. 
We build incremental OTA follow the below-mentioned steps:
cd ${MY_ANDROID}
source build/envsetup.sh
lunch mek_8q_car-userdebug

./imx-make.sh bootloader kernel -j4

make target-files-package -j4
cp ./out/target/product/mek_8q/obj/PAC KAGING/target_files_intermediates/mek_8q_car-target_files-eng.andrew.zip ./mek_8q_car-no-fec-sound.andrew.zip
----->Modify the source code to enable fec1 and sound
./imx-make.sh bootloader kernel -j4
make target-files-package -j4
cp ./out/target/product/mek_8q/obj/PAC KAGING/target_files_intermediates/mek_8q_car-target_files-eng.andrew.zip ./mek_8q_car-full.andrew.zip
./build/tools/releasetools/ota_from_target_files -i mek_8q_car-no-fec-sound.andrew.zip mek_8q_car-full.andrew.zip incremental_ota_update.zip
Compile to generate 'incremental_ota_update.zip'


But we can complete the compilation only if we solve two problems. The two questions are as follows:
① ImportError: No module named google.protobuf
② Error: Unable to access jarfile /home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/framework/signapk.jar


OTA upgrade instructions are as follows:update_engine_client --payload=file:///data/ota_package/payload.bin --update --headers="FILE_HASH=92f5jhI06QUmqyWCehXj6LG98kiBoJ7SIIdjzuRv3mQ=
FILE_SIZE=148325
METADATA_HASH=wFjPZRkq578QTUW+Tmejimu7+f/Ln67tn6HQZ7tVa0o=
METADATA_SIZE=146690"
Upgrade failure log (As shown in attachment):
mek_8q:/ # [ 2096.702081] fec: <423> error: get_squashfs_size: failed to parse superblock: Invalid argument
mek_8q:/ # logcat --pid 444
[INFO:action_processor.cc(121)] ActionProcessor: Aborting processing due to failure.
01-31 04:35:03.910 444 444 I update_engine: [INFO:update_attempter_android.cc(546)] Processing Done.
01-31 04:35:03.921 444 444 I update_engine: [INFO:delta_performer.cc(1389)] Resetting recorded hash for prepared partitions.
01-31 04:35:03.930 444 444 I update_engine: [INFO:update_attempter_android.cc(570)] Resetting update progress.
01-31 04:35:03.941 444 444 E update_engine: UnmapAllSnapshots should never be called.
01-31 04:35:03.952 444 444 I update_engine: [INFO:metrics_reporter_android.cc(159)] Current update attempt downloads 0 bytes data

I suspect there may be something wrong with the BSP environment.

Thanks & Regards,

DRAVE

0 Kudos
Reply
6,070 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hello @DRAVE ,

I hope you are doing well.

Q)I suspect there may be something wrong with the BSP environment.
->Please check the Python version at runtime you are using it may be possible the older version doesn't include protobuf in its standard library, please try with the latest one.

->Please check whether all the necessary packages are installed for an Android build. See "Establishing a Build Environment" on the Android website
source.android.com/docs/setup/start/initializing

->One can also make sure by following the below installation to build a BSP environment.
sudo apt-get install uuid uuid-dev  zlib1g-dev liblz-dev  liblzo2-2 liblzo2-dev  lzop  git curl  u-boot-tools  mtd-utils  android-sdk-libsparse-utils  android-sdk-ext4-utils  device-tree-compiler  gdisk  m4  zlib1g-dev  bison  flex make  libssl-dev  gcc-multilib  libghc-gnutls-dev  swig  liblz4-tool  liblz4-tool  libdw-dev  dwarves  bc cpio tar lz4 rsync  ninja-build clang

Please make sure to follow Section 3 Building the Android Platform for i.MX
https://www.nxp.com/docs/en/user-guide/ANDROID_USERS_GUIDE.pdf

It will help you!

Thanks & Regards,

Sanket Parekh

0 Kudos
Reply
6,114 Views
DRAVE
Contributor III

Hi,  
I hope you are doing well.

I'm sorry for hitting the wrong 'Solved' button, but the problem still exists. OTA upgrades still failed !

We have compiled 'incremental_ota_update.zip' as per step 7.13 of document' Android_User's_Guide.pdf '. 
We build incremental OTA follow the below-mentioned steps:
cd ${MY_ANDROID}
source build/envsetup.sh
lunch mek_8q_car-userdebug

./imx-make.sh bootloader kernel -j4

make target-files-package -j4
cp ./out/target/product/mek_8q/obj/PAC KAGING/target_files_intermediates/mek_8q_car-target_files-eng.andrew.zip ./mek_8q_car-no-fec-sound.andrew.zip
----->Modify the source code to enable fec1 and sound
./imx-make.sh bootloader kernel -j4
make target-files-package -j4
cp ./out/target/product/mek_8q/obj/PAC KAGING/target_files_intermediates/mek_8q_car-target_files-eng.andrew.zip ./mek_8q_car-full.andrew.zip
./build/tools/releasetools/ota_from_target_files -i mek_8q_car-no-fec-sound.andrew.zip mek_8q_car-full.andrew.zip incremental_ota_update.zip
Compile to generate 'incremental_ota_update.zip'


But we can complete the compilation only if we solve two problems. The two questions are as follows:
① ImportError: No module named google.protobuf
② Error: Unable to access jarfile /home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/framework/signapk.jar


OTA upgrade instructions are as follows:update_engine_client --payload=file:///data/ota_package/payload.bin --update --headers="FILE_HASH=92f5jhI06QUmqyWCehXj6LG98kiBoJ7SIIdjzuRv3mQ=
FILE_SIZE=148325
METADATA_HASH=wFjPZRkq578QTUW+Tmejimu7+f/Ln67tn6HQZ7tVa0o=
METADATA_SIZE=146690"
Upgrade failure log (As shown in attachment):
mek_8q:/ # [ 2096.702081] fec: <423> error: get_squashfs_size: failed to parse superblock: Invalid argument
mek_8q:/ # logcat --pid 444
[INFO:action_processor.cc(121)] ActionProcessor: Aborting processing due to failure.
01-31 04:35:03.910 444 444 I update_engine: [INFO:update_attempter_android.cc(546)] Processing Done.
01-31 04:35:03.921 444 444 I update_engine: [INFO:delta_performer.cc(1389)] Resetting recorded hash for prepared partitions.
01-31 04:35:03.930 444 444 I update_engine: [INFO:update_attempter_android.cc(570)] Resetting update progress.
01-31 04:35:03.941 444 444 E update_engine: UnmapAllSnapshots should never be called.
01-31 04:35:03.952 444 444 I update_engine: [INFO:metrics_reporter_android.cc(159)] Current update attempt downloads 0 bytes data

I suspect there may be something wrong with the BSP environment.

 

0 Kudos
Reply
6,114 Views
DRAVE
Contributor III

Hi,  @Sanket_Parekh 
I hope you are doing well.

We have compiled 'incremental_ota_update.zip' as per step 7.13 of document' Android_User's_Guide.pdf '. 
We build incremental OTA follow the below-mentioned steps:
cd ${MY_ANDROID}
source build/envsetup.sh
lunch mek_8q_car-userdebug

./imx-make.sh bootloader kernel -j4

make target-files-package -j4
cp ./out/target/product/mek_8q/obj/PAC KAGING/target_files_intermediates/mek_8q_car-target_files-eng.andrew.zip ./mek_8q_car-no-fec-sound.andrew.zip
----->Modify the source code to enable fec1 and sound
./imx-make.sh bootloader kernel -j4
make target-files-package -j4
cp ./out/target/product/mek_8q/obj/PAC KAGING/target_files_intermediates/mek_8q_car-target_files-eng.andrew.zip ./mek_8q_car-full.andrew.zip
./build/tools/releasetools/ota_from_target_files -i mek_8q_car-no-fec-sound.andrew.zip mek_8q_car-full.andrew.zip incremental_ota_update.zip


Compile to generate 'incremental_ota_update.zip'


But we can complete the compilation only if we solve two problems. The two questions are as follows:
① ImportError: No module named google.protobuf
② Error: Unable to access jarfile /home/workspace/imx-automotive-12.0.0_1.1.0/android_build/build/make/tools/framework/signapk.jar

OTA upgrade instructions are as follows:
update_engine_client --payload=file:///data/ota_package/payload.bin --update --headers="FILE_HASH=92f5jhI06QUmqyWCehXj6LG98kiBoJ7SIIdjzuRv3mQ=
FILE_SIZE=148325
METADATA_HASH=wFjPZRkq578QTUW+Tmejimu7+f/Ln67tn6HQZ7tVa0o=
METADATA_SIZE=146690"
Upgrade failure log (As shown in attachment):
mek_8q:/ # [ 2096.702081] fec: <423> error: get_squashfs_size: failed to parse superblock: Invalid argument
mek_8q:/ # logcat --pid 444
01-31 04:35:03.890 444 444 I update_engine: [INFO:action_processor.cc(116)] ActionProcessor: finished DownloadAction with code ErrorCode::kDownloadStateInitializationError
01-31 04:35:03.899 444 444 I update_engine: [INFO:action_processor.cc(121)] ActionProcessor: Aborting processing due to failure.
01-31 04:35:03.910 444 444 I update_engine: [INFO:update_attempter_android.cc(546)] Processing Done.
01-31 04:35:03.921 444 444 I update_engine: [INFO:delta_performer.cc(1389)] Resetting recorded hash for prepared partitions.
01-31 04:35:03.930 444 444 I update_engine: [INFO:update_attempter_android.cc(570)] Resetting update progress.
01-31 04:35:03.941 444 444 E update_engine: UnmapAllSnapshots should never be called.
01-31 04:35:03.952 444 444 I update_engine: [INFO:metrics_reporter_android.cc(159)] Current update attempt downloads 0 bytes data

I'm sorry, I clicked the wrong button, but the problem is still there. I suspect there may be something wrong with the BSP environment

Thanks & Regards,

DRAVE

0 Kudos
Reply
5,673 Views
Lavanyavijay
Contributor II

@DRAVE  @Sanket_Parekh @shivanipatel @chyun705 

Is this issue solved? 

If Yes how it is solved ? Please mention proper steps with description and let me know which images you flashed into board.

I am also following the same steps as mentioned below but incremental OTA fails.

Incremental OTA generation steps:
cd ${MY_ANDROID}
source build/envsetup.sh
lunch evk_8mp-userdebug

./imx-make.sh bootloader kernel -j4

make target-files-package -j4
cp ./out/target/product/evk_8mp/obj/PAC KAGING/target_files_intermediates/evk_8mp-target_files-eng.build2.zip ./P1_evk_8mp-target_files-eng.build2.zip
----->Modify the source code ->  background color
./imx-make.sh bootloader kernel -j4
make target-files-package -j4
cp ./out/target/product/evk_8mp/obj/PAC KAGING/target_files_intermediates/evk_8mp-target_files-eng.build2.zip ./N1_evk_8mp-target_files-eng.build2.zip
./build/tools/releasetools/ota_from_target_files -i P1_evk_8mp-target_files-eng.build2.zip N1_evk_8mp-target_files-eng.build2.zip incremental_ota_update.zip

Update via update_engine method :
push the payload.bin to data/ota_package/
update_engine_client --payload=file:///data/ota_package/payload.bin --update --headers="FILE_HASH=6cp1fwYPZosMNP1H3PRIRJ5GwL9onvNIPiGhQLv26KI=
FILE_SIZE=141092
METADATA_HASH=9zCfvwWkefjQkoZk0Y14lYsjqo6pmG27ycv9epD+xpw=
METADATA_SIZE=138980"

Attached are error logs for reference.

Let me know if is there any additional information required.

Thanks
Lavanya




0 Kudos
Reply