FlashLink FL1-12 first time board configuration
- FlashLink FL1-12 first time board configuration
The FL1-12 board after production need to be programmed with the specific FlashLink OS. To do this some dedicated hardware and software are required along with a specific laboratory configuration.
Cloud Server
All the software are available on the cloud server at this address: https://cloud.siliflash.com/index.php/s/jZd3JbPnkrMYFjM
Hardware Requirements
To program the board a "Xilinx Platform Cable" adapter is required, this can be purchased from this link: https://www.aliexpress.com/item/1648220779.html
In order to connect the Xilinx adapter to the board you can prepare a fixture or you can buy the specific adapter from Tag-Connect. The required components are: - https://www.tag-connect.com/product/tc2050-idc-nl-10-pin-no-legs-cable-with-ribbon-connector - https://www.tag-connect.com/product/tc2050-xilinx - https://www.tag-connect.com/product/tc2050-clip-3pack-retaining-clip This one is optional.
In order to see the output from the board you also need a TTL serial adapter, the simplest way is to buy the FTDI cable that has the exact connector present on the board: https://ftdichip.com/products/ttl-232r-5v/
Also you need to have an ethernet cable to connect the board to the local network. The board during the first program will boot up with the static IP 192.168.1.89 and search for a NFS server at address 192.168.1.90 to get the software to run and to write on the local memories.
Software Requirements
Since the PC configuration required to do this tasks is quite complex the best solution is to use the FlashLinkVM Virtual Machine available on the cloud server. All the software required for this operation are already installed and configured inside the VM.
This VM is built with VMWare Workstation 17.5.0, to use it you need to install on your PC the VMWare Player that is free. On the cloud server you find the installer (VMware-player-full-17.5.0-22583795.exe).
On the VM is installed linux Kubuntu 22.04 with all the software required. The VM is configured with user flashlink with password flashlink1.
The VM is configured to bridge to the default network card. If your PC is using more than one network card you should check that the VM is connected to the right card. The VM is configured to use the static IP address 192.168.1.90. During the first program the board boot with the static IP 192.168.1.89. It's mandatory that this addresses are not in use on the local netowrk. This addresses cannot be changed since they are hardcoded inside the petalinux configuration used to boot up the board through the JTAG connection.
Procedure for first programming of the board
Connections
Connectors
look at this picture:
- On the left the arrow marked (1) point to the serial interface for debug. The Pin 1 in near the edge of the board (This is the ground signal, black cable on FTDI cable connector)
- On the rigth the arrow marked (2) point to the JTAG connector. This connector is designed for the
tag-connectcable to connect directly, just align the 3 hole.
JTAG Connector PinOut and PlatformCable connections
If you don't use the tag-connect adapter see the next picture to find the correct connection needed.
The pinout of the connector on the FL1-12 board are shown on the following picture

The pinout of the connector on the Xilinx Platform Cable are shown on the following picture (But check with the specific device you have)

