[lowrisc-dev] Having troubles booting lowRISC v0.5

Dr Jonathan Kimmitt jrrk2 at cam.ac.uk
Fri Apr 6 17:24:01 BST 2018


This is what I see when the network cable is unplugged:

(from my own build, which is very similar to the preloaded images)

The only significant difference I can see is a different make of SD-card,

which has 32G instead of 16G. You could try a different make of SD-card,

or use the ethernet boot method which does not rely on the vagaries of SD.

Unfortunately signal integrity on this card interface isn't the 
greatest, so we limit

if to 5MHz. Perhaps some makes would require even slower clocking.

The first boot after flashing the card will take quite a while to 
generate the ssh key,

but this comes later than the point you mention.

Selftest iteration 1
Selftest matches=4/4, delay = 4
Selftest iteration 2
Selftest matches=8/8, delay = 4
Selftest iteration 3
Selftest matches=16/16, delay = 4
Selftest iteration 4
Selftest matches=32/32, delay = 9
Selftest iteration 5
Selftest matches=64/64, delay = 17
Selftest iteration 6
Selftest matches=128/128, delay = 34
Selftest iteration 7
Selftest matches=256/256, delay = 68
Selftest iteration 8
Selftest matches=375/375, delay = 100
lowRISC boot program
=====================================
Hello LowRISC! Thu Jan 11 17:15:45 2018
Booting from FLASH because SW1 is high ..
sdhci_minion_hw_reset();
sdhci_minion_hw_reset();
Power = 3.3V
Card clock disabled
Trying clock div = 255
Actual clock divider = 255
Card clock disabled
Trying clock div = 255
Actual clock divider = 255
Card clock enabled
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = ff0000
busy = c0ff0000
RCA = aaaa0000
4-bit bus enabled
Trying clock div = 12
Actual clock divider = 12
Card clock disabled
Trying clock div = 12
Actual clock divider = 12
Card clock disabled
Trying clock div = 12
Actual clock divider = 12
Card clock enabled
Switch selection = 1400
Load boot0000.bin into memory
Load 5272024 bytes to memory address 86e00000 from boot.bin of 5272024 
bytes.
Disabling Ethernet
md5(0x86e00000,5272576) = 08277d52ab1458e3cbeed8ffda27db35
Digest of 5272576 bytes = 08277d52ab1458e3cbeed8ffda27db35
Disabling interrupts, Ethernet interrupt = 1
Loaded 5272576 bytes to memory address 86e00000 from boot.bin
load elf to DDR memory
Section[0]: memcpy(0x80000000,0x0x86e01000,0x6c70);
memset(0x80006c70,0,0x58);
Section[1]: memcpy(0x80007000,0x0x86e08000,0x4fcb28);
Boot the loaded program...
               vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
                   vvvvvvvvvvvvvvvvvvvvvvvvvvvv
rrrrrrrrrrrrr       vvvvvvvvvvvvvvvvvvvvvvvvvv
rrrrrrrrrrrrrrrr      vvvvvvvvvvvvvvvvvvvvvvvv
rrrrrrrrrrrrrrrrrr    vvvvvvvvvvvvvvvvvvvvvvvv
rrrrrrrrrrrrrrrrrr    vvvvvvvvvvvvvvvvvvvvvvvv
rrrrrrrrrrrrrrrrrr    vvvvvvvvvvvvvvvvvvvvvvvv
rrrrrrrrrrrrrrrr      vvvvvvvvvvvvvvvvvvvvvv
rrrrrrrrrrrrr       vvvvvvvvvvvvvvvvvvvvvv
rr                vvvvvvvvvvvvvvvvvvvvvv
rr            vvvvvvvvvvvvvvvvvvvvvvvv      rr
rrrr      vvvvvvvvvvvvvvvvvvvvvvvvvv      rrrr
rrrrrr      vvvvvvvvvvvvvvvvvvvvvv      rrrrrr
rrrrrrrr      vvvvvvvvvvvvvvvvvv      rrrrrrrr
rrrrrrrrrr      vvvvvvvvvvvvvv      rrrrrrrrrr
rrrrrrrrrrrr      vvvvvvvvvv      rrrrrrrrrrrr
rrrrrrrrrrrrrr      vvvvvv      rrrrrrrrrrrrrr
rrrrrrrrrrrrrrrr      vv      rrrrrrrrrrrrrrrr
rrrrrrrrrrrrrrrrrr          rrrrrrrrrrrrrrrrrr
rrrrrrrrrrrrrrrrrrrr      rrrrrrrrrrrrrrrrrrrr
rrrrrrrrrrrrrrrrrrrrrr  rrrrrrrrrrrrrrrrrrrrrr

        INSTRUCTION SETS WANT TO BE FREE
