<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックGetting HAB to auth signed kernel on a MX8Mini</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Getting-HAB-to-auth-signed-kernel-on-a-MX8Mini/m-p/1198196#M166356</link>
    <description>&lt;P&gt;I am working on getting uboot to load a secure kernel on a Boundary Devices Nitrogen8MM. I have already worked through the instructions at&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://boundarydevices.com/high-assurance-boot-hab-i-mx8m-edition/" target="_blank" rel="nofollow noopener noreferrer"&gt;https://boundarydevices.com/high-assurance-boot-hab-i-mx8m-edition/&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and eveything is working with a sigend uboot.&lt;/P&gt;&lt;P&gt;According to BoundaryDevices, they have been told by NXP that the next step is to get booti to auth the kernel by using this patch:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://github.com/boundarydevices/u-boot-imx6/commit/a20a5ee3c0" target="_blank" rel="nofollow noopener noreferrer"&gt;https://github.com/boundarydevices/u-boot-imx6/commit/a20a5ee3c0&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;However, it's not working.&lt;/P&gt;&lt;P&gt;When I auth the kernel by hand using hab_auth_img, it appears to work just fine:&lt;/P&gt;&lt;PRE&gt;=&amp;gt; load mmc 1 ${loadaddr} Image&lt;BR /&gt;30009696 bytes read in 679 ms (42.1 MiB/s)&lt;BR /&gt;=&amp;gt; hab_auth_img ${loadaddr} ${filesize} 0x01c9d000&lt;BR /&gt;&lt;BR /&gt;Authenticate image from DDR location 0x40480000...&lt;BR /&gt;&lt;BR /&gt;Secure boot enabled&lt;BR /&gt;&lt;BR /&gt;HAB Configuration: 0xcc, HAB State: 0x99&lt;BR /&gt;No HAB Events Found!&lt;BR /&gt;&lt;BR /&gt;=&amp;gt;&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;But when just booting I get this:&lt;/P&gt;&lt;PRE&gt;Authenticating Image...&lt;BR /&gt;&lt;BR /&gt;Authenticate image from DDR location 0x40800000...&lt;BR /&gt;Error: Invalid IVT structure&lt;BR /&gt;&lt;BR /&gt;Allowed IVT structure:&lt;BR /&gt;IVT HDR = 0x4X2000D1&lt;BR /&gt;IVT ENTRY = 0xXXXXXXXX&lt;BR /&gt;IVT RSV1 = 0x0&lt;BR /&gt;IVT DCD = 0x0&lt;BR /&gt;IVT BOOT_DATA = 0xXXXXXXXX&lt;BR /&gt;IVT SELF = 0xXXXXXXXX&lt;BR /&gt;IVT CSF = 0xXXXXXXXX&lt;BR /&gt;IVT RSV2 = 0x0&lt;BR /&gt;Authenticate Image Fail, Please check&lt;BR /&gt;Error loading kernel image&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;And, of course, if I don't use the patch then it boots just fine, but I need to auth the kernel before leading.&lt;/P&gt;&lt;P&gt;What am I missing?&lt;/P&gt;</description>
    <pubDate>Fri, 11 Dec 2020 17:38:03 GMT</pubDate>
    <dc:creator>adam_m</dc:creator>
    <dc:date>2020-12-11T17:38:03Z</dc:date>
    <item>
      <title>Getting HAB to auth signed kernel on a MX8Mini</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Getting-HAB-to-auth-signed-kernel-on-a-MX8Mini/m-p/1198196#M166356</link>
      <description>&lt;P&gt;I am working on getting uboot to load a secure kernel on a Boundary Devices Nitrogen8MM. I have already worked through the instructions at&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://boundarydevices.com/high-assurance-boot-hab-i-mx8m-edition/" target="_blank" rel="nofollow noopener noreferrer"&gt;https://boundarydevices.com/high-assurance-boot-hab-i-mx8m-edition/&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and eveything is working with a sigend uboot.&lt;/P&gt;&lt;P&gt;According to BoundaryDevices, they have been told by NXP that the next step is to get booti to auth the kernel by using this patch:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://github.com/boundarydevices/u-boot-imx6/commit/a20a5ee3c0" target="_blank" rel="nofollow noopener noreferrer"&gt;https://github.com/boundarydevices/u-boot-imx6/commit/a20a5ee3c0&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;However, it's not working.&lt;/P&gt;&lt;P&gt;When I auth the kernel by hand using hab_auth_img, it appears to work just fine:&lt;/P&gt;&lt;PRE&gt;=&amp;gt; load mmc 1 ${loadaddr} Image&lt;BR /&gt;30009696 bytes read in 679 ms (42.1 MiB/s)&lt;BR /&gt;=&amp;gt; hab_auth_img ${loadaddr} ${filesize} 0x01c9d000&lt;BR /&gt;&lt;BR /&gt;Authenticate image from DDR location 0x40480000...&lt;BR /&gt;&lt;BR /&gt;Secure boot enabled&lt;BR /&gt;&lt;BR /&gt;HAB Configuration: 0xcc, HAB State: 0x99&lt;BR /&gt;No HAB Events Found!&lt;BR /&gt;&lt;BR /&gt;=&amp;gt;&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;But when just booting I get this:&lt;/P&gt;&lt;PRE&gt;Authenticating Image...&lt;BR /&gt;&lt;BR /&gt;Authenticate image from DDR location 0x40800000...&lt;BR /&gt;Error: Invalid IVT structure&lt;BR /&gt;&lt;BR /&gt;Allowed IVT structure:&lt;BR /&gt;IVT HDR = 0x4X2000D1&lt;BR /&gt;IVT ENTRY = 0xXXXXXXXX&lt;BR /&gt;IVT RSV1 = 0x0&lt;BR /&gt;IVT DCD = 0x0&lt;BR /&gt;IVT BOOT_DATA = 0xXXXXXXXX&lt;BR /&gt;IVT SELF = 0xXXXXXXXX&lt;BR /&gt;IVT CSF = 0xXXXXXXXX&lt;BR /&gt;IVT RSV2 = 0x0&lt;BR /&gt;Authenticate Image Fail, Please check&lt;BR /&gt;Error loading kernel image&lt;/PRE&gt;&lt;P&gt;&lt;BR /&gt;And, of course, if I don't use the patch then it boots just fine, but I need to auth the kernel before leading.&lt;/P&gt;&lt;P&gt;What am I missing?&lt;/P&gt;</description>
      <pubDate>Fri, 11 Dec 2020 17:38:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Getting-HAB-to-auth-signed-kernel-on-a-MX8Mini/m-p/1198196#M166356</guid>
      <dc:creator>adam_m</dc:creator>
      <dc:date>2020-12-11T17:38:03Z</dc:date>
    </item>
    <item>
      <title>Re: Getting HAB to auth signed kernel on a MX8Mini</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Getting-HAB-to-auth-signed-kernel-on-a-MX8Mini/m-p/1198294#M166361</link>
      <description>&lt;P&gt;I've done some digging and the issue seems to be that IVT_SEFT and IVT_INITAL don't match in validate_ivt(). I added some debuggin statements and found this:&lt;/P&gt;&lt;PRE&gt;Allowed IVT structure:&lt;BR /&gt;IVT HDR = 0x4X2000D1&lt;BR /&gt;IVT ENTRY = 0xXXXXXXXX&lt;BR /&gt;IVT RSV1 = 0x0&lt;BR /&gt;IVT DCD = 0x0&lt;BR /&gt;IVT BOOT_DATA = 0xXXXXXXXX&lt;BR /&gt;IVT SELF = 0xXXXXXXXX&lt;BR /&gt;IVT CSF = 0xXXXXXXXX&lt;BR /&gt;IVT RSV2 = 0x0&lt;BR /&gt;Found values:&lt;BR /&gt;IVT_ENTRY: 0x40480000&lt;BR /&gt;IVT_RSV1: 0x0&lt;BR /&gt;IVT_DCD: 0x0&lt;BR /&gt;IVT_SELF: 0x4211d000&lt;BR /&gt;IVT_INITAL: 0x4249d000&lt;BR /&gt;IVT_CSF: 0x4211d020&lt;BR /&gt;IVT_RSV2: 0x0&lt;BR /&gt;&lt;BR /&gt;&lt;/PRE&gt;&lt;P&gt;So, they are off by 0x380000 which is a suspiciously round number, but I can't figure out where it comes from.&lt;/P&gt;</description>
      <pubDate>Sat, 12 Dec 2020 01:06:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Getting-HAB-to-auth-signed-kernel-on-a-MX8Mini/m-p/1198294#M166361</guid>
      <dc:creator>adam_m</dc:creator>
      <dc:date>2020-12-12T01:06:32Z</dc:date>
    </item>
    <item>
      <title>Re: Getting HAB to auth signed kernel on a MX8Mini</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Getting-HAB-to-auth-signed-kernel-on-a-MX8Mini/m-p/1199334#M166467</link>
      <description>&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/181279"&gt;@adam_m&lt;/a&gt;&amp;nbsp;&lt;BR /&gt;Hello,&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Have You used recommendations in U-boot help how to sign kernel?&lt;/P&gt;
&lt;P&gt;&lt;A href="https://source.codeaurora.org/external/imx/uboot-imx/tree/doc/imx/habv4/guides/mx8m_mx8mm_secure_boot.txt?h=imx_v2018.03_4.14.78_1.0.0_ga" target="_blank"&gt;https://source.codeaurora.org/external/imx/uboot-imx/tree/doc/imx/habv4/guides/mx8m_mx8mm_secure_boot.txt?h=imx_v2018.03_4.14.78_1.0.0_ga&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;BR /&gt;Yuri.&lt;/P&gt;</description>
      <pubDate>Tue, 15 Dec 2020 04:51:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Getting-HAB-to-auth-signed-kernel-on-a-MX8Mini/m-p/1199334#M166467</guid>
      <dc:creator>Yuri</dc:creator>
      <dc:date>2020-12-15T04:51:54Z</dc:date>
    </item>
  </channel>
</rss>

