Commit Graph

229 Commits

Author SHA1 Message Date
a40414d08c Add comment about the axi timer
This timer is present and initialized in OpenSBI and seems to drive the
UART device. Not sure if we need to see it from the kernel.
2024-07-03 15:30:28 +02:00
d7669671f6 Enable 8250 console driver 2024-07-03 14:09:52 +02:00
7c25f76f8b Bake the git commit inside the uboot env file 2024-07-03 14:09:48 +02:00
2442bdf3f5 Disable lock torture test 2024-07-03 13:44:02 +02:00
93e83f52e8 Add busybox patch to see debug lines: initrd sh ok
The switch_root command seems to hang in the execv() syscall.
2024-07-03 13:43:41 +02:00
3229a3d194 Ignore misc directory 2024-07-03 13:10:06 +02:00
109dea5b4e Enable kernel and busybox debug
Continues to hang in switch_root and no luck trying to send a magic
sysrq via serial port.
2024-07-01 18:00:54 +02:00
046f017b70 Move the pmem closer to the RAM memory
Continues stuck in switch_root.
2024-07-01 15:02:20 +02:00
917cbf3439 Revert to upstream busybox 2024-07-01 14:53:08 +02:00
65c7eca2c8 Fix OpenSBI configuration for newer versions
OpenSBI 1.3 an newer require the heap_size to be specified in the
sbi_platform structure, othewise the default 0 value causes a hangg at
the start. I found the problem after bisecting OpenSBI:

  # Bisect opensbi
  version = src.shortRev;
  src = builtins.fetchGit {
    url = "file:///home/Computational/rarias/riscv/opensbi";
    #rev = "908be1b85c8ff0695ea226fbbf0ff24a779cdece"; #good
    #rev = "6bc02dede86c47f87e65293b7099e9caf3b22c29"; #good
    #rev = "bbff53fe3b6cdd3c9bc084d489640d7ee2a3f831"; #bad
    #rev = "8b99a7f7d8294be29e18a667d51e13755ed2c0e0"; #good
    #rev = "bdde2ecd27af1ac158669809f6658376fb5137ab"; #good
    #rev = "5cf9a540164a018a31a679578a27eb964af0340d"; #good
    #rev = "2a04f7037317c6c5b591b160a074c700de9b3378"; #bad
    rev = "40d36a6673131e36075b1df78af4d7ab92e8cc01"; #bad
  };
2024-07-01 13:28:32 +02:00
14f6528318 Use upstream u-boot and disable debug logs 2024-07-01 12:10:19 +02:00
67fedf4651 Remove unused dtb compilation in OpenSBI 2024-07-01 11:51:20 +02:00
869bd302a8 Find opensbi in any directory name 2024-07-01 11:47:33 +02:00
a7cc8e2611 Fix fpgactl wrong variable names 2024-07-01 11:47:16 +02:00
a7e1a6a100 Go back to default gcc for the kernel 2024-07-01 11:30:12 +02:00
763f053f01 Simplify, correct and comment DTS
Disable unused devices and try to fix the interrupt connections. The
compiler dtc doesn't report any warning now.
2024-07-01 11:29:02 +02:00
33b227f576 Hangs in swtich_root in stage1 2024-07-01 10:14:39 +02:00
975a1c0e87 Update fpga tools for MEEP 2024-07-01 09:57:05 +02:00
2cefcef63d Make busybox static
Now the problem is inside the busybox binary:

[   43.028000] Run /init as init process
[   43.033300]   with arguments:
[   43.037260]     /init
[   43.040000]   with environment:
[   43.044180]     HOME=/
[   43.047600]     TERM=linux
[   43.078020] init[1]: unhandled signal 4 code 0x1 at 0x0000000000010660 in busybox[10000+22d000]
[   43.090080] CPU: 0 PID: 1 Comm: init Not tainted 6.1.62 #1-NixOS
[   43.097580] Hardware name: Barcelona Supercomputing Center - Lagarto Ox (NixOS) (DT)
[   43.106480] epc : 0000000000010660 ra : 0000000000000000 sp : 0000003fd5489db0
[   43.114780]  gp : ffffffff8197ea48 tp : 0000000000000000 t0 : 0000000000000000
[   43.123080]  t1 : 0000000000000000 t2 : 0000000000000000 s0 : 0000000000000000
[   43.131340]  s1 : 0000000000000000 a0 : 0000000000000000 a1 : 0000000000000000
[   43.139620]  a2 : 0000000000000000 a3 : 0000000000000000 a4 : 0000000000000000
[   43.147900]  a5 : 0000000000000000 a6 : 0000000000000000 a7 : 0000000000000000
[   43.156180]  s2 : 0000000000000000 s3 : 0000000000000000 s4 : 0000000000000000
[   43.164860]  s5 : 0000000000000000 s6 : 0000000000000000 s7 : 0000000000000000
[   43.173140]  s8 : 0000000000000000 s9 : 0000000000000000 s10: 0000000000000000
[   43.181420]  s11: 0000000000000000 t3 : 0000000000000000 t4 : 0000000000000000
[   43.189680]  t5 : 0000000000000000 t6 : 0000000000000000
[   43.196040] status: 0000000200004020 badaddr: 00000000034000ef cause: 0000000000000002
[   43.208240] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004
[   43.216340] CPU: 0 PID: 1 Comm: init Not tainted 6.1.62 #1-NixOS
[   43.222940] Hardware name: Barcelona Supercomputing Center - Lagarto Ox (NixOS) (DT)
[   43.231100] Call Trace:
[   43.234000] [<ffffffff800070c4>] dump_backtrace+0x38/0x48
[   43.240140] [<ffffffff809f063c>] show_stack+0x50/0x68
[   43.245900] [<ffffffff809fd1f8>] dump_stack_lvl+0x60/0x84
[   43.252000] [<ffffffff809fd23c>] dump_stack+0x20/0x30
[   43.257740] [<ffffffff809f0918>] panic+0x160/0x390
[   43.263200] [<ffffffff80020184>] do_exit+0xa70/0xa78
[   43.268820] [<ffffffff800203a4>] do_group_exit+0x44/0xb0
[   43.274780] [<ffffffff80031eec>] get_signal+0x9b4/0xa00
[   43.280700] [<ffffffff80005ca0>] do_work_pending+0x18c/0x610
[   43.287020] [<ffffffff80003880>] resume_userspace_slow+0x10/0x14
[   43.293960] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004 ]---
2024-06-28 15:08:53 +02:00
7b9eb7366e Remove unused PMEM regions
Boots until the init, then fails with:

[   42.561840] Freeing unused kernel image (initmem) memory: 2448K
[   42.572360] Run /init as init process
[   42.577400]   with arguments:
[   42.581780]     /init
[   42.584520]   with environment:
[   42.589320]     HOME=/
[   42.592140]     TERM=linux
[   42.637580] init[1]: unhandled signal 4 code 0x1 at 0x0000003f966980d8 in ld-linux-riscv64-lp64d.so.1[3f96683000+23000]
[   42.650580] CPU: 0 PID: 1 Comm: init Not tainted 6.1.62 #1-NixOS
[   42.657720] Hardware name: Barcelona Supercomputing Center - Lagarto Ox (NixOS) (DT)
[   42.666760] epc : 0000003f966980d8 ra : 0000000000000000 sp : 0000003fe5c95db0
[   42.675040]  gp : ffffffff8197ea48 tp : 0000000000000000 t0 : 0000000000000000
[   42.683320]  t1 : 0000000000000000 t2 : 0000000000000000 s0 : 0000000000000000
[   42.691600]  s1 : 0000000000000000 a0 : 0000000000000000 a1 : 0000000000000000
[   42.699880]  a2 : 0000000000000000 a3 : 0000000000000000 a4 : 0000000000000000
[   42.708160]  a5 : 0000000000000000 a6 : 0000000000000000 a7 : 0000000000000000
[   42.716420]  s2 : 0000000000000000 s3 : 0000000000000000 s4 : 0000000000000000
[   42.724700]  s5 : 0000000000000000 s6 : 0000000000000000 s7 : 0000000000000000
[   42.733380]  s8 : 0000000000000000 s9 : 0000000000000000 s10: 0000000000000000
[   42.741660]  s11: 0000000000000000 t3 : 0000000000000000 t4 : 0000000000000000
[   42.749920]  t5 : 0000000000000000 t6 : 0000000000000000
[   42.756440] status: 0000000200004020 badaddr: 0000000000010513 cause: 0000000000000002
[   42.767620] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004
[   42.775720] CPU: 0 PID: 1 Comm: init Not tainted 6.1.62 #1-NixOS
[   42.782320] Hardware name: Barcelona Supercomputing Center - Lagarto Ox (NixOS) (DT)
[   42.790460] Call Trace:
[   42.793380] [<ffffffff800070c4>] dump_backtrace+0x38/0x48
[   42.799520] [<ffffffff809f063c>] show_stack+0x50/0x68
[   42.805280] [<ffffffff809fd1f8>] dump_stack_lvl+0x60/0x84
[   42.811400] [<ffffffff809fd23c>] dump_stack+0x20/0x30
[   42.817140] [<ffffffff809f0918>] panic+0x160/0x390
[   42.822620] [<ffffffff80020184>] do_exit+0xa70/0xa78
[   42.828260] [<ffffffff800203a4>] do_group_exit+0x44/0xb0
[   42.834240] [<ffffffff80031eec>] get_signal+0x9b4/0xa00
[   42.840140] [<ffffffff80005ca0>] do_work_pending+0x18c/0x610
[   42.846480] [<ffffffff80003880>] resume_userspace_slow+0x10/0x14
[   42.853420] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004 ]---
2024-06-28 15:08:24 +02:00
fc4b8126f6 Document memory layout 2024-06-28 10:39:10 +02:00
a8f3234031 Reached working U-Boot prompt
The serial compatible string must be "ns16550" to be recognized by
U-Boot.
2024-06-27 17:58:21 +02:00
72b4788888 Reached U-Boot console with FDT parsing error 2024-06-27 16:08:30 +02:00
1bfc32e91a Working OpenSBI 1.2 2024-06-27 11:29:15 +02:00
c8efa952f9 Add configuration for Lagarto Ox 2024-06-25 11:11:05 +02:00
4344f73d87 Dump system information when entering shell 2024-06-05 14:49:51 +02:00
8bd4550bc6 Use remote bscpkgs input for riscv benchmarks 2024-06-05 14:26:12 +02:00
f554a154b7 WIP 2024-05-28 18:12:14 +02:00
f69e04ccbe WIP: Working spec cpu with clang epi 2024-05-13 18:59:00 +02:00
c4676535ec Set Hart count to 20 2024-05-08 16:44:28 +02:00
0a771f0ccd Add cpio commands to notes 2024-03-07 16:55:01 +01:00
bd0869dfc3 Update readme with uboot instructions 2024-03-07 16:52:28 +01:00
04705290c2 Add FPGA notes 2024-03-07 16:51:09 +01:00
29e40eb4e4 Disable OpenSSH in Lagarto Hun 2024-03-07 16:50:35 +01:00
bf767d623b Generate U-Boot commands 2024-03-07 16:49:48 +01:00
66e3c36f77 Add support for rootfs in fpgactl 2024-03-07 12:35:30 +01:00
a4cda932d2 Use old method to upload files to FPGA
Using a single dd command fails sometimes.
2024-03-07 12:34:54 +01:00
94eb71dd80 Add rootfs for lagarto hun 2024-03-07 12:05:10 +01:00
eeecd40882 Update lagarto-hun config 2024-03-07 12:04:40 +01:00
0c873307ae Add no compressed specific overlay 2024-03-07 12:04:05 +01:00
4d284ae315 Move qemu specific config to vm.nix 2024-03-07 12:03:02 +01:00
730e342bfe Add scripts to load FPGA system 2024-03-04 18:32:25 +01:00
ef29bb0681 Fix uboot attribute name in lagarto hun 2024-03-04 18:26:48 +01:00
Rodrigo Arias Mallo
cf94b5a46a Update fpgactl usage 2024-03-04 16:53:03 +01:00
Rodrigo Arias Mallo
bd2b8b1bc5 Update fpgactl tool 2024-03-04 16:31:07 +01:00
409d2caecc Add lagarto hun DTS file 2024-03-04 14:46:26 +01:00
7c58298de6 Add notes about kernel config file 2024-03-04 14:45:53 +01:00
023ad3de22 Split kernel configuration in files 2024-03-04 14:44:49 +01:00
0003f07ed4 Add FPGA documentation in readme 2024-03-01 18:43:24 +01:00
12237d6a79 Add fpgactl tool 2024-03-01 18:37:05 +01:00