[    0.000000] Linux version 4.6.2-gf49213b (jrrk2 at brexit.cl.cam.ac.uk) 
(gcc version 6.1.0 (GCC) ) #1 Fri Jan 12 10:03:59 GMT 2018
[    0.000000] Available physical memory: 114MB
[    0.000000] Initial ramdisk at: 0xffffffff80016958 (781616 bytes)
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000080600000-0x00000000877fffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080600000-0x00000000877fffff]
[    0.000000] Initmem setup node 0 [mem 
0x0000000080600000-0x00000000877fffff]
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  
Total pages: 28785
[    0.000000] Kernel command line:
[    0.000000] PID hash table entries: 512 (order: 0, 4096 bytes)
[    0.000000] Dentry cache hash table entries: 16384 (order: 5, 131072 
bytes)
[    0.000000] Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.000000] Sorting __ex_table...
[    0.000000] Memory: 110464K/116736K available (2598K kernel code, 
147K rwdata, 548K rodata, 856K init, 239K bss, 6272K reserved, 0K 
cma-reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:0 nr_irqs:0 0
[    0.000000] clocksource: riscv_clocksource: mask: 0xffffffff 
max_cycles: 0xffffffff, max_idle_ns: 7645041785100 ns
[    0.000000] Calibrating delay loop (skipped), value calculated using 
timer frequency.. 0.50 BogoMIPS (lpj=2500)
[    0.000000] pid_max: default: 32768 minimum: 301
[    0.000000] Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
[    0.000000] Mountpoint-cache hash table entries: 512 (order: 0, 4096 
bytes)
[    0.090000] devtmpfs: initialized
[    0.120000] clocksource: jiffies: mask: 0xffffffff max_cycles: 
0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.150000] NET: Registered protocol family 16
[    0.360000] clocksource: Switched to clocksource riscv_clocksource
[    0.430000] NET: Registered protocol family 2
[    0.460000] TCP established hash table entries: 1024 (order: 1, 8192 
bytes)
[    0.470000] TCP bind hash table entries: 1024 (order: 1, 8192 bytes)
[    0.470000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.480000] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.480000] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.490000] NET: Registered protocol family 1
[    0.510000] RPC: Registered named UNIX socket transport module.
[    0.510000] RPC: Registered udp transport module.
[    0.510000] RPC: Registered tcp transport module.
[    0.510000] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    3.150000] Unpacking initramfs...
[    5.810000] hid_keyboard address 40020000, remapped to ffffffff78002000
[    5.810000] hid_display address 40028000, remapped to ffffffff78010000
[    6.170000] console [xuart_console0] enabled
[    6.180000] keyb_timer is started
[    6.220000] futex hash table entries: 256 (order: 0, 6144 bytes)
[    6.240000] workingset: timestamp_bits=61 max_order=15 bucket_order=0
[    6.780000] io scheduler noop registered (default)
[    9.900000] lowrisc-digilent-ethernet: Lowrisc ethernet platform 
(40018000-4001FFFF) mapped to ffffffff78020000
[    9.930000] libphy: GPIO Bitbanged LowRISC: probed
[    9.940000] Probing lowrisc-0:01
[    9.950000] SMSC LAN8710/LAN8720 lowrisc-0:01: attached PHY driver 
[SMSC LAN8710/LAN8720] (mii_bus:phy_addr=lowrisc-0:01, irq=-1)
[   10.000000] lowrisc_digilent_ethernet lowrisc_digilent_ethernet: 
Lowrisc Ether100MHz registered
[   10.100000] Card inserted, mask changed to 4
[   10.130000] NET: Registered protocol family 17
[   10.140000] Key type dns_resolver registered
[   10.310000] Freeing unused kernel memory: 856K (ffffffff80000000 - 
ffffffff800d6000)
[   10.330000] This architecture does not have kernel memory protection.
[   10.590000] Open device, request interrupt
Setting the clock ...
[   11.570000] mmc0: new SDHC card at address aaaa
[   11.590000] blk_queue_max_hw_sectors: set to minimum 8
[   11.610000] mmcblk0: mmc0:aaaa SL16G 14.8 GiB
[   11.670000]  mmcblk0: p1 p2 p3
rdate: timeout connecting to time server
Waiting for the sd card ...
Mounting the sd partition ...
[   31.300000] EXT2-fs (mmcblk0p2): warning: mounting unchecked fs, 
running e2fsck is recommended
Switch to sd root
[   36.050000] random: nonblocking pool is initialized
INIT: version 2.88 booting
bootlogd: cannot find console device 4:0 under /dev
hwclock: can't open '/dev/misc/rtc': No such file or directory
Wed Feb 21 00:06:02 UTC 2018
hwclock: can't open '/dev/misc/rtc': No such file or directory
INIT: Entering runlevel: 2
Configuring network interfaces... udhcpc (v1.24.1) started
Sending discover...
Sending discover...
Sending discover...
No lease, forking to background
done.
Starting Dropbear SSH server: dropbear.
hwclock: can't open '/dev/misc/rtc': No such file or directory
Starting syslogd/klogd: done

