blob: 22d2a31ff591f45088022acb41ca01d3bfe4dcf2 [file] [log] [blame]
Yanhong Wang6a5a45d2023-03-29 11:42:17 +08001.. SPDX-License-Identifier: GPL-2.0+
2
3StarFive VisionFive2
4====================
5
6JH7110 RISC-V SoC
7---------------------
8The JH7110 is 4+1 64-bit RISC-V SoC from StarFive.
9
10The StarFive VisionFive2 development platform is based on JH7110 and capable
11of running Linux.
12
13Mainline support
14----------------
15
16The support for following drivers are already enabled:
17
181. ns16550 UART Driver.
192. StarFive JH7110 clock Driver.
203. StarFive JH7110 reset Driver.
214. Cadence QSPI controller Driver.
225. MMC SPI Driver for MMC/SD support.
23
24Booting from MMC using U-Boot SPL
25---------------------------------
26
27The current U-Boot port is supported in S-mode only and loaded from DRAM.
28
29A prior stage M-mode firmware/bootloader (e.g OpenSBI) is required to
30boot the u-boot.itb in S-mode and provide M-mode runtime services.
31
32Currently, the u-boot.itb is used as a dynamic of the OpenSBI FW_DYNAMIC
33firmware with the latest.
34
35Building
36~~~~~~~~
37
381. Add the RISC-V toolchain to your PATH.
392. Setup ARCH & cross compilation environment variable:
40
41.. code-block:: none
42
43 export CROSS_COMPILE=<riscv64 toolchain prefix>
44
45Before building U-Boot SPL, OpenSBI must be built first. OpenSBI can be
46cloned and built for JH7110 as below:
47
48.. code-block:: console
49
50 git clone https://github.com/riscv/opensbi.git
51 cd opensbi
52 make PLATFORM=generic FW_TEXT_START=0x40000000 FW_OPTIONS=0
53
54More detailed description of steps required to build FW_DYNAMIC firmware
55is beyond the scope of this document. Please refer OpenSBI documenation.
56(Note: OpenSBI git repo is at https://github.com/riscv/opensbi.git)
57
58Now build the U-Boot SPL and U-Boot proper
59
60.. code-block:: console
61
62 cd <U-Boot-dir>
63 make starfive_visionfive2_13b_defconfig
64 make OPENSBI=$(opensbi_dir)/opensbi/build/platform/generic/firmware/fw_dynamic.bin
65
66This will generate spl/u-boot-spl.bin and FIT image (u-boot.itb)
67
68u-boot-spl.bin cannot be used directly on StarFive VisionFive2,we need
69to convert the u-boot-spl.bin to u-boot-spl.bin.normal.out with
70the below command:
71
72 ./spl_tool -c -f $(Uboot_PATH)/spl/u-boot-spl.bin
73
74More detailed description of spl_tool,please refer spl_tool documenation.
75(Note: spl_tool git repo is at https://github.com/starfive-tech/Tools/tree/master/spl_tool)
76
77This will generate u-boot-spl.bin.normal.out file.
78
79Flashing
80~~~~~~~~
81
82SPL loads the U-Boot SPL (u-boot-spl.bin.normal.out) from a partition with GUID type
832E54B353-1271-4842-806F-E436D6AF6985
84
85U-Boot SPL expects a U-Boot FIT image (u-boot.itb) from a partition with GUID
86type BC13C2FF-59E6-4262-A352-B275FD6F7172
87
88FIT image (u-boot.itb) is a combination of fw_dynamic.bin, u-boot-nodtb.bin and
89device tree blob (jh7110-starfive-visionfive-2-v1.3b.dtb/jh7110-starfive-visionfive-2-v1.2a.dtb)
90
91Format the SD card (make sure the disk has GPT, otherwise use gdisk to switch)
92
93.. code-block:: bash
94
95 sudo sgdisk --clear \
96 --set-alignment=2 \
97 --new=1:4096:8191 --change-name=1:spl --typecode=1:2E54B353-1271-4842-806F-E436D6AF6985\
98 --new=2:8192:16383 --change-name=2:uboot --typecode=2:BC13C2FF-59E6-4262-A352-B275FD6F7172 \
99 --new=3:16384:1654784 --change-name=3:system --typecode=3:EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 \
100 /dev/sdb
101
102Program the SD card
103
104.. code-block:: bash
105
106 sudo dd if=u-boot-spl.bin.normal.out of=/dev/sdb1
107 sudo dd if=u-boot.itb of=/dev/sdb2
108
109 sudo mount /dev/sdb3 /mnt/
110 sudo cp u-boot-spl.bin.normal.out /mnt/
111 sudo cp u-boot.itb /mnt/
112 sudo cp Image.gz /mnt/
113 sudo cp initramfs.cpio.gz /mnt/
114 sudo cp jh7110-starfive-visionfive-2-v1.3b.dtb /mnt/
115 sudo umount /mnt
116
117Booting
118~~~~~~~
119
120Change DIP switches MSEL[1:0] are set to 10, select the boot mode to SD.
121Once you plugin the sdcard and power up, you should see the U-Boot prompt.
122
123Sample boot log from StarFive VisionFive2 board
124~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
125
126.. code-block:: none
127
128
129 U-Boot SPL 2023.04-rc2-00055-gfc43b9c51a-dirty (Mar 02 2023 - 10:51:39 +0800)
130 DDR version: dc2e84f0.
131 Trying to boot from MMC2
132
133 OpenSBI v1.2-80-g4b28afc
134 ____ _____ ____ _____
135 / __ \ / ____| _ \_ _|
136 | | | |_ __ ___ _ __ | (___ | |_) || |
137 | | | | '_ \ / _ \ '_ \ \___ \| _ < | |
138 | |__| | |_) | __/ | | |____) | |_) || |_
139 \____/| .__/ \___|_| |_|_____/|___/_____|
140 | |
141 |_|
142
143 Platform Name : StarFive VisionFive 2 v1.3B
144 Platform Features : medeleg
145 Platform HART Count : 5
146 Platform IPI Device : aclint-mswi
147 Platform Timer Device : aclint-mtimer @ 4000000Hz
148 Platform Console Device : uart8250
149 Platform HSM Device : ---
150 Platform PMU Device : ---
151 Platform Reboot Device : ---
152 Platform Shutdown Device : ---
153 Platform Suspend Device : ---
154 Firmware Base : 0x40000000
155 Firmware Size : 264 KB
156 Firmware RW Offset : 0x20000
157 Runtime SBI Version : 1.0
158
159 Domain0 Name : root
160 Domain0 Boot HART : 2
161 Domain0 HARTs : 0*,1*,2*,3*,4*
162 Domain0 Region00 : 0x0000000002000000-0x000000000200ffff M: (I,R,W) S/U: ()
163 Domain0 Region01 : 0x0000000040000000-0x000000004001ffff M: (R,X) S/U: ()
164 Domain0 Region02 : 0x0000000040000000-0x000000004007ffff M: (R,W) S/U: ()
165 Domain0 Region03 : 0x0000000000000000-0xffffffffffffffff M: (R,W,X) S/U: (R,W,X)
166 Domain0 Next Address : 0x0000000040200000
167 Domain0 Next Arg1 : 0x0000000040287970
168 Domain0 Next Mode : S-mode
169 Domain0 SysReset : yes
170 Domain0 SysSuspend : yes
171
172 Boot HART ID : 2
173 Boot HART Domain : root
174 Boot HART Priv Version : v1.11
175 Boot HART Base ISA : rv64imafdcbx
176 Boot HART ISA Extensions : none
177 Boot HART PMP Count : 8
178 Boot HART PMP Granularity : 4096
179 Boot HART PMP Address Bits: 34
180 Boot HART MHPM Count : 2
181 Boot HART MIDELEG : 0x0000000000000222
182 Boot HART MEDELEG : 0x000000000000b109
183
184
185 U-Boot 2023.04-rc2-00055-gfc43b9c51a-dirty (Mar 02 2023 - 10:51:39 +0800)
186
187 CPU: rv64imac_zba_zbb
188 Model: StarFive VisionFive 2 v1.3B
189 DRAM: 8 GiB
190 Core: 107 devices, 18 uclasses, devicetree: separate
191 MMC: mmc@16010000: 0, mmc@16020000: 1
192 Loading Environment from nowhere... OK
193 In: serial@10000000
194 Out: serial@10000000
195 Err: serial@10000000
196 Net: No ethernet found.
197 Working FDT set to ff74a340
198 Hit any key to stop autoboot: 0
199 StarFive #
200 StarFive #version
201 U-Boot 2023.04-rc2-00055-gfc43b9c51a-dirty (Mar 02 2023 - 10:51:39 +0800)
202
203 riscv64-buildroot-linux-gnu-gcc.br_real (Buildroot VF2_515_v1.0.0_rc4) 10.3.0
204 GNU ld (GNU Binutils) 2.36.1
205 StarFive #
206 StarFive #mmc dev 1
207 switch to partitions #0, OK
208 mmc1 is current device
209 StarFive #mmc info
210 Device: mmc@16020000
211 Manufacturer ID: 9f
212 OEM: 5449
213 Name: SD64G
214 Bus Speed: 50000000
215 Mode: SD High Speed (50MHz)
216 Rd Block Len: 512
217 SD version 3.0
218 High Capacity: Yes
219 Capacity: 58.3 GiB
220 Bus Width: 4-bit
221 Erase Group Size: 512 Bytes
222 StarFive #
223 StarFive #mmc part
224
225 Partition Map for MMC device 1 -- Partition Type: EFI
226
227 Part Start LBA End LBA Name
228 Attributes
229 Type GUID
230 Partition GUID
231 1 0x00001000 0x00001fff "spl"
232 attrs: 0x0000000000000000
233 type: 2e54b353-1271-4842-806f-e436d6af6985
234 (2e54b353-1271-4842-806f-e436d6af6985)
235 guid: d5ee2056-3020-475b-9a33-25b4257c9f12
236 2 0x00002000 0x00003fff "uboot"
237 attrs: 0x0000000000000000
238 type: bc13c2ff-59e6-4262-a352-b275fd6f7172
239 (bc13c2ff-59e6-4262-a352-b275fd6f7172)
240 guid: 379ab7fe-fd0c-4149-b758-960c1cbfc0cc
241 3 0x00004000 0x00194000 "system"
242 attrs: 0x0000000000000000
243 type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
244 (data)
245 guid: 539a6df9-4655-4953-8541-733ca36eb1db
246 StarFive #
247 StarFive #fatls mmc 1:3
248 6429424 Image.gz
249 717705 u-boot.itb
250 125437 u-boot-spl.bin.normal.out
251 152848495 initramfs.cpio.gz
252 11285 jh7110-starfive-visionfive-2-v1.3b.dtb
253
254 5 file(s), 0 dir(s)
255
256 StarFive #fatload mmc 1:3 ${kernel_addr_r} Image.gz
257 6429424 bytes read in 394 ms (15.6 MiB/s)
258 StarFive #fatload mmc 1:3 ${fdt_addr_r} jh7110-starfive-visionfive-2-v1.3b.dtb
259 11285 bytes read in 5 ms (2.2 MiB/s)
260 StarFive #fatload mmc 1:3 ${ramdisk_addr_r} initramfs.cpio.gz
261 152848495 bytes read in 9271 ms (15.7 MiB/s)
262 StarFive #booti ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r}
263 Uncompressing Kernel Image
264 ## Flattened Device Tree blob at 46000000
265 Booting using the fdt blob at 0x46000000
266 Working FDT set to 46000000
267 Loading Ramdisk to f5579000, end fe73d86f ... OK
268 Loading Device Tree to 00000000f5573000, end 00000000f5578c14 ... OK
269 Working FDT set to f5573000
270
271 Starting kernel ...
272
273
274 ] Linux version 6.2.0-starfive-00026-g11934a315b67 (wyh@wyh-VirtualBox) (riscv64-linux-gnu-gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0, GNU ld (GNU Binutils for Ubuntu) 2.30) #1 SMP Thu Mar 2 14:51:36 CST 2023
275 [ 0.000000] OF: fdt: Ignoring memory range 0x40000000 - 0x40200000
276 [ 0.000000] Machine model: StarFive VisionFive 2 v1.3B
277 [ 0.000000] efi: UEFI not found.
278 [ 0.000000] Zone ranges:
279 [ 0.000000] DMA32 [mem 0x0000000040200000-0x00000000ffffffff]
280 [ 0.000000] Normal [mem 0x0000000100000000-0x000000013fffffff]
281 [ 0.000000] Movable zone start for each node
282 [ 0.000000] Early memory node ranges
283 [ 0.000000] node 0: [mem 0x0000000040200000-0x000000013fffffff]
284 [ 0.000000] Initmem setup node 0 [mem 0x0000000040200000-0x000000013fffffff]
285 [ 0.000000] On node 0, zone DMA32: 512 pages in unavailable ranges
286 [ 0.000000] SBI specification v1.0 detected
287 [ 0.000000] SBI implementation ID=0x1 Version=0x10002
288 [ 0.000000] SBI TIME extension detected
289 [ 0.000000] SBI IPI extension detected
290 [ 0.000000] SBI RFENCE extension detected
291 [ 0.000000] SBI HSM extension detected
292 [ 0.000000] CPU with hartid=0 is not available
293 [ 0.000000] CPU with hartid=0 is not available
294 [ 0.000000] CPU with hartid=0 is not available
295 [ 0.000000] riscv: base ISA extensions acdfim
296 [ 0.000000] riscv: ELF capabilities acdfim
297 [ 0.000000] percpu: Embedded 18 pages/cpu s35960 r8192 d29576 u73728
298 [ 0.000000] pcpu-alloc: s35960 r8192 d29576 u73728 alloc=18*4096
299 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
300 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 1031688
301 [ 0.000000] Kernel command line: console=ttyS0,115200 debug rootwait earlycon=sbi
302 [ 0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
303 [ 0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
304 [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
305 [ 0.000000] software IO TLB: area num 4.
306 [ 0.000000] software IO TLB: mapped [mem 0x00000000f1573000-0x00000000f5573000] (64MB)
307 [ 0.000000] Virtual kernel memory layout:
308 [ 0.000000] fixmap : 0xffffffc6fee00000 - 0xffffffc6ff000000 (2048 kB)
309 [ 0.000000] pci io : 0xffffffc6ff000000 - 0xffffffc700000000 ( 16 MB)
310 [ 0.000000] vmemmap : 0xffffffc700000000 - 0xffffffc800000000 (4096 MB)
311 [ 0.000000] vmalloc : 0xffffffc800000000 - 0xffffffd800000000 ( 64 GB)
312 [ 0.000000] modules : 0xffffffff0136a000 - 0xffffffff80000000 (2028 MB)
313 [ 0.000000] lowmem : 0xffffffd800000000 - 0xffffffd8ffe00000 (4094 MB)
314 [ 0.000000] kernel : 0xffffffff80000000 - 0xffffffffffffffff (2047 MB)
315 [ 0.000000] Memory: 3867604K/4192256K available (8012K kernel code, 4919K rwdata, 4096K rodata, 2190K init, 476K bss, 324652K reserved, 0K cma-reserved)
316 [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
317 [ 0.000000] rcu: Hierarchical RCU implementation.
318 [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=64 to nr_cpu_ids=4.
319 [ 0.000000] rcu: RCU debug extended QS entry/exit.
320 [ 0.000000] Tracing variant of Tasks RCU enabled.
321 [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
322 [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
323 [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
324 [ 0.000000] CPU with hartid=0 is not available
325 [ 0.000000] riscv-intc: unable to find hart id for /cpus/cpu@0/interrupt-controller
326 [ 0.000000] riscv-intc: 64 local interrupts mapped
327 [ 0.000000] plic: interrupt-controller@c000000: mapped 136 interrupts with 4 handlers for 9 contexts.
328 [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
329 [ 0.000000] riscv-timer: riscv_timer_init_dt: Registering clocksource cpuid [0] hartid [4]
330 [ 0.000000] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles: 0x1d854df40, max_idle_ns: 881590404240 ns
331 [ 0.000003] sched_clock: 64 bits at 4MHz, resolution 250ns, wraps every 2199023255500ns
332 [ 0.000437] Console: colour dummy device 80x25
333 [ 0.000568] Calibrating delay loop (skipped), value calculated using timer frequency.. 8.00 BogoMIPS (lpj=16000)
334 [ 0.000602] pid_max: default: 32768 minimum: 301
335 [ 0.000752] LSM: initializing lsm=capability,integrity
336 [ 0.001071] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
337 [ 0.001189] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
338 [ 0.004201] CPU node for /cpus/cpu@0 exist but the possible cpu range is :0-3
339 [ 0.007426] cblist_init_generic: Setting adjustable number of callback queues.
340 [ 0.007457] cblist_init_generic: Setting shift to 2 and lim to 1.
341 [ 0.007875] riscv: ELF compat mode unsupported
342 [ 0.007902] ASID allocator disabled (0 bits)
343 [ 0.008405] rcu: Hierarchical SRCU implementation.
344 [ 0.008426] rcu: Max phase no-delay instances is 1000.
345 [ 0.009247] EFI services will not be available.
346 [ 0.010738] smp: Bringing up secondary CPUs ...
347 [ 0.018358] smp: Brought up 1 node, 4 CPUs
348 [ 0.021776] devtmpfs: initialized
349 [ 0.027337] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
350 [ 0.027389] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
351 [ 0.027888] pinctrl core: initialized pinctrl subsystem
352 [ 0.029881] NET: Registered PF_NETLINK/PF_ROUTE protocol family
353 [ 0.030401] audit: initializing netlink subsys (disabled)
354 [ 0.031041] audit: type=2000 audit(0.028:1): state=initialized audit_enabled=0 res=1
355 [ 0.031943] cpuidle: using governor menu
356 [ 0.043011] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
357 [ 0.043033] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
358 [ 0.044943] iommu: Default domain type: Translated
359 [ 0.044965] iommu: DMA domain TLB invalidation policy: strict mode
360 [ 0.046089] SCSI subsystem initialized
361 [ 0.046733] libata version 3.00 loaded.
362 [ 0.047231] usbcore: registered new interface driver usbfs
363 [ 0.047315] usbcore: registered new interface driver hub
364 [ 0.047420] usbcore: registered new device driver usb
365 [ 0.049770] vgaarb: loaded
366 [ 0.050277] clocksource: Switched to clocksource riscv_clocksource
367 [ 0.084690] NET: Registered PF_INET protocol family
368 [ 0.085561] IP idents hash table entries: 65536 (order: 7, 524288 bytes, linear)
369 [ 0.093010] tcp_listen_portaddr_hash hash table entries: 2048 (order: 4, 65536 bytes, linear)
370 [ 0.093152] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
371 [ 0.093224] TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear)
372 [ 0.093821] TCP bind hash table entries: 32768 (order: 9, 2097152 bytes, linear)
373 [ 0.117880] TCP: Hash tables configured (established 32768 bind 32768)
374 [ 0.118500] UDP hash table entries: 2048 (order: 5, 196608 bytes, linear)
375 [ 0.118881] UDP-Lite hash table entries: 2048 (order: 5, 196608 bytes, linear)
376 [ 0.119675] NET: Registered PF_UNIX/PF_LOCAL protocol family
377 [ 0.121749] RPC: Registered named UNIX socket transport module.
378 [ 0.121776] RPC: Registered udp transport module.
379 [ 0.121784] RPC: Registered tcp transport module.
380 [ 0.121791] RPC: Registered tcp NFSv4.1 backchannel transport module.
381 [ 0.121816] PCI: CLS 0 bytes, default 64
382 [ 0.124101] Unpacking initramfs...
383 [ 0.125468] workingset: timestamp_bits=46 max_order=20 bucket_order=0
384 [ 0.128372] NFS: Registering the id_resolver key type
385 [ 0.128498] Key type id_resolver registered
386 [ 0.128525] Key type id_legacy registered
387 [ 0.128625] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
388 [ 0.128649] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
389 [ 0.129358] 9p: Installing v9fs 9p2000 file system support
390 [ 0.130179] NET: Registered PF_ALG protocol family
391 [ 0.130499] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 247)
392 [ 0.130544] io scheduler mq-deadline registered
393 [ 0.130556] io scheduler kyber registered
394 [ 0.416754] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
395 [ 0.420857] SuperH (H)SCI(F) driver initialized
396 [ 0.443735] loop: module loaded
397 [ 0.448605] e1000e: Intel(R) PRO/1000 Network Driver
398 [ 0.448627] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
399 [ 0.450716] usbcore: registered new interface driver uas
400 [ 0.450832] usbcore: registered new interface driver usb-storage
401 [ 0.451638] mousedev: PS/2 mouse device common for all mice
402 [ 0.453465] sdhci: Secure Digital Host Controller Interface driver
403 [ 0.453487] sdhci: Copyright(c) Pierre Ossman
404 [ 0.453584] sdhci-pltfm: SDHCI platform and OF driver helper
405 [ 0.454140] usbcore: registered new interface driver usbhid
406 [ 0.454174] usbhid: USB HID core driver
407 [ 0.454833] riscv-pmu-sbi: SBI PMU extension is available
408 [ 0.454920] riscv-pmu-sbi: 16 firmware and 4 hardware counters
409 [ 0.454942] riscv-pmu-sbi: Perf sampling/filtering is not supported as sscof extension is not available
410 [ 0.457071] NET: Registered PF_INET6 protocol family
411 [ 0.460627] Segment Routing with IPv6
412 [ 0.460821] In-situ OAM (IOAM) with IPv6
413 [ 0.461005] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
414 [ 0.462712] NET: Registered PF_PACKET protocol family
415 [ 0.462933] 9pnet: Installing 9P2000 support
416 [ 0.463141] Key type dns_resolver registered
417 [ 0.463168] start plist test
418 [ 0.469261] end plist test
419 [ 0.506774] debug_vm_pgtable: [debug_vm_pgtable ]: Validating architecture page table helpers
420 [ 0.553683] gpio gpiochip0: Static allocation of GPIO base is deprecated, use dynamic allocation.
421 [ 0.554741] starfive-jh7110-sys-pinctrl 13040000.pinctrl: StarFive GPIO chip registered 64 GPIOs
422 [ 0.555900] gpio gpiochip1: Static allocation of GPIO base is deprecated, use dynamic allocation.
423 [ 0.556772] starfive-jh7110-aon-pinctrl 17020000.pinctrl: StarFive GPIO chip registered 4 GPIOs
424 [ 0.559454] printk: console [ttyS0] disabled
425 [ 0.579948] 10000000.serial: ttyS0 at MMIO 0x10000000 (irq = 3, base_baud = 1500000) is a 16550A
426 [ 0.580082] printk: console [ttyS0] enabled
427 [ 13.642680] Freeing initrd memory: 149264K
428 [ 13.651051] Freeing unused kernel image (initmem) memory: 2188K
429 [ 13.666431] Run /init as init process
430 [ 13.670116] with arguments:
431 [ 13.673168] /init
432 [ 13.675488] with environment:
433 [ 13.678668] HOME=/
434 [ 13.681038] TERM=linux
435 Starting syslogd: OK
436 Starting klogd: OK
437 Running sysctl: OK
438 Populating /dev using udev: [ 14.145944] udevd[93]: starting version 3.2.10
439 [ 15.214287] random: crng init done
440 [ 15.240816] udevd[94]: starting eudev-3.2.10
441 done
442 Saving random seed: OK
443 Starting system message bus: dbus[122]: Unknown username "pulse" in message bus configuration file
444 done
445 Starting rpcbind: OK
446 Starting iptables: OK
447 Starting bluetoothd: OK
448 Starting network: Waiting for interface eth0 to appear............... timeout!
449 run-parts: /etc/network/if-pre-up.d/wait_iface: exit status 1
450 FAIL
451 Starting dropbear sshd: OK
452 Starting NFS statd: OK
453 Starting NFS services: OK
454 Starting NFS daemon: rpc.nfsd: Unable to access /proc/fs/nfsd errno 2 (No such file or directory).
455 Please try, as root, 'mount -t nfsd nfsd /proc/fs/nfsd' and then restart rpc.nfsd to correct the problem
456 FAIL
457 Starting NFS mountd: OK
458 Starting DHCP server: FAIL
459
460 Welcome to Buildroot
461 buildroot login:
462
463Booting from SPI
464----------------
465
466Use Building steps from "Booting from MMC using U-Boot SPL" section.
467
468Partition the SPI in Linux via mtdblock. (Require to boot the board in
469SD boot mode by enabling MTD block in Linux)
470
471Use prebuilt image from here [1], which support to partition the SPI flash.
472
473
474Program the SPI (Require to boot the board in SD boot mode)
475
476Execute below steps on U-Boot proper,
477
478.. code-block:: none
479
480 sf probe
481 fatload mmc 1:3 $kernel_addr_r u-boot.itb
482 sf update $kernel_addr_r 0x100000 $filesize
483
484 fatload mmc 1:3 $kernel_addr_r u-boot-spl.bin.normal.out
485 sf update $kernel_addr_r 0x0 $filesize
486
487
488Power off the board
489
490Change DIP switches MSEL[1:0] are set to 00, select the boot mode to flash
491
492Power up the board.