Comments (6)
而且从打印的log来看似乎有两个核心参与到了load数据的过程中
from quard_star_tutorial.
您好,我在作者 ch9 的时候遇到了一些问题,现象是 build.sh 可以编译,但是 qemu 的所有学生都没有打印,我在低级启动的开始打印。S中手动添加了一些日志的语句,这些语句能够在serial3中产生输出。 个人怀疑原因可能是opensbi或者uboot未能成功加载的情况你 不知道是否遇到过这种情况
我在开发过程中没遇到这个情况,一般如果类似的问题我会使用添加qemu选项-d in_asm -D qemu.log来跟踪一下boot启动阶段的关键跳转是否正确,你可以尝试下。
from quard_star_tutorial.
从的过程中看起来似乎有两个重要参与者打印到加载数据的中
我查了一下我打tag的ch9节的代码,有通过csrr a0, mhartid来确保只有一个核心load,我印象了之前确实存在你说的这个问题,然后我在某一版本修复了,最终可能和博客章节有点对不上,你根据我的tag对应一下。
.section .text
.globl _start
.type _start,@function
_start:
csrr a0, mhartid
beq a0, zero, _no_wait
_loop:
loop 0x1000
la t0, _pen
lw t0, 0(t0)
beq t0, zero, _run
j _loop
_no_wait:
la t0, _pen
la t1, 1
sw t1, 0(t0)
//load opensbi_fw.bin
//[0x20200000:0x20400000] --> [0xBFF80000:0xC0000000]
li a0, 0x202
slli a0, a0, 20
li a1, 0xbff
slli a1, a1, 20
li a2, 0x800
slli a2, a2, 8
add a1, a1, a2
add a2, a1, a2
load_data a0,a1,a2
from quard_star_tutorial.
我对应了下本地的代码,和你上面发的那个一致
然后我这次加上了qemu的log,发现ch9,以及博客中的那个修复了文件缺失的commit,从log中打印的代码来看,都没能跑通启动的流程
from quard_star_tutorial.
我对应了下本地的代码,和你上面发的那个一致
然后我这次加上了qemu的log,发现ch9,以及博客中的那个修复了文件缺失的commit,从log中打印的代码来看,都没能跑通启动的流程
loop次数增大一点看呢?
from quard_star_tutorial.
关于ch9无法运行的问题,今天CSDN社区上的一位用户:lov1225给我发私信指出:lowlevelboot/startup.s:67的位置上,应将
slli a2, a2, 4
改为
slli a2, a2, 8
才能正确加载quard_star_sbi.dtb 512K的区域到ddr上,之前的错误导致只能加载32K。但我这边看到这节生成的dtb只有5k,所以我之前没有发现问题。所以是否你的环境生成的dtb超过32K导致这个问题出现?如果是这样的可以尝试修改此处。
from quard_star_tutorial.
Related Issues (12)
- 重复引用了头文件 #include "hw/sysbus.h" HOT 1
- 在 头文件中已经定义 TYPE_RISCV_QUARD_STAR_MACHINE HOT 2
- 编译qemu时, 支持audio需要装那些库? (ubuntu 20.04) HOT 2
- 对 build.sh lowlevelboot 的疑问 HOT 2
- Use the full-screen parameter does not work HOT 1
- 请问 同时执行两个操作系统 算不算type 1 的hypervisor? HOT 2
- trusted_domain load error HOT 2
- 关于riscv编译工具链的问题 HOT 6
- 使用ip命令配置can网络出错 HOT 1
- 可以认识一下吗? HOT 4
- 请教下 quard_star 有硬件手册之类的吗?小白想知道对于一些地址、寄存器配置是这么来的 HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from quard_star_tutorial.