wiki/RISCV64/visionfive_2/index.html

1281 lines
36 KiB
HTML

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="description" content="SIG/AltArch Wiki and Documentation">
<meta name="author" content="Pratham Patel">
<link rel="canonical" href="https://sig-altarch.rocky.page/RISCV64/visionfive_2/">
<link rel="prev" href="../..">
<link rel="next" href="../../RPi/solutions/solutions/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.5.10">
<title>StarFive VisionFive 2 - SIG/AltArch Wiki</title>
<link rel="stylesheet" href="../../assets/stylesheets/main.7e359304.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce((e,_)=>(e<<5)-e+_.charCodeAt(0),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
</head>
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="teal" data-md-color-accent="teal">
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#the-visionfive-2-sbcs-wiki" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
</div>
<header class="md-header md-header--shadow" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="../.." title="SIG/AltArch Wiki" class="md-header__button md-logo" aria-label="SIG/AltArch Wiki" data-md-component="logo">
<img src="../../assets/icon-white.svg" alt="logo">
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2Z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
SIG/AltArch Wiki
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
StarFive VisionFive 2
</span>
</div>
</div>
</div>
<form class="md-header__option" data-md-component="palette">
<input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="teal" data-md-color-accent="teal" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_0">
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_1" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m17.75 4.09-2.53 1.94.91 3.06-2.63-1.81-2.63 1.81.91-3.06-2.53-1.94L12.44 4l1.06-3 1.06 3 3.19.09m3.5 6.91-1.64 1.25.59 1.98-1.7-1.17-1.7 1.17.59-1.98L15.75 11l2.06-.05L18.5 9l.69 1.95 2.06.05m-2.28 4.95c.83-.08 1.72 1.1 1.19 1.85-.32.45-.66.87-1.08 1.27C15.17 23 8.84 23 4.94 19.07c-3.91-3.9-3.91-10.24 0-14.14.4-.4.82-.76 1.27-1.08.75-.53 1.93.36 1.85 1.19-.27 2.86.69 5.83 2.89 8.02a9.96 9.96 0 0 0 8.02 2.89m-1.64 2.02a12.08 12.08 0 0 1-7.8-3.47c-2.17-2.19-3.33-5-3.49-7.82-2.81 3.14-2.7 7.96.31 10.98 3.02 3.01 7.84 3.12 10.98.31Z"/></svg>
</label>
<input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="teal" data-md-color-accent="teal" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_1">
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_0" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 7a5 5 0 0 1 5 5 5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5m0 2a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3m0-7 2.39 3.42C13.65 5.15 12.84 5 12 5c-.84 0-1.65.15-2.39.42L12 2M3.34 7l4.16-.35A7.2 7.2 0 0 0 5.94 8.5c-.44.74-.69 1.5-.83 2.29L3.34 7m.02 10 1.76-3.77a7.131 7.131 0 0 0 2.38 4.14L3.36 17M20.65 7l-1.77 3.79a7.023 7.023 0 0 0-2.38-4.15l4.15.36m-.01 10-4.14.36c.59-.51 1.12-1.14 1.54-1.86.42-.73.69-1.5.83-2.29L20.64 17M12 22l-2.41-3.44c.74.27 1.55.44 2.41.44.82 0 1.63-.17 2.37-.44L12 22Z"/></svg>
</label>
</form>
<script>var media,input,key,value,palette=__md_get("__palette");if(palette&&palette.color){"(prefers-color-scheme)"===palette.color.media&&(media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']"),palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent"));for([key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
</label>
<nav class="md-search__options" aria-label="Search">
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"/></svg>
</button>
</nav>
<div class="md-search__suggest" data-md-component="search-suggest"></div>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
Initializing search
</div>
<ol class="md-search-result__list" role="presentation"></ol>
</div>
</div>
</div>
</div>
</div>
<div class="md-header__source">
<a href="https://git.resf.org/sig_altarch/wiki" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
</div>
<div class="md-source__repository">
sig_altarch/wiki
</div>
</a>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary md-nav--integrated" aria-label="Navigation" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="../.." title="SIG/AltArch Wiki" class="md-nav__button md-logo" aria-label="SIG/AltArch Wiki" data-md-component="logo">
<img src="../../assets/icon-white.svg" alt="logo">
</a>
SIG/AltArch Wiki
</label>
<div class="md-nav__source">
<a href="https://git.resf.org/sig_altarch/wiki" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
</div>
<div class="md-source__repository">
sig_altarch/wiki
</div>
</a>
</div>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../.." class="md-nav__link">
<span class="md-ellipsis">
SIG/AltArch Wiki
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" checked>
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="">
<span class="md-ellipsis">
RISCV64
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_2">
<span class="md-nav__icon md-icon"></span>
RISCV64
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc">
<span class="md-ellipsis">
StarFive VisionFive 2
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
<span class="md-ellipsis">
StarFive VisionFive 2
</span>
</a>
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#technical-guide" class="md-nav__link">
<span class="md-ellipsis">
Technical guide
</span>
</a>
<nav class="md-nav" aria-label="Technical guide">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#hardware-specifications" class="md-nav__link">
<span class="md-ellipsis">
Hardware specifications
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#software-statusinformation" class="md-nav__link">
<span class="md-ellipsis">
Software status/information
</span>
</a>
<nav class="md-nav" aria-label="Software status/information">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#relevant-software-repositories" class="md-nav__link">
<span class="md-ellipsis">
Relevant software repositories:
</span>
</a>
<nav class="md-nav" aria-label="Relevant software repositories:">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#fully-upstreamed" class="md-nav__link">
<span class="md-ellipsis">
Fully upstreamed
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#downstream-forks-upstream-wip" class="md-nav__link">
<span class="md-ellipsis">
Downstream forks (upstream WIP)
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#installation" class="md-nav__link">
<span class="md-ellipsis">
Installation
</span>
</a>
<nav class="md-nav" aria-label="Installation">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#pre-requisite-update-board-firmware" class="md-nav__link">
<span class="md-ellipsis">
Pre-requisite: Update board firmware
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#current-things-that-are-wip" class="md-nav__link">
<span class="md-ellipsis">
Current things that are WIP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#maintainers" class="md-nav__link">
<span class="md-ellipsis">
Maintainers
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="">
<span class="md-ellipsis">
RPi
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
RPi
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_1" >
<label class="md-nav__link" for="__nav_3_1" id="__nav_3_1_label" tabindex="0">
<span class="md-ellipsis">
Solutions
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_1">
<span class="md-nav__icon md-icon"></span>
Solutions
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../RPi/solutions/solutions/" class="md-nav__link">
<span class="md-ellipsis">
Solutions
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="">
<span class="md-ellipsis">
Events
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Events
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_1" >
<label class="md-nav__link" for="__nav_4_1" id="__nav_4_1_label" tabindex="0">
<span class="md-ellipsis">
Meeting notes
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_1">
<span class="md-nav__icon md-icon"></span>
Meeting notes
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../events/meeting-notes/2023-10-20/" class="md-nav__link">
<span class="md-ellipsis">
SIG/AltArch meeting 2023-10-20
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../events/meeting-notes/2023-12-15/" class="md-nav__link">
<span class="md-ellipsis">
SIG/AltArch meeting 2023-12-15
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../events/meeting-notes/2024-01-12/" class="md-nav__link">
<span class="md-ellipsis">
SIG/AltArch meeting 2024-01-12
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../events/meeting-notes/2024-01-26/" class="md-nav__link">
<span class="md-ellipsis">
SIG/AltArch meeting 2024-01-26
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../events/meeting-notes/2024-02-09/" class="md-nav__link">
<span class="md-ellipsis">
SIG/AltArch meeting 2024-02-09
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../events/meeting-notes/2024-02-23/" class="md-nav__link">
<span class="md-ellipsis">
SIG/AltArch meeting 2024-02-23
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
<span class="md-ellipsis">
Support
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Support
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5_1" >
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
<span class="md-ellipsis">
Hardware
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_1">
<span class="md-nav__icon md-icon"></span>
Hardware
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../support/hardware/supported/" class="md-nav__link">
<span class="md-ellipsis">
Supported SBC Hardware
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<article class="md-content__inner md-typeset">
<a href="https://git.resf.org/sig_altarch/wiki/_edit/main/docs/RISCV64/visionfive_2.md" title="Edit this page" class="md-content__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 20H6V4h7v5h5v3.1l2-2V8l-6-6H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h4v-2m10.2-7c.1 0 .3.1.4.2l1.3 1.3c.2.2.2.6 0 .8l-1 1-2.1-2.1 1-1c.1-.1.2-.2.4-.2m0 3.9L14.1 23H12v-2.1l6.1-6.1 2.1 2.1Z"/></svg>
</a>
<h1 id="the-visionfive-2-sbcs-wiki">The VisionFive 2 SBC's Wiki<a class="headerlink" href="#the-visionfive-2-sbcs-wiki" title="Permanent link">&para;</a></h1>
<p>The VisionFive 2 SBC is the second generation of SBC in the VisionFive SBC lineup. This lineup of SBCs contains SoCs with the CPUs that use the RISC-V open computing ISA.</p>
<p>This Wiki contains the necessary information a user needs to know before using Rocky Linux on the VisionFive 2 SBC.</p>
<h2 id="technical-guide">Technical guide<a class="headerlink" href="#technical-guide" title="Permanent link">&para;</a></h2>
<h3 id="hardware-specifications">Hardware specifications<a class="headerlink" href="#hardware-specifications" title="Permanent link">&para;</a></h3>
<table>
<thead>
<tr>
<th>Item</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Processor/SoC</td>
<td>StarFive JH7110 (<code>rv64imafdcbx</code> with up-to 1.5GHz max freq)</td>
</tr>
<tr>
<td>Memory</td>
<td>LPDDR4: 2GB/4GB/8GB</td>
</tr>
<tr>
<td>Storage</td>
<td>SD card slot</td>
</tr>
<tr>
<td></td>
<td>SPI flash for u-boot</td>
</tr>
<tr>
<td>Video Output</td>
<td>HDMI 2.0</td>
</tr>
<tr>
<td></td>
<td>MIPI-DSI</td>
</tr>
<tr>
<td>Multimedia</td>
<td>Camera with MIPI CSI (up-to 2160p@30fps)</td>
</tr>
<tr>
<td></td>
<td>Decoding: H.264 &amp; H.265 at 2160p@60fps Encoding: H.264 &amp; H.265 at 1080p@30fps JPEG Encoder and Decoder</td>
</tr>
<tr>
<td></td>
<td>1/4-pole stereo audio</td>
</tr>
<tr>
<td>Connectivity</td>
<td>2x RJ45 Gigabit Ethernet (some models have 1x 100Mbit instead)</td>
</tr>
<tr>
<td></td>
<td>4x USB 3.0 (some models have 2x USB 2.0)</td>
</tr>
<tr>
<td></td>
<td>M.2 M-Key NVMe drive slot</td>
</tr>
<tr>
<td>Power in</td>
<td>USB-C port: Qualcomm Quick Charge 3.0 compatible</td>
</tr>
<tr>
<td></td>
<td>GPIO power in: 5V/3A</td>
</tr>
<tr>
<td></td>
<td>PoE ("pin compatible with RPi PoE HAT")</td>
</tr>
<tr>
<td>GPIO</td>
<td>40-pin GPIO header</td>
</tr>
<tr>
<td>Dimensions</td>
<td>100mm x 72mm</td>
</tr>
<tr>
<td>Button(s)</td>
<td>Hardware reset button</td>
</tr>
<tr>
<td>Other</td>
<td>Debug pin headers</td>
</tr>
</tbody>
</table>
<h3 id="software-statusinformation">Software status/information<a class="headerlink" href="#software-statusinformation" title="Permanent link">&para;</a></h3>
<p>At the time of writing this Wiki, the software support is still being upstreamed by the hardware vendor. More details about their upstreaming efforts and the merge status of each component can be viewed at <a href="https://rvspace.org/en/project/JH7110_Upstream_Plan">rvspace.org</a>.</p>
<h4 id="relevant-software-repositories">Relevant software repositories:<a class="headerlink" href="#relevant-software-repositories" title="Permanent link">&para;</a></h4>
<p>Following are the necessary arch/board specific software repositories. These are here for curious tinkerers and Rocky Linux maintainers. Suffice to say, as a normal user, you are <strong>not</strong> expected to touch/compile any of these items <img alt="😉" class="twemoji" src="https://cdn.jsdelivr.net/gh/jdecked/twemoji@15.0.3/assets/svg/1f609.svg" title=":wink:" /></p>
<h5 id="fully-upstreamed">Fully upstreamed<a class="headerlink" href="#fully-upstreamed" title="Permanent link">&para;</a></h5>
<ul>
<li><a href="https://github.com/riscv-software-src/opensbi">opensbi</a> (package name: <code>TBD</code>)</li>
</ul>
<h5 id="downstream-forks-upstream-wip">Downstream forks (upstream WIP)<a class="headerlink" href="#downstream-forks-upstream-wip" title="Permanent link">&para;</a></h5>
<ul>
<li>
<p><a href="https://github.com/starfive-tech/u-boot">u-boot</a> (package name: <code>TBD</code>)</p>
</li>
<li>
<p><a href="https://github.com/starfive-tech/linux/">linux</a> (package name: <code>TBD</code>)</p>
</li>
<li>
<p><a href="https://github.com/starfive-tech/soft_3rdpart/">third party software tools/drivers</a> (package name: <code>TBD</code>)</p>
</li>
</ul>
<h2 id="installation">Installation<a class="headerlink" href="#installation" title="Permanent link">&para;</a></h2>
<p>To install Rocky Linux on the VisionFive 2 SBC, there is one pre-requisite that needs to be satisfied. That is to update the board firmware to v2.11.5.</p>
<p><strong>Editor's note: StarFive (the hardware vendor) is almost done sending in mainlining patches for u-boot and we should be able to switch to upstream u-boot soon. Our u-boot package for the VisionFive 2 should automatically update the board firmware to whatever version we support. But the following section is present nonetheless, for the users who have an outdated firmware than what we (Rocky Linux) have a minimum spec bar for.</strong></p>
<h3 id="pre-requisite-update-board-firmware">Pre-requisite: Update board firmware<a class="headerlink" href="#pre-requisite-update-board-firmware" title="Permanent link">&para;</a></h3>
<p><strong>NOTE: PLEASE READ THESE STEPS AND CAREFULLY FOLLOW THEM. IF DONE INCORRECTLY, YOUR BOARD MAY GET BRICKED!</strong></p>
<ol>
<li>Download the following files:</li>
<li><a href="https://github.com/starfive-tech/VisionFive2/releases/download/VF2_v2.8.0/sdcard.img">sdcard.img</a> (this image is from release v2.8.0)</li>
<li><a href="https://github.com/starfive-tech/VisionFive2/releases/download/VF2_v2.11.5/u-boot-spl.bin.normal.out">u-boot-spl.bin.normal.out</a></li>
<li>
<p><a href="https://github.com/starfive-tech/VisionFive2/releases/download/VF2_v2.11.5/visionfive2_fw_payload.img">visionfive2_fw_payload.img</a></p>
</li>
<li>
<p><code>sudo dd if=sdcard.img conv=sync status=progress bs=1M of=/dev/sdX</code></p>
</li>
<li>
<p><code>mkdir temp-dir</code></p>
</li>
<li>
<p><code>sudo mount /dev/sdX4 temp-dir</code></p>
</li>
<li>
<p><code>sudo cp u-boot-spl.bin.normal.out visionfive2_fw_payload.img temp-dir/root/</code></p>
</li>
<li>
<p><code>sudo sync; sudo sync; sudo sync; sudo sync;</code></p>
</li>
<li>
<p><code>sudo umount temp-dir</code></p>
</li>
<li>
<p>Eject the SD card from your computer, insert it in your VisionFive 2 and power it up. <strong>The green LED should start blinking to indicate successful board power-up</strong>.</p>
</li>
<li>
<p>Plug the network cable in the <strong>Ethernet port that is next to the HDMI port</strong>. (The other port has DHCP-related issues with early firmware.)</p>
</li>
<li>
<p><code>ssh root@&lt;IP_ADDRESS&gt;</code> (passwd: <code>starfive</code>)</p>
</li>
<li>
<p>Run the command <code>cat /proc/mtd</code> and you should have the following output:
<div class="highlight"><pre><span></span><code>dev: size erasesize name
mtd0: 00020000 00001000 &quot;spl&quot;
mtd1: 00300000 00001000 &quot;uboot&quot;
mtd2: 00100000 00001000 &quot;data&quot;
</code></pre></div></p>
</li>
<li>
<p><strong>If and only if the partition information given above matches with yours</strong>, update the <code>spl</code> and <code>uboot</code> partitions using the following commands:
<div class="highlight"><pre><span></span><code>flashcp -v u-boot-spl.bin.normal.out /dev/mtd0
flashcp -v visionfive2_fw_payload.img /dev/mtd1
</code></pre></div></p>
</li>
</ol>
<p>The board firmware has now been updated!</p>
<h2 id="current-things-that-are-wip">Current things that are WIP<a class="headerlink" href="#current-things-that-are-wip" title="Permanent link">&para;</a></h2>
<p>A Rocky Linux image <img alt="😝" class="twemoji" src="https://cdn.jsdelivr.net/gh/jdecked/twemoji@15.0.3/assets/svg/1f61d.svg" title=":stuck_out_tongue_closed_eyes:" /></p>
<h2 id="maintainers">Maintainers<a class="headerlink" href="#maintainers" title="Permanent link">&para;</a></h2>
<p>There are several developers who are working on the RISC-V port of Rocky Linux in general, but following are all the maintainers who are supporting the VisionFive 2 SBC. These usernames are what they use on the <a href="https://chat.rockylinux.org/">Rocky Linux Mattermost chat</a>.</p>
<ul>
<li><a href="https://git.resf.org/codedude">@codedude</a></li>
<li><a href="https://git.resf.org/skip">@skip77</a></li>
<li><a href="https://git.resf.org/neil">@neil</a></li>
<li><a href="https://git.resf.org/pgreco">@pgreco</a></li>
<li><a href="https://git.resf.org/tgo">@tgo</a></li>
<li><a href="https://git.resf.org/mustafa">@mustafa</a></li>
<li><a href="https://git.resf.org/alangm">@alangm</a></li>
<li><a href="https://git.resf.org/sherif">@sherif</a></li>
<li><a href="https://git.resf.org/thefossguy">@thefossguy</a></li>
</ul>
<aside class="md-source-file">
<span class="md-source-file__fact">
<span class="md-icon" title="Last update">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21 13.1c-.1 0-.3.1-.4.2l-1 1 2.1 2.1 1-1c.2-.2.2-.6 0-.8l-1.3-1.3c-.1-.1-.2-.2-.4-.2m-1.9 1.8-6.1 6V23h2.1l6.1-6.1-2.1-2M12.5 7v5.2l4 2.4-1 1L11 13V7h1.5M11 21.9c-5.1-.5-9-4.8-9-9.9C2 6.5 6.5 2 12 2c5.3 0 9.6 4.1 10 9.3-.3-.1-.6-.2-1-.2s-.7.1-1 .2C19.6 7.2 16.2 4 12 4c-4.4 0-8 3.6-8 8 0 4.1 3.1 7.5 7.1 7.9l-.1.2v1.8Z"/></svg>
</span>
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">April 29, 2023</span>
</span>
</aside>
</article>
</div>
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
</div>
<button type="button" class="md-top md-icon" data-md-component="top" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12Z"/></svg>
Back to top
</button>
</main>
<footer class="md-footer">
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-copyright">
<div class="md-copyright__highlight">
Copyright &copy; 2023 Rocky Enterprise Software Foundation
</div>
Made with
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
Material for MkDocs
</a>
</div>
</div>
</div>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.expand", "navigation.indexes", "navigation.instant", "navigation.sections", "navigation.top", "navigation.tracking", "navigation.path", "search.highlight", "search.suggest", "toc.integrate", "content.action.edit"], "search": "../../assets/javascripts/workers/search.b8dbb3d2.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.8fd75fb4.min.js"></script>
</body>
</html>