Poky (Yocto Project Reference Distro) 2.0+snapshot-20171219 qemuriscv64 
/dev/console

qemuriscv64 login: root
Password:
root at qemuriscv64:~# ifconfig -a
eth0      Link encap:Ethernet  HWaddr EE:E1:E2:E3:E4:EA
           UP BROADCAST RUNNING  MTU:1500  Metric:1
           RX packets:1 errors:0 dropped:1 overruns:0 frame:0
           TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:1500 (1.4 KiB)  TX bytes:2346 (2.2 KiB)

lo        Link encap:Local Loopback
           inet addr:127.0.0.1  Mask:255.0.0.0
           UP LOOPBACK RUNNING  MTU:65536  Metric:1
           RX packets:0 errors:0 dropped:0 overruns:0 frame:0
           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1
           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

root at qemuriscv64:~#


On 06/04/18 17:00, 陈东维 wrote:
> Hello,
>
> I'm trying to boot lowRISC Ethernet-v0.5 on a Nexys4 DDR board but got 
> stuck in the boot process.
> I want to boot OS from a SD card and downloaded the pre-built SD-image 
> provided by the tutorial. The SD card is partioned according to the 
> tutorial. I put 'boot0000.bin' in the 32M 'W95 FAT32' partion. Then 
> the boot process got stuck and I got the following output from 
> microcomthrough UART connection (full output log is attached to this 
> mail):
>
> Setting the clock ...
> [   10.810000] mmc0: new SDHC card at address b368
> [   10.830000] blk_queue_max_hw_sectors: set to minimum 8
> [   10.850000] mmcblk0: mmc0:b368 CBADS 30.0 GiB
> [   10.910000]  mmcblk0: p1 p2 p3
> rdate: timeout connecting to time server
> Waiting for the sd card ...
> Mounting the sd partition ...
> Switch to sd root
> [   35.390000] random: nonblocking pool is initialized
> INIT: version 2.88 booting
>
> After the 'INIT: version 2.88 booting' I got no more output, so I 
> cannot figure out what is going on and where I made a mistake. Could 
> you please help me to find out the reason why the boot process was stuck?
>
> ps: I didn't connect the board and my host PC with ethernet cable, 
> could this be the reason?
>
> Thanks & Regards,
> Chen Dongwei.




More information about the lowrisc-dev mailing list