Boot using U-Boot

You must first boot the board with U-Boot from the microSD card. After U-Boot launches, you can load the QNX IFS.

Load the QNX IFS from the microSD card

The followings steps describe how to boot board using U-Boot and then load the QNX IFS from your microSD card. Before you can complete these steps, you must prepare the microSD card. For more information, see the Preparing the microSD to boot the board section in this chapter for more information.
  1. Connect your Sitara AM62x SK target board to your host system.
  2. On your host machine, start your favorite terminal program with these settings:
    • Baud rate: 115200
    • Data: 8 bit
    • Parity: none
    • Stop: 1 bit
    • Flow control: none
    • Serial Device: /dev/ttyUSB0
  3. Connect the Sitara AM62x SK board to the power supply. The board will turn on automatically. To reset the board, press the reset button SW3.
    Figure 1Power Connector / Reset Button


  4. After the power is turned on, output from U-Boot appears terminal console. When you see the prompt Hit any key to stop autoboot, press any key on your keyboard to interrupt the boot process as follows:
    						U-Boot SPL 2024.04-ti-gfda88f8bcea3 (Jul 26 2024 - 11:00:12 +0000)
    						SYSFW ABI: 4.0 (firmware rev 0x000a '10.0.8--v10.00.08 (Fiery Fox)')
    						SPL initial stack usage: 13392 bytes
    						Trying to boot from MMC2
    						Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    						Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    						Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    						Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    						Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    						Starting ATF on ARM64 core...
    
    						NOTICE:  BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b87-dirty
    						NOTICE:  BL31: Built : 16:09:05, Feb  9 2024
    
    						U-Boot SPL 2024.04-ti-gfda88f8bcea3 (Jul 26 2024 - 11:00:12 +0000)
    						SYSFW ABI: 4.0 (firmware rev 0x000a '10.0.8--v10.00.08 (Fiery Fox)')
    						SPL initial stack usage: 1904 bytes
    						Error (-2): cannot determine file size
    						Trying to boot from MMC2
    						Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    						Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted
    
    
    						U-Boot 2024.04-ti-gfda88f8bcea3 (Jul 26 2024 - 11:00:12 +0000)
    
    						SoC:   AM62X SR1.0 GP
    						Model: Texas Instruments AM625 SK
    						EEPROM not available at 0x50, trying to read at 0x51
    						Reading on-board EEPROM at 0x51 failed -121
    						DRAM:  2 GiB
    						Core:  81 devices, 31 uclasses, devicetree: separate
    						MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    						Loading Environment from nowhere... OK
    						In:    serial
    						Out:   serial
    						Err:   serial
    						EEPROM not available at 0x50, trying to read at 0x51
    						Net:   eth0: ethernet@8000000port@1
    						Hit any key to stop autoboot:  0 
    =>
  5. On the U-Boot prompt, type the following U-Boot commands to load the QNX IFS from the microSD card:
    • mmcinfo
    • fatload mmc 1 0x80070000 psdk_linux_9.2_k3-am625-sk-am62xx-evm.dtb
    • fatload mmc 1 80080000 qnx-ifs
    • go 80080000 0x80070000
    after you run the go 80080000 0x80070000 command, QNX OS loads.
    => mmcinfo
    Device: mmc@fa10000
    Manufacturer ID: 13
    OEM: 4e
    Name: G1M15L 
    Bus Speed: 200000000
    Mode: HS400 (200MHz)
    Rd Block Len: 512
    MMC version 5.1
    High Capacity: Yes
    Capacity: 29.6 GiB
    Bus Width: 8-bit DDR
    Erase Group Size: 512 KiB
    HC WP Group Size: 8 MiB
    User Capacity: 29.6 GiB WRREL
    Boot Capacity: 31.5 MiB ENH
    RPMB Capacity: 4 MiB ENH
    Boot area 0 is not write protected
    Boot area 1 is not write protected
    =>fatload mmc 1 0x80070000 psdk_linux_9.2_k3-am625-sk-am62xx-evm.dtb
    59546 bytes read in 18 ms (3.2 MiB/s)
    =>fatload mmc 1 80080000 qnx-ifs
    59546 bytes read in 18 ms (3.2 MiB/s)
    => go 80080000 0x80070000
    ## Starting application at 0x80080000 ...
    Hypervisor support disabled
    MMU: 16-bit ASID 40-bit PA TCR_EL1=00000012b5183519
    ARM GIC-500 r1p1, arch v3.0 detected
    gic_v3_lpi_add_entry for vectors 8192 -> 8447, Ok
    gic_v3_lpi_add_entry for vectors 8448 -> 65535, Ok
    No SPI intrinfo. Add default entry for 32 -> 287 vectors, Ok
    LPI config table #1 @ 0000000081d34000, callout vaddr: ffffff8040291000
    aarch64_cpuspeed: core speed 1200
    cpu0: MPIDR=0000000080000000
    cpu0: MIDR=410fd034 Cortex-A53 r0p4
    cpu0: CWG=4 ERG=4 Dminline=4 Iminline=4 VIPT
    cpu0: CLIDR=a200023 LoUU=1 LoC=2 LoUIS=1
    cpu0: L1 Icache 32K linesz=64 set/way=256/2
    cpu0: L1 Dcache 32K linesz=64 set/way=128/4
    cpu0: L2 Unified 512K linesz=64 set/way=512/16
    Enabling ITS 0
    ITS queue at 0000000082550000, num slots: 256
    Issue MAPC/SYNC/INVALL commands for ICID 0
    update CWRITER to 0x00000060
    Waiting for all commands to be processed ... Done in 1 tries
    Enable LPIs in GICR_CTLR @ 0000000001880000 for CPU0
    Display set to A72 DSS
    no DSS0 power: trying to turn it on
    init_usb_host: USB0
    SYSFW ABI: 4.0 (firmware rev 10 '10.0.8--v10.00.08 (Fiery Fox)'
    init_usb_host: USB1
    Loading IFS...decompressing...done
    aarch64_cpuspeed: core speed 1200
    cpu1: MPIDR=0000000080000001
    cpu1: MIDR=410fd034 Cortex-A53 r0p4
    cpu1: CWG=4 ERG=4 Dminline=4 Iminline=4 VIPT
    cpu1: CLIDR=a200023 LoUU=1 LoC=2 LoUIS=1
    cpu1: L1 Icache 32K linesz=64 set/way=256/2
    cpu1: L1 Dcache 32K linesz=64 set/way=128/4
    cpu1: L2 Unified 512K linesz=64 set/way=512/16
    ITS 0 already Enabled
    ITS queue at 0000000082550000, num slots: 256
    Issue MAPC/SYNC/INVALL commands for ICID 1
    update CWRITER to 0x000000c0
    Waiting for all commands to be processed ... Done in 1 tries
    Enable LPIs in GICR_CTLR @ 00000000018a0000 for CPU1
    aarch64_cpuspeed: core speed 1200
    cpu2: MPIDR=0000000080000002
    cpu2: MIDR=410fd034 Cortex-A53 r0p4
    cpu2: CWG=4 ERG=4 Dminline=4 Iminline=4 VIPT
    cpu2: CLIDR=a200023 LoUU=1 LoC=2 LoUIS=1
    cpu2: L1 Icache 32K linesz=64 set/way=256/2
    cpu2: L1 Dcache 32K linesz=64 set/way=128/4
    cpu2: L2 Unified 512K linesz=64 set/way=512/16
    ITS 0 already Enabled
    ITS queue at 0000000082550000, num slots: 256
    Issue MAPC/SYNC/INVALL commands for ICID 2
    update CWRITER to 0x00000120
    Waiting for all commands to be processed ... Done in 1 tries
    Enable LPIs in GICR_CTLR @ 00000000018c0000 for CPU2
    aarch64_cpuspeed: core speed 1200
    cpu3: MPIDR=0000000080000003
    cpu3: MIDR=410fd034 Cortex-A53 r0p4
    cpu3: CWG=4 ERG=4 Dminline=4 Iminline=4 VIPT
    cpu3: CLIDR=a200023 LoUU=1 LoC=2 LoUIS=1
    cpu3: L1 Icache 32K linesz=64 set/way=256/2
    cpu3: L1 Dcache 32K linesz=64 set/way=128/4
    cpu3: L2 Unified 512K linesz=64 set/way=512/16
    ITS 0 already Enabled
    ITS queue at 0000000082550000, num slots: 256
    Issue MAPC/SYNC/INVALL commands for ICID 3
    update CWRITER to 0x00000180
    Waiting for all commands to be processed ... Done in 1 tries
    Enable LPIs in GICR_CTLR @ 00000000018e0000 for CPU3
    
    System page at phys:0000000081d43000 user:ffffff80402b6000 kern:ffffff80402b2000
    Starting next program at vffffff80600894b0
    syspage::hypinfo::flags=0x00000000
     
    Welcome to QNX 8.0.0 on TI_AM62x_SK_EVM_Board !
     
    Starting I2C driver ...
    start serial driver
    Starting MMC/SD memory card driver... eMMC
    Starting MMC/SD memory card driver... SD
    Starting Flash driver...
    Starting XHCI driver on USB3SS0 and USB3SS1
    Path=0 - am65x
     target=0 lun=0     Direct-Access(0) - SDMMC: S0J56X Rev: 1.0
    Starting devf-ram filesystem ...
    Starting networking ...
    Starting DHCP client ...
    Starting SSH daemon ...
    Starting devc-pty manager ...
    Starting qconn daemon ...
    Starting shell ...
    # 

You should now be able to test the OS by executing any shell command, or any command residing within the QNX IFS image. For example: ls or uname -a.

Note:
Addresses are interpreted as hexadecimal, therefore entering 0x80080000 and 80080000 are considered to be the same.
Note:
After you've completed the steps above, you can put the following command in the uenv.txt file and then copy it to the micro SD card, which permits your system to automatically boot the QNX IFS.
'uenvcmd=mmcinfo; fatload mmc 1 0x80070000 psdk_linux_9.2_k3-am625-sk-am62xx-evm.dtb; fatload mmc 1 80080000 qnx-ifs; go 80080000 0x80070000'
Page updated: