本文来源电子发烧友社区,作者:jf_06445065, 帖子地址:https://bbs.elecfans.com/jishu_2293504_1_1.html
因为starfive是riscv的指令集,所以也就需要了解一下寄存器和常用的指令。
主要是参考这里:https://en.wikipedia.org/wiki/RISC-V
主要就这么一个表格。
但是在srs的statethread里面sp被移动了一个位置,便于修改,所以稍微修改一下位置即可:
.file "md_linux.S"
.text
/* _st_md_cxt_save(__jmp_buf env) */ /* The env is $a0, https://en.wikipedia.org/wiki/MIPS_architecture#Calling_conventions */
.globl _st_md_cxt_save
.type _st_md_cxt_save, %function
.align 2
_st_md_cxt_save:
sd sp,0(a0)
sd ra,8(a0)
sd s0,16(a0)
sd s1,24(a0)
sd s2,32(a0)
sd s3,40(a0)
sd s4,48(a0)
sd s5,56(a0)
sd s6,64(a0)
sd s7,72(a0)
sd s8,80(a0)
sd s9,88(a0)
sd s10,96(a0)
sd s11,104(a0)
li a0,0
jr ra
.size _st_md_cxt_save, .-_st_md_cxt_save
/****************************************************************/
/* _st_md_cxt_restore(__jmp_buf env, int val) */
.globl _st_md_cxt_restore
.type _st_md_cxt_restore, %function
.align 2
_st_md_cxt_restore:
ld sp,0(a0)
ld ra,8(a0)
ld s0,16(a0)
ld s1,24(a0)
ld s2,32(a0)
ld s3,40(a0)
ld s4,48(a0)
ld s5,56(a0)
ld s6,64(a0)
ld s7,72(a0)
ld s8,80(a0)
ld s9,88(a0)
ld s10,96(a0)
ld s11,104(a0)
li a0,1
jr ra
.size _st_md_cxt_restore, .-_st_md_cxt_restore
然后就放到srs目录里面就可以编译SRS跑功能强大的流媒体直播服务器了,甚至支持WebRTC。
不过starfive提供的fedora在编译环境方面好像略有些别扭,不过也还勉强可以用:
[riscv@fedora-starfive helloworld]$ g++ -dM -E - null | grep riscv
#define __riscv 1
#define __riscv_atomic 1
#define __riscv_cmodel_medlow 1
#define __riscv_fdiv 1
#define __riscv_float_abi_double 1
#define __riscv_mul 1
#define __riscv_muldiv 1
#define __riscv_xlen 64
#define __riscv_fsqrt 1
#define __riscv_compressed 1
#define __riscv_flen 64
#define __riscv_div 1
[riscv@fedora-starfive helloworld]$
后来我是用__riscv来做环境分析的,然后不影响其他平台编译兼容了。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
RISC-V
+关注
关注
44文章
2230浏览量
46037 -
赛昉科技
+关注
关注
3文章
146浏览量
14261
发布评论请先 登录
相关推荐
预售启动!昉·星光 2 AI套件正式发布,基于RISC-V构建AI算力
10月24日,昉·星光2(VisionFive2)AI套件正式开启预售。该套件由中国RISC-V软硬件生态领导者赛昉科技携手边缘人工智能(A
Ubuntu现已适配RISC-V单板计算机Milk-V Mars
近期,Canonical宣布优化的Ubuntu24.04镜像已可用于RISC-V单板计算机Milk-VMars。Milk-VMars由深圳市群芯闪耀科技有限公司(Milk-V)设计并推
信用卡大小的 RISC-V 单板计算机介绍
信用卡大小的 RISC-V 单板计算机 —— Mars
Mars 由深圳市群芯闪耀科技有限公司(Milk-V)设计并推出,搭载赛昉科技
发表于 04-12 16:39
赛昉科技VisionFive 2生态进展双周报(2.1-2.29)
Image for VisionFive 2)
社区开发者发布4篇【昉·星光 2高性能RISC-V单板计算机体验】系列文章,内容包括:为Ubuntu安装Docker及常用软件;以容器
发表于 02-29 15:45
【昉·星光 2 高性能RISC-V单板计算机体验】以容器的方式安装 HomeAssistant
【昉·星光 2 高性能RISC-V单板计算机体验】以容器的方式安装 HomeAssistant
下载并启动容器
HomeAssisatant 官方并没有提供基于
发表于 02-21 18:07
【昉·星光 2 高性能RISC-V单板计算机体验】为 Ubuntu 安装 Docker 及常用软件
【昉·星光 2 高性能RISC-V单板计算机体验】为 Ubuntu 安装 Docker 及常用软件
目的
为了更好的利用星光2,决定使用容器
发表于 02-21 17:54
【昉·星光 2 高性能RISC-V单板计算机体验】VisionFive2开箱+安装Ubuntu
【昉·星光 2 高性能RISC-V单板计算机体验】VisionFive2开箱+安装Ubuntu
前言
很感谢赛
发表于 02-21 17:49
256核!赛昉发布全新RISC-V众核子系统IP平台
Coherency)和内存子系统。该RISC-V众核子系统IP平台可广泛应用于服务器、DPU、计算存储、网络通信、AI等领域。
StarLink-700 RISC-V众核子系统IP
发表于 11-29 13:37
评论