Required Connection
To program the board You need to connect:
1. the serial (FTDI cable) to the connector (1)
2. the Xilinx Platfform cable to the connector (2) (using the tag-connect adapters is the fastest way)
3. the ethernet cable to the RJ45 connector
4. Power adapter to the power connector.
After that proceed with the following steps:
Steps on the VM
- Connect the FTDI cable to your PC and set VMWare to pass this device to the VM
- On the virtual machine open a terminal windows (konsole from the main menù)
- on this terminal execute the command:
picocom /dev/ttyUSB0 -b 115200(/dev/ttyUSB0 is the device for the serial connection of the FTDI cable)- Connect the Xilinx Platform Cable to your PC and set VMWare to pass this device to the VM
- open a second terminal window
- on this second terminal window execute the command:
./fl-boot.sh- look at the output of the 2 windows
Note: if you connect the Xilinx Platform Cable to the VM before of the FTDI cable the FTDI port will probably became /dev/ttyUSB1
To know when the procedure is completed look at the first terminal window and wait to see a line with: Rebooting... reboot: Restarting system. At this point you can disconnect the board.
If you need to program a second board just move all the connection to the new board then repeat the command at point 6 and look at the output as before.
You can see the expected output from this 2 terminal below on this document.
Board hardware configuration
With the previous steps all the memory on the board are programmed, but the board require a hardware change to be able to operate. After the production the boards are configured to bootstrap from the JTAG interface in order to be programmed, but then you need to reconfigure the hardware to boot from the mounted QSPI flash memory for normal operation.
To do that you need to close the jumper circled in yellow on the previous picture. To do that you just need to put a drop of tin over the 2 half of the circle to connect them together. Only after this jumper is closed the board is able to work.
Software configuration before to deliver the board
The board programmed with this procedure is configured with a preliminary version of the FlashLink system, so before to deliver the board to the customer you must install the last version of the software. To do this start a browser on you PC and connect to the default IP address of the programmer that is http://192.168.1.100 (make sure to write the http:// part of the address since by default the browsers use the https:// prefix and this doesn't work).
This limitation is already solved with the install of the final release of the system software so the customer doesn't have this problem. But for this procedure the limitation remain in place
Note: the first time you power the board after this configuration it take around 1-2 minutes to became ready since it needs to complete some system configuration.
Note: Make sure to have already made the hardware modification otherwise the board doesn't power on.
You will get this page:

You can see that this is the preliminary version since at the bottom of this page the link is wrong looking as: SiliFlash Web Site and pointing to an empty website.
Click on the UTILITIES button on the top to get this page:

Here click on the UPGRADE button, select the last version of the FlashLink system Software update file and confirm. After the upload the board automatically reboot and in less than a minute you can connect again and see that at the bottom of the page the link is corrected.
Licensing the hardware
After the upgrade if you go again to the UTILITIES page you see something like this:

