一.开发者常见问题
1.已解决问题
| 问题类型 |
|---|
| 硬件架构与指令集 |
| 外设与驱动 |
| 系统构建与编译 |
| 系统启动与稳定性 |
| 开发工具与调试 |
| 平台与生态 |
【 问题 】请问是否有MUSE PI Pro K1芯片关于PMP设计的文档,我希望知道PMP检查结果是否有被缓存到某处,可以如何刷新该缓存?
【 回答 】按照rv spec标准,用sfence刷新
【 问题 】rv spec没有说pmp是否需要被缓存,所以这款芯片是确定被缓存到tlb了吗?
【 回答 】

实现了虚拟地址的系统,都需要执行sfence的
【 问题 】请问k1里面,rdtime指令得到time的单位是什么 他和cpu cycle的关系是?
【 回答 】是 timebase-frequency 一个是soc上的time counter,由soc上的时钟驱动 另一个是CPU clk信号,它可以由另一个时钟源驱动
【 问题 】Hello Mark!
Do you know if it is possible to perform memory transfers between the TCM and the RAM in an asynchronous mode (i.e., non-blocking memory transfer)? This repository contains an example of UDMA, but this example demonstrates only memcpy using blocking.
【 回答 】As far as I know, TCM does not have a corresponding DMA
【 问题 】如何使用opencv调用海康威视工业相机
【 回答 】这种摄像头不是走标准的 UVC 协议内核驱动的呢,我看了下说明需要使用 MVS或者其他USB3 Vision驱动软件,这类是通过应用层 libusb 实现的应用层驱动,我找到一个好像说Aravis这个开源库支持各类工业相机,您可以去学习下相关的库用法呢。你需要用支持相关协议的库调试,必要时可以获取摄像头厂商的相关资料或者技术支持呢。我们的平台支持标准的UVC协议,这块的需求需要摄像头厂商将他们的SDK适配我们的平台呢。
【 问题 】设备树里读出来 mac基地址0xcac80000,phy号为1,但是去扫描phy操作读它的第二位第三位寄存器,一直读的都是0,读不到正常数值?是不是基地址不对?我扫了很多phy号都读不到正常值,而且操作各个寄存器读写也操作不了。

【 回答 】您好,这里 phy 地址是正确的,方便给下扫描命令吗。我这边使用sys节点和mdio-tool(这个工具需要安装)访问phy寄存器,都是正常的,可以参考一下。读:

写:

