01-17-2023 02:30 PM
Hello
BHI260AP is being implemented on the board.
I confirmed that I read the register such as i2c communication and chip id.
The error occurs while loading firmware as shown below.
(We changed the firmware name to the one we used before.)
root@imx8mmevk:/sys/class/input/input0# echo 1 > download_ram_firmware
[ 1085.740430] [D]<BHY><bhy2_store_download_ram_firmware><912>HAL request to load firmware
[ 1085.749135] [I]<BHY><bhy2_download_ram_firmware><825>fw name: ram_patch.bin
[ 1085.762468] [I]<BHY><bhy2_download_ram_firmware><831>fw data: 2B 66 00 00
[ 1085.769263] [I]<BHY><bhy2_download_ram_firmware><833>fw size: 106156
[ 1085.776879] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1086.776889] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1087.776886] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1088.776886] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1089.776886] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1090.776888] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1091.776888] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1092.776893] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1093.776887] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1094.776887] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1095.776887] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1096.776886] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1097.776889] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1097.853680] [D]<BHY><bhy2_irq_control_setup><539>host int ctrl 0x04
[ 1098.014205] [D]<BHY><bhy2_upload_and_boot_ram_firmware><770>irq status is 0B after fw download
[ 1103.137678] [E]<BHY><bhy2_download_ram_firmware><878>No initialized meta event
[ 1103.145603] [E]<BHY><bhy2_store_download_ram_firmware><925>FW error is 0
[ 1103.159075] [D]<BHY><bhy2_dump_registers><185>dump register map:
[ 1103.165091] [D]<BHY><bhy2_dump_data><151>00 00 C0 04 00 00 00 00 00 00 00 00 00 00 00 00
[ 1103.173188] [D]<BHY><bhy2_dump_data><151>00 00 00 01 FF FF FF FF 89 03 2E 14 67 17 67 17
[ 1103.181284] [D]<BHY><bhy2_dump_data><151>4A 38 16 CC 04 00 00 70 00 0B 00 00 00 BF 00 00
[ 1103.189377] [D]<BHY><bhy2_dump_data><158>00 00 00 00 00 00 00 00 00 00
[ 1103.200958] [E]<BHY><bhy2_read_post_mortem_data><671>read post mortem failed ret=-6
[ 1103.208617] [D]<BHY><bhy2_dump_data><158>01 00 05 00
[ 1103.218704] [I]<BHY><bhy2_read_post_mortem_data><684>Request postmortem failed again 0xf
[ 1103.226798] [D]<BHY><bhy2_dump_data><158>01 00 05 00
[ 1103.231765] [E]<BHY><bhy2_store_download_ram_firmware><933>Try to read post mortem data failed
Since then, the log below has continued to appear.
[ 1140.787537] [E]<BHY><bhy2_enqueue_ring_buffer><64>One item lost due to data queue full
[ 1141.779610] [E]<BHY><bhy2_enqueue_ring_buffer><64>One item lost due to data queue full
[ 1142.779610] [E]<BHY><bhy2_enqueue_ring_buffer><64>One item lost due to data queue full
[ 1143.779603] [E]<BHY><bhy2_enqueue_ring_buffer><64>One item lost due to data queue full
Is there a sequence for firmware loading or if the way I did it is wrong?
03-15-2023 03:12 AM
Hi mmgg,
Ensure that you are not interrupted while downloading the firmware.
Where is your picture?
03-15-2023 09:10 AM - edited 03-15-2023 09:14 AM
Hi, BOSCH
Error in Read Post Mortem portion while downloading firmware.
I wonder what the reason is.
root@imx8mmevk:/sys/class/input/input0# echo 1 > download_ram_firmware
[ 1085.740430] [D]<BHY><bhy2_store_download_ram_firmware><912>HAL request to load firmware
[ 1085.749135] [I]<BHY><bhy2_download_ram_firmware><825>fw name: ram_patch.bin
[ 1085.762468] [I]<BHY><bhy2_download_ram_firmware><831>fw data: 2B 66 00 00
[ 1085.769263] [I]<BHY><bhy2_download_ram_firmware><833>fw size: 106156
[ 1085.776879] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1086.776889] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1087.776886] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1088.776886] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1089.776886] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1090.776888] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1091.776888] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1092.776893] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1093.776887] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1094.776887] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1095.776887] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1096.776886] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1097.776889] [I]<BHY><bhy2_ts_sync_work_func><7461>Downloading firmware, not read HUB time
[ 1097.853680] [D]<BHY><bhy2_irq_control_setup><539>host int ctrl 0x04
[ 1098.014205] [D]<BHY><bhy2_upload_and_boot_ram_firmware><770>irq status is 0B after fw download
[ 1103.137678] [E]<BHY><bhy2_download_ram_firmware><878>No initialized meta event
[ 1103.145603] [E]<BHY><bhy2_store_download_ram_firmware><925>FW error is 0
[ 1103.159075] [D]<BHY><bhy2_dump_registers><185>dump register map:
[ 1103.165091] [D]<BHY><bhy2_dump_data><151>00 00 C0 04 00 00 00 00 00 00 00 00 00 00 00 00
[ 1103.173188] [D]<BHY><bhy2_dump_data><151>00 00 00 01 FF FF FF FF 89 03 2E 14 67 17 67 17
[ 1103.181284] [D]<BHY><bhy2_dump_data><151>4A 38 16 CC 04 00 00 70 00 0B 00 00 00 BF 00 00
[ 1103.189377] [D]<BHY><bhy2_dump_data><158>00 00 00 00 00 00 00 00 00 00
[ 1103.200958] [E]<BHY><bhy2_read_post_mortem_data><671>read post mortem failed ret=-6
[ 1103.208617] [D]<BHY><bhy2_dump_data><158>01 00 05 00
[ 1103.218704] [I]<BHY><bhy2_read_post_mortem_data><684>Request postmortem failed again 0xf
[ 1103.226798] [D]<BHY><bhy2_dump_data><158>01 00 05 00
[ 1103.231765] [E]<BHY><bhy2_store_download_ram_firmware><933>Try to read post mortem data failed
Since then, the log below has continued to appear.
[ 1140.787537] [E]<BHY><bhy2_enqueue_ring_buffer><64>One item lost due to data queue full
[ 1141.779610] [E]<BHY><bhy2_enqueue_ring_buffer><64>One item lost due to data queue full
[ 1142.779610] [E]<BHY><bhy2_enqueue_ring_buffer><64>One item lost due to data queue full
[ 1143.779603] [E]<BHY><bhy2_enqueue_ring_buffer><64>One item lost due to data queue full
The picture of the error part looks like the red square below, is that right?
This is causing a lot of delay, so if you can reply quickly.
Thanks
03-24-2023 07:12 AM
Hi mmgg,
Could you strictly refer prevous reference code and see it again? Currently we can't reproduce your problem with reference software code.
03-29-2023 05:41 AM
HI, BOSCH
I don't know what it means to be proactive reference code.
I only have the code I gave you up there, but there is no other code.
Thanks
04-10-2023 05:22 AM
Hi mmgg,
If you think the code doesn't any problem, you could capture hardware communication waveform with logic analyser and check the actual whether the actual software execution meets the software code expectations.