|
| 1 | +<?xml version="1.0" encoding="UTF-8"?> |
| 2 | +<!-- This file originates from the project https://github.com/openSUSE/doc-kit --> |
| 3 | +<!-- This file can be edited downstream. --> |
| 4 | +<!DOCTYPE topic |
| 5 | +[ |
| 6 | + <!ENTITY % entities SYSTEM "../common/generic-entities.ent"> |
| 7 | + %entities; |
| 8 | +]> |
| 9 | +<!-- refers to legacy doc: <add github link to legacy doc piece, if applicable> --> |
| 10 | +<!-- point back to this document with a similar comment added to your legacy doc piece --> |
| 11 | +<!-- refer to README.md for file and id naming conventions --> |
| 12 | +<!-- metadata is dealt with on the assembly level --> |
| 13 | +<topic xml:id="nvidia-jetson-firmware" |
| 14 | + role="task" xml:lang="en" |
| 15 | + xmlns="http://docbook.org/ns/docbook" version="5.2" |
| 16 | + xmlns:its="http://www.w3.org/2005/11/its" |
| 17 | + xmlns:xi="http://www.w3.org/2001/XInclude" |
| 18 | + xmlns:xlink="http://www.w3.org/1999/xlink" |
| 19 | + xmlns:trans="http://docbook.org/ns/transclusion"> |
| 20 | + <info> |
| 21 | + <title>Preparing firmware for &nvidia; &jetson; platforms</title><!-- can be changed via merge |
| 22 | +in the assembly --> |
| 23 | + <!-- add author's e-mail --> |
| 24 | + < meta name= "maintainer" content= "[email protected]" its:translate= "no"/> |
| 25 | + <abstract><!-- can be changed via merge in the assembly --> |
| 26 | + <para> |
| 27 | + UEFI system firmware allows &suse; Linux media and installations to boot. |
| 28 | + </para> |
| 29 | + </abstract> |
| 30 | + </info> |
| 31 | + <section xml:id="nvidia-jetson-firmware-introduction"> |
| 32 | + <title>Introduction</title> |
| 33 | + <para> |
| 34 | + &suse; Linux installation media are formatted as UEFI Removable Media |
| 35 | + and require &armreg; EBBR compliant boot firmware on the system. |
| 36 | + </para> |
| 37 | + </section> |
| 38 | + <section xml:id="nvidia-jetson-firmware-requirements"> |
| 39 | + <title>Requirements</title> |
| 40 | + <itemizedlist> |
| 41 | + <listitem> |
| 42 | + <para> |
| 43 | + &nvidiareg; &jetsonreg; &xavierreg;, &orinreg; or later System-on-Module or &nvidia; IGX &orin; based system |
| 44 | + </para> |
| 45 | + </listitem> |
| 46 | + <listitem> |
| 47 | + <para> |
| 48 | + Second system (e.g., notebook) with USB connection to your &nvidia; based system |
| 49 | + </para> |
| 50 | + </listitem> |
| 51 | + </itemizedlist> |
| 52 | + </section> |
| 53 | + <section xml:id="nvidia-jetson-firmware-flash"> |
| 54 | + <title>Flashing the firmware</title> |
| 55 | + <para> |
| 56 | + Follow &nvidia; or OEM provided instructions for flashing your system. |
| 57 | + &suse; Linux installation will be easiest if boot firmware and operating system |
| 58 | + do not share the same storage device, i.e., SPI flash for firmware. |
| 59 | + </para> |
| 60 | + <procedure> |
| 61 | + <step> |
| 62 | + <para> |
| 63 | + Power on the &nvidia; system and enter Force Recovery Mode (RCM) |
| 64 | + according to its vendor instructions. |
| 65 | + </para> |
| 66 | + </step> |
| 67 | + <step> |
| 68 | + <para> |
| 69 | + Flash the boot firmware via USB from the secondary system: |
| 70 | + </para> |
| 71 | +<screen>&prompt.sudo;<command>./flash.sh <replaceable>target-board-config</replaceable> external</command></screen> |
| 72 | + <note> |
| 73 | + <para> |
| 74 | + The target board parameter depends on your system and your intended usage. |
| 75 | + </para> |
| 76 | + </note> |
| 77 | + </step> |
| 78 | + </procedure> |
| 79 | + <tip> |
| 80 | + <title>Finding the right config for your system</title> |
| 81 | + <para> |
| 82 | + Only some board config files have human-recognizable aliases. |
| 83 | + </para> |
| 84 | + <para> |
| 85 | + You can try resolving the aliases to the product codes for module and board and |
| 86 | + checking for any additional <literal>-qspi</literal> config files: |
| 87 | + </para> |
| 88 | +<screen>&prompt.user;<command>ls -l igx-orin*</command> |
| 89 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 26 31. Mai 21:39 igx-orin-devkit.conf -> p3740-0002-p3701-0008.conf |
| 90 | +&prompt.user;<command>ls -1 p3740-0002-p3701-0008*</command> |
| 91 | +p3740-0002-p3701-0008.conf |
| 92 | +p3740-0002-p3701-0008<emphasis role="bold">-qspi</emphasis>.conf |
| 93 | +&prompt.user;<command>ls -l jetson-orin*</command> |
| 94 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 29 4. Jun 15:37 jetson-orin-nano-devkit.conf -> p3768-0000-p3767-0000-a0.conf |
| 95 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 34 4. Jun 15:38 jetson-orin-nano-devkit-nvme.conf -> p3768-0000-p3767-0000-a0-nvme.conf |
| 96 | +&prompt.user;<command>ls -1 p3768-0000-p3767-0000-a0*</command> |
| 97 | +p3768-0000-p3767-0000-a0.conf |
| 98 | +p3768-0000-p3767-0000-a0-maxn.conf |
| 99 | +p3768-0000-p3767-0000-a0-nvme.conf |
| 100 | +p3768-0000-p3767-0000-a0<emphasis role="bold">-qspi</emphasis>.conf |
| 101 | +&prompt.user;<command>ls -l jetson-agx-orin*</command> |
| 102 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 40 4. Jun 15:37 jetson-agx-orin-devkit-as-jao-32gb.conf -> p3737-0000-p3701-0000-as-p3701-0004.conf |
| 103 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 40 4. Jun 15:38 jetson-agx-orin-devkit-as-nano4gb.conf -> p3737-0000-p3701-0000-as-p3767-0004.conf |
| 104 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 40 4. Jun 15:38 jetson-agx-orin-devkit-as-nano8gb.conf -> p3737-0000-p3701-0000-as-p3767-0003.conf |
| 105 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 40 4. Jun 15:37 jetson-agx-orin-devkit-as-nx-16gb.conf -> p3737-0000-p3701-0000-as-p3767-0000.conf |
| 106 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 40 4. Jun 15:37 jetson-agx-orin-devkit-as-nx-8gb.conf -> p3737-0000-p3701-0000-as-p3767-0001.conf |
| 107 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 26 4. Jun 15:38 jetson-agx-orin-devkit.conf -> p3737-0000-p3701-0000.conf |
| 108 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 26 4. Jun 15:37 jetson-agx-orin-devkit-industrial.conf -> p3737-0000-p3701-0008.conf |
| 109 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 31 4. Jun 15:38 jetson-agx-orin-devkit-industrial-maxn.conf -> p3737-0000-p3701-0008-maxn.conf |
| 110 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 31 4. Jun 15:37 jetson-agx-orin-devkit-industrial<emphasis role="bold">-qspi</emphasis>.conf -> p3737-0000-p3701-0008<emphasis role="bold">-qspi</emphasis>.conf |
| 111 | +lrwxrwxrwx 1 &exampleuser; &examplegroup; 31 4. Jun 15:37 jetson-agx-orin-devkit-maxn.conf -> p3737-0000-p3701-0000-maxn.conf |
| 112 | +&prompt.user;<command>ls -1 p3737-0000-p3701-0000*</command> |
| 113 | +p3737-0000-p3701-0000-as-p3701-0004.conf |
| 114 | +p3737-0000-p3701-0000-as-p3767-0000.conf |
| 115 | +p3737-0000-p3701-0000-as-p3767-0001.conf |
| 116 | +p3737-0000-p3701-0000-as-p3767-0003.conf |
| 117 | +p3737-0000-p3701-0000-as-p3767-0004.conf |
| 118 | +p3737-0000-p3701-0000.conf |
| 119 | +p3737-0000-p3701-0000.conf.common |
| 120 | +p3737-0000-p3701-0000-maxn.conf |
| 121 | +p3737-0000-p3701-0000<emphasis role="bold">-qspi</emphasis>.conf</screen> |
| 122 | +<!-- |
| 123 | +&prompt.user;<command>ls -1 p3737-0000-p3701-0008*</command> |
| 124 | +p3737-0000-p3701-0008.conf |
| 125 | +p3737-0000-p3701-0008-maxn.conf |
| 126 | +p3737-0000-p3701-0008<emphasis role="bold">-qspi</emphasis>.conf |
| 127 | +--> |
| 128 | + </tip> |
| 129 | + </section> |
| 130 | + <section xml:id="nvidia-jetson-firmware-summary"> |
| 131 | + <title>Summary</title> |
| 132 | + <para> |
| 133 | + You have updated the boot firmware and possibly changed its storage location. |
| 134 | + During system boot it should identify on serial console similar to: |
| 135 | + </para> |
| 136 | + <screen>Jetson System firmware version 36.3.0-gcid-35925539 date 2024-04-04T17:32:50+00:</screen> |
| 137 | + <!-- TODO update this --> |
| 138 | + </section> |
| 139 | + <section xml:id="nvidia-jetson-firmware-troubleshooting"> |
| 140 | + <title>Troubleshooting</title> |
| 141 | + <para> |
| 142 | + Refer to &nvidia; documentation. |
| 143 | + </para> |
| 144 | + </section> |
| 145 | +</topic> |
0 commit comments