Open main menu

DAVE Developer's Wiki β

Changes

DESK-XZ7-L/Deployment/Standalone boot

22,368 bytes added, 26 January
no edit summary
!colspan="4" style="width:100%; text-align:left"; border-bottom:solid 2px #ededed"|History
|-
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|ID#
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Issue Date
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Notes
|-
!|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededededf8fb; padding:5px; color:#000000"|{{oldid|17xxx17164|17xxx2022/11/22}}|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|DESK-XZ7-L-1.0.0-rc1 release|-!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000"|Q1 2023/01/23!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000"|DESK-XZ7-L -1.0.0 1 release
|-
|}
<section end=History/>
__FORCETOC__
<section begin=Body/>
==Standalone boot==
 
=== Introduction ===
This document was written and tested with the software/hardware combination described in the history table above. However, it contains general concepts that can be adapted to any DAVE Embedded Systems' Linux platform.
{{ImportantMessage|text=The following programming examples are intended for <b>laboratory usage</b> or for ''preliminary deployment strategy''.<br><br>A complete deployment strategy has to be carefully identifiyed taking into account the overall arguments like: boot speed, safe boot, recovery mechanisms, watchdog supervisor, etc.}}
We'll explain how to program and configure a <code>SOM</code> to boot in standalone mode, without the need for a system microSD card, with the following option:
* booting with Quad-SPI NOR
** in this configuration the primary boot images will be fetched from Quad-SPI NOR flash storage, while the root file system will be fetched from microSD
* booting with NAND
** in this configuration the primary boot images and rootfs will be fetched from NAND flash storage
We'll explain how to program and configure a <SOM> to boot in standalone mode, without === Program the need for a system microSD card or an NFS server, with three options:* booting with SD only** in this configuration the whole system will boot without the need for a Quad-SPI NOR/NAND flashes storage, all images and the root file system will be fetched from the SD card* booting with NOR and NAND internal storage** in this configuration the primary boot images will be fetched from NOR flash storage, while the root file system will be fetched from NAND flash===
=== Program boot images into SD card ===The SD card should have at least 2 partition:* the first must be an FAT32 partition (type <code>b</code>) This chapter is compatible with size of at least 64MB* the second [[BORA SOM | BORA]], [[BORA Xpress SOM | BORA Xpress]] and [[BORA Lite SOM | BORA Lite]] platforms, but below there is a normal linux partition (type <code>83</code>) of at least 512M with ext3/ext4 filesystemlog for BORA Xpress SOM.
==== Create the SD First of all, create a bootable microSD card partitions ====* SD device has to be partitioned as described [[DESK-XZ7-L/Development/Creating_and_building_the_Petalinux_project#Petalinux_build | here]]. Alternatively you can download binaries from [https://mirror.dave.eu/desk-xz-l/ mirror] and properly formatted choosing the install it on microSD or into <code>file systemtftpboot</code> for each partition* an example of SD partitioning script is the following one (running on a DAVE Embedded Systems' DVDK VM):directory in your host device.
Then, boot the board with the microSD card and stop the automatic boot process of U-Boot in order to access the console.<preclass="workstation-terminal">#!/bin/shU-Boot 2021.01-desk-xz7-l-1.0.1 (Jan 12 2024 - 10:44:15 +0000)
node=$CPU: Zynq 7z030Silicon: v3.1Model: BoraDRAM: ECC disabled 1 GiBFlash: 0 BytesNAND: 0 MiBMMC: mmc@e0100000: 0Loading Environment from FAT... *** Warning - bad CRC, using default environment
In: serial@e0001000Out: serial@e0001000Err: serial@e0001000SF: Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiBSF: Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiBSOM ConfigID# partition : 00000004SOM UniqueID#: 2a0e92c4:03193a4bCB ConfigID#: ffffffffCB UniqueID#: ffffffff:ffffffffSF: Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiBWarning: MAC addr not found in MBRESERVED=SPI NOR at block 8BOOT_ROM_SIZE=128Net:RFS_SIZE=2048ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr 7, interface rgmii-id
# create the SDCARD partitionWarning: ethernet@e000b000 (eth0) using random MAC address - 72:2c:e1:44:08:28part=""eth0: ethernet@e000b000echo ${node} | grep mmcblk Hit ENTER within 2 seconds to stop autobootZynq> </dev/nullif [ "$?" -eq "0" ]; then part="p"fipre>
# print the SD total capacitytotal_size=`sfdisk ===Programming Quad-s ${node}`total_sizeSPI NOR flash from microSD====`expr ${total_size} / 1024`echo SD total size: ${total_size}KB
# calculate partition sizesboot_start=`expr ${RESERVED} \\* 1024 \\* 1024 / 512`boot_size=`expr ${BOOT_ROM_SIZE} \\* 1024 \\* 1024 / 512`rfs_start=`expr ${boot_size} + ${boot_start}`rfs_size=`expr ${RFS_SIZE} \\* 1024 \\* 1024 / 512`Initialize and format Quad-SPI NOR flash memory
umount ${node}${part}1 <pre class="workstation-terminal"> /dev/null 2Zynq>&1sf probeumount ${node}${part}2 SF: Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiBZynq> sf erase 0 0x1000000SF: 16777216 bytes @ 0x0 Erased: OK</dev/null 2pre>&1
# call sfdisk to create partition table{ echo ${boot_start},${boot_size},0c,* Install <code>BOOT.BIN</code> on Quad-; echo ${rfs_start},${rfs_size},83,-; } | sfdisk --force ${node}SPI NOR flash memory
# format the SDCARD partitionecho <pre class="formatting bootworkstation-terminal">Zynq> fatload mmc 0:1 $kernel_addr_r BOOT.BINmkfs7033004 bytes read in 406 ms (16.vfat -F 32 -n BOOT 5 MiB/s)Zynq> sf write ${node}kernel_addr_r 0x0 ${part}1filesizeecho "formatting rfs"device 0 offset 0x0, size 0x6b50acmkfs.ext4 -F ${node}${part}2 -LrfsSF: 7033004 bytes @ 0x0 Written: OK
</pre>
E.g* Install <code>image.ub</code> on Quad-SPI NOR flash memory
<pre class="workstation-terminal">
vdk@vagrantZynq> mw $kernel_addr_r 0x0 $filesizeZynq> fatload mmc 0:~/desk-xz-l1 $ sudo kernel_addr_r image./sdcard-partitionub4868556 bytes read in 287 ms (16.sh 2 MiB/dev/sdcs)Zynq> sf write $kernel_addr_r 0x700000 $filesizeSD total device 0 offset 0x700000, size0x4a49ccSF: 7580KB4868556 bytes @ 0x700000 Written: OKChecking that no-one is using this disk right now ... OK</pre>
Disk /dev/sdc: 7* Install <code>boot.41 GiB, 7948206080 bytes, 15523840 sectorsDisk model: STORAGE DEVICE Units: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes scr</ 512 bytesDisklabel type: dosDisk identifier: 0xd775a452code> on Quad-SPI NOR flash memory
Old situation<pre class="workstation-terminal">Zynq> mw $kernel_addr_r 0x0 $filesizeZynq> fatload mmc 0:1 $kernel_addr_r boot.scr2709 bytes read in 14 ms (188.5 KiB/s)Zynq> sf write $kernel_addr_r 0xFC0000 $filesizedevice 0 offset 0xfc0000, size 0xa95SF: 2709 bytes @ 0xfc0000 Written: OK</pre>
Device Boot Start End Sectors Size Id Type====Programming Quad-SPI NOR flash from ethernet====/dev/sdc1 8192 15523839 15515648 7.4G b W95 FAT32* Initialize and format Quad-SPI NOR flash memory
<pre class="workstation-terminal">Zynq>> Created a new DOS disklabel with disk identifier 0x3f242b9b.sf probe/dev/sdc1SF: Created a new partition 1 of type 'W95 FAT32 (LBA)' and of Detected s25fl128s with page size 128 MiB./dev/sdc2: Created a new partition 2 of type 'Linux' and of 256 Bytes, erase size 2 GiB.Partition #2 contains a ext4 signature./dev/sdc3: Done. New situation:Disklabel type: dosDisk identifier: 0x3f242b9b Device Boot Start End Sectors Size Id Type/dev/sdc1 16384 278527 262144 128M c W95 FAT32 (LBA)/dev/sdc2 278528 4472831 4194304 2G 83 Linux The partition table has been altered.Calling ioctl() to re-read partition table.Syncing disks.formatting bootmkfs.fat 4.1 (2017-01-24)formatting rfsmke2fs 1.45.5 (07-Jan-2020)/dev/sdc2 contains a ext4 file system labelled 'rfs' created on Mon Nov 21 13:14:20 2022Creating filesystem with 524288 4k blocks and 131072 inodesFilesystem UUID: cc691ca0-1eb4-4ff9-87cc-da74f9e91685Superblock backups stored on blocks: 3276864 KiB, 98304, 163840, 229376, 294912total 16 MiBZynq> sf erase 0 0x1000000Allocating group tables: done Writing inode tables: done Creating journal (16384 blocks): doneWriting superblocks and filesystem accounting informationSF: done  dvdk16777216 bytes @vagrant0x0 Erased:~/desk-xz-l$ OK
</pre>
Then, insert the SD card in the target and boot the system via NFS as described in the e [[DESK-XZ7-L/General/Booting_from_NFS|Booting from nfs]] guide * create a mount point and mount Properly define the first partition ethernet configuration parameter:<preclass="workstation-terminal">root@bora:~# mkdir -p /mnt/sdZynq> setenv ipaddr 192.168.0.89root@bora:~# mount /dev/mmcblk0p1 /mnt/sdZynq> setenv serverip 192.168.0.99
</pre>
* copy boot download via TFTP the <code>BOOT.BIN</code> binary image filesand write <code>BOOT.BIN</code> on Quad-SPI NOR flash memory<preclass="workstation-terminal">rootZynq> tftpboot $kernel_addr_r desk-xz7-l/desk-xz7-l-1.0.1_borax_BOOT.BINUsing ethernet@borae000b000 deviceTFTP from server 192.168.0.99; our IP address is 192.168.0.89Filename 'desk-xz7-l/desk-xz7-l-1.0.1_borax_BOOT.BIN'.Load address:~0x2000000Loading: #T ############################################ cp BOOT#################### ################################################################# ...BIN /mnt/sdroot@bora:~ ################################################################# ######### cp image 444.ub 3 KiB/mnt/sdsdoneBytes transferred = 7033004 (6b50ac hex)Zynq> sf write $kernel_addr_r 0x0 $filesizedevice 0 offset 0x0, size 0x6b50acrootSF: 7033004 bytes @bora0x0 Written:~# cp boot.scr /mnt/sdOK
</pre>
==== Program root file system into SD card ====* mount download via TFTP the <code>ext3image.ub</ext4code> binary image and write <code>image.ub</code> volume in the temporary directoryon Quad-SPI NOR flash memory<preclass="workstation-terminal">Zynq>mw $kernel_addr_r 0x0 $filesizerootZynq> tftpboot $kernel_addr_r desk-xz7-l/desk-xz7-l-1.0.1_borax_image.ubUsing ethernet@borae000b000 deviceTFTP from server 192.168.0.99; our IP address is 192.168.0.89Filename 'desk-xz7-l/desk-xz7-l-1.0.1_borax_image.ub'.Load address: 0x2000000Loading:~# mount T ################################################################ ################################################################# ... ################################################################# ######################################### 394.5 KiB/dev/mmcblk0p2 /mnt/extsdoneBytes transferred = 4868556 (4a49cc hex)Zynq> sf write $kernel_addr_r 0x700000 $filesizedevice 0 offset 0x700000, size 0x4a49ccSF: 4868556 bytes @ 0x700000 Written: OK
</pre>
* now, you can extract download via TFTP the root file system in the target directory<code>boot.scr</code> binary image and write <code>boot.scr</code> on Quad-SPI NOR flash memory<preclass="workstation-terminal">Zynq> mw $kernel_addr_r 0x0 $filesizeZynq>tftpboot $kernel_addr_r desk-xz7-l/desk-xz7-l-1.0.1_borax_boot.scrrootUsing ethernet@bora:~# tar zxpf images/linux/rootfse000b000 deviceTFTP from server 192.168.0.99; our IP address is 192.168.tar0.gz 89Filename 'desk-xz7-C l/mntdesk-xz7-l-1.0.1_borax_boot.scr'.Load address: 0x2000000Loading: #T 0 Bytes/extsdoneBytes transferred = 2709 (a95 hex)Zynq> sf write $kernel_addr_r 0xFC0000 $filesizedevice 0 offset 0xfc0000, size 0xa95SF: 2709 bytes @ 0xfc0000 Written: OK
</pre>
* finallyOnce change boot mode and restarted, you need to cleanly umount and safely reboot or turn off the system. <pre>root@bora:~# umount /mnt/sdroot@bora:~# umount /mnt/extroot@boracomplete boot log can be like this one:~# reboot</pre>
Once restarted, the complete boot log can be like this one:
<pre class="mw-collapsible mw-collapsed">
U-Boot 2021.01-desk-xz7-l-1.0.01 (Oct Jan 12 2021 2024 - 0910:2844:42 15 +0000)
CPU: Zynq 7z0207z030
Silicon: v3.1
Model: Bora
DRAM: ECC disabled 1 GiB
Flash: 0 Bytes
NAND: 0 MiB
MMC: mmc@e0100000: 0
Loading Environment from FATSPIFlash... SF: Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiB*** Warning - bad CRC, using default environment
In: serial@e0001000
Out: serial@e0001000
Err: serial@e0001000
SF: Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiB
SF: Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiB
SOM ConfigID#: 00000004
SOM UniqueID#: 2a0e92c4:03193a4b
CB ConfigID#: ffffffff
CB UniqueID#: ffffffff:ffffffff
SF: Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiB
Warning: MAC addr not found in SPI NOR at block 8
Net:
ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr -17, interface rgmii-id Warning: ethernet@e000b000 (eth0) using random MAC address - 7a:68:29:db:0b:f6
eth0: ethernet@e000b000
Hit any key ENTER within 2 seconds to stop autobootSF: 0Detected s25fl128s with page size 256 Bytes, erase size 64 KiB, total 16 MiBswitch to partitions #device 0offset 0xfc0000, size 0x40000SF: 262144 bytes @ 0xfc0000 Read: OKmmc0 is current deviceScanning mmc 0QSPI:1...Found U-Boot Trying to boot script /boot.scrERROR: reserving fdt memory region failed (addr=3e000000 size=1000000)2710 bytes read in 22 ms (120.1 KiB/s)at 3000000
## Executing script at 03000000
Trying to load boot images from mmc0qspiERRORSF: reserving fdt memory region failed (addr=3e000000 Detected s25fl128s with page size=1000000)256 Bytes, erase size 64 KiB, total 16 MiBdevice 0 offset 0x700000, size 0x6000004847892 SF: 6291456 bytes read in 398 ms (11.6 MiB/s)@ 0x700000 Read: OK
## Loading kernel from FIT Image at 10000000 ...
Using 'conf-system-top.dtb' configuration
Compression: uncompressed
Data Start: 0x100000f8
Data Size: 4826176 4845944 Bytes = 4.6 MiB
Architecture: ARM
OS: Linux
Entry Point: 0x00200000
Hash algo: sha256
Hash value: e92c329ce6440944a9b8d2c581f9e2f668870af9b90648b321f5b2c996bfb47ff5d0c9b9a689e4b0657468fb280f0c8fb60064196b7938a77a43b36a2743acca
Verifying Hash Integrity ... sha256+ OK
## Loading fdt from FIT Image at 10000000 ...
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x1049a6440x1049f37c Data Size: 19819 20716 Bytes = 1920.4 2 KiB
Architecture: ARM
Hash algo: sha256
Hash value: 021ac7fe236180abcd9d663112aeadec8c6a8c1be2e31e729504ea585d99ca42f93874aa1f1a0c6d52c423e12b25b4a2ae14a09b40a8068a49b4c8914be75e4c
Verifying Hash Integrity ... sha256+ OK
Booting using the fdt blob at 0x1049a6440x1049f37c
Loading Kernel Image
ERROR: reserving fdt memory region failed (addr=3e000000 size=1000000) Loading Device Tree to 2fff80002fff7000, end 2ffffd6a 2ffff0eb ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0[ 0.000000] Linux version 5.10.0-xilinx-v2021.2 (oe-user@oe-host) (arm-xilinx-linux-gnueabi-gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Tue Oct 12 09:30:57 UTC 2021[ 0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache[ 0.000000] OF: fdt: Machine model: xlnx,zynq-7000Bora[ 0.000000] earlycon: cdns0 at MMIO 0xe0001000 (options '115200n8')[ 0.000000] printk: bootconsole [cdns0] enabled[ 0.000000] Memory policy: Data cache writeallocOF[ 0.000000] cma: reserved memReserved 16 MiB at 0x3f000000[ 0.000000] Zone ranges: OVERLAP DETECTED!rproc@3e000000 (0x3e000000[ 0.000000] Normal [mem 0x0000000000000000--0x3f000000) overlaps with vdev0vring0@3e800000 (0x3e800000--0x3e804000)0x000000002fffffff]Reserved memory: created DMA memory pool at 0x3e000000, size 16 MiBOF: reserved [ 0.000000] HighMem [mem: initialized node rproc@3e000000, compatible id shared0x0000000030000000-dma-pool0x000000003fffffff]Reserved memory: created DMA [ 0.000000] Movable zone start for each node[ 0.000000] Early memory pool at 0x3e800000, size node ranges[ 0.000000] node 0 MiBOF: reserved [mem: initialized node vdev0vring0@3e800000, compatible id shared0x0000000000000000-dma-pool0x000000003fffffff]Reserved memory: created DMA memory pool at 0x3e804000, size [ 0.000000] Initmem setup node 0 MiB[mem 0x0000000000000000-0x000000003fffffff]OF[ 0.000000] percpu: reserved mem: initialized node vdev0vring1@3e804000, compatible id shared-dma-poolEmbedded 16 pages/cpu s32780 r8192 d24564 u65536Reserved memory: created DMA memory pool at 0x3e808000[ 0.000000] Built 1 zonelists, size 1 MiBmobility grouping on. Total pages: 260416OF[ 0.000000] Kernel command line: reserved mem: initialized node vdev0buffer@3e808000console=ttyPS0, compatible id shared-dma-pool115200 earlycon root=/dev/mmcblk0p2 rw rootwaitcma[ 0.000000] Dentry cache hash table entries: Reserved 16 MiB at 0x3f000000Zone ranges131072 (order:7, 524288 bytes, linear) Normal [mem 0x0000000000000000-0x000000002fffffff 0.000000] HighMem [mem 0x0000000030000000Inode-0x000000003fffffff]cache hash table entries: 65536 (order: 6, 262144 bytes, linear)Movable zone start for each nodeEarly memory node ranges node 0: [[ 0.000000] mem 0x0000000000000000auto-0x000000003dffffff]init: stack:off, heap alloc:off, heap free:off node [ 0.0: [mem 0x000000003f000000-0x000000003fffffff]Initmem setup node 0 [mem 0x0000000000000000-0x000000003fffffff]percpuMemory: Embedded 15 pages1009768K/cpu s32396 r8192 d20852 u61440Built 1 zonelists1048576K available (7168K kernel code, mobility grouping on279K rwdata, 1952K rodata, 1024K init, 162K bss, 22424K reserved, 16384K cma-reserved, 245760K highmem)[ 0. Total pages000000] rcu: 256320Kernel command linePreemptible hierarchical RCU implementation.[ 0.000000] rcu: console=ttyPS0,115200 earlycon root=/dev/mmcblk0p2 rw rootwait RCU event tracing is enabled.Dentry cache hash table entries[ 0.000000] rcu: 131072 (order: 7, 524288 bytes, linear) RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.Inode-cache hash table entries[ 0.000000] Trampoline variant of Tasks RCU enabled.[ 0.000000] rcu: 65536 (orderRCU calculated value of scheduler-enlistment delay is 10 jiffies.[ 0.000000] rcu: 6Adjusting geometry for rcu_fanout_leaf=16, 262144 bytes, linear)nr_cpu_ids=2mem auto-init[ 0.000000] NR_IRQS: stack:off16, heap allocnr_irqs:off16, heap freepreallocated irqs:off16Memory: 993544K/1032192K available (7168K kernel code, 275K rwdata, 1940K rodata, 1024K init, 162K bss, 22264K reserved, 16384K cma-reserved, 229376K highmem[ 0.000000] efuse mapped to (ptrval)rcu: Preemptible hierarchical RCU implementation.[ 0.000000] slcr mapped to (ptrval)rcu: [ RCU event tracing 0.000000] GIC physical location is enabled.0xf8f01000rcu: [ RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.0.000000] L2C: platform modifies aux control register: 0x72360000 -> 0x72760000 Trampoline variant of Tasks RCU enabled[ 0.rcu000000] L2C: DT/platform modifies aux control register: RCU calculated value of scheduler0x72360000 -enlistment delay is 10 jiffies> 0x72760000[ 0.rcu: Adjusting geometry 000000] L2C-310 erratum 769419 enabled[ 0.000000] L2C-310 enabling early BRESP for rcu_fanout_leaf=16, nr_cpu_ids=2Cortex-A9NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16[ 0.000000] L2C-310 full line of zeros enabled for Cortex-A9efuse mapped to (ptrval)slcr mapped to (ptrval)GIC physical location is 0xf8f01000[ 0.000000] L2C-310 ID prefetch enabled, offset 1 lines[ 0.000000] L2C: platform modifies aux control register: 0x72360000 -> 0x72760000-310 dynamic clock gating enabled, standby mode enabled[ 0.000000] L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000L2C-310 erratum 769419 -310 cache controller enabled, 8 ways, 512 kB[ 0.000000] L2C-310 enabling early BRESP for Cortex-A9: CACHE_ID 0x410000c8, AUX_CTRL 0x76760001L2C-310 full line of zeros enabled for Cortex-A9L2C-310 ID prefetch enabled, offset 1 lines[ 0.000000] random: get_random_bytes called from start_kernel+0x2c0/0x4a0 with crng_init=0L2C-310 dynamic clock gating enabled, standby mode enabled[ 0.000000] zynq_clock_init: clkc starts at (ptrval)L2C-310 cache controller enabled, 8 ways, 512 kB[ 0.000000] Zynq clock initL2C-310[ 0.000011] sched_clock: CACHE_ID 0x410000c864 bits at 333MHz, resolution 3ns, AUX_CTRL 0x76760001wraps every 4398046511103nsrandom[ 0.005723] clocksource: arm_global_timer: mask: get_random_bytes called from start_kernel+0x2c0/0x4a0 with crng_init=0zynq_clock_init0xffffffffffffffff max_cycles: 0x4ce07af025, max_idle_ns: clkc starts at (ptrval)440795209040 nsZynq clock initsched_clock: 64 bits at 333MHz, resolution 3ns, wraps every 4398046511103nsclocksource: arm_global_timer: mask: 0xffffffffffffffff max_cycles: 0x4ce07af025, max_idle_ns: 440795209040 nsSwitching [ 0.016655] Switching to timer-based delay loop, resolution 3nsConsole[ 0.023169] Console: colour dummy device 80x30[ 0.026895] Calibrating delay loop (skipped), value calculated using timer frequency.. 666.66 BogoMIPS (lpj=3333333)[ 0.037305] pid_max: default: 32768 minimum: 301[ 0.042082] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)[ 0.049081] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)[ 0.057754] CPU: Testing write buffer coherency: okCPU0: [ 0.061529] CPU0: Spectre v2: using BPIALL workaround[ 0.066749] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000[ 0.072812] Setting up static identity map for 0x100000 - 0x100060[ 0.078378] rcu: Hierarchical SRCU implementation.[ 0.083352] smp: Bringing up secondary CPUs ...[ 0.088388] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001CPU1[ 0.088399] CPU1: Spectre v2: using BPIALL workaround[ 0.098134] smp: Brought up 1 node, 2 CPUs[ 0.102036] SMP: Total of 2 processors activated (1333.33 BogoMIPS).[ 0.108358] CPU: All CPU(s) started in SVC mode.[ 0.113587] devtmpfs: initialized[ 0.121144] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4clocksource: [ 0.124128] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns[ 0.133462] futex hash table entries: 512 (order: 3, 32768 bytes, linear)[ 0.141395] pinctrl core: initialized pinctrl subsystem[ 0.146259] NET: Registered protocol family 16[ 0.151964] DMA: preallocated 256 KiB pool for atomic coherent allocations[ 0.157733] thermal_sys: Registered thermal governor 'step_wise'cpuidle[ 0.158046] cpuidle: using governor ladder[ 0.166503] cpuidle: using governor menu[ 0.182919] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.[ 0.185265] hw-breakpoint: maximum watchpoint size is 4 bytes.[ 0.191178] zynq-ocm f800c000.ocmc: ZYNQ OCM pool: 256 KiB @ 0x(ptrval)e0000000[ 0.198318] e0000000.serial: ttyPS1 at MMIO 0xe0000000 (irq = 34, base_baud = 3125000) is a xuartps[ 0.207234] e0001000.serial: ttyPS0 at MMIO 0xe0001000 (irq = 35, base_baud = 3125000) is a xuartps[ 0.221091] printk: console [ttyPS0] enabled[ 0.221091] printk: console [ttyPS0] enabled[ 0.225396] printk: bootconsole [cdns0] disabled[ 0.225396] printk: bootconsole [cdns0] disabled[ 0.249776] vgaarb: loaded[ 0.252888] SCSI subsystem initialized[ 0.256896] usbcore: registered new interface driver usbfs[ 0.262468] usbcore: registered new interface driver hub[ 0.267875] usbcore: registered new device driver usb[ 0.273183] mc: Linux media interface: v0.10[ 0.277485] videodev: Linux video capture interface: v2.00pps_core[ 0.283046] pps_core: LinuxPPS API ver. 1 registered[ 0.288002] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>[ 0.297158] PTP clock support registered[ 0.301145] EDAC MC: Ver: 3.0.0[ 0.304805] FPGA manager framework[ 0.308536] Advanced Linux Sound Architecture Driver Initialized.clocksource: [ 0.315660] clocksource: Switched to clocksource arm_global_timer[ 0.332917] NET: Registered protocol family 2[ 0.337977] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)[ 0.346425] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)[ 0.354267] TCP bind hash table entries: 8192 (order: 4, 65536 bytes, linear)[ 0.361542] TCP: Hash tables configured (established 8192 bind 8192)UDP [ 0.368054] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)[ 0.374750] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)[ 0.382042] NET: Registered protocol family 1[ 0.387083] RPC: Registered named UNIX socket transport module.[ 0.393034] RPC: Registered udp transport module.[ 0.397734] RPC: Registered tcp transport module.RPC: [ 0.402441] RPC: Registered tcp NFSv4.1 backchannel transport module.[ 0.408896] PCI: CLS 0 bytes, default 64[ 0.413390] hw perfevents: no interrupt-affinity property for /pmu@f8891000, guessing.[ 0.421576] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available[ 0.431150] workingset: timestamp_bits=14 max_order=18 bucket_order=4[ 0.438734] jffs2: version 2.2. (NAND) (SUMMARY) © © 2001-2006 Red Hat, Inc.bounce[ 0.446129] bounce: pool size: 64 pages[ 0.449974] io scheduler mq-deadline registered[ 0.454520] io scheduler kyber registered[ 0.458913] zynq-pinctrl 700.pinctrl: zynq pinctrl initialized[ 0.467704] dma-pl330 f8003000.dmac: Loaded driver for PL330 DMAC-241330[ 0.474442] dma-pl330 f8003000.dmac: DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16brd[ 0.494238] brd: module loaded[ 0.504037] loop: module loadedspi_master spi0[ 0.511083] random: cannot find modalias for /axi/spi@e000d000/flash@fast init done[ 0.614245] random: crng init donespi_master spi0[ 0.623641] spi-nor spi0.0: Failed trying to create SPI device for /axi/lock already unlocked area[ 0.629650] spi@e000d000/flash@-nor spi0.0libphy: Fixed s25fl128s1 (16384 Kbytes)[ 0.639922] libphy: Fixed MDIO Bus: probed[ 0.645716] CAN device driver interface[ 0.652273] libphy: MACB_mii_bus: probed[ 0.688524] macb e000b000.ethernet eth0: Cadence GEM rev 0x00020118 at 0xe000b000 irq 37 (007a:0a68:3529:00db:1e0b:53f6)[ 0.698709] e1000e: Intel(R) PRO/1000 Network Driver[ 0.703668] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.[ 0.710509] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver[ 0.717037] ehci-pci: EHCI PCI platform driver[ 0.721607] usbcore: registered new interface driver usb-storagei2c [ 0.728609] ULPI transceiver vendor/product ID 0x0424/dev entries driver0x0006cdns-i2c e0004000[ 0.734267] Found SMSC USB331x ULPI transceiver.i2c: 400 kHz mmio e0004000 irq 31cdns-wdt f8005000[ 0.watchdog738913] ULPI integrity check: Xilinx Watchdog Timer with timeout 10spassed.EDAC MC[ 0.745040] i2c /dev entries driver[ 0.752088] rtc-ds3232 0-0068: ECC not enabledregistered as rtc0Xilinx Zynq CpuIdle Driver startedsdhci: Secure Digital Host Controller Interface driversdhci[ 0.757162] rtc-ds3232 0-0068: setting system clock to 2018-03-09T17:29: Copyright17 UTC (c1520616557) Pierre Ossmansdhci-pltfm[ 0.765791] cdns-i2c e0004000.i2c: SDHCI platform and OF driver helper400 kHz mmio e0004000 irq 31ledtrig[ 0.774272] cdns-cpuwdt f8005000.watchdog: registered to indicate activity on CPUsXilinx Watchdog Timer with timeout 10sclocksource[ 0.781826] EDAC MC: ttc_clocksourceECC not enabled[ 0.785972] cpufreq: maskcpufreq_online: 0xffff max_cyclesCPU0: 0xffffRunning at unlisted initial frequency: 666666 KHz, max_idle_nschanging to: 537538477 ns666667 KHztimer #[ 0 at (ptrval), irq=50.796932] Xilinx Zynq CpuIdle Driver startedusbcore[ 0.800410] sdhci: registered new interface Secure Digital Host Controller Interface driver usbhidusbhid: USB HID core drivermmc0: SDHCI controller on e0100000.mmc [e0100000 0.mmc803503] using ADMAsdhci: Copyright(c) Pierre Ossmanfpga_manager fpga0[ 0.805718] sdhci-pltfm: Xilinx Zynq FPGA Manager registeredSDHCI platform and OF driver helperNET: Registered protocol family 10[ 0.809266] ledtrig-cpu: registered to indicate activity on CPUsSegment Routing with IPv6sit[ 0.812545] clocksource: IPv6, IPv4 and MPLS over IPv4 tunneling driverNETttc_clocksource: Registered protocol family 17canmask: controller area network coreNET0xffff max_cycles: Registered protocol family 29can0xffff, max_idle_ns: raw protocol1075096770 nscan: broadcast manager protocol[ 0.817251] timer #0 at dfb516c6, irq=50can[ 0.819556] usbcore: netlink gateway - max_hops=1Registering SWP/SWPB emulation handlerregistered new interface driver usbhidof-fpga-region fpga-full[ 0.822381] usbhid: FPGA Region probedUSB HID core driverof_cfs_initof_cfs_init[ 0.827302] fpga_manager fpga0: OKXilinx Zynq FPGA Manager registeredALSA device list[ 0.831575] mmc0: No soundcards found.Waiting for root device /dev/mmcblk0p2SDHCI controller on e0100000.mmc [e0100000.mmc] using ADMA[ 0.831977] NET: Registered protocol family 10mmc0: new high speed SDHC card at address e624[ 0.838558] Segment Routing with IPv6mmcblk0: mmc0:e624 SU08G 7[ 0.40 GiB mmcblk0840631] sit: p1 p2EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)VFS: Mounted root (ext4 filesystem) on device 179:2.devtmpfs: mountedIPv6, IPv4 and MPLS over IPv4 tunneling driver[ 0.847540] NET: Registered protocol family 17[ 0.852063] can: controller area network core[ 0.856576] NET: Registered protocol family 29[ 0.861071] can: raw protocol[ 0.864050] can: broadcast manager protocol[ 0.868298] can: netlink gateway - max_hops=1[ 0.873045] Registering SWP/SWPB emulation handler[ 0.880140] of-fpga-region fpga-full: FPGA Region probed[ 0.886112] of_cfs_init[ 0.888667] of_cfs_init: OK[ 0.891875] ALSA device list:[ 0.894839] No soundcards found.[ 0.898729] Waiting for root device /dev/mmcblk0p2...[ 1.052324] mmc0: new high speed SDHC card at address aaaa[ 1.055781] mmcblk0: mmc0:aaaa SA16G 14.8 GiB[ 1.060584] mmcblk0: p1 p2[ 1.086701] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)[ 1.090810] VFS: Mounted root (ext4 filesystem) on device 179:2.[ 1.094724] devtmpfs: mounted[ 1.099892] Freeing unused kernel memory: 1024K[ 1.136017] Run /sbin/init as init process
INIT: version 2.97 booting
random[ 1.516983] FAT-fs (mmcblk0p1): fast init doneVolume was not properly unmounted. Some data may be corrupt. Please run fsck.
Starting udev
[ 1.712872] udevd[7982]: starting version 3.2.9random: udevd: uninitialized urandom read (16 bytes read)random: udevd: uninitialized urandom read (16 bytes read)random: udevd: uninitialized urandom read (16 bytes read)[ 1.763498] udevd[8083]: starting eudev-3.2.9remoteproc remoteproc0: remoteproc@0 is available[ 2.244862] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)bootlogd: /dev/ttyPS0hwclock: Cannot access the Hardware Clock via any known method.hwclock: Use the --verbose option to see the details of our search for an access method.Fri Mar 9 12:34:56 UTC 2018hwclock: Cannot access the Hardware Clock via any known method.hwclock: Use the --verbose option to see the details of our search for an access method.Configuring packages on first boot.... (This may take several minutes. Please do not power off the machine.)Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...Running postinst /etc/rpm-postinsts/101-postfix-cfg...newaliases: fatal: could not find any active network interfacesupdate-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing) Removing any system startup links for run-postinsts ... /etc/rcS.d/S99run-postinsts
INIT: Entering runlevel: 5
Configuring network interfaces... udhcpc: started, v1.32.0udhcpc: sending discoverudhcpc: sending discoverudhcpc: sending discoverudhcpc: no lease, forking to backgrounddone.
Starting system message bus: dbus.
Starting haveged: haveged: command socket is listening at fd 3
Starting Dropbear SSH server: Waiting for kernel randomness to be initialised...haveged: haveged: ver: 1.9.13; arch: generic; vend: ; build: (gcc 10.2.0 CTV); collect: 128K haveged: haveged: cpu: (VC); data: 16K (D); inst: 16K (D); idx: 12/40; sz: 15006/57790 haveged: haveged: tot tests(BA8): A:1/1 B:1/1 continuous tests(B): last entropy estimate 8.00147 haveged: haveged: fills: 0, generated: 0 Generating 2048 bit rsa key, this may take a while...Public key portion is:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDUVSSH5GBRYKSqp/IabWPY1YjhUafEjPgQ3z5jeMumYluG9SVENoI2GzLZrfCFJyA0WRDCk+oTjBnrEHEKGChX/srqIvlM9P36/qOlP9/kY6gvpPWeawFQ1srgLX12rtqnE0oxy/eDo8a+IjUIyBz4zrTdtpZ88mT32e0Egiy1XuSUCWdfVy+cEjFLEVWojAUPW/AcxiyNZrjmPR2YGNSH9/Y8LgH6WZj5/2g68tOH6hrW+qpdO8T8jTCoG/5OBuYWUzGlOPk058CABHmcFmDoiH0wKInoVMyNiPZCotNF9+QpArSosTHAUlUwHZ4fzxbV57K3gBt8co6FKLAfO/mP root@boraFingerprint: sha1!! 62:38:60:ea:fb:84:ea:71:b1:3f:a5:e4:14:96:eb:26:e3:35:ef:fddropbear.
Starting rpcbind daemon...done.
starting statd: done
Starting atd: OK
starting DNS forwarder and DHCP server: dnsmasq... done.
hwclock: Cannot access the Hardware Clock via any known method.
hwclock: Use the --verbose option to see the details of our search for an access method.
Starting internet superserver: inetd.
NFS daemon support not enabled in kernel
Starting ntpd: done
Starting system log daemon...0
Mar 9 1217:3529:16 bora kernel: OF: reserved mem: OVERLAP DETECTED!Mar 9 12:35:16 bora kernel: rproc@3e000000 (0x3e000000--0x3f000000) overlaps with vdev0vring0@3e800000 (0x3e800000--0x3e804000)Mar 9 12:35:16 bora 22 borax kernel: [ 0.000000] L2C: platform modifies aux control register: 0x72360000 -> 0x72760000Mar 9 1217:3529:16 bora 22 borax kernel: [ 0.000000] L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000Mar 9 1217:3529:16 bora 22 borax kernel: [ 0.413390] hw perfevents: no interrupt-affinity property for /pmu@f8891000, guessing.Mar 9 1217:3529:16 bora 22 borax kernel: spi_master [ 0.623641] spi-nor spi0: cannot find modalias for /axi/spi@e000d000/flash@.0Mar 9 12:35:16 bora kernel: spi_master spi0: Failed trying to create SPI device for /axi/spi@e000d000/flash@0lock already unlocked areaMar 9 1217:3529:16 bora 22 borax kernel: urandom_read[ 1.516983] FAT-fs (mmcblk0p1): 2 callbacks suppressedVolume was not properly unmounted. Some data may be corrupt. Please run fsck.
Starting internet superserver: xinetd.
Starting Postfix...Creating aliases database ...
postfix/postfix-script: starting the Postfix mail system
Successful
Starting Lighttpd Web Server: lighttpd.
* starting FTP Server: vsftpd... done.
Starting crond: OK
Starting tcf-agent: OK
PetaLinux 2021.2 bora borax ttyPS0  root@borax:~# uname -aLinux borax 5.10.0-xilinx-v2021.2 #1 SMP PREEMPT Tue Oct 12 09:30:57 UTC 2021 armv7l armv7l armv7l GNU/Linuxroot@borax:~# cat /etc/build-----------------------Build Configuration: |-----------------------DISTRO = petalinuxDISTRO_VERSION = 2021.2MACHINE = zynq-genericIMAGE_BASENAME = dave-image-devel-----------------------Layer Revisions: |-----------------------meta = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-poky = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-perl = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-python = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-filesystems = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-gnome = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-multimedia = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-networking = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-webserver = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xfce = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-initramfs = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-oe = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-clang = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-chromium = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-qt5 = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-microblaze = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-bsp = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-pynq = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-contrib = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-standalone = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-tools = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-petalinux = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-virtualization = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-openamp = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-jupyter = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-vitis-ai = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-python2 = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-som = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-security = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-tpm = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-user = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-dave = HEAD:e944801f104f86191cd086d0cea8f3df88dda061workspace = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedroot@borax:~# cat /etc/os-releaseID=petalinuxNAME="PetaLinux"VERSION="2021.2 (gatesgarth)"VERSION_ID=2021.2PRETTY_NAME="PetaLinux 2021.2 (gatesgarth)"BUILD_VERSION="desk-xz7-l-1.0.1"root@borax:~# shutdown -h now Broadcast message from root@borax (ttyPS0) (Fri Mar 9 17:29:35 2018):
The system is going down for system halt NOW!
INIT: Sending processes configured via /etc/inittab the TERM signal
Stopping haveged:
root@boraStopping Dropbear SSH server:~#stopped /usr/sbin/dropbear (pid 217)dropbear.Stopping atd: OKStopping system message bus: dbus.Stopping internet superserver: inetd.stopping mountd: donestopping nfsd: doneStopping system log daemon...0Stopping tcf-agent: OKStopping internet superserver: xinetd.stopping statd: doneStopping crond: OKStopping rpcbind daemon...done.Deconfiguring network interfaces... done.Sending all processes the TERM signal...logoutSending all processes the KILL signal...Unmounting remote filesystems...Deactivating swap...Unmounting local filesystems...[ 24.097545] reboot: System halted
</pre>
=== Program boot images into internal storage ======= Program the NOR NAND flash =========This chapter is compatible with [[BORA Lite SOM | BORA Lite]] SOM. First of all, create a bootable microSD card as described [[DESK-XZ7-L/Development/Creating_and_building_the_Petalinux_project| here]] with <code>config_boralite_nand_usd</code> configuration file, and install <code>wic</code> binary on microSD. Then create artifact to install on NAND flash with <code>config_boralite_nand</code> configuration file, as described [[DESK-XZ7-L/Development/Creating_and_building_the_Petalinux_project| here]], and save the <code>BOOT.BIN=====</code> and <code>dave-image-devel-zynq-generic.tar.gz</code> artifact into the first partition of microSD.  Update to the latest In this case <code>BOOT.BIN</code> versionbinary that came from to <code>config_boralite_nand_usd</code> and <code>config_boralite_nand</code> are different, so save it with different name. Alternatively you can download binaries from [https: in //mirror.dave.eu/desk-xz-l/ mirror] and install on microSD.  Then, install the following examplefiles into the microSD first partition: * <code>BOOT.BIN</code>. This binary come from to <code>config_boralite_nand_usd</code> configuration file, the and need to install on microSD* <code>boot.scr</code>* <code>desk-xz7-l-1.0.1_boralite_nand_BOOT.BIN.EXTENDED</code>. This binary come from to <code>config_boralite_nand</code> configuration file is loaded , and has to be installed on NAND flash* <code>desk-xz7-l-1.0.1_boralite_nand_dave-image-devel-zynq-generic.tar.gz</code>* <code>image.ub</code> ==== Programming NAND flash from the ''tftp server'':microSD ==== * delete all partition on NAND flash memory
<pre class="workstation-terminal">
Zynq> setenv boot_addr_r 0x1000000Zynq> tftpboot root@boralite:~# for i in ${boot_addr_r} desk-xz7(seq 0 2); do flash_erase /dev/BOOT.BINUsing ethernet@e000b000 deviceTFTP from server 192.168.mtd$i 0 0.23; our IP address is 192.168.0.90doneFilename 'deskErasing 128 Kibyte @ 15e0000 -xz7/BOOT.BIN'.- 100 % completeLoad address: 0x1000000Erasing 128 Kibyte @ 20000 -- 100 % completeLoading: ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ##################################### 1.9 MiB/sdoneBytes transferred = 22149396 (151f914 hex)Erasing 128 Kibyte @ 1bde0000 -- 100 % complete
</pre>
then erase and program the * install <code>BOOT.BIN</code> binary image:on NAND flash memory
<pre class="workstation-terminal">
Zynq> sf probe; sf erase 0 2000000SF: Detected s25fl256s1 with page size 256 Bytes, erase size 64 KiB, total 32 MiBSF: 33554432 bytes root@ 0x0 Erasedboralite: OKZynq> sf write ${boot_addr_r} ~# nandwrite -p /dev/mtd0 /boot/desk-xz7-l-1.0 ${filesize}.1_boralite_nand_BOOT.BIN.EXTENDEDdevice Writing data to block 0 at offset 0x0, size 0x151f914SF: 22149396 bytes @ 0x0 Written: OKWriting data to block 1 at offset 0x20000...Writing data to block 168 at offset 0x1500000Zynq>Writing data to block 169 at offset 0x1520000
</pre>
=====fit image =====* program the FIT install <code>dave-image -devel-zynq-generic.tar.gz</code> rootfs on NOR NAND flash with the following U-Boot commands:memory
<pre class="workstation-terminal">
Zynq> tftpboot ${kernel_addr_r} ${serverip}root@boralite:desk-xz7~# ubiformat /dev/image.ubmtd2Using ethernet@e000b000 deviceTFTP from server 192.168ubiformat: mtd2 (nand), size 467664896 bytes (446.0.23; our IP address is 192.168MiB), 3568 eraseblocks of 131072 bytes (128.0KiB), min.90I/O size 2048 bytesFilename 'desklibscan: scanning eraseblock 3567 --xz7/image.ub'.100 % completeLoad addressubiformat: 0x20000003568 eraseblocks are supposedly emptyLoadingubiformat: #################################################################formatting eraseblock 3567 -- 100 % complete ################################################################root@boralite:~#ubiattach -m 2 #################################################################UBI device number 0, total 3568 LEBs (460357632 bytes, 439.0 MiB), available 3404 LEBs (439197696 bytes, 418.8 MiB), LEB size 129024 bytes (126.0 KiB) ################################################################root@boralite:~#ubimkvol /dev/ubi0 -N rootfs -m #################################################################Set volume size to 439197696 #################################################################Volume ID 0, size 3404 LEBs (439197696 bytes, 418.8 MiB), LEB size 129024 bytes (126.0 KiB), dynamic, name "rootfs", alignment 1 ################################################################root@boralite:~#mkdir -p /mnt/nand ################################################################root@boralite:~#mount -t ubifs ubi0_0 /mnt/nand ################################################################root@boralite:~#tar -xzvf /boot/dave-image-devel-zynq-generic.tar.gz -C /mnt/nand/. #################################################################... ################################################################root@boralite:~#umount /mnt/nand/ root@boralite:~################################################################# ################################################################# ################################################################# ##################################### 670.9 KiB/sdoneBytes transferred = 4847892 (49f914 hex)Zynq>ubidetach -m 2
</pre>
* then erase Once change boot mode and program restarted, the complete boot log can be like this one: <codepre class="mw-collapsible mw-collapsed">imageU-Boot 2021.01-ub</code> FIT image in NORdesk-xz7-l-1.0.1 (Jan 12 2024 - 10:44:15 +0000)
<pre class="workstation-terminal">CPU: Zynq 7z020Silicon: v3.1Model: BoraZynq> sf probe; sf erase 1800000 800000; sf write ${kernel_addr_r} 1800000 DRAM: ${filesize}ECC disabled 1 GiBSFFlash: Detected s25fl256s1 with page size 256 0 Bytes, erase size 64 KiB, total 32 NAND: 1024 MiBdevice MMC: mmc@e0100000: 0 offset 0x1000000Loading Environment from NAND... *** Warning - bad CRC, size 0x49f914using default environment In: serial@e0001000SFOut: 4847892 bytes serial@ 0x1000000 Writtene0001000Err: OK serial@e0001000Zynq>SOM ConfigID#: 77777777SOM UniqueID#: 55555555:66666666CB ConfigID#: ffffffffCB UniqueID#: ffffffff:ffffffffNet:ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr 7, interface rgmii-id Warning: ethernet@e000b000 (eth0) using random MAC address - f6:c3:de:d6:d6:e6eth0: ethernet@e000b000</pre>Hit ENTER within 2 seconds to stop autoboot
* configure U-Boot to apply the new configurationDevice 0:nand0, sector size 128 KiB Page size 2048 b OOB size 64 b Erase size 131072 b subpagesize 512 b options 0x40004000 bbt options 0x00020000
<pre class="workstation-terminal">NAND read: device 0 offset 0xfc0000, size 0x40000Zynq> setenv spi_nand 'sf probe; sf 262144 bytes read ${kernel_addr_r} 1800000 800000; bootm ${kernel_addr_r}': OKNAND: Trying to boot script at 3000000## Executing script at 03000000Trying to load boot images from nand Device 0: nand0, sector size 128 KiB Page size 2048 b OOB size 64 b Erase size 131072 bZynq> setenv bootcmd 'run spi_nand' subpagesize 512 bZynq> saveenv options 0x40004000</pre> bbt options 0x00020000
==== Program root file system into NAND flash ====read: device 0 offset 0x1080000, size 0x6400000 104857600 bytes read: OK## Loading kernel from FIT Image at 10000000 ...* boot the Using 'conf-system via NFS as described in the e [[DESK-XZ7top.dtb' configuration Verifying Hash Integrity ... OK Trying 'kernel-L/General/Booting_from_NFS|Booting 1' kernel subimage Description: Linux kernel Type: Kernel Image Compression: uncompressed Data Start: 0x100000f8 Data Size: 4845944 Bytes = 4.6 MiB Architecture: ARM OS: Linux Load Address: 0x00200000 Entry Point: 0x00200000 Hash algo: sha256 Hash value: f5d0c9b9a689e4b0657468fb280f0c8fb60064196b7938a77a43b36a2743acca Verifying Hash Integrity ... sha256+ OK## Loading fdt from nfs]] guideFIT Image at 10000000 ... Using 'conf-system-top.dtb' configuration* the NAND is partitioned following the <code>/proc/mtd</code> scheme (the partition Verifying Hash Integrity ... OK Trying 's name should be selffdt-explanatory)system-top. See dtb' fdt subimage Description: Flattened Device Tree blob Type: Flat Device Tree Compression: uncompressed Data Start: 0x1049f37c Data Size: 20656 Bytes = 20.2 KiB Architecture: ARM Hash algo: sha256 Hash value: 42e997d9430c0dc091dfb37df69c2148e40ad7fdd75ec4f49501bc5d4bc48f53 Verifying Hash Integrity ... sha256+ OK Booting using the [[Memory Tecnology fdt blob at 0x1049f37c Loading Kernel Image Loading Device (MTD)|MTD]] for more information on MTD layerTree to 2fff7000, end 2ffff0af ...OK
<pre class="workstation-terminal"></pre>Starting kernel ...
{{ImportantMessage|text[ 0.000000] Booting Linux on physical CPU 0x0[ 0.000000] Linux version 5.10.0-xilinx-v2021.2 (oe-user@oe-host) (arm-xilinx-linux-gnueabi-gcc (GCC) 10.2.0, GNU ld (GNU Binutils) 2.35.1) #1 SMP PREEMPT Tue Oct 12 09:30:57 UTC 2021[ 0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache[ 0.000000] OF: fdt: Machine model: Bora[ 0.000000] earlycon: cdns0 at MMIO 0xe0001000 (options '115200n8')[ 0.000000] printk: bootconsole [cdns0] enabled[ 0.000000] Memory policy: Data cache writealloc[ 0.000000] cma: Reserved 16 MiB at 0x3f000000[ 0.000000] Zone ranges:[ 0.000000] Normal [mem 0x0000000000000000-0x000000002fffffff][ 0.000000] HighMem [mem 0x0000000030000000-0x000000003fffffff][ 0.000000] Movable zone start for each node[ 0.000000] Early memory node ranges[ 0.000000] node 0: [mem 0x0000000000000000-0x000000003fffffff][ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000003fffffff][ 0.000000] percpu: Embedded 16 pages/cpu s32780 r8192 d24564 u65536[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 260416[ 0.000000] Kernel command line: console=ttyPS0,115200 earlycon noinitrd root=ubi0_0 rw rootfstype=ubifs ubi.mtd=2[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off[ 0.000000] Memory: 1009768K/1048576K available (7168K kernel code, 279K rwdata, 1952K rodata, 1024K init, 162K bss, 22424K reserved, 16384K cma-reserved, 245760K highmem)[ 0.000000] rcu: Preemptible hierarchical RCU implementation.[ 0.000000] rcu: RCU event tracing is enabled.[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.[ 0.000000] Trampoline variant of Tasks RCU enabled.[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.[ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16[ 0.000000] efuse mapped to (ptrval)[ 0.000000] slcr mapped to (ptrval)[ 0.000000] GIC physical location is 0xf8f01000[ 0.000000] L2C: platform modifies aux control register: 0x72360000 -> 0x72760000[ 0.000000] L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000[ 0.000000] L2C-310 erratum 769419 enabled[ 0.000000] L2C-310 enabling early BRESP for Cortex-A9[ 0.000000] L2C-310 full line of zeros enabled for Cortex-A9[ 0.000000] L2C-310 ID prefetch enabled, offset 1 lines[ 0.000000] L2C-310 dynamic clock gating enabled, standby mode enabled[ 0.000000] L2C-310 cache controller enabled, 8 ways, 512 kB[ 0.000000] L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76760001[ 0.000000] random: get_random_bytes called from start_kernel+0x2c0/0x4a0 with crng_init=0[ 0.000000] zynq_clock_init: clkc starts at (ptrval)[ 0.000000] Zynq clock init[ 0.000011] sched_clock: 64 bits at 333MHz, resolution 3ns, wraps every 4398046511103ns[ 0.005723] clocksource: arm_global_timer: mask: 0xffffffffffffffff max_cycles: 0x4ce07af025, max_idle_ns: 440795209040 ns[ 0.016654] Switching to timer-based delay loop, resolution 3ns[ 0.023168] Console: colour dummy device 80x30[ 0.026895] Calibrating delay loop (skipped), value calculated using timer frequency.. 666.66 BogoMIPS (lpj=3333333)[ 0.037305] pid_max: default: 32768 minimum: 301[ 0.042082] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)[ 0.049081] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)[ 0.057757] CPU: Testing write buffer coherency: ok[ 0.061529] CPU0: Spectre v2: using BPIALL workaround[ 0.066750] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000[ 0.072813] Setting up static identity map for 0x100000 - 0x100060[ 0.078377] rcu: Hierarchical SRCU implementation.[ 0.083352] smp: Bringing up secondary CPUs ...[ 0.088389] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001[ 0.088401] CPU1: Spectre v2: using BPIALL workaround[ 0.098133] smp: Brought up 1 node, 2 CPUs[ 0.102036] SMP: Total of 2 processors activated (1333.33 BogoMIPS).[ 0.108357] CPU: All CPU(s) started in SVC mode.[ 0.113588] devtmpfs: initialized[ 0.121210] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4[ 0.124130] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns[ 0.133461] futex hash table entries: 512 (order: 3, 32768 bytes, linear)[ 0.141400] pinctrl core: initialized pinctrl subsystem[ 0.146260] NET: Registered protocol family 16[ 0.151995] DMA: preallocated 256 KiB pool for atomic coherent allocations[ 0.157737] thermal_sys: Registered thermal governor 'step_wise'[ 0.158045] cpuidle: using governor ladder[ 0.166503] cpuidle: using governor menu[ 0.183028] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.[ 0.185376] hw-breakpoint: maximum watchpoint size is 4 bytes.[ 0.191287] zynq-ocm f800c000.ocmc: ZYNQ OCM pool: 256 KiB @ 0x(ptrval)[ 0.198430] e0000000.serial: ttyPS1 at MMIO 0xe0000000 (irq = 34, base_baud = 3125000) is a xuartps[ 0.207344] e0001000.serial: ttyPS0 at MMIO 0xe0001000 (irq = 35, base_baud = 3125000) is a xuartps[ 0.221202] printk: console [ttyPS0] enabled[ 0.221202] printk: console [ttyPS0] enabled[ 0.225508] printk: bootconsole [cdns0] disabled[ 0.225508] printk: bootconsole [cdns0] disabled[ 0.249919] vgaarb: loaded[ 0.253028] SCSI subsystem initialized[ 0.257026] usbcore: registered new interface driver usbfs[ 0.262608] usbcore: registered new interface driver hub[ 0.268015] usbcore: registered new device driver usb[ 0.273332] mc: Linux media interface: v0.10[ 0.277632] videodev: Linux video capture interface: v2.00[ 0.283192] pps_core: LinuxPPS API ver. 1 registered[ 0.288149] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>[ 0.297305] PTP clock support registered[ 0.301292] EDAC MC: Ver: 3.0.0[ 0.304949] FPGA manager framework[ 0.308681] Advanced Linux Sound Architecture Driver Initialized.[ 0.315837] clocksource: Switched to clocksource arm_global_timer[ 0.333163] NET: Registered protocol family 2[ 0.338219] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)[ 0.346667] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)[ 0.354511] TCP bind hash table entries: 8192 (order: 4, 65536 bytes, linear)[ 0.361784] TCP: Hash tables configured (established 8192 bind 8192)[ 0.368300] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)[ 0.375014] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)[ 0.382308] NET: Registered protocol family 1[ 0.387345] RPC: Registered named UNIX socket transport module.[ 0.393300] RPC: Registered udp transport module.[ 0.398001] RPC: Registered tcp transport module.[ 0.402740] RPC: Registered tcp NFSv4.1 backchannel transport module.[ 0.409180] PCI: CLS 0 bytes, default 64[ 0.413721] hw perfevents: no interrupt-affinity property for /pmu@f8891000, guessing.[ 0.421860] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available[ 0.431454] workingset: timestamp_bits=14 max_order=18 bucket_order=4[ 0.439077] jffs2: version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.[ 0.446536] bounce: pool size: 64 pages[ 0.450383] io scheduler mq-deadline registered[ 0.454934] io scheduler kyber registered[ 0.459327] zynq-pinctrl 700.pinctrl: zynq pinctrl initialized[ 0.468109] dma-pl330 f8003000.dmac: Loaded driver for PL330 DMAC-241330[ 0.474850] dma-pl330 f8003000.dmac: DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16[ 0.494688] brd: module loaded[ 0.504477] loop: module loaded[ 0.509473] libphy: Fixed MDIO Bus: probed[ 0.515346] CAN device driver interface[ 0.521835] libphy: MACB_mii_bus: probed[ 0.562752] macb e000b000.ethernet eth0: Cadence GEM rev 0x00020118 at 0xe000b000 irq 37 (f6:c3:de:d6:d6:e6)[ 0.572919] e1000e: Intel(R) PRO/1000 Network Driver[ 0.577877] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.[ 0.584681] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver[ 0.591202] ehci-pci: EHCI PCI platform driver[ 0.595787] usbcore: registered new interface driver usb-storage[ 0.602740] ULPI transceiver vendor/product ID 0x0424/0x0006[ 0.608397] Found SMSC USB331x ULPI transceiver.[ 0.613077] ULPI integrity check: passed.[ 0.619138] i2c /dev entries driver[ 0.626225] rtc-ds3232 0-0068: registered as rtc0[ 0.631266] rtc-ds3232 0-0068: setting system clock to 2018-03-09T22:43:45 UTC (1520635425)[ 0.639890] cdns-i2c e0004000.i2c: 400 kHz mmio e0004000 irq 31[ 0.647246] tmp421 0-004f: Could not read configuration register (-6)[ 0.654494] cdns-wdt f8005000.watchdog: Xilinx Watchdog Timer with timeout 10s[ 0.662040] EDAC MC: ECC not enabled[ 0.666183] cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 666666 KHz, changing to: 666667 KHz[ 0.677171] Xilinx Zynq CpuIdle Driver started[ 0.680527] sdhci: Secure Digital Host Controller Interface driver[ 0.683621] sdhci: Copyright(c) Pierre Ossman[ 0.685836] sdhci-pltfm: SDHCI platform and OF driver helper[ 0.689399] ledtrig-cpu: registered to indicate activity on CPUs[ 0.692668] clocksource: ttc_clocksource: mask: 0xffff max_cycles: 0xffff, max_idle_ns: 1075096770 ns[ 0.697371] timer #0 at (ptrval), irq=Please note that 50[ 0.699683] usbcore: registered new interface driver usbhid[ 0.702500] usbhid: USB HID core driver[ 0.705419] nand: device found, Manufacturer ID: 0xef, Chip ID: 0xd3[ 0.708625] nand: Winbond W29N08GV[ 0.710334] nand: 1024 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64[ 0.712244] mmc0: SDHCI controller on e0100000.mmc [e0100000.mmc] using ADMA[ 0.714200] nand: SDR timing mode 4 not acknowledged by the NAND chip[ 0.721567] Bad block table found at page 524224, version 0x01[ 0.728120] Bad block table found at page 524160, version 0x01[ 0.734601] 3 fixed-partitions partitions found on MTD device W29N08GV[ 0.741231] Creating 3 MTD partition index may change depending partitions on "W29N08GV":[ 0.746267] 0x000000000000-0x000001600000 : "bootbin"[ 0.753640] 0x000001600000-0x000001640000 : "ubootenv"[ 0.760285] 0x000001640000-0x00001d440000 : "rootfs"[ 0.775328] fpga_manager fpga0: Xilinx Zynq FPGA Manager registered[ 0.783257] NET: Registered protocol family 10[ 0.789108] Segment Routing with IPv6[ 0.792886] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver[ 0.799816] NET: Registered protocol family 17[ 0.804356] can: controller area network core[ 0.808869] NET: Registered protocol family 29[ 0.813401] can: raw protocol[ 0.816497] can: broadcast manager protocol[ 0.820768] can: netlink gateway - max_hops=1[ 0.825605] Registering SWP/SWPB emulation handler[ 0.832970] of flash -fpga-region fpga-full: FPGA Region probed[ 0.838736] ubi0: attaching mtd2[ 2.056102] ubi0: scanning is finished[ 2.074242] ubi0: attached mtd2 (name "rootfs", size 446 MiB)[ 2.080123] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 129024 bytes[ 2.087020] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 512[ 2.093715] ubi0: VID header offset: 512 (aligned 512), data offset: 2048[ 2.100621] ubi0: good PEBs: 3568, bad PEBs: 0, corrupted PEBs: 0[ 2.106734] ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128[ 2.113950] ubi0: max/mean erase counter: 1/0, WL threshold: 4096, image sequence number: 635011865[ 2.123040] ubi0: available PEBs: 0, total reserved PEBs: 3568, PEBs reserved for bad PEB handling: 160[ 2.132475] ubi0: background thread "ubi_bgt0d" started, PID 53[ 2.132642] of_cfs_init[ 2.140972] of_cfs_init: OK[ 2.144117] ALSA device availabilitylist:[ 2.147151] No soundcards found.[ 2.151854] UBIFS (ubi0:0): Mounting in unauthenticated mode[ 2.157764] UBIFS (ubi0:0): background thread "ubifs_bgt0_0" started, flash PID 54[ 2.252675] UBIFS (ubi0:0): UBIFS: mounted UBI device 0, volume 0, name "rootfs"[ 2.260145] UBIFS (ubi0:0): LEB size: 129024 bytes (126 KiB), umin./max. I/O unit sizes: 2048 bytes/2048 bytes[ 2.270077] UBIFS (ubi0:0): FS size: 437262336 bytes (417 MiB, 3389 LEBs), journal size 21934080 bytes (20 MiB, 170 LEBs)[ 2.281079] UBIFS (ubi0:0): reserved for root: 4952683 bytes (4836 KiB)[ 2.287714] UBIFS (ubi0:0): media format: w5/r0 (latest is w5/r0), UUID 1D39DE69-4DB4-43C3-B1DC-4790B3D8D8CA, small LPT model[ 2.300876] VFS: Mounted root (ubifs filesystem) on device 0:13.[ 2.308081] devtmpfs: mounted[ 2.314189] Freeing unused kernel memory: 1024K[ 2.319122] Run /sbin/init as init processINIT: version 2.97 bootingStarting udev[ 3.363102] udevd[78]: starting version 3.2.9[ 3.402426] random: udevd: uninitialized urandom read (16 bytes read)[ 3.410464] random: udevd: uninitialized urandom read (16 bytes read)[ 3.426120] random: udevd: uninitialized urandom read (16 bytes read)[ 3.496826] udevd[79]: starting eudev-3.2.9bootlogd: /dev/ttyPS0Configuring packages on first boot environment variables or kernel device driver load order. Always ... (This may take care of looking inside <code>several minutes. Please do not power off the machine.)Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing) Removing any system startup links for run-postinsts ... /procetc/mtd<rcS.d/code> to match your specific layout}}S99run-postinstsINIT: Entering runlevel: 5Configuring network interfaces... done.Starting system message bus: dbus.Starting haveged: haveged: command socket is listening at fd 3haveged: haveged starting up
* format and initialize ''nand-ubi'' partition, which in our case is <code>mtd0</code>, using [[Memory Tecnology Device (MTD)#UBI|UBI]] with:
<pre>
ubiformat /dev/mtd0
ubiattach -m 0
ubimkvol /dev/ubi0 -N rootfs -m
</pre>
EStarting Dropbear SSH server: Waiting for kernel randomness to be initialised.g..haveged: haveged: ver: 1.9.13; arch: generic; vend: ; build: (gcc 10.2.0 CTV); collect: 128K
<pre class="workstation-terminal">root@borahaveged:~# ubiformat haveged: cpu: (VC); data: 16K (D); inst: 16K (D); idx: 12/dev/mtd0<40; sz: 15006/pre>57790
* mount the UBI volume using [[Memory Tecnology Device haveged: haveged: tot tests(MTDBA8)#UBIFS|UBIFS]] in a temporary directory: A:1/1 B:1/1 continuous tests(B): last entropy estimate 7.99862
<pre>mkdir -p /mnt/nandmount -t ubifs ubi0_0 /mnt/nand</pre>haveged: haveged: fills: 0, generated: 0
* you can now extract the Generating 2048 bit rsa key, this may take a while...Public key portion is:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCTB8TmZSylf7njT2d8i1CdsvL2RVkN9NBTJjMX36nmx3GgyTY1O+R8fRv3eXdFD+XWUk02YMWSpPwvC6geSyGEovUe60y7cg/SRyZRTth/sokI+HboE/i0BUzeDCtFS5/L2nDNs/TIg6/0yVn4fcnWH7IDxLNTsqdf0f7wcapCXQrP2+xocU63B4NkXpUVL+Y/Za06M0lqaiqasfOXFfP5MSyTTeJa91LfH5qOca0fxJGqmMDStJjaLTAsEiI3H2waFysRG/prIO17fVbnbsCF2UaNm8Un7wluae0HjUBd/ItTdIa6erKUJilVGsSkPo0+Shx5O1Zk4cetuPFs+e2P root file @boraliteFingerprint: sha1!! 0e:82:1e:52:c9:20:b1:64:1d:17:b0:a8:a8:e5:93:44:3f:ec:6c:38dropbear.Starting rpcbind daemon...done.starting statd: doneStarting atd: OKStarting internet superserver: inetd.NFS daemon support not enabled in kernelStarting system into that directorylog daemon...0Mar 9 22:44:12 boralite kernel: [ 0.000000] L2C: platform modifies aux control register: 0x72360000 -> 0x72760000Mar 9 22:44:12 boralite kernel: [ 0.000000] L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000Mar 9 22:44:12 boralite kernel: [ 0.413721] hw perfevents: no interrupt-affinity property for /pmu@f8891000, guessing.Mar 9 22:44:12 boralite kernel: [ 0.647246] tmp421 0-004f: Could not read configuration register (-6)Mar 9 22:44:12 boralite kernel: [ 0.714200] nand: SDR timing mode 4 not acknowledged by the NAND chipMar 9 22:44:12 boralite kernel: [ 5.281753] urandom_read: 4 callbacks suppressedStarting internet superserver: xinetd.Starting crond: OKStarting tcf-agent: OK
<pre>tar zxpf images/linux/rootfsPetaLinux 2021.tar.gz -C /mnt/nand</pre>2 boralite ttyPS0
* finally, you need to cleanly umount and detach the MTD partition
<pre>root@boralite:~# cat /etc/build-----------------------Build Configuration: |-----------------------DISTRO = petalinuxDISTRO_VERSION = 2021.2MACHINE = zynq-genericIMAGE_BASENAME = dave-image-devel-----------------------Layer Revisions: |-----------------------meta = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-poky = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-perl = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-python = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-filesystems = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-gnome = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-multimedia = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-networking = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-webserver = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xfce = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-initramfs = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-oe = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-clang = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-chromium = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-qt5 = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-microblaze = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-bsp = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-pynq = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-contrib = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-standalone = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-xilinx-tools = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-petalinux = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-virtualization = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-openamp = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-jupyter = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-vitis-ai = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-python2 = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-som = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-security = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-tpm = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-user = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedmeta-dave = HEAD:e944801f104f86191cd086d0cea8f3df88dda061workspace = HEAD:829c44d28c8c46b51744c14a92107ec3c5790934 -- modifiedroot@boralite:~# uname -aumount Linux boralite 5.10.0-xilinx-v2021.2 #1 SMP PREEMPT Tue Oct 12 09:30:57 UTC 2021 armv7l armv7l armv7l GNU/mntLinuxroot@boralite:~# cat /nandetc/os-releaseID=petalinuxNAME="PetaLinux"VERSION="2021.2 (gatesgarth)"VERSION_ID=2021.2PRETTY_NAME="PetaLinux 2021.2 (gatesgarth)"ubidetach BUILD_VERSION="desk-xz7-l-m 1.0.1"</pre>root@boralite:~# shutdown -h now
You can now safely reboot or turn off the system.Broadcast message from root@boralite (ttyPS0) (Fri Mar 9 22:46:32 2018):
In U-Boot environment check The system is going down for system halt NOW!INIT: Sending processes configured via /etc/inittab the following variable, which must contain the same MTD partition number used aboveTERM signalroot@boralite:~# Stopping haveged:
<pre>Stopping Dropbear SSH server: stopped /usr/sbin/dropbear (pid 275)dropbear.Stopping atd: OKStopping system message bus: dbus.nand_args=setenv bootargs root=ubi0Stopping internet superserver:rootfs rootfstype=ubifs rw ubiinetd.stopping mountd: donestopping nfsd: doneStopping system log daemon...mtd=0Stopping tcf-agent: OKStopping internet superserver: xinetd.stopping statd: doneStopping crond: OKStopping rpcbind daemon...done.Deconfiguring network interfaces... done.Sending all processes the TERM signal...logoutSending all processes the KILL signal...Unmounting remote filesystems...Deactivating swap...Unmounting local filesystems...[ 173.736463] reboot: System halted
</pre>
----<section end=Body/>
[[Category:BORA]] [[Category:BORA Xpress]][[Category:BORA Lite]]
8,256
edits