【 问题 】我是拿自带的bianbu desktop进行测试。目前我发现Muse Pi Pro跑自带的bianbu desktop也会时不时卡顿,于是测了glmark2,发现也是卡顿,显示softpipe渲染。装了powervr驱动,为何运行bianbu desktop会卡顿,谢谢。设置为zink和pvr都会报错,且没有glmark2-es-wayland应用
【 回答 】手动下载一个:sudo apt install glmark2-es2-wayland
然后运行:glmark2-es2-wayland
【 问题 】在按照官方文档进行标准编译流程时,发现多个配置选项都会在zlib-ng包的patch阶段出现段错误,导致编译失败。核心问题 :zlib-ng-2.0.6包在patch阶段出现段错误,清空output重新测试了多个不同的defconfig配置都出现相同错误,且重新下载全新代码仍然复现
【 回答 】多次排查原因是linux文件描述符受限,默认是1024
ulimit -n
可以直接设置到65536
ulimit -n 65536
【 问题 】今早打开M1,点击chrome图标,无反应,窗口无法打开。
【 回答 】命令行输入一下chromium- browser-stable,看下能不能打开
【 问题 】正在按照这个教程(进迭时空开发者社区
平台:挂载在Docker上的Ubuntu 22.04
编译之前的所有步骤都成功了
而在编译时,准确地说是编译ohos:ohos_clang_riscv64时出现以下错误:
[OHOS ERROR] Code: 4000
[OHOS ERROR]
[OHOS ERROR] Reason: COMPILE Failed! Please check error in /workspace/oh5/out/musepaper2/error.log, and for more build information in /workspace/oh5/out/musepaper2/build.log
[OHOS ERROR]
[OHOS ERROR] Error Type: Ninja build error
[OHOS ERROR]
[OHOS ERROR] Description: An unknown error occurred while executing ‘ninja -C’.
[OHOS ERROR]
[OHOS ERROR] Solution: no solution
[OHOS ERROR]
=====build error=====
请问如何解决?是编译ohos:ohos_clang_riscv64时出现以下错误:
【 回答 】已解决,原因是ubuntu22.04的docker镜像是精简版的,要执行unmininize命令安装完全版相关的软件
【 问题 】musepi pro断电关机后第二天从emmc无法启动,显示器显示图1内容后黑屏无信号,想着在sd卡里面烧个系统从sd卡启动,但是显示器直接黑屏,连接串口输出如图,请问是什么原因

【 回答 】麻烦提供一下emmc 无法启动的log。
sd卡启动失败看是因为卡没有检测到,建议插拔一下sd卡,并确认供电是否有异常。
【 问题 】现在rdcycle不能用了,还有什么好用简单的perf工具么(几乎不引入额外开销的)
【 回答 】可以用 用sysctl强开 就能用
sudo sysctl -w kernel.perf_user_access=2
【 问题 】Here to log some discussion I had with Mark Zhuang in a wechat channel:
I asked: There are a total of two patches. The first one is from 2023, originally submitted by SiFive. Has it not been merged into GDB yet?
The second one: is it specific to SpacemiT, or can it be resolved by relying on the mainline GDB?
Answer:
Yes. The first patch was submitted by SiFive to the GDB mailing list. The second patch was made to accompany the kernel upgrade to 6.6 and is not specific to SpacemiT. In at lease the version I used [0], v16.3, gdb still fails to read the RVV vector registers. GDB 16.3 was released in Mon, 21 Apr 2025. [1]
[0] $ gdb -v GNU gdb (Fedora Linux) 16.3-1.fc42 Copyright (C) 2024 Free Software Foundation, Inc.
[1] https:
【 回答 】Here is a patch that is being attempted to upstream:
https://sourceware.org/pipermail/gdb-patches/2025-June/218801.html
【 问题 】bianbu里面能否用docker?
【 回答 】可以参考这个文档 Docker 使用指南 | Bianbu | 进迭时空开发者社区
【 问题 】LocalAI的源码在哪里
【 回答 】https://archive.spacemit.com/spacemit-ai/localai/localai.tar.gz
2.导入内部问题
【 问题 】你好,问下Bianbu Linux bpi-f3-2 6.6.63 #2.2.6.3这个内核有处理 跨页的 VSSSEG 指令么?现在只要一跨页就SIGSEG

【 问题 】请问K1支持自定义指令集么?
【 问题 】我现在就不做扫phy操作直接这么去写phy的设备了。
dma的偏移可以给一下吗 我看设备树里没给,我用普通的0x1000/0x2000/0x3000偏移好像也不能进行reset和读写等的操作?
就是0xcac81000/0xcac82000/0xcac83000按照普通dma的寄存器偏移和寄存器操作都操作不了?
能否确认一下dma偏移
void synopGMAC_attach(synopGMACdevice gmacdev, UINT64 macBase, UINT64 dmaBase, UINT32 phyBase)
{
/ 清理设备数据结构 */
utilsMemSet((void *)gmacdev, 0, sizeof(synopGMACdevice));
gmacdev->MacBase = 0xcac80000;
gmacdev->DmaBase = dmaBase;
gmacdev->PhyBase = phyBase;
printk("macBase = 0x%llx; DmaBase = 0x%llx; PhyBase = 0x%x\\\\\\\\\\\\\\\\n",
gmacdev->MacBase, gmacdev->DmaBase, gmacdev->PhyBase);
}
【 问题 】Bevy Engine 图形后端以及窗口启动失败
【 问题 】请问我在将provider改为 SpaceMITExecutionProvider后产生了如下的错误,应该怎么解决?另外在musepi开发板上使用 CPUExecutionProvider进行推理明显比在无GPU的电脑上推理时的加载模型时间与模型推理时间要长的多,求解答,谢谢
报错:

推理时间对比:

【 问题 】使用相同的编译命令,系统安装的gcc-14.2的RVV内置函数实现的矩阵乘法性能比标量还差。而且交叉编译链的使用IME扩展的性能比gcc-14.2的好很多。
请问有与交叉编译链对应的可在RISC-V设备使用的编译链吗?
二.优秀案例
YouTube
[Product & Solutions] Tailor-Made! SpacemiT RISC-V Core IP, Adapted for Diverse High-End Scenarios
https://www.youtube.com/watch?v=MpHikqPE2Vg

Luanti RISC-V (Very Slow) 2025
https://www.youtube.com/watch?v=Cf7UFvFPC6o

Knossos.NET News - Android and Linux Riscv64 builds (Spacemit K1 SoC)
https://www.youtube.com/watch?v=gML67AjvUVs

三.新闻速递
Banana Pi BPI-CM6 will comming soon.