On the block Programmer Info you can see that the field Licensed is set to FALSE. Every Xilinx processor installed on the board need a specific license to operate completely, without that license you are not able to program any device.
To get this license send an email to roland@eflashlink.com with the data from the 2 fields Serial Number and ID and you'll get back a license file to upload to the programmer to unlock it.
This license is related to the hardware and doesn't need to be reloaded in case of software upgrade.
The license can be uploaded from the LICENSES web page, and after that you can check the status going back to this page.
Device licenses
The hardware license is required to enable the complete functionality of the Xiliinx component but doesn't enable any specific target device or drivers.
The license for the specific device can be created using the utility available on the cloud server linked above (licGui.zip).
Expected output from the board
The expected output from the terminal window executing the fl-boot.sh command are:
flashlink@flashlink-VM:~$ ./fl-boot.sh
PetaLinux environment set to '/home/flashlink/petalinux'
WARNING: /bin/sh is not bash!
bash is PetaLinux recommended shell. Please set your default shell to bash.
WARNING: This is not a supported OS
INFO: Checking free disk space
INFO: Checking installed tools
INFO: Checking installed development libraries
INFO: Checking network and other services
WARNING: No tftp server found - please refer to "UG1144 2023.1 PetaLinux Tools Documentation Reference Guide" for its impact and solution
[INFO] Sourcing buildtools
INFO: FPGA manager enabled, skipping bitstream to load in jtag...
INFO: Append dtb - /home/flashlink/work/plnx/fl1-12/pre-built/linux/images/system.dtb and other options to boot zImage
INFO: Launching XSDB for file download and boot.
INFO: This may take a few minutes, depending on the size of your image.
rlwrap: warning: your $TERM is 'xterm-256color' but rlwrap couldn t find it in the terminfo database. Expect some problems.: Inappropriate ioctl for device
INFO: Downloading ELF file: /home/flashlink/work/plnx/fl1-12/pre-built/linux/images/zynq_fsbl.elf to the target.
INFO: Loading image: /home/flashlink/work/plnx/fl1-12/pre-built/linux/images/system.dtb at 0x00100000
INFO: Downloading ELF file: /home/flashlink/work/plnx/fl1-12/pre-built/linux/images/u-boot.elf to the target.
INFO: Loading image: /home/flashlink/work/plnx/fl1-12/pre-built/linux/images/system.dtb at 0x00100000
INFO: Downloading ELF file: /home/flashlink/work/plnx/fl1-12/pre-built/linux/images/u-boot.elf to the target.
INFO: Loading image: /home/flashlink/work/plnx/fl1-12/pre-built/linux/images/uImage at 0x00200000
INFO: Loading image: /home/flashlink/work/plnx/fl1-12/pre-built/linux/images/boot.scr at 0x03000000
INFO: Enter bootm 0x00200000 - 0x00100000 in uboot terminal if auto boot fails
INFO: SOC Silicon version is 1.0.
flashlink@flashlink-VM:~$
This first step load a small bootloader on the memory of the Xilinx chip and start it. This bootloader connect to the VM using the Ethernet connection and download all the data to be programmed on the on board memories (Both QSPI Flash Memory and the eMMC storage) .
You can look at the operation going one on the board looking at the terminal window where the picocom program is running. The expected output is:
flashlink@flashlink-VM:~$ picocom /dev/ttyUSB0 -b 115200
picocom v3.1
port is : /dev/ttyUSB0
flowcontrol : none
baudrate is : 115200
parity is : none
databits are : 8
stopbits are : 1
escape is : C-a
local echo is : no
noinit is : no
noreset is : no
hangup is : no
nolock is : no
send_cmd is : sz -vv
receive_cmd is : rz -vv -E
imap is :
omap is :
emap is : crcrlf,delbs,
logfile is : none
initstring : none
exit_after is : not set
exit is : no
Type [C-a] [C-h] to see available commands
Terminal ready
Xilinx First Stage Boot Loader
Release 2023.1 May 1 2023-00:38:12
Devcfg driver initialized
Silicon Version 3.1
Boot mode is SD
SD: rc= 0
SD Init Done
Flash Base Address: 0xE0100000
Reboot status register: 0x6040200A
Multiboot Register: 0x0000C001
Image Start Address: 0x00008000
Partition Header Offset:0xE3A08000
Partition Count: 14
Invalid Partition Count
Partition Header Load Failed
FSBL Status = 0xA00E
This Boot Mode Doesn't Support Fallback
In FsblHookFallback function
U-Boot 2023.01 (Mar 29 2023 - 13:08:40 +0000)
CPU: Zynq 7z010
Silicon: v3.1
DRAM: ECC disabled 512 MiB
zynq_gem ethernet@e000b000: eth_phy_binds_nodes: ethernet@e000b000 mdio subnode not found!
Core: 22 devices, 15 uclasses, devicetree: board
Flash: 0 Bytes
NAND: 0 MiB
MMC: arasan_sdhci mmc@e0100000: arasan_sdhci_probe: CLK 50000000
mmc@e0100000: 0
Loading Environment from FAT... *** Error - No Valid Environment Area found
*** Warning - bad env area, using default environment
In: serial@e0000000
Out: serial@e0000000
Err: serial@e0000000
Net: zynq_gem ethernet@e000b000: Failed to find phy-handle
ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr 2, interface rgmii-id
Warning: ethernet@e000b000 (eth0) using random MAC address - 66:32:a8:6c:17:48
eth0: ethernet@e000b000
Hit any key to stop autoboot: 2
U-Boot 2023.01 (Mar 29 2023 - 13:08:40 +0000)
CPU: Zynq 7z010
Silicon: v3.1
DRAM: ECC disabled 512 MiB
zynq_gem ethernet@e000b000: eth_phy_binds_nodes: ethernet@e000b000 mdio subnode not found!
Core: 22 devices, 15 uclasses, devicetree: board
Flash: 0 Bytes
NAND: 0 MiB
MMC: arasan_sdhci mmc@e0100000: arasan_sdhci_probe: CLK 50000000
mmc@e0100000: 0
Loading Environment from FAT... *** Error - No Valid Environment Area found
*** Warning - bad env area, using default environment
In: serial@e0000000
Out: serial@e0000000
Err: serial@e0000000
Net: zynq_gem ethernet@e000b000: Failed to find phy-handle
ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr 2, interface rgmii-id
Warning: ethernet@e000b000 (eth0) using random MAC address - 72:25:0a:8e:06:96
eth0: ethernet@e000b000
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1...
Found U-Boot script /boot.scr
3016 bytes read in 14 ms (210 KiB/s)
## Executing script at 03000000
Trying to load boot images from mmc0
19408 bytes read in 18 ms (1 MiB/s)
## Booting kernel from Legacy Image at 00200000 ...
Image Name: Linux-6.1.5-xilinx-v2023.1
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 4305032 Bytes = 4.1 MiB
Load Address: 00200000
Entry Point: 00200000
Verifying Checksum ... OK
## Flattened Device Tree blob at 00100000
Booting using the fdt blob at 0x100000
Working FDT set to 100000
Loading Kernel Image
Loading Device Tree to 1e9c6000, end 1e9cdbcf ... OK
Working FDT set to 1e9c6000
Starting kernel ...
Booting Linux on physical CPU 0x0
Linux version 6.1.5-xilinx-v2023.1 (oe-user@oe-host) (arm-xilinx-linux-gnueabi-gcc (GCC) 12.2.0, GNU ld (GNU Binutils) 2.39.0.20220819) #1 SMP PREEMPT Fri Apr 21 07:47:58 UTC 2023
CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
OF: fdt: Machine model: xlnx,zynq-7000
earlycon: cdns0 at MMIO 0xe0000000 (options '115200n8')
printk: bootconsole [cdns0] enabled
Memory policy: Data cache writealloc
cma: Reserved 16 MiB at 0x1ec00000
Zone ranges:
Normal [mem 0x0000000000000000-0x000000001ffeffff]
HighMem [mem 0x000000001fff0000-0x000000001fffffff]
Movable zone start for each node
Early memory node ranges
node 0: [mem 0x0000000000000000-0x000000001ffeffff]
node 0: [mem 0x000000001fff0000-0x000000001fffffff]
Initmem setup node 0 [mem 0x0000000000000000-0x000000001fffffff]
percpu: Embedded 12 pages/cpu s16788 r8192 d24172 u49152
Built 1 zonelists, mobility grouping on. Total pages: 130048
Kernel command line: console=ttyPS0,115200 earlycon root=/dev/nfs nfsroot=192.168.1.90:/tftpboot/nfsroot,nfsvers=3,tcp ip=dhcp rw
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
mem auto-init: stack:all(zero), heap alloc:off, heap free:off
Memory: 493048K/524288K available (6144K kernel code, 237K rwdata, 1768K rodata, 1024K init, 119K bss, 14856K reserved, 16384K cma-reserved, 0K highmem)
rcu: Preemptible hierarchical RCU implementation.
rcu: RCU event tracing is enabled.
rcu: RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
efuse mapped to (ptrval)
slcr mapped to (ptrval)
L2C: platform modifies aux control register: 0x72360000 -> 0x72760000
L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000
L2C-310 erratum 769419 enabled
L2C-310 enabling early BRESP for Cortex-A9
L2C-310 full line of zeros enabled for Cortex-A9
L2C-310 ID prefetch enabled, offset 1 lines
L2C-310 dynamic clock gating enabled, standby mode enabled
L2C-310 cache controller enabled, 8 ways, 512 kB
L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76760001
rcu: srcu_init: Setting srcu_struct sizes based on contention.
zynq_clock_init: clkc starts at (ptrval)
Zynq clock init
sched_clock: 64 bits at 167MHz, resolution 6ns, wraps every 4398046511103ns
clocksource: arm_global_timer: mask: 0xffffffffffffffff max_cycles: 0x26703d7dd8, max_idle_ns: 440795208065 ns
Switching to timer-based delay loop, resolution 6ns
Console: colour dummy device 80x30
Calibrating delay loop (skipped), value calculated using timer frequency.. 333.33 BogoMIPS (lpj=1666666)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
CPU: Testing write buffer coherency: ok
CPU0: Spectre v2: using BPIALL workaround
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x100000 - 0x100060
rcu: Hierarchical SRCU implementation.
rcu: Max phase no-delay instances is 1000.
smp: Bringing up secondary CPUs ...
CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
CPU1: Spectre v2: using BPIALL workaround
smp: Brought up 1 node, 2 CPUs
SMP: Total of 2 processors activated (666.66 BogoMIPS).
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
futex hash table entries: 512 (order: 3, 32768 bytes, linear)
pinctrl core: initialized pinctrl subsystem
NET: Registered PF_NETLINK/PF_ROUTE protocol family
DMA: preallocated 256 KiB pool for atomic coherent allocations
thermal_sys: Registered thermal governor 'step_wise'
cpuidle: using governor menu
amba f8801000.etb: Fixing up cyclic dependency with replicator
amba f8803000.tpiu: Fixing up cyclic dependency with replicator
amba f8804000.funnel: Fixing up cyclic dependency with replicator
amba f889c000.ptm: Fixing up cyclic dependency with f8804000.funnel
amba f889d000.ptm: Fixing up cyclic dependency with f8804000.funnel
hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 4 bytes.
e0000000.serial: ttyPS0 at MMIO 0xe0000000 (irq = 26, base_baud = 6249999) is a xuartps
printk: console [ttyPS0] enabled
printk: console [ttyPS0] enabled
printk: bootconsole [cdns0] disabled
printk: bootconsole [cdns0] disabled
e0001000.serial: ttyPS1 at MMIO 0xe0001000 (irq = 27, base_baud = 6249999) is a xuartps
SCSI subsystem initialized
mc: Linux media interface: v0.10
videodev: Linux video capture interface: v2.00
pps_core: LinuxPPS API ver. 1 registered
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
PTP clock support registered
EDAC MC: Ver: 3.0.0
FPGA manager framework
Advanced Linux Sound Architecture Driver Initialized.
clocksource: Switched to clocksource arm_global_timer
NET: Registered PF_INET protocol family
IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
TCP established hash table entries: 4096 (order: 2, 16384 bytes, linear)
TCP bind hash table entries: 4096 (order: 4, 65536 bytes, linear)
TCP: Hash tables configured (established 4096 bind 4096)
UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
NET: Registered PF_UNIX/PF_LOCAL protocol family
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
armv7-pmu f8891000.pmu: hw perfevents: no interrupt-affinity property, guessing.
hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available
workingset: timestamp_bits=30 max_order=17 bucket_order=0
jffs2: version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
bounce: pool size: 64 pages
io scheduler mq-deadline registered
io scheduler kyber registered
zynq-pinctrl 700.pinctrl: zynq pinctrl initialized
gpio gpiochip0: (zynq_gpio): not an immutable chip, please consider fixing it!
dma-pl330 f8003000.dma-controller: Loaded driver for PL330 DMAC-241330
dma-pl330 f8003000.dma-controller: DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16
brd: module loaded
loop: module loaded
spi-nor spi0.0: s25fl256s1 (32768 Kbytes)
1 fixed-partitions partitions found on MTD device spi0.0
Creating 1 MTD partitions on "spi0.0":
0x000000000000-0x000002000000 : "qspi-all"
macb e000b000.ethernet eth0: Cadence GEM rev 0x00020118 at 0xe000b000 irq 41 (72:25:0a:8e:06:96)
i2c_dev: i2c /dev entries driver
cdns-i2c e0004000.i2c: can't get pinctrl, bus recovery not supported
cdns-i2c e0004000.i2c: 400 kHz mmio e0004000 irq 42
cdns-i2c e0005000.i2c: can't get pinctrl, bus recovery not supported
cdns-i2c e0005000.i2c: 400 kHz mmio e0005000 irq 43
cdns-wdt f8005000.watchdog: Xilinx Watchdog Timer with timeout 10s
EDAC MC: ECC not enabled
Xilinx Zynq CpuIdle Driver started
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
ledtrig-cpu: registered to indicate activity on CPUs
clocksource: ttc_clocksource: mask: 0xffff max_cycles: 0xffff, max_idle_ns: 537538477 ns
timer #0 at (ptrval), irq=46
fpga_manager fpga0: Xilinx Zynq FPGA Manager registered
NET: Registered PF_INET6 protocol family
mmc0: SDHCI controller on e0100000.mmc [e0100000.mmc] using ADMA
Segment Routing with IPv6
In-situ OAM (IOAM) with IPv6
sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
NET: Registered PF_PACKET protocol family
zynq_pm_remap_ocm: OCM pool is not available
zynq_pm_suspend_init: Unable to map OCM.
Registering SWP/SWPB emulation handler
of-fpga-region fpga-full: FPGA Region probed
of_cfs_init
of_cfs_init: OK
mmc0: new high speed MMC card at address 0001
mmcblk0: mmc0:0001 G1M15L 29.6 GiB
mmcblk0: p1 p2
mmcblk0boot0: mmc0:0001 G1M15L 31.5 MiB
mmcblk0boot1: mmc0:0001 G1M15L 31.5 MiB
mmcblk0rpmb: mmc0:0001 G1M15L 4.00 MiB, chardev (245:0)
macb e000b000.ethernet eth0: PHY [e000b000.ethernet-ffffffff:02] driver [Micrel KSZ9031 Gigabit PHY] (irq=POLL)
macb e000b000.ethernet eth0: configuring for phy/rgmii-id link mode
macb e000b000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Sending DHCP requests ..., OK
IP-Config: Got DHCP answer from 192.168.1.1, my address is 192.168.1.195
IP-Config: Complete:
device=eth0, hwaddr=72:25:0a:8e:06:96, ipaddr=192.168.1.195, mask=255.255.255.0, gw=192.168.1.1
host=192.168.1.195, domain=, nis-domain=(none)
bootserver=192.168.1.1, rootserver=192.168.1.90, rootpath=
nameserver0=192.168.1.1, nameserver1=94.140.14.14, nameserver2=94.140.15.15
ntpserver0=162.159.200.1, ntpserver1=185.157.229.254
ALSA device list:
No soundcards found.
VFS: Mounted root (nfs filesystem) on device 0:13.
devtmpfs: mounted
Freeing unused kernel image (initmem) memory: 1024K
Run /sbin/init as init process
INIT: version 3.04 booting
Starting udev
Starting version 251.8+
random: crng init done
FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
EXT4-fs (mmcblk0p2): recovery complete
EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Quota mode: disabled.
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.
Fri Mar 9 12:43:43 UTC 2018
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.
INIT: Entering runlevel: 5
Configuring network interfaces... RTNETLINK answers: File exists
ifup skipped for nfsroot interface eth0
run-parts: /etc/network/if-pre-up.d/nfsroot: exit status 1
Starting system message bus: dbus.
Starting OpenBSD Secure Shell server: sshd
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/etc/ssh/ssh_host_rsa_key' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/etc/ssh/ssh_host_ecdsa_key' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/etc/ssh/ssh_host_ed25519_key' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
sshd: no hostkeys available -- exiting.
Starting rpcbind daemon...done.
starting statd: done
Starting atd: OK
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 system log daemon...0
Mar 9 04:43:23 karkinos kernel: L2C: platform modifies aux control register: 0x72360000 -> 0x72760000
Mar 9 04:43:23 karkinos kernel: L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000
Mar 9 04:43:23 karkinos kernel: armv7-pmu f8891000.pmu: hw perfevents: no interrupt-affinity property, guessing.
Mar 9 04:43:23 karkinos kernel: gpio gpiochip0: (zynq_gpio): not an immutable chip, please consider fixing it!
Mar 9 04:43:24 karkinos kernel: zynq_pm_remap_ocm: OCM pool is not available
Mar 9 04:43:24 karkinos kernel: zynq_pm_suspend_init: Unable to map OCM.
Mar 9 04:43:40 karkinos kernel: FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
* Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon [ ok ]
Starting crond: OK
umount.nfs: remote share not in 'host:dir' format
umount.nfs: /boot: not mounted
Welcome to fdisk (util-linux 2.38.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): Partition number (1,2, default 2):
Partition 1 has been deleted.
Command (m for help): Selected partition 2
Partition 2 has been deleted.
Command (m for help): 2: unknown command
Command (m for help): Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): Partition number (1-4, default 1): First sector (2048-62160895, default 2048): Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-62160895, default 62160895):
Created a new partition 1 of type 'Linux' and of size 512 MiB.
Partition #1 contains a vfat signature.
Command (m for help): Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): Partition number (2-4, default 2): First sector (1050624-62160895, default 1050624): Last sector, +/-sectors or +/-size{K,M,G,T,P} (1050624-62160895, default 62160895):
Created a new partition 2 of type 'Linux' and of size 29.1 GiB.
Partition #2 contains a ext4 signature.
Command (m for help): Partition number (1,2, default 2):
The bootable flag on partition 1 is enabled now.
Command (m for help): The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
mke2fs 1.46.5 (30-Dec-2021)
/dev/mmcblk0p2 contains a ext4 file system
last mounted on / on Wed Dec 31 16:00:18 1969
Discarding device blocks: done
Creating filesystem with 7638784 4k blocks and 1913184 inodes
Filesystem UUID: ac7ae821-38ca-4516-a518-24be22025471
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
/bin/cp: cannot stat '/boot/image.ub': No such file or directory
/
Erasing blocks: 512/512 (100%)
Writing data: 14977k/14977k (100%)
Verifying data: 14977k/14977k (100%)
Karkinos system configuration DONE
INIT: Switching to runlevel: 6
INIT: Sending processes configured via /etc/inittab the TERM signal
Stopping OpenBSD Secure Shell server: sshdno /usr/sbin/sshd found; none killed
* Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemon [ ok ]
Stopping atd: OK
Stopping system message bus: dbus.
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.
Stopping internet superserver: inetd.
stopping mountd: done
stopping nfsd: done
Stopping system log daemon...0
Stopping tcf-agent: OK
stopping statd: done
Unmounting remote filesystems...
Stopping crond: OK
Stopping rpcbind daemon...
done.
not deconfiguring network interfaces: network file systems still mounted.
Sending all processes the TERM signal...
Sending all processes the KILL signal...
Deactivating swap...
Unmounting local filesystems...
Rebooting... reboot: Restarting system
Important notes on the log
Sending DHCP requests ..., OK
IP-Config: Got DHCP answer from 192.168.1.1, my address is 192.168.1.195
IP-Config: Complete:
device=eth0, hwaddr=72:25:0a:8e:06:96, ipaddr=192.168.1.195, mask=255.255.255.0, gw=192.168.1.1
host=192.168.1.195, domain=, nis-domain=(none)
bootserver=192.168.1.1, rootserver=192.168.1.90, rootpath=
nameserver0=192.168.1.1, nameserver1=94.140.14.14, nameserver2=94.140.15.15
ntpserver0=162.159.200.1, ntpserver1=185.157.229.254
ALSA device list:
No soundcards found.
From this section of the log you cans see the board obtaining an IP address from the DHCP server on the network, in this case the address is 192.168.1.195. This address must be in the range 192.168.1.1-192.168.1.254. As you can see the board use the address 192.168.1.90 as rootserver, this is the address of the VM and the board must be able to connect to that server.
If the log stop after Sending DHCP requests ..., OK than you have some problem with the ethernet cable connection or with the DHCP server.
if everything is ok in just a few second you must see the following lines:
VFS: Mounted root (nfs filesystem) on device 0:13.
and the procedure continue.
If there are problems with the network setup the board stop after this steps for around 2 minutes and then put out a kernel crash report before to freeze.