Streaming .SB file via ROM API

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Streaming .SB file via ROM API

ソリューションへジャンプ
64件の閲覧回数
guitardenver
Contributor IV

I am making a USB bootloader. The goal is to stream a SB21 file via USB in 512Byte chunks and stream them to the Bootloader API. But when I stream the SB file, only the ERASE section works, no data in the load section actually gets loaded into flash. I know the SB file is good because I can send the same SB file via blhost directly to the bootloader and it works. Attached to this forum post is my C source code that streams the data to the boot ROM. Is there anything incorrect that might help solve this issue?

My bootloader code uses the NXP kb_init, kb_deinit and kb_execute API to stream a SB file. 

 

My sb21 config yaml:

# Description: Secure Binary v2.1 section blocks
sections:
  # --------------------------------------===== SB2.1 Commands [Optional] =====---------------------------------------
  # Description: Secure Binary v2.1 commands block, list of all possible options - Modify it according to your
  # application
  - commands:
      # Erase Application space. Keep bottom reserved area for persistent data
      - erase:
          address: 0x10000
          length: 0x6BC00
          mem_opt: 0
          flags: 0

      # Load the signed application MBI to flash
      - load:
          address: 0x10000
          load_opt: 0
          # File path is replaced with the generated device-specific MBI.
          file: C:\code\Application_SECURE_MBI.bin

 

Notes:

1. I am able to use blhost to send the same exact SB21 file to the Boot ROM and everything works. So I know the SBI is good

2. When I use my bootloader to stream the SB21 file, it does the erase section command, but the load section of the MBI file seems to fail, but I get no error code at all from kb_execute or the init/deinit calls. They all say success. 

3. the final SB21 file is 155,568 Bytes total. I am able to stream every byte to the bootloader, all with status_t = 0x00 as a result. 

4. My CMPA has SECURE_BOOT disabled, SWD access is enabled, CMPA is not sealed. CFPA also have everything enabled and open.  ISP is enabled

ラベル(1)
0 件の賞賛
返信
1 解決策
48件の閲覧回数
Harry_Zhang
NXP Employee
NXP Employee

Hi @guitardenver 

Since the same SB2.1 file works correctly with blhost, the SB file itself should be valid.

Could you please check the following points in your application?

According to the LPC55xx User Manual, the ROM authentication functions use the following RAM regions:

0x30000000–0x30003FFF
0x14005000–0x140059FF

Please check your linker map and make sure your workspace, USB buffer, stack, or other application data does not overlap these regions.

When kb_init/kb_process/kb_deinit indirectly invoke skboot_authenticate(), the application HASH interrupt vector must call HASH_IRQHandler(). Please also confirm that this interrupt forwarding is correctly configured.

These would be the first two areas I recommend checking based on the ROM API requirements.
 
Harry_Zhang_0-1794383117200.png

 

Harry_Zhang_1-1794383142643.png

 

BR
Harry

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
48件の閲覧回数
Harry_Zhang
NXP Employee
NXP Employee

Hi @guitardenver 

Since the same SB2.1 file works correctly with blhost, the SB file itself should be valid.

Could you please check the following points in your application?

According to the LPC55xx User Manual, the ROM authentication functions use the following RAM regions:

0x30000000–0x30003FFF
0x14005000–0x140059FF

Please check your linker map and make sure your workspace, USB buffer, stack, or other application data does not overlap these regions.

When kb_init/kb_process/kb_deinit indirectly invoke skboot_authenticate(), the application HASH interrupt vector must call HASH_IRQHandler(). Please also confirm that this interrupt forwarding is correctly configured.

These would be the first two areas I recommend checking based on the ROM API requirements.
 
Harry_Zhang_0-1794383117200.png

 

Harry_Zhang_1-1794383142643.png

 

BR
Harry
0 件の賞賛
返信
33件の閲覧回数
guitardenver
Contributor IV

The shared RAM regions was indeed the issue. I reserved those within my linker file so my bootloader does not touch them. The file stream succeeded. Thanks!

0 件の賞賛
返信
%3CLINGO-SUB%20id%3D%22lingo-sub-2427138%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EROM%20API%E7%B5%8C%E7%94%B1%E3%81%A7.SB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E5%86%8D%E7%94%9F%E3%81%99%E3%82%8B%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2427138%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E7%A7%81%E3%81%AFUSB%E3%83%96%E3%83%BC%E3%83%88%E3%83%AD%E3%83%BC%E3%83%80%E3%83%BC%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%E7%9B%AE%E6%A8%99%E3%81%AF%E3%80%81SB21%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92USB%E7%B5%8C%E7%94%B1%E3%81%A7512%E3%83%90%E3%82%A4%E3%83%88%E3%81%9A%E3%81%A4%E3%81%AE%E3%83%81%E3%83%A3%E3%83%B3%E3%82%AF%E3%81%AB%E5%88%86%E5%89%B2%E3%81%97%E3%81%A6%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%97%E3%80%81%E3%81%9D%E3%82%8C%E3%82%92%E3%83%96%E3%83%BC%E3%83%88%E3%83%AD%E3%83%BC%E3%83%80%E3%83%BCAPI%E3%81%AB%E9%80%81%E4%BF%A1%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%81%99%E3%80%82%E3%81%97%E3%81%8B%E3%81%97%E3%80%81SB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81ERASE%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%97%E3%81%8B%E6%A9%9F%E8%83%BD%E3%81%9B%E3%81%9A%E3%80%81load%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AF%E5%AE%9F%E9%9A%9B%E3%81%AB%E3%81%AF%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%81%AB%E3%83%AD%E3%83%BC%E3%83%89%E3%81%95%E3%82%8C%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82SB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8C%E8%89%AF%E3%81%84%E3%81%AE%E3%81%AF%E3%80%81%E5%90%8C%E3%81%98SB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92blhost%E7%B5%8C%E7%94%B1%E3%81%A7%E3%83%96%E3%83%BC%E3%83%88%E3%83%AD%E3%83%BC%E3%83%80%E3%83%BC%E3%81%AB%E7%9B%B4%E6%8E%A5%E9%80%81%E3%81%A3%E3%81%A6%E5%8B%95%E4%BD%9C%E3%81%99%E3%82%8B%E3%81%8B%E3%82%89%E3%81%A7%E3%81%99%E3%80%82%E3%81%93%E3%81%AE%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A9%E3%83%A0%E6%8A%95%E7%A8%BF%E3%81%AB%E3%81%AF%E3%80%81%E3%83%96%E3%83%BC%E3%83%88ROM%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%99%E3%82%8BC%E8%A8%80%E8%AA%9E%E3%81%AE%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89%E3%81%8C%E6%B7%BB%E4%BB%98%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%E3%81%93%E3%81%AE%E5%95%8F%E9%A1%8C%E3%82%92%E8%A7%A3%E6%B1%BA%E3%81%99%E3%82%8B%E3%81%AE%E3%81%AB%E5%BD%B9%E7%AB%8B%E3%81%A4%E3%82%88%E3%81%86%E3%81%AA%E3%80%81%E4%BD%95%E3%81%8B%E8%AA%A4%E3%81%A3%E3%81%9F%E6%83%85%E5%A0%B1%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%81%8B%EF%BC%9F%3C%2FP%3E%3CP%3E%E7%A7%81%E3%81%AE%E3%83%96%E3%83%BC%E3%83%88%E3%83%AD%E3%83%BC%E3%83%80%E3%83%BC%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AF%E3%80%81NXP%E3%81%AE%3CSPAN%3Ekb_init%E3%80%81kb_deinit%E3%80%81kb_execute%20API%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6SB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CU%3E%3CSTRONG%3E%3CSPAN%3E%E7%A7%81%E3%81%AEsb21%E8%A8%AD%E5%AE%9Ayaml%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%EF%BC%9A%3C%2FSPAN%3E%3C%2FSTRONG%3E%3C%2FU%3E%3C%2FP%3E%3CDIV%3E%3CDIV%3E%3CSPAN%3E%23%20%E8%AA%AC%E6%98%8E%3A%20Secure%20Binary%20v2.1%20%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%3C%2FSPAN%3E%3CSPAN%3E%EF%BC%9A%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%23%20--------------------------------------%3D%3D%3D%3D%3D%20SB2.1%20%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%20%5B%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%5D%20%3D%3D%3D%3D%3D---------------------------------------%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%23%20%E8%AA%AC%E6%98%8E%3A%20Secure%20Binary%20v2.1%20%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E3%80%81%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E5%8F%AF%E8%83%BD%E3%81%AA%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%83%AA%E3%82%B9%E3%83%88%20-%20%E5%BF%85%E8%A6%81%E3%81%AB%E5%BF%9C%E3%81%98%E3%81%A6%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%23%20%E5%BF%9C%E7%94%A8%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E-%3C%2FSPAN%3E%3CSPAN%3E%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%3C%2FSPAN%3E%3CSPAN%3E%3A%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%23%20%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E3%82%92%E6%B6%88%E5%8E%BB%E3%80%82%E6%B0%B8%E7%B6%9A%E7%9A%84%E3%81%AA%E3%83%87%E3%83%BC%E3%82%BF%E7%94%A8%E3%81%AB%E4%B8%8B%E9%83%A8%E3%81%AE%E9%83%A8%E5%88%86%E3%82%92%E4%BA%88%E7%B4%84%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E-%3C%2FSPAN%3E%3CSPAN%3E%E6%B6%88%E5%8E%BB%3C%2FSPAN%3E%3CSPAN%3E%3A%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%3C%2FSPAN%3E%3CSPAN%3E%3A%3C%2FSPAN%3E%20%3CSPAN%3E0x10000%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%E9%95%B7%E3%81%95%3C%2FSPAN%3E%3CSPAN%3E%EF%BC%9A%3C%2FSPAN%3E%20%3CSPAN%3E0x6BC00%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3Emem_opt%3C%2FSPAN%3E%20%3CSPAN%3E%3A%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%E3%83%95%E3%83%A9%E3%82%B0%3C%2FSPAN%3E%3CSPAN%3E%3A%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%23%20%E7%BD%B2%E5%90%8D%E4%BB%98%E3%81%8D%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AEMBI%E3%82%92%E3%83%95%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%81%AB%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%82%80%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E-%3C%2FSPAN%3E%3CSPAN%3E%E8%B2%A0%E8%8D%B7%3C%2FSPAN%3E%3CSPAN%3E%EF%BC%9A%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%3C%2FSPAN%3E%3CSPAN%3E%3A%3C%2FSPAN%3E%20%3CSPAN%3E0x10000%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3Eload_opt%3C%2FSPAN%3E%20%3CSPAN%3E%3A%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%23%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%91%E3%82%B9%E3%81%AF%E3%80%81%E7%94%9F%E6%88%90%E3%81%95%E3%82%8C%E3%81%9F%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E5%9B%BA%E6%9C%89%E3%81%AE%20MBI%20%E3%81%AB%E7%BD%AE%E3%81%8D%E6%8F%9B%E3%81%88%E3%82%89%E3%82%8C%E3%81%BE%E3%81%99%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%26nbsp%3B%20%3C%2FSPAN%3E%3CSPAN%3E%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%3C%2FSPAN%3E%3CSPAN%3E%3A%3C%2FSPAN%3E%20%3CSPAN%3EC%3A%5Ccode%5CApplication_SECURE_MBI.bin%3C%2FSPAN%3E%3C%2FDIV%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%3E%E3%83%A1%E3%83%A2%EF%BC%9A%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E1.blhost%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E5%85%A8%E3%81%8F%E5%90%8C%E3%81%98SB21%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E3%83%96%E3%83%BC%E3%83%88ROM%E3%81%AB%E9%80%81%E4%BF%A1%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%8C%E3%81%A7%E3%81%8D%E3%80%81%E3%81%99%E3%81%B9%E3%81%A6%E6%AD%A3%E5%B8%B8%E3%81%AB%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%BE%E3%81%99%E3%80%82SO%20SBI%E3%81%8C%E8%89%AF%E3%81%84%E3%81%A8%E7%9F%A5%E3%81%A3%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E2.%20%E3%83%96%E3%83%BC%E3%83%88%E3%83%AD%E3%83%BC%E3%83%80%E3%83%BC%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%20SB21%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E6%B6%88%E5%8E%BB%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%AF%E5%AE%9F%E8%A1%8C%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%E3%81%8C%E3%80%81MBI%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%83%AD%E3%83%BC%E3%83%89%E3%81%8C%E5%A4%B1%E6%95%97%E3%81%99%E3%82%8B%E3%82%88%E3%81%86%E3%81%A7%E3%81%99%E3%80%82%E3%81%97%E3%81%8B%E3%81%97%E3%80%81kb_execute%20%E3%82%84%20init%2Fdeinit%20%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%97%E3%81%8B%E3%82%89%E3%81%AF%E3%82%A8%E3%83%A9%E3%83%BC%E3%82%B3%E3%83%BC%E3%83%89%E3%81%8C%E3%81%BE%E3%81%A3%E3%81%9F%E3%81%8F%E8%BF%94%E3%81%95%E3%82%8C%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%E7%9A%86%E3%80%81%E6%88%90%E5%8A%9F%E3%82%92%E5%8F%A3%E3%81%AB%E3%81%99%E3%82%8B%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E3.%20%E6%9C%80%E7%B5%82%E7%9A%84%E3%81%AASB21%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AF%E5%90%88%E8%A8%88155%2C568%E3%83%90%E3%82%A4%E3%83%88%E3%81%A7%E3%81%99%E3%80%82%E3%83%96%E3%83%BC%E3%83%88%E3%83%AD%E3%83%BC%E3%83%80%E3%83%BC%E3%81%AB%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E3%83%90%E3%82%A4%E3%83%88%E3%82%92%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%8C%E3%81%A7%E3%81%8D%E3%80%81%E7%B5%90%E6%9E%9C%E3%81%A8%E3%81%97%E3%81%A6%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9_t%E3%81%8C0x00%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E4.%20CMPA%E3%81%AFSECURE_BOOT%E7%84%A1%E5%8A%B9%E5%8C%96%E3%80%81SWD%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%AF%E6%9C%89%E5%8A%B9%E3%80%81CMPA%E3%81%AF%E5%B0%81%E5%8D%B0%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82CFPA%E3%82%82%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E6%A9%9F%E8%83%BD%E3%82%92%E6%9C%89%E5%8A%B9%E5%8C%96%E3%81%97%E3%80%81%E5%85%AC%E9%96%8B%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%E3%80%82ISP%E3%81%8C%E6%9C%89%E5%8A%B9%E3%81%AB%E3%81%AA%E3%81%A3%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2427138%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3ELPC55xx%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2427206%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%20Streaming%20.SB%20file%20via%20ROM%20API%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2427206%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%81%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F43524%22%20target%3D%22_blank%22%3E%40guitardenver%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%E5%90%8C%E3%81%98SB2.1%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8Cblhost%E3%81%A7%E6%AD%A3%E3%81%97%E3%81%8F%E5%8B%95%E4%BD%9C%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%8B%E3%82%89%E3%80%81SB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E8%87%AA%E4%BD%93%E3%81%AF%E6%9C%89%E5%8A%B9%E3%81%A7%E3%81%82%E3%82%8B%E3%81%AF%E3%81%9A%E3%81%A7%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E4%BB%A5%E4%B8%8B%E3%81%AE%E3%83%9D%E3%82%A4%E3%83%B3%E3%83%88%E3%82%92%E3%81%94%E7%A2%BA%E8%AA%8D%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%0A%3CP%3ELPC55xx%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%83%9E%E3%83%8B%E3%83%A5%E3%82%A2%E3%83%AB%E3%81%AB%E3%82%88%E3%82%8B%E3%81%A8%E3%80%81ROM%E8%AA%8D%E8%A8%BC%E6%A9%9F%E8%83%BD%E3%81%AF%E4%BB%A5%E4%B8%8B%E3%81%AERAM%E9%A0%98%E5%9F%9F%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E0x30000000%E2%80%930x30003FFF%3CBR%20%2F%3E%200x14005000%E2%80%930x140059FF%3C%2FP%3E%0A%3CP%3E%E3%83%AA%E3%83%B3%E3%82%AB%E3%83%BC%E3%83%9E%E3%83%83%E3%83%97%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%97%E3%80%81%E3%83%AF%E3%83%BC%E3%82%AF%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E3%80%81USB%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%80%81%E3%82%B9%E3%82%BF%E3%83%83%E3%82%AF%E3%80%81%E3%81%9D%E3%81%AE%E4%BB%96%E3%81%AE%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%87%E3%83%BC%E3%82%BF%E3%81%8C%E3%81%93%E3%82%8C%E3%82%89%E3%81%AE%E9%A0%98%E5%9F%9F%E3%81%A8%E9%87%8D%E8%A4%87%E3%81%97%E3%81%A6%E3%81%84%E3%81%AA%E3%81%84%E3%81%8B%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%3C%2FP%3E%0A%3CP%3Ekb_init%2Fkb_process%2Fkb_deinit%E3%81%8C%E9%96%93%E6%8E%A5%E7%9A%84%E3%81%ABskboot_authenticate()%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99%E5%A0%B4%E5%90%88%E3%80%81%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AEHASH%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E3%83%99%E3%82%AF%E3%83%88%E3%83%AB%E3%81%AFHASH_IRQHandler()%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%95%E3%81%AA%E3%81%91%E3%82%8C%E3%81%B0%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%E3%81%BE%E3%81%9F%E3%80%81%E3%81%93%E3%81%AE%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E8%BB%A2%E9%80%81%E3%81%8C%E6%AD%A3%E3%81%97%E3%81%8F%E8%A8%AD%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E3%81%93%E3%81%A8%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%E3%80%82%3C%2FP%3E%0A%3CDIV%3EROM%20API%E3%81%AE%E8%A6%81%E4%BB%B6%E3%81%AB%E5%9F%BA%E3%81%A5%E3%81%8F%E3%81%A8%E3%80%81%E3%81%BE%E3%81%9A%E6%9C%80%E5%88%9D%E3%81%AB%E7%A2%BA%E8%AA%8D%E3%81%99%E3%81%B9%E3%81%8D2%E3%81%A4%E3%81%AE%E9%A0%98%E5%9F%9F%E3%81%AF%E3%81%93%E3%82%8C%E3%82%89%E3%81%A7%E3%81%99%E3%80%82%3C%2FDIV%3E%0A%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%0A%3CDIV%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Harry_Zhang_0-1794383117200.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Harry_Zhang_0-1794383117200.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Harry_Zhang_0-1794383117200.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F399121i0D9CCCB7E72163A1%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Harry_Zhang_0-1794383117200.png%22%20alt%3D%22Harry_Zhang_0-1794383117200.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%0A%3CBR%20%2F%3E%0A%3C%2FDIV%3E%0A%3CDIV%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Harry_Zhang_1-1794383142643.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Harry_Zhang_1-1794383142643.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Harry_Zhang_1-1794383142643.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F399122iA942F845044A9585%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Harry_Zhang_1-1794383142643.png%22%20alt%3D%22Harry_Zhang_1-1794383142643.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%0A%3CBR%20%2F%3E%0A%3C%2FDIV%3E%0A%3CDIV%3EBR%3C%2FDIV%3E%0A%3CDIV%3E%E3%83%8F%E3%83%AA%E3%83%BC%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2427341%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3E%E5%9B%9E%E5%A4%8D%EF%BC%9A%20Streaming%20.SB%20file%20via%20ROM%20API%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2427341%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%95%8F%E9%A1%8C%E3%81%AF%E7%A2%BA%E3%81%8B%E3%81%AB%E5%85%B1%E6%9C%89RAM%E9%A0%98%E5%9F%9F%E3%81%AB%E3%81%82%E3%81%A3%E3%81%9F%E3%80%82%E3%81%9D%E3%82%8C%E3%82%89%E3%81%AF%E3%83%AA%E3%83%B3%E3%82%AF%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%86%85%E3%81%AB%E4%BA%88%E7%B4%84%E3%81%97%E3%81%A6%E3%80%81%E3%83%96%E3%83%BC%E3%83%88%E3%83%AD%E3%83%BC%E3%83%80%E3%83%BC%E3%81%8C%E8%A7%A6%E3%82%89%E3%81%AA%E3%81%84%E3%82%88%E3%81%86%E3%81%AB%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%A0%E3%81%AE%E5%87%A6%E7%90%86%E3%81%AB%E6%88%90%E5%8A%9F%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86%EF%BC%81%3C%2FP%3E%3C%2FLINGO-BODY%3E