Hi,
I have written a linux device driver for the CC8531 and connected the headset master evaluation board spi interface to the CPU we are using. Now I am trying to flash the intel hex file generated by your Windows configurator tool. Everything works fine - bootloader unlocking - flash erasing and programming, but then the bl_flash_verify fails with 0x800F - checksum mismatch.
I already compared the data I am writing with the WRITE() instruction several times with the original file generated by your tool but I do not see any problem. I am converting the intel hex file with the ihex2fw tool before I request it from kernel space. The data is correctly sent in 1k packages over the SPI interface. I do it exactly like described in the cc85xx family user's guide:
for each page:
set_addr(0x6000);
write(0x400, data);
flash_prog_page(0x6000, dest_addr);
One thing that is also confusing me and might be a hint what's actually going wrong is that I do not get the expected reply to a read request. If I am trying to read the calculated checksum as described in the users's guide after the cmd_req for flash verification I do only get the status word several times. It's the same when I am trying to read the device or chip info.
Do you have any hints what might go wrong?
Thanks in advance for your help.
Regards,
Jonas