本文來源電子發燒友社區,作者: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
+關注
關注
45文章
2292瀏覽量
46211 -
賽昉科技
+關注
關注
3文章
154瀏覽量
14305
發布評論請先 登錄
相關推薦
預售啟動!昉·星光 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
評論