You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by gi...@apache.org on 2024/06/18 00:27:59 UTC

(nuttx-website) branch asf-site updated: Publishing web: c0bb376dae649378f137872f2791869ca6c6876c docs: 50fadb93f2215b0321c87899ac63ba42c0467ad1

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/nuttx-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 9da8166ca Publishing web: c0bb376dae649378f137872f2791869ca6c6876c docs: 50fadb93f2215b0321c87899ac63ba42c0467ad1
9da8166ca is described below

commit 9da8166caf49442035edcd732000eb99f78a4c86
Author: chao an <an...@lixiang.com>
AuthorDate: Tue Jun 18 00:18:23 2024 +0000

    Publishing web: c0bb376dae649378f137872f2791869ca6c6876c docs: 50fadb93f2215b0321c87899ac63ba42c0467ad1
---
 content/docs/10.0.0/index.html                     |   2 +-
 content/docs/10.0.0/searchindex.js                 |   2 +-
 content/docs/10.0.1/index.html                     |   2 +-
 content/docs/10.0.1/searchindex.js                 |   2 +-
 content/docs/10.1.0/index.html                     |   2 +-
 content/docs/10.1.0/searchindex.js                 |   2 +-
 content/docs/10.2.0/index.html                     |   2 +-
 content/docs/10.2.0/searchindex.js                 |   2 +-
 content/docs/10.3.0/index.html                     |   2 +-
 content/docs/10.3.0/searchindex.js                 |   2 +-
 content/docs/11.0.0/index.html                     |   2 +-
 content/docs/11.0.0/searchindex.js                 |   2 +-
 content/docs/12.0.0/index.html                     |   2 +-
 content/docs/12.0.0/searchindex.js                 |   2 +-
 content/docs/12.1.0/index.html                     |   2 +-
 content/docs/12.1.0/searchindex.js                 |   2 +-
 content/docs/12.2.0/index.html                     |   2 +-
 content/docs/12.2.0/searchindex.js                 |   2 +-
 content/docs/12.2.1/index.html                     |   2 +-
 content/docs/12.2.1/searchindex.js                 |   2 +-
 content/docs/12.3.0/index.html                     |   2 +-
 content/docs/12.3.0/searchindex.js                 |   2 +-
 content/docs/12.4.0/index.html                     |   2 +-
 content/docs/12.4.0/searchindex.js                 |   2 +-
 content/docs/12.5.0/index.html                     |   2 +-
 content/docs/12.5.0/searchindex.js                 |   2 +-
 content/docs/12.5.1/index.html                     |   2 +-
 content/docs/12.5.1/searchindex.js                 |   2 +-
 .../risc-v/sg2000/boards/milkv_duos/index.rst.txt  | 183 +++++++++++++++++++++
 .../_sources/platforms/risc-v/sg2000/index.rst.txt |  36 ++++
 content/docs/latest/index.html                     |   2 +-
 content/docs/latest/objects.inv                    | Bin 116225 -> 116381 bytes
 content/docs/latest/platforms/index.html           |   4 +
 .../risc-v/bl602/boards/bl602evb/index.html        |   1 +
 .../docs/latest/platforms/risc-v/bl602/index.html  |   1 +
 .../platforms/risc-v/bl808/boards/ox64/index.html  |   1 +
 .../docs/latest/platforms/risc-v/bl808/index.html  |   1 +
 .../risc-v/c906/boards/smartl-c906/index.html      |   1 +
 .../docs/latest/platforms/risc-v/c906/index.html   |   1 +
 .../boards/esp32c3-devkit-rust-1/index.html        |   1 +
 .../boards/esp32c3-devkit/index.html               |   1 +
 .../platforms/risc-v/esp32c3-legacy/index.html     |   1 +
 .../esp32c3/boards/esp32c3-generic/index.html      |   1 +
 .../latest/platforms/risc-v/esp32c3/index.html     |   1 +
 .../esp32c6/boards/esp32c6-devkitc/index.html      |   1 +
 .../esp32c6/boards/esp32c6-devkitm/index.html      |   1 +
 .../latest/platforms/risc-v/esp32c6/index.html     |   1 +
 .../esp32h2/boards/esp32h2-devkit/index.html       |   1 +
 .../latest/platforms/risc-v/esp32h2/index.html     |   1 +
 .../risc-v/fe310/boards/hifive1-revb/index.html    |   1 +
 .../docs/latest/platforms/risc-v/fe310/index.html  |   1 +
 .../risc-v/hpm6750/boards/hpm6750evk2/index.html   |   1 +
 .../latest/platforms/risc-v/hpm6750/index.html     |   1 +
 content/docs/latest/platforms/risc-v/index.html    |   2 +
 .../risc-v/jh7110/boards/star64/index.html         |   1 +
 .../docs/latest/platforms/risc-v/jh7110/index.html |   1 +
 .../risc-v/k210/boards/maix-bit/index.html         |   1 +
 .../docs/latest/platforms/risc-v/k210/index.html   |   1 +
 .../risc-v/k230/boards/canmv230/index.html         |   1 +
 .../docs/latest/platforms/risc-v/k230/index.html   |   1 +
 .../risc-v/litex/boards/arty_a7/index.html         |   1 +
 .../risc-v/litex/cores/vexriscv/index.html         |   1 +
 .../risc-v/litex/cores/vexriscv_smp/index.html     |   1 +
 .../docs/latest/platforms/risc-v/litex/index.html  |   1 +
 .../platforms/risc-v/mpfs/boards/icicle/index.html |   1 +
 .../docs/latest/platforms/risc-v/mpfs/index.html   |   1 +
 .../risc-v/qemu-rv/boards/rv-virt/index.html       |   1 +
 .../latest/platforms/risc-v/qemu-rv/index.html     |   1 +
 .../risc-v/rv32m1/boards/rv32m1-vega/index.html    |   5 +-
 .../docs/latest/platforms/risc-v/rv32m1/index.html |   1 +
 .../ox64 => sg2000/boards/milkv_duos}/index.html   | 165 +++++++++++--------
 .../platforms/risc-v/{rv32m1 => sg2000}/index.html |  61 +++++--
 content/docs/latest/platforms/sim/index.html       |   4 +-
 content/docs/latest/searchindex.js                 |   2 +-
 content/feed.xml                                   |   4 +-
 75 files changed, 443 insertions(+), 116 deletions(-)

diff --git a/content/docs/10.0.0/index.html b/content/docs/10.0.0/index.html
index 0da32793e..332ff0f51 100644
--- a/content/docs/10.0.0/index.html
+++ b/content/docs/10.0.0/index.html
@@ -131,7 +131,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 32-bit microcontroller environments, the primary governing standards in NuttX are Posix and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:11</p>
+<p>Last Updated: 18 June 24 at 00:10</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.0.0/searchindex.js b/content/docs/10.0.0/searchindex.js
index b8caeb37c..87d09f81c 100644
--- a/content/docs/10.0.0/searchindex.js
+++ b/content/docs/10.0.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "boards/index", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/index", "components/drivers/character/keypad", "components/drivers/character/pwm", "components/drivers/character/quadrature", "components/drivers/character/rtc", "components/drivers/character/serial", "components/drivers/character/timer", "components/drivers/chara [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "boards/index", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/index", "components/drivers/character/keypad", "components/drivers/character/pwm", "components/drivers/character/quadrature", "components/drivers/character/rtc", "components/drivers/character/serial", "components/drivers/character/timer", "components/drivers/chara [...]
\ No newline at end of file
diff --git a/content/docs/10.0.1/index.html b/content/docs/10.0.1/index.html
index b376f2d0e..0cf54544e 100644
--- a/content/docs/10.0.1/index.html
+++ b/content/docs/10.0.1/index.html
@@ -159,7 +159,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 32-bit microcontroller environments, the primary governing standards in NuttX are Posix and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:11</p>
+<p>Last Updated: 18 June 24 at 00:10</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.0.1/searchindex.js b/content/docs/10.0.1/searchindex.js
index a83cb0d69..1fd245260 100644
--- a/content/docs/10.0.1/searchindex.js
+++ b/content/docs/10.0.1/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "boards/index", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/index", "components/drivers/character/keypad", "components/drivers/character/pwm", "components/drivers/character/quadrature", "components/drivers/character/rtc", "components/drivers/character/serial", "components/drivers/character/timer", "components/drivers/chara [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "boards/index", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/index", "components/drivers/character/keypad", "components/drivers/character/pwm", "components/drivers/character/quadrature", "components/drivers/character/rtc", "components/drivers/character/serial", "components/drivers/character/timer", "components/drivers/chara [...]
\ No newline at end of file
diff --git a/content/docs/10.1.0/index.html b/content/docs/10.1.0/index.html
index 34007b4a0..5328c7153 100644
--- a/content/docs/10.1.0/index.html
+++ b/content/docs/10.1.0/index.html
@@ -158,7 +158,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:11</p>
+<p>Last Updated: 18 June 24 at 00:11</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.1.0/searchindex.js b/content/docs/10.1.0/searchindex.js
index 9754f5964..b93bcc327 100644
--- a/content/docs/10.1.0/searchindex.js
+++ b/content/docs/10.1.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
diff --git a/content/docs/10.2.0/index.html b/content/docs/10.2.0/index.html
index 3ff5d71bf..ad7240b61 100644
--- a/content/docs/10.2.0/index.html
+++ b/content/docs/10.2.0/index.html
@@ -159,7 +159,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:11</p>
+<p>Last Updated: 18 June 24 at 00:11</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.2.0/searchindex.js b/content/docs/10.2.0/searchindex.js
index efb4b9107..10067bb5f 100644
--- a/content/docs/10.2.0/searchindex.js
+++ b/content/docs/10.2.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
diff --git a/content/docs/10.3.0/index.html b/content/docs/10.3.0/index.html
index 3ff5d71bf..ad7240b61 100644
--- a/content/docs/10.3.0/index.html
+++ b/content/docs/10.3.0/index.html
@@ -159,7 +159,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:11</p>
+<p>Last Updated: 18 June 24 at 00:11</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/10.3.0/searchindex.js b/content/docs/10.3.0/searchindex.js
index 1d84b44f5..bc70bf4a8 100644
--- a/content/docs/10.3.0/searchindex.js
+++ b/content/docs/10.3.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
diff --git a/content/docs/11.0.0/index.html b/content/docs/11.0.0/index.html
index 1ce3d37a4..ad7240b61 100644
--- a/content/docs/11.0.0/index.html
+++ b/content/docs/11.0.0/index.html
@@ -159,7 +159,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:12</p>
+<p>Last Updated: 18 June 24 at 00:11</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/11.0.0/searchindex.js b/content/docs/11.0.0/searchindex.js
index 35da50941..28f2c2d25 100644
--- a/content/docs/11.0.0/searchindex.js
+++ b/content/docs/11.0.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
diff --git a/content/docs/12.0.0/index.html b/content/docs/12.0.0/index.html
index 7b6a28815..4d420af9b 100644
--- a/content/docs/12.0.0/index.html
+++ b/content/docs/12.0.0/index.html
@@ -159,7 +159,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:12</p>
+<p>Last Updated: 18 June 24 at 00:11</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.0.0/searchindex.js b/content/docs/12.0.0/searchindex.js
index 4bd93a0ad..811a75bc6 100644
--- a/content/docs/12.0.0/searchindex.js
+++ b/content/docs/12.0.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
diff --git a/content/docs/12.1.0/index.html b/content/docs/12.1.0/index.html
index 80adb5605..b1a222e0b 100644
--- a/content/docs/12.1.0/index.html
+++ b/content/docs/12.1.0/index.html
@@ -159,7 +159,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:12</p>
+<p>Last Updated: 18 June 24 at 00:12</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.1.0/searchindex.js b/content/docs/12.1.0/searchindex.js
index fd7977079..489722350 100644
--- a/content/docs/12.1.0/searchindex.js
+++ b/content/docs/12.1.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "components/binfmt", "components/drivers/block/index", "components/drivers/character/analog", "components/drivers/character/can", "components/drivers/character/foc", "components/drivers/character/index", "components [...]
\ No newline at end of file
diff --git a/content/docs/12.2.0/index.html b/content/docs/12.2.0/index.html
index 34111cb21..a832f8486 100644
--- a/content/docs/12.2.0/index.html
+++ b/content/docs/12.2.0/index.html
@@ -162,7 +162,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:12</p>
+<p>Last Updated: 18 June 24 at 00:12</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.2.0/searchindex.js b/content/docs/12.2.0/searchindex.js
index a0823d1dc..679eb8140 100644
--- a/content/docs/12.2.0/searchindex.js
+++ b/content/docs/12.2.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", "applications/nxdiag/index", "applications/wapi/commands", "applications/wapi/index", "applications/wapi/wireless", "components/binfmt", "components/drivers/block/index", "components/dr [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", "applications/nxdiag/index", "applications/wapi/commands", "applications/wapi/index", "applications/wapi/wireless", "components/binfmt", "components/drivers/block/index", "components/dr [...]
\ No newline at end of file
diff --git a/content/docs/12.2.1/index.html b/content/docs/12.2.1/index.html
index 34111cb21..a832f8486 100644
--- a/content/docs/12.2.1/index.html
+++ b/content/docs/12.2.1/index.html
@@ -162,7 +162,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:12</p>
+<p>Last Updated: 18 June 24 at 00:12</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.2.1/searchindex.js b/content/docs/12.2.1/searchindex.js
index b14847c8e..29cf48c6f 100644
--- a/content/docs/12.2.1/searchindex.js
+++ b/content/docs/12.2.1/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", "applications/nxdiag/index", "applications/wapi/commands", "applications/wapi/index", "applications/wapi/wireless", "components/binfmt", "components/drivers/block/index", "components/dr [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", "applications/nxdiag/index", "applications/wapi/commands", "applications/wapi/index", "applications/wapi/wireless", "components/binfmt", "components/drivers/block/index", "components/dr [...]
\ No newline at end of file
diff --git a/content/docs/12.3.0/index.html b/content/docs/12.3.0/index.html
index 1157302fe..3fb190c85 100644
--- a/content/docs/12.3.0/index.html
+++ b/content/docs/12.3.0/index.html
@@ -162,7 +162,7 @@ by following these <a class="reference internal" href="contributing/documentatio
 <section id="nuttx-documentation">
 <h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation" title="Permalink to this heading"></a></h1>
 <p>NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:13</p>
+<p>Last Updated: 18 June 24 at 00:12</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.3.0/searchindex.js b/content/docs/12.3.0/searchindex.js
index bda464447..581547876 100644
--- a/content/docs/12.3.0/searchindex.js
+++ b/content/docs/12.3.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", "applications/nxdiag/index", "applications/wapi/commands", "applications/wapi/index", "applications/wapi/wireless", "components/binfmt", "components/drivers/block/index", "components/dr [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/index", "applications/nsh/builtin", "applications/nsh/commands", "applications/nsh/config", "applications/nsh/customizing", "applications/nsh/index", "applications/nsh/installation", "applications/nsh/login", "applications/nsh/nsh", "applications/nxdiag/config", "applications/nxdiag/index", "applications/wapi/commands", "applications/wapi/index", "applications/wapi/wireless", "components/binfmt", "components/drivers/block/index", "components/dr [...]
\ No newline at end of file
diff --git a/content/docs/12.4.0/index.html b/content/docs/12.4.0/index.html
index b404324f1..5b1bb776c 100644
--- a/content/docs/12.4.0/index.html
+++ b/content/docs/12.4.0/index.html
@@ -169,7 +169,7 @@ standards. Additional standard APIs from Unix and other common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments (such
 as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:13</p>
+<p>Last Updated: 18 June 24 at 00:13</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.4.0/searchindex.js b/content/docs/12.4.0/searchindex.js
index d9ed153c5..dc41c4fdd 100644
--- a/content/docs/12.4.0/searchindex.js
+++ b/content/docs/12.4.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", "applications/audioutils/index", "applications/audioutils/mml_parser/index", "applications/audioutils/nxaudio/index", "applications/benchmarks/coremark/index", "applications/benchmarks/index", "applications/boot/index", "applications/boot/mcuboot/index", "applications/boot/miniboot/index", "applications/canutils/candump/index", "applications/canutils/canlib/index", "applications/canutils/cansend/index", "applications/c [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", "applications/audioutils/index", "applications/audioutils/mml_parser/index", "applications/audioutils/nxaudio/index", "applications/benchmarks/coremark/index", "applications/benchmarks/index", "applications/boot/index", "applications/boot/mcuboot/index", "applications/boot/miniboot/index", "applications/canutils/candump/index", "applications/canutils/canlib/index", "applications/canutils/cansend/index", "applications/c [...]
\ No newline at end of file
diff --git a/content/docs/12.5.0/index.html b/content/docs/12.5.0/index.html
index 93de75a2c..04810f345 100644
--- a/content/docs/12.5.0/index.html
+++ b/content/docs/12.5.0/index.html
@@ -169,7 +169,7 @@ standards. Additional standard APIs from Unix and other common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments (such
 as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:14</p>
+<p>Last Updated: 18 June 24 at 00:14</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.5.0/searchindex.js b/content/docs/12.5.0/searchindex.js
index 419672bc2..2a72cbdef 100644
--- a/content/docs/12.5.0/searchindex.js
+++ b/content/docs/12.5.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", "applications/audioutils/index", "applications/audioutils/mml_parser/index", "applications/audioutils/nxaudio/index", "applications/benchmarks/coremark/index", "applications/benchmarks/index", "applications/boot/index", "applications/boot/mcuboot/index", "applications/boot/miniboot/index", "applications/canutils/candump/index", "applications/canutils/canlib/index", "applications/canutils/cansend/index", "applications/c [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", "applications/audioutils/index", "applications/audioutils/mml_parser/index", "applications/audioutils/nxaudio/index", "applications/benchmarks/coremark/index", "applications/benchmarks/index", "applications/boot/index", "applications/boot/mcuboot/index", "applications/boot/miniboot/index", "applications/canutils/candump/index", "applications/canutils/canlib/index", "applications/canutils/cansend/index", "applications/c [...]
\ No newline at end of file
diff --git a/content/docs/12.5.1/index.html b/content/docs/12.5.1/index.html
index 1bfd38e77..40f3baa8d 100644
--- a/content/docs/12.5.1/index.html
+++ b/content/docs/12.5.1/index.html
@@ -169,7 +169,7 @@ standards. Additional standard APIs from Unix and other common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments (such
 as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:15</p>
+<p>Last Updated: 18 June 24 at 00:15</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/12.5.1/searchindex.js b/content/docs/12.5.1/searchindex.js
index 31c97dfb3..7db7957ab 100644
--- a/content/docs/12.5.1/searchindex.js
+++ b/content/docs/12.5.1/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", "applications/audioutils/index", "applications/audioutils/mml_parser/index", "applications/audioutils/nxaudio/index", "applications/benchmarks/coremark/index", "applications/benchmarks/index", "applications/boot/index", "applications/boot/mcuboot/index", "applications/boot/miniboot/index", "applications/canutils/candump/index", "applications/canutils/canlib/index", "applications/canutils/cansend/index", "applications/c [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", "applications/audioutils/index", "applications/audioutils/mml_parser/index", "applications/audioutils/nxaudio/index", "applications/benchmarks/coremark/index", "applications/benchmarks/index", "applications/boot/index", "applications/boot/mcuboot/index", "applications/boot/miniboot/index", "applications/canutils/candump/index", "applications/canutils/canlib/index", "applications/canutils/cansend/index", "applications/c [...]
\ No newline at end of file
diff --git a/content/docs/latest/_sources/platforms/risc-v/sg2000/boards/milkv_duos/index.rst.txt b/content/docs/latest/_sources/platforms/risc-v/sg2000/boards/milkv_duos/index.rst.txt
new file mode 100644
index 000000000..aa25aba48
--- /dev/null
+++ b/content/docs/latest/_sources/platforms/risc-v/sg2000/boards/milkv_duos/index.rst.txt
@@ -0,0 +1,183 @@
+============
+Milk-V Duo S
+============
+
+`Milk-V Duo S <https://milkv.io/duo-s>`_ is a RISC-V Single-Board Computer
+based on the SOPHGO SG2000 RISC-V SoC with T-Head C906 64-bit Main Processor,
+512 MB of SIP DRAM memory and 100 Mbps Ethernet.
+
+Features
+========
+
+- **System on Chip:** SOPHGO SG2000
+    - **CPU:** 
+        - 64-bit T-Head C906 1.0 GHz (Main Processor)
+        - 64-bit T-Head C906 700 MHz (Co-Processor)
+        - 64-bit Arm Cortex-A53 1.0 GHz (Alternate Main Processor)
+
+- **MCU:** 8051 with 6 KB SRAM
+- **Memory:** SIP DRAM 512 MB
+- **TPU:** 0.5 TOPS INT8
+- **Storage:** 1 x microSD Connector, 1 x eMMC Pad
+- **USB:** 1 x Type-C for Power and Data or 1 x USB 2.0 A Port Host
+- **MIPI CSI:** 1 x 16P FPC Connector (MIPI CSI 2-Lane), 1 x 15P FPC Connector (MIPI CSI 2-Lane)	
+- **Sensor Support:** 5M @ 30 FPS
+- **MIPI DSI:** Via GPIO Header (MIPI DSI 4-Lane)	
+- **Ethernet:** 100 Mbps Ethernet Port (RJ45)
+- **Wireless:** Optional Wi-Fi 6 / Bluetooth 5
+- **Audio:** Via GPIO Pin	
+- **GPIO:** Up to 39 x GPIO Pin (via 2 x 26-Pin GPIO Header)
+- **Others:** 1 x Boot Switch, 1 x Recovery Key, 1 x Reset Key
+
+Serial Console
+==============
+
+A **USB Serial Adapter** is required to run NuttX on Milk-V Duo S,
+**CP2102** is recommended. CH340 might not work correctly with Duo S.
+
+Connect the USB Serial Adapter to Duo S Serial Console at:
+
+========== ================
+USB Serial Milk-V Duo S Pin
+========== ================
+GND        Pin 6 (GND)
+RX         Pin 8 (XGPIOA 16 / UART0 TX)
+TX         Pin 10 (XGPIOA 17 / UART0 RX)
+========== ================
+
+On the USB Serial Adapter, set the **Voltage Level** to 3V3.
+
+Connect Duo S to our computer with the USB Serial Adapter.
+On our computer, start a Serial Terminal and connect to the USB Serial Port
+at **115.2 kbps**:
+
+.. code:: console
+
+   $ screen /dev/ttyUSB0 115200
+
+NuttX will appear in the Serial Console when it boots on Duo S.
+
+RISC-V Toolchain
+================
+
+Before building NuttX for Milk-V Duo S, download the toolchain for
+`xPack GNU RISC-V Embedded GCC (riscv-none-elf) <https://github.com/xpack-dev-tools/riscv-none-elf-gcc-xpack/releases>`_.
+
+Add the downloaded toolchain ``xpack-riscv-none-elf-gcc-.../bin``
+to the ``PATH`` Environment Variable.
+
+Check the RISC-V Toolchain:
+
+.. code:: console
+
+   $ riscv-none-elf-gcc -v
+
+Building
+========
+
+To build NuttX for Milk-V Duo S, :doc:`install the prerequisites </quickstart/install>` and
+:doc:`clone the git repositories </quickstart/install>` for ``nuttx`` and ``apps``.
+
+Configure the NuttX project and build the project:
+
+.. code:: console
+
+   $ cd nuttx
+   $ tools/configure.sh milkv_duos:nsh
+   $ make
+
+This produces the NuttX Kernel ``nuttx.bin``.  Next, build the NuttX Apps Filesystem:
+
+.. code:: console
+
+   $ make export
+   $ pushd ../apps
+   $ tools/mkimport.sh -z -x ../nuttx/nuttx-export-*.tar.gz
+   $ make import
+   $ popd
+   $ genromfs -f initrd -d ../apps/bin -V "NuttXBootVol"
+
+This generates the Initial RAM Disk ``initrd``.
+
+Package the NuttX Kernel and Initial RAM Disk into a NuttX Image:
+
+.. code:: console
+
+   $ head -c 65536 /dev/zero >/tmp/nuttx.pad
+   $ cat nuttx.bin /tmp/nuttx.pad initrd >Image-sg2000
+
+The NuttX Image ``Image-sg2000`` will be copied to the TFTP Server in the next step.
+
+Booting
+=======
+
+NuttX requires a microSD Card with U-Boot Bootloader. Prepare a
+`Linux microSD Card <https://lupyuen.github.io/articles/sg2000#download-the-linux-microsd>`_
+for Duo S.
+
+To boot NuttX on Milk-V Duo S, flip the `Main Processor Switch <https://lupyuen.github.io/articles/sg2000#boot-without-microsd>`_
+to **RV** (RISC-V).
+On our computer, `install the TFTP Server <https://lupyuen.github.io/articles/sg2000#boot-nuttx-over-tftp>`_.
+
+Copy the file ``Image-sg2000`` from the previous section to the TFTP Server,
+together with the Device Tree:
+
+.. code:: console
+
+   $ wget https://github.com/lupyuen2/wip-nuttx/releases/download/sg2000-1/cv181x_milkv_duos_sd.dtb
+   $ scp Image-sg2000 \
+      tftpserver:/tftpfolder/Image-sg2000
+   $ scp cv181x_milkv_duos_sd.dtb \
+      tftpserver:/tftpfolder/cv181x_milkv_duos_sd.dtb
+
+Check that Duo S is connected to our computer via a USB Serial Adapter at 115.2 kbps:
+
+.. code:: console
+
+   $ screen /dev/ttyUSB0 115200
+
+Insert the microSD Card into Duo S, connect the Ethernet Port and power up via the USB-C Port.
+
+When Duo S boots, press Enter to see the U-Boot Prompt.
+Run these commands to `boot NuttX over TFTP <https://lupyuen.github.io/articles/sg2000#boot-nuttx-over-tftp>`_:
+
+.. code:: console
+
+   # Change to your TFTP Server
+   $ setenv tftp_server 192.168.x.x
+   $ saveenv
+   $ dhcp ${kernel_addr_r} ${tftp_server}:Image-sg2000
+   $ tftpboot ${fdt_addr_r} ${tftp_server}:cv181x_milkv_duos_sd.dtb
+   $ fdt addr ${fdt_addr_r}
+   $ booti ${kernel_addr_r} - ${fdt_addr_r}
+
+Or configure U-Boot to `boot NuttX automatically <https://lupyuen.github.io/articles/sg2000#boot-nuttx-over-tftp>`_.
+
+NuttX boots on Duo S and NuttShell (nsh) appears in the Serial Console.
+To see the available commands in NuttShell:
+
+.. code:: console
+
+   $ help
+
+Configurations
+==============
+
+nsh
+---
+
+Basic configuration that runs NuttShell (nsh).
+This configuration is focused on low level, command-line driver testing.
+Built-in applications are supported, but none are enabled.
+Serial Console is enabled on UART0 at 115.2 kbps.
+
+Peripheral Support
+==================
+
+NuttX for Milk-V Duo S supports these peripherals:
+
+======================== ======= =====
+Peripheral               Support NOTES
+======================== ======= =====
+UART                     Yes
+======================== ======= =====
diff --git a/content/docs/latest/_sources/platforms/risc-v/sg2000/index.rst.txt b/content/docs/latest/_sources/platforms/risc-v/sg2000/index.rst.txt
new file mode 100644
index 000000000..14bee1404
--- /dev/null
+++ b/content/docs/latest/_sources/platforms/risc-v/sg2000/index.rst.txt
@@ -0,0 +1,36 @@
+=============
+SOPHGO SG2000
+=============
+
+`SOPHGO SG2000 <https://milkv.io/chips/sg2000>`_ is a 64-bit RISC-V SoC with 2 RISC-V Cores and 1 Arm Core:
+
+- **Main Processor:** T-Head C906 1.0 GHz 64-bit RISC-V Core
+    - 32 KB I-Cache, 64KB D-Cache
+    - Integrated Vector and Floating-Point Operation Unit (FPU)
+
+- **Co-Processor:** T-Head C906 700 MHz 64-bit RISC-V Core
+    - Integrated Floating-Point Unit (FPU)
+
+- **Alternate Main Processor:** Cortex-A53 1.0 GHz 64-bit Arm Core
+    - 32 KB I-Cache, 32 KB D-Cache
+    - 128 KB L2 Cache
+    - Support Neon and Floating-Point Operation Unit (FPU)
+
+- **MCU:** 8051 with 6 KB SRAM
+- **TPU:** 0.5 TOPS INT8
+- **Memory:** SIP DRAM 512 MB
+- **Video Module:** ISP 5M @ 30 FPS, 2L MIPI DSI 5M @ 30 FPS, 4L or 2L+2L MIPI CSI 5M @ 30 FPS, H.265 / H.264 Decoding and Encoding 5M @ 30 FPS
+- **Audio Module:** 16-bit Audio Codec, 2 x I2S / PCM, 1 x DMIC
+- **Storage:** SPI-NOR, SPI-NAND, eMMC 5.0, 2 x SDIO 3.0
+- **Network:** 10M / 100M MAC PHY
+- **Security Module:** Crypto, Secure Boot, TRNG, Efuse
+- **Peripherals:** 1 x USB 2.0 DRD, 5 x UART, 4 x SPI, 16 x PWM, 1 x IR, 6 x I2C, 6 x ADC, GPIOs
+
+Supported Boards
+================
+
+.. toctree::
+   :glob:
+   :maxdepth: 1
+
+   boards/*/*
diff --git a/content/docs/latest/index.html b/content/docs/latest/index.html
index 1ab5ad4ca..def780acb 100644
--- a/content/docs/latest/index.html
+++ b/content/docs/latest/index.html
@@ -170,7 +170,7 @@ standards. Additional standard APIs from Unix and other common RTOS’s (such as
 VxWorks) are adopted for functionality not available under these standards, or
 for functionality that is not appropriate for deeply-embedded environments (such
 as fork()).</p>
-<p>Last Updated: 17 June 24 at 00:17</p>
+<p>Last Updated: 18 June 24 at 00:16</p>
 <div class="toctree-wrapper compound">
 <p class="caption" role="heading"><span class="caption-text">Table of Contents</span></p>
 <ul class="current">
diff --git a/content/docs/latest/objects.inv b/content/docs/latest/objects.inv
index 8aee0d8b4..ff475d542 100644
Binary files a/content/docs/latest/objects.inv and b/content/docs/latest/objects.inv differ
diff --git a/content/docs/latest/platforms/index.html b/content/docs/latest/platforms/index.html
index 20b583caa..ca3dee540 100644
--- a/content/docs/latest/platforms/index.html
+++ b/content/docs/latest/platforms/index.html
@@ -739,6 +739,10 @@ series and boards supported in NuttX:</p>
 <li class="toctree-l3"><a class="reference internal" href="risc-v/rv32m1/boards/rv32m1-vega/index.html">rv32m1-vega</a></li>
 </ul>
 </li>
+<li class="toctree-l2"><a class="reference internal" href="risc-v/sg2000/index.html">SOPHGO SG2000</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="risc-v/sg2000/boards/milkv_duos/index.html">Milk-V Duo S</a></li>
+</ul>
+</li>
 </ul>
 </li>
 <li class="toctree-l1"><a class="reference internal" href="sim/index.html">Simulators</a><ul>
diff --git a/content/docs/latest/platforms/risc-v/bl602/boards/bl602evb/index.html b/content/docs/latest/platforms/risc-v/bl602/boards/bl602evb/index.html
index 7220c4ded..4a7dddb70 100644
--- a/content/docs/latest/platforms/risc-v/bl602/boards/bl602evb/index.html
+++ b/content/docs/latest/platforms/risc-v/bl602/boards/bl602evb/index.html
@@ -154,6 +154,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/bl602/index.html b/content/docs/latest/platforms/risc-v/bl602/index.html
index e2d8b8ed6..37df36152 100644
--- a/content/docs/latest/platforms/risc-v/bl602/index.html
+++ b/content/docs/latest/platforms/risc-v/bl602/index.html
@@ -161,6 +161,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/bl808/boards/ox64/index.html b/content/docs/latest/platforms/risc-v/bl808/boards/ox64/index.html
index 0f8c98ecb..39ded7be0 100644
--- a/content/docs/latest/platforms/risc-v/bl808/boards/ox64/index.html
+++ b/content/docs/latest/platforms/risc-v/bl808/boards/ox64/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/bl808/index.html b/content/docs/latest/platforms/risc-v/bl808/index.html
index 5b403111a..b91fd9fda 100644
--- a/content/docs/latest/platforms/risc-v/bl808/index.html
+++ b/content/docs/latest/platforms/risc-v/bl808/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/c906/boards/smartl-c906/index.html b/content/docs/latest/platforms/risc-v/c906/boards/smartl-c906/index.html
index 18f359737..aaeed8a58 100644
--- a/content/docs/latest/platforms/risc-v/c906/boards/smartl-c906/index.html
+++ b/content/docs/latest/platforms/risc-v/c906/boards/smartl-c906/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/c906/index.html b/content/docs/latest/platforms/risc-v/c906/index.html
index bbc8e2a3d..28542183b 100644
--- a/content/docs/latest/platforms/risc-v/c906/index.html
+++ b/content/docs/latest/platforms/risc-v/c906/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit-rust-1/index.html b/content/docs/latest/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit-rust-1/index.html
index b410123aa..d38b318c3 100644
--- a/content/docs/latest/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit-rust-1/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit-rust-1/index.html
@@ -156,6 +156,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit/index.html b/content/docs/latest/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit/index.html
index 149d21b84..c59908ff7 100644
--- a/content/docs/latest/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32c3-legacy/boards/esp32c3-devkit/index.html
@@ -156,6 +156,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32c3-legacy/index.html b/content/docs/latest/platforms/risc-v/esp32c3-legacy/index.html
index 69a367b15..45debbd84 100644
--- a/content/docs/latest/platforms/risc-v/esp32c3-legacy/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32c3-legacy/index.html
@@ -165,6 +165,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32c3/boards/esp32c3-generic/index.html b/content/docs/latest/platforms/risc-v/esp32c3/boards/esp32c3-generic/index.html
index 8090d3374..d7cf779d9 100644
--- a/content/docs/latest/platforms/risc-v/esp32c3/boards/esp32c3-generic/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32c3/boards/esp32c3-generic/index.html
@@ -155,6 +155,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32c3/index.html b/content/docs/latest/platforms/risc-v/esp32c3/index.html
index 6bbe6fbd0..34b9eab93 100644
--- a/content/docs/latest/platforms/risc-v/esp32c3/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32c3/index.html
@@ -164,6 +164,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32c6/boards/esp32c6-devkitc/index.html b/content/docs/latest/platforms/risc-v/esp32c6/boards/esp32c6-devkitc/index.html
index ec809282b..e82747e8e 100644
--- a/content/docs/latest/platforms/risc-v/esp32c6/boards/esp32c6-devkitc/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32c6/boards/esp32c6-devkitc/index.html
@@ -155,6 +155,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32c6/boards/esp32c6-devkitm/index.html b/content/docs/latest/platforms/risc-v/esp32c6/boards/esp32c6-devkitm/index.html
index b65c5247a..7bae0a3e3 100644
--- a/content/docs/latest/platforms/risc-v/esp32c6/boards/esp32c6-devkitm/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32c6/boards/esp32c6-devkitm/index.html
@@ -155,6 +155,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32c6/index.html b/content/docs/latest/platforms/risc-v/esp32c6/index.html
index 3282465ce..bb3cf1920 100644
--- a/content/docs/latest/platforms/risc-v/esp32c6/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32c6/index.html
@@ -158,6 +158,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32h2/boards/esp32h2-devkit/index.html b/content/docs/latest/platforms/risc-v/esp32h2/boards/esp32h2-devkit/index.html
index dd211688f..8d4dc58f4 100644
--- a/content/docs/latest/platforms/risc-v/esp32h2/boards/esp32h2-devkit/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32h2/boards/esp32h2-devkit/index.html
@@ -154,6 +154,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/esp32h2/index.html b/content/docs/latest/platforms/risc-v/esp32h2/index.html
index 2515eba20..a85dc2317 100644
--- a/content/docs/latest/platforms/risc-v/esp32h2/index.html
+++ b/content/docs/latest/platforms/risc-v/esp32h2/index.html
@@ -157,6 +157,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/fe310/boards/hifive1-revb/index.html b/content/docs/latest/platforms/risc-v/fe310/boards/hifive1-revb/index.html
index dd9180fb9..22f307969 100644
--- a/content/docs/latest/platforms/risc-v/fe310/boards/hifive1-revb/index.html
+++ b/content/docs/latest/platforms/risc-v/fe310/boards/hifive1-revb/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/fe310/index.html b/content/docs/latest/platforms/risc-v/fe310/index.html
index 86edd501f..aa418b6eb 100644
--- a/content/docs/latest/platforms/risc-v/fe310/index.html
+++ b/content/docs/latest/platforms/risc-v/fe310/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/hpm6750/boards/hpm6750evk2/index.html b/content/docs/latest/platforms/risc-v/hpm6750/boards/hpm6750evk2/index.html
index 83688d98b..35dee44e1 100644
--- a/content/docs/latest/platforms/risc-v/hpm6750/boards/hpm6750evk2/index.html
+++ b/content/docs/latest/platforms/risc-v/hpm6750/boards/hpm6750evk2/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/hpm6750/index.html b/content/docs/latest/platforms/risc-v/hpm6750/index.html
index 6d32d7bcb..fc9bff190 100644
--- a/content/docs/latest/platforms/risc-v/hpm6750/index.html
+++ b/content/docs/latest/platforms/risc-v/hpm6750/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/index.html b/content/docs/latest/platforms/risc-v/index.html
index 4dcb67524..1b3b8f6d7 100644
--- a/content/docs/latest/platforms/risc-v/index.html
+++ b/content/docs/latest/platforms/risc-v/index.html
@@ -143,6 +143,7 @@
 <li class="toctree-l3"><a class="reference internal" href="mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../sim/index.html">Simulators</a></li>
@@ -211,6 +212,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l1"><a class="reference internal" href="qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l1"><a class="reference internal" href="rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l1"><a class="reference internal" href="sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </div>
 </section>
diff --git a/content/docs/latest/platforms/risc-v/jh7110/boards/star64/index.html b/content/docs/latest/platforms/risc-v/jh7110/boards/star64/index.html
index d37d174ee..21673e231 100644
--- a/content/docs/latest/platforms/risc-v/jh7110/boards/star64/index.html
+++ b/content/docs/latest/platforms/risc-v/jh7110/boards/star64/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/jh7110/index.html b/content/docs/latest/platforms/risc-v/jh7110/index.html
index 8390b4e5c..f7574dee8 100644
--- a/content/docs/latest/platforms/risc-v/jh7110/index.html
+++ b/content/docs/latest/platforms/risc-v/jh7110/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/k210/boards/maix-bit/index.html b/content/docs/latest/platforms/risc-v/k210/boards/maix-bit/index.html
index a3cb1cc54..8ebf30b23 100644
--- a/content/docs/latest/platforms/risc-v/k210/boards/maix-bit/index.html
+++ b/content/docs/latest/platforms/risc-v/k210/boards/maix-bit/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/k210/index.html b/content/docs/latest/platforms/risc-v/k210/index.html
index c97b08c1c..9d14a3eff 100644
--- a/content/docs/latest/platforms/risc-v/k210/index.html
+++ b/content/docs/latest/platforms/risc-v/k210/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/k230/boards/canmv230/index.html b/content/docs/latest/platforms/risc-v/k230/boards/canmv230/index.html
index c43002478..90652055d 100644
--- a/content/docs/latest/platforms/risc-v/k230/boards/canmv230/index.html
+++ b/content/docs/latest/platforms/risc-v/k230/boards/canmv230/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/k230/index.html b/content/docs/latest/platforms/risc-v/k230/index.html
index 1593e0c7d..1d9a1be15 100644
--- a/content/docs/latest/platforms/risc-v/k230/index.html
+++ b/content/docs/latest/platforms/risc-v/k230/index.html
@@ -149,6 +149,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/litex/boards/arty_a7/index.html b/content/docs/latest/platforms/risc-v/litex/boards/arty_a7/index.html
index 1220dc18a..f07aa546b 100644
--- a/content/docs/latest/platforms/risc-v/litex/boards/arty_a7/index.html
+++ b/content/docs/latest/platforms/risc-v/litex/boards/arty_a7/index.html
@@ -152,6 +152,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/litex/cores/vexriscv/index.html b/content/docs/latest/platforms/risc-v/litex/cores/vexriscv/index.html
index d494d4ab4..5482a6b1e 100644
--- a/content/docs/latest/platforms/risc-v/litex/cores/vexriscv/index.html
+++ b/content/docs/latest/platforms/risc-v/litex/cores/vexriscv/index.html
@@ -153,6 +153,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/litex/cores/vexriscv_smp/index.html b/content/docs/latest/platforms/risc-v/litex/cores/vexriscv_smp/index.html
index bd39cbdef..b438d81db 100644
--- a/content/docs/latest/platforms/risc-v/litex/cores/vexriscv_smp/index.html
+++ b/content/docs/latest/platforms/risc-v/litex/cores/vexriscv_smp/index.html
@@ -153,6 +153,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/litex/index.html b/content/docs/latest/platforms/risc-v/litex/index.html
index bab2853d6..9cb726984 100644
--- a/content/docs/latest/platforms/risc-v/litex/index.html
+++ b/content/docs/latest/platforms/risc-v/litex/index.html
@@ -160,6 +160,7 @@
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/mpfs/boards/icicle/index.html b/content/docs/latest/platforms/risc-v/mpfs/boards/icicle/index.html
index 1c6f4e9d7..5bd29355f 100644
--- a/content/docs/latest/platforms/risc-v/mpfs/boards/icicle/index.html
+++ b/content/docs/latest/platforms/risc-v/mpfs/boards/icicle/index.html
@@ -154,6 +154,7 @@
 </li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/mpfs/index.html b/content/docs/latest/platforms/risc-v/mpfs/index.html
index 4886643ec..ee98f2046 100644
--- a/content/docs/latest/platforms/risc-v/mpfs/index.html
+++ b/content/docs/latest/platforms/risc-v/mpfs/index.html
@@ -154,6 +154,7 @@
 </li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/qemu-rv/boards/rv-virt/index.html b/content/docs/latest/platforms/risc-v/qemu-rv/boards/rv-virt/index.html
index 494e97612..b316c52e1 100644
--- a/content/docs/latest/platforms/risc-v/qemu-rv/boards/rv-virt/index.html
+++ b/content/docs/latest/platforms/risc-v/qemu-rv/boards/rv-virt/index.html
@@ -149,6 +149,7 @@
 </ul>
 </li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/qemu-rv/index.html b/content/docs/latest/platforms/risc-v/qemu-rv/index.html
index 075835869..b4c4d3edf 100644
--- a/content/docs/latest/platforms/risc-v/qemu-rv/index.html
+++ b/content/docs/latest/platforms/risc-v/qemu-rv/index.html
@@ -149,6 +149,7 @@
 </ul>
 </li>
 <li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/rv32m1/boards/rv32m1-vega/index.html b/content/docs/latest/platforms/risc-v/rv32m1/boards/rv32m1-vega/index.html
index 68a13ccbc..f683dcc00 100644
--- a/content/docs/latest/platforms/risc-v/rv32m1/boards/rv32m1-vega/index.html
+++ b/content/docs/latest/platforms/risc-v/rv32m1/boards/rv32m1-vega/index.html
@@ -44,7 +44,7 @@
     <script src="../../../../../_static/js/theme.js"></script>
     <link rel="index" title="Index" href="../../../../../genindex.html" />
     <link rel="search" title="Search" href="../../../../../search.html" />
-    <link rel="next" title="Simulators" href="../../../../sim/index.html" />
+    <link rel="next" title="SOPHGO SG2000" href="../../../sg2000/index.html" />
     <link rel="prev" title="NXP RV32M1" href="../../index.html" /> 
 </head>
 
@@ -149,6 +149,7 @@
 </li>
 </ul>
 </li>
+<li class="toctree-l3"><a class="reference internal" href="../../../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
@@ -448,7 +449,7 @@ nsh-itcm
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
         <a href="../../index.html" class="btn btn-neutral float-left" title="NXP RV32M1" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="../../../../sim/index.html" class="btn btn-neutral float-right" title="Simulators" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="../../../sg2000/index.html" class="btn btn-neutral float-right" title="SOPHGO SG2000" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
diff --git a/content/docs/latest/platforms/risc-v/rv32m1/index.html b/content/docs/latest/platforms/risc-v/rv32m1/index.html
index cfae4607e..511a1e5bc 100644
--- a/content/docs/latest/platforms/risc-v/rv32m1/index.html
+++ b/content/docs/latest/platforms/risc-v/rv32m1/index.html
@@ -149,6 +149,7 @@
 </li>
 </ul>
 </li>
+<li class="toctree-l3"><a class="reference internal" href="../sg2000/index.html">SOPHGO SG2000</a></li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../sim/index.html">Simulators</a></li>
diff --git a/content/docs/latest/platforms/risc-v/bl808/boards/ox64/index.html b/content/docs/latest/platforms/risc-v/sg2000/boards/milkv_duos/index.html
similarity index 68%
copy from content/docs/latest/platforms/risc-v/bl808/boards/ox64/index.html
copy to content/docs/latest/platforms/risc-v/sg2000/boards/milkv_duos/index.html
index 0f8c98ecb..f1b785b09 100644
--- a/content/docs/latest/platforms/risc-v/bl808/boards/ox64/index.html
+++ b/content/docs/latest/platforms/risc-v/sg2000/boards/milkv_duos/index.html
@@ -23,7 +23,7 @@
   <meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
 
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-  <title>PINE64 Ox64 &mdash; NuttX latest documentation</title>
+  <title>Milk-V Duo S &mdash; NuttX latest documentation</title>
       <link rel="stylesheet" href="../../../../../_static/pygments.css" type="text/css" />
       <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
       <link rel="stylesheet" href="../../../../../_static/copybutton.css" type="text/css" />
@@ -44,8 +44,8 @@
     <script src="../../../../../_static/js/theme.js"></script>
     <link rel="index" title="Index" href="../../../../../genindex.html" />
     <link rel="search" title="Search" href="../../../../../search.html" />
-    <link rel="next" title="THEAD C906" href="../../../c906/index.html" />
-    <link rel="prev" title="Bouffalo Lab BL808" href="../../index.html" /> 
+    <link rel="next" title="Simulators" href="../../../../sim/index.html" />
+    <link rel="prev" title="SOPHGO SG2000" href="../../index.html" /> 
 </head>
 
 <body class="wy-body-for-nav"> 
@@ -128,13 +128,7 @@
 <li class="toctree-l2"><a class="reference internal" href="../../../../renesas/index.html">Renesas</a></li>
 <li class="toctree-l2 current"><a class="reference internal" href="../../../index.html">RISC-V</a><ul class="current">
 <li class="toctree-l3"><a class="reference internal" href="../../../bl602/index.html">Bouffalo Lab BL602</a></li>
-<li class="toctree-l3 current"><a class="reference internal" href="../../index.html">Bouffalo Lab BL808</a><ul class="current">
-<li class="toctree-l4 current"><a class="reference internal" href="../../index.html#supported-boards">Supported Boards</a><ul class="current">
-<li class="toctree-l5 current"><a class="current reference internal" href="#">PINE64 Ox64</a></li>
-</ul>
-</li>
-</ul>
-</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../bl808/index.html">Bouffalo Lab BL808</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../c906/index.html">THEAD C906</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../esp32c3-legacy/index.html">Espressif ESP32-C3 (Legacy)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../esp32c3/index.html">Espressif ESP32-C3</a></li>
@@ -149,6 +143,13 @@
 <li class="toctree-l3"><a class="reference internal" href="../../../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../../../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3 current"><a class="reference internal" href="../../index.html">SOPHGO SG2000</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="../../index.html#supported-boards">Supported Boards</a><ul class="current">
+<li class="toctree-l5 current"><a class="current reference internal" href="#">Milk-V Duo S</a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </li>
 <li class="toctree-l2"><a class="reference internal" href="../../../../sim/index.html">Simulators</a></li>
@@ -187,10 +188,10 @@
       <li><a href="../../../../../index.html" class="icon icon-home" aria-label="Home"></a></li>
           <li class="breadcrumb-item"><a href="../../../../index.html">Supported Platforms</a></li>
           <li class="breadcrumb-item"><a href="../../../index.html">RISC-V</a></li>
-          <li class="breadcrumb-item"><a href="../../index.html">Bouffalo Lab BL808</a></li>
-      <li class="breadcrumb-item active">PINE64 Ox64</li>
+          <li class="breadcrumb-item"><a href="../../index.html">SOPHGO SG2000</a></li>
+      <li class="breadcrumb-item active">Milk-V Duo S</li>
       <li class="wy-breadcrumbs-aside">
-            <a href="../../../../../_sources/platforms/risc-v/bl808/boards/ox64/index.rst.txt" rel="nofollow"> View page source</a>
+            <a href="../../../../../_sources/platforms/risc-v/sg2000/boards/milkv_duos/index.rst.txt" rel="nofollow"> View page source</a>
       </li>
   </ul>
   <hr/>
@@ -198,91 +199,95 @@
           <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
            <div itemprop="articleBody">
              
-  <section id="pine64-ox64">
-<h1>PINE64 Ox64<a class="headerlink" href="#pine64-ox64" title="Permalink to this heading"></a></h1>
-<p><a class="reference external" href="https://wiki.pine64.org/wiki/Ox64">Ox64</a> is a RISC-V Single-Board Computer
-based on the Bouffalo Lab BL808 RISC-V SoC with C906 64-bit CPU Core and
-E907 / E902 32-bit CPU Cores supported by 64 MB of embedded PSRAM memory,
-with built-in WiFi, Bluetooth and Zigbee radio interfaces.</p>
-<p>Ox64 comes in a breadboard-friendly form factor. It has a microSD Card slot,
-USB 2.0 Type-C port and other peripheral interfaces.</p>
+  <section id="milk-v-duo-s">
+<h1>Milk-V Duo S<a class="headerlink" href="#milk-v-duo-s" title="Permalink to this heading"></a></h1>
+<p><a class="reference external" href="https://milkv.io/duo-s">Milk-V Duo S</a> is a RISC-V Single-Board Computer
+based on the SOPHGO SG2000 RISC-V SoC with T-Head C906 64-bit Main Processor,
+512 MB of SIP DRAM memory and 100 Mbps Ethernet.</p>
 <section id="features">
 <h2>Features<a class="headerlink" href="#features" title="Permalink to this heading"></a></h2>
 <ul class="simple">
 <li><dl class="simple">
-<dt><strong>System on Chip:</strong> Bouffalo Lab BL808</dt><dd><ul>
+<dt><strong>System on Chip:</strong> SOPHGO SG2000</dt><dd><ul>
 <li><dl class="simple">
 <dt><strong>CPU:</strong></dt><dd><ul>
-<li><p>64-bit T-Head C906 “D0” (RV64IMAFCV)</p></li>
-<li><p>32-bit T-Head E907 “M0” (RV32IMAFCP)</p></li>
-<li><p>32-bit T-Head E902 “LP” (RV32E[M]C)</p></li>
+<li><p>64-bit T-Head C906 1.0 GHz (Main Processor)</p></li>
+<li><p>64-bit T-Head C906 700 MHz (Co-Processor)</p></li>
+<li><p>64-bit Arm Cortex-A53 1.0 GHz (Alternate Main Processor)</p></li>
 </ul>
 </dd>
 </dl>
 </li>
-<li><p><strong>RAM:</strong> Embedded 64 MB PSRAM</p></li>
 </ul>
 </dd>
 </dl>
 </li>
-<li><p><strong>Wireless:</strong> 2.4 GHz 1T1R WiFi 802.11 b/g/n, Bluetooth 5.2, Zigbee</p></li>
-<li><p><strong>Ethernet:</strong> 10 / 100 Mbps (optional)</p></li>
-<li><p><strong>Storage:</strong> On-board 128 Mbit (16 MB) XSPI NOR Flash Memory, microSD (SDHC and SDXC)</p></li>
-<li><p><strong>USB:</strong> USB 2.0 OTG</p></li>
-<li><p><strong>Audio:</strong> Microphone and Speaker (optional)</p></li>
-<li><p><strong>Video Input:</strong> Dual-lane MIPI CSI port for Camera Module (USB-C)</p></li>
-<li><p><strong>Expansion Ports:</strong> 26 GPIO pins (including SPI, I2C and UART)</p></li>
+<li><p><strong>MCU:</strong> 8051 with 6 KB SRAM</p></li>
+<li><p><strong>Memory:</strong> SIP DRAM 512 MB</p></li>
+<li><p><strong>TPU:</strong> 0.5 TOPS INT8</p></li>
+<li><p><strong>Storage:</strong> 1 x microSD Connector, 1 x eMMC Pad</p></li>
+<li><p><strong>USB:</strong> 1 x Type-C for Power and Data or 1 x USB 2.0 A Port Host</p></li>
+<li><p><strong>MIPI CSI:</strong> 1 x 16P FPC Connector (MIPI CSI 2-Lane), 1 x 15P FPC Connector (MIPI CSI 2-Lane)</p></li>
+<li><p><strong>Sensor Support:</strong> 5M &#64; 30 FPS</p></li>
+<li><p><strong>MIPI DSI:</strong> Via GPIO Header (MIPI DSI 4-Lane)</p></li>
+<li><p><strong>Ethernet:</strong> 100 Mbps Ethernet Port (RJ45)</p></li>
+<li><p><strong>Wireless:</strong> Optional Wi-Fi 6 / Bluetooth 5</p></li>
+<li><p><strong>Audio:</strong> Via GPIO Pin</p></li>
+<li><p><strong>GPIO:</strong> Up to 39 x GPIO Pin (via 2 x 26-Pin GPIO Header)</p></li>
+<li><p><strong>Others:</strong> 1 x Boot Switch, 1 x Recovery Key, 1 x Reset Key</p></li>
 </ul>
 </section>
 <section id="serial-console">
 <h2>Serial Console<a class="headerlink" href="#serial-console" title="Permalink to this heading"></a></h2>
-<p>A <strong>USB Serial Adapter</strong> that supports 2 Mbps (like <a class="reference external" href="https://lupyuen.github.io/articles/ox64#test-the-usb-serial-adapter">CH340G Serial Adapter</a>)
-is required to run NuttX on Ox64.</p>
-<p>Connect the USB Serial Adapter to Ox64 Serial Console at:</p>
+<p>A <strong>USB Serial Adapter</strong> is required to run NuttX on Milk-V Duo S,
+<strong>CP2102</strong> is recommended. CH340 might not work correctly with Duo S.</p>
+<p>Connect the USB Serial Adapter to Duo S Serial Console at:</p>
 <table class="docutils align-default">
 <thead>
 <tr class="row-odd"><th class="head"><p>USB Serial</p></th>
-<th class="head"><p>Ox64 Pin</p></th>
+<th class="head"><p>Milk-V Duo S Pin</p></th>
 </tr>
 </thead>
 <tbody>
-<tr class="row-even"><td><p>TX</p></td>
-<td><p>Pin 31 (GPIO 17 / UART3 RX)</p></td>
+<tr class="row-even"><td><p>GND</p></td>
+<td><p>Pin 6 (GND)</p></td>
 </tr>
 <tr class="row-odd"><td><p>RX</p></td>
-<td><p>Pin 32 (GPIO 16 / UART3 TX)</p></td>
+<td><p>Pin 8 (XGPIOA 16 / UART0 TX)</p></td>
 </tr>
-<tr class="row-even"><td><p>GND</p></td>
-<td><p>Pin 33 (GND)</p></td>
+<tr class="row-even"><td><p>TX</p></td>
+<td><p>Pin 10 (XGPIOA 17 / UART0 RX)</p></td>
 </tr>
 </tbody>
 </table>
 <p>On the USB Serial Adapter, set the <strong>Voltage Level</strong> to 3V3.</p>
-<p>Connect Ox64 to our computer with the USB Serial Adapter.
+<p>Connect Duo S to our computer with the USB Serial Adapter.
 On our computer, start a Serial Terminal and connect to the USB Serial Port
-at <strong>2 Mbps</strong>.</p>
-<p>NuttX will appear in the Serial Console when it boots on Ox64.</p>
+at <strong>115.2 kbps</strong>:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>screen<span class="w"> </span>/dev/ttyUSB0<span class="w"> </span><span class="m">115200</span>
+</pre></div>
+</div>
+<p>NuttX will appear in the Serial Console when it boots on Duo S.</p>
 </section>
 <section id="risc-v-toolchain">
 <h2>RISC-V Toolchain<a class="headerlink" href="#risc-v-toolchain" title="Permalink to this heading"></a></h2>
-<p>Before building NuttX for Ox64, download the <strong>RISC-V Toolchain riscv64-unknown-elf</strong>
-from <a class="reference external" href="https://github.com/sifive/freedom-tools/releases/tag/v2020.12.0">SiFive RISC-V Tools</a>.</p>
-<p>Add the downloaded toolchain <code class="docutils literal notranslate"><span class="pre">riscv64-unknown-elf-toolchain-.../bin</span></code>
+<p>Before building NuttX for Milk-V Duo S, download the toolchain for
+<a class="reference external" href="https://github.com/xpack-dev-tools/riscv-none-elf-gcc-xpack/releases">xPack GNU RISC-V Embedded GCC (riscv-none-elf)</a>.</p>
+<p>Add the downloaded toolchain <code class="docutils literal notranslate"><span class="pre">xpack-riscv-none-elf-gcc-.../bin</span></code>
 to the <code class="docutils literal notranslate"><span class="pre">PATH</span></code> Environment Variable.</p>
 <p>Check the RISC-V Toolchain:</p>
-<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>riscv64-unknown-elf-gcc<span class="w"> </span>-v
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>riscv-none-elf-gcc<span class="w"> </span>-v
 </pre></div>
 </div>
 </section>
 <section id="building">
 <h2>Building<a class="headerlink" href="#building" title="Permalink to this heading"></a></h2>
-<p>To build NuttX for Ox64, <a class="reference internal" href="../../../../../quickstart/install.html"><span class="doc">install the prerequisites</span></a> and
+<p>To build NuttX for Milk-V Duo S, <a class="reference internal" href="../../../../../quickstart/install.html"><span class="doc">install the prerequisites</span></a> and
 <a class="reference internal" href="../../../../../quickstart/install.html"><span class="doc">clone the git repositories</span></a> for <code class="docutils literal notranslate"><span class="pre">nuttx</span></code> and <code class="docutils literal notranslate"><span class="pre">apps</span></code>.</p>
 <p>Configure the NuttX project and build the project:</p>
 <div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span><span class="nb">cd</span><span class="w"> </span>nuttx
-<span class="gp">$ </span>tools/configure.sh<span class="w"> </span>ox64:nsh
+<span class="gp">$ </span>tools/configure.sh<span class="w"> </span>milkv_duos:nsh
 <span class="gp">$ </span>make
-<span class="gp">$ </span>riscv64-unknown-elf-objcopy<span class="w"> </span>-O<span class="w"> </span>binary<span class="w"> </span>nuttx<span class="w"> </span>nuttx.bin
 </pre></div>
 </div>
 <p>This produces the NuttX Kernel <code class="docutils literal notranslate"><span class="pre">nuttx.bin</span></code>.  Next, build the NuttX Apps Filesystem:</p>
@@ -297,23 +302,47 @@ to the <code class="docutils literal notranslate"><span class="pre">PATH</span><
 <p>This generates the Initial RAM Disk <code class="docutils literal notranslate"><span class="pre">initrd</span></code>.</p>
 <p>Package the NuttX Kernel and Initial RAM Disk into a NuttX Image:</p>
 <div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>head<span class="w"> </span>-c<span class="w"> </span><span class="m">65536</span><span class="w"> </span>/dev/zero<span class="w"> </span>&gt;/tmp/nuttx.pad
-<span class="gp">$ </span>cat<span class="w"> </span>nuttx.bin<span class="w"> </span>/tmp/nuttx.pad<span class="w"> </span>initrd<span class="w"> </span>&gt;Image
+<span class="gp">$ </span>cat<span class="w"> </span>nuttx.bin<span class="w"> </span>/tmp/nuttx.pad<span class="w"> </span>initrd<span class="w"> </span>&gt;Image-sg2000
 </pre></div>
 </div>
-<p>The NuttX Image <code class="docutils literal notranslate"><span class="pre">Image</span></code> will be copied to a microSD Card in the next step.</p>
+<p>The NuttX Image <code class="docutils literal notranslate"><span class="pre">Image-sg2000</span></code> will be copied to the TFTP Server in the next step.</p>
 </section>
 <section id="booting">
 <h2>Booting<a class="headerlink" href="#booting" title="Permalink to this heading"></a></h2>
-<p>To boot NuttX on Ox64, flash
-<a class="reference external" href="https://lupyuen.github.io/articles/ox64">OpenSBI and U-Boot Bootloader</a> to Ox64.</p>
-<p>NuttX boots on Star64 via a microSD Card. Prepare a
-<a class="reference external" href="https://lupyuen.github.io/articles/ox64">Linux microSD Card</a> for Ox64.</p>
-<p>Copy the file <code class="docutils literal notranslate"><span class="pre">Image</span></code> from the previous section
-and overwrite the file on the microSD Card.</p>
-<p>Check that Ox64 is connected to our computer via a USB Serial Adapter at 2 Mbps.</p>
-<p>Insert the microSD Card into Ox64 and power up Ox64 via the Micro USB Port.
-NuttX boots on Ox64 and NuttShell (nsh) appears in the Serial Console.</p>
-<p>To see the available commands in NuttShell:</p>
+<p>NuttX requires a microSD Card with U-Boot Bootloader. Prepare a
+<a class="reference external" href="https://lupyuen.github.io/articles/sg2000#download-the-linux-microsd">Linux microSD Card</a>
+for Duo S.</p>
+<p>To boot NuttX on Milk-V Duo S, flip the <a class="reference external" href="https://lupyuen.github.io/articles/sg2000#boot-without-microsd">Main Processor Switch</a>
+to <strong>RV</strong> (RISC-V).
+On our computer, <a class="reference external" href="https://lupyuen.github.io/articles/sg2000#boot-nuttx-over-tftp">install the TFTP Server</a>.</p>
+<p>Copy the file <code class="docutils literal notranslate"><span class="pre">Image-sg2000</span></code> from the previous section to the TFTP Server,
+together with the Device Tree:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>wget<span class="w"> </span>https://github.com/lupyuen2/wip-nuttx/releases/download/sg2000-1/cv181x_milkv_duos_sd.dtb
+<span class="gp">$ </span>scp<span class="w"> </span>Image-sg2000<span class="w"> </span><span class="se">\</span>
+<span class="w">   </span>tftpserver:/tftpfolder/Image-sg2000
+<span class="gp">$ </span>scp<span class="w"> </span>cv181x_milkv_duos_sd.dtb<span class="w"> </span><span class="se">\</span>
+<span class="w">   </span>tftpserver:/tftpfolder/cv181x_milkv_duos_sd.dtb
+</pre></div>
+</div>
+<p>Check that Duo S is connected to our computer via a USB Serial Adapter at 115.2 kbps:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span>screen<span class="w"> </span>/dev/ttyUSB0<span class="w"> </span><span class="m">115200</span>
+</pre></div>
+</div>
+<p>Insert the microSD Card into Duo S, connect the Ethernet Port and power up via the USB-C Port.</p>
+<p>When Duo S boots, press Enter to see the U-Boot Prompt.
+Run these commands to <a class="reference external" href="https://lupyuen.github.io/articles/sg2000#boot-nuttx-over-tftp">boot NuttX over TFTP</a>:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp"># </span>Change<span class="w"> </span>to<span class="w"> </span>your<span class="w"> </span>TFTP<span class="w"> </span>Server
+<span class="gp">$ </span>setenv<span class="w"> </span>tftp_server<span class="w"> </span><span class="m">192</span>.168.x.x
+<span class="gp">$ </span>saveenv
+<span class="gp">$ </span>dhcp<span class="w"> </span><span class="si">${</span><span class="nv">kernel_addr_r</span><span class="si">}</span><span class="w"> </span><span class="si">${</span><span class="nv">tftp_server</span><span class="si">}</span>:Image-sg2000
+<span class="gp">$ </span>tftpboot<span class="w"> </span><span class="si">${</span><span class="nv">fdt_addr_r</span><span class="si">}</span><span class="w"> </span><span class="si">${</span><span class="nv">tftp_server</span><span class="si">}</span>:cv181x_milkv_duos_sd.dtb
+<span class="gp">$ </span>fdt<span class="w"> </span>addr<span class="w"> </span><span class="si">${</span><span class="nv">fdt_addr_r</span><span class="si">}</span>
+<span class="gp">$ </span>booti<span class="w"> </span><span class="si">${</span><span class="nv">kernel_addr_r</span><span class="si">}</span><span class="w"> </span>-<span class="w"> </span><span class="si">${</span><span class="nv">fdt_addr_r</span><span class="si">}</span>
+</pre></div>
+</div>
+<p>Or configure U-Boot to <a class="reference external" href="https://lupyuen.github.io/articles/sg2000#boot-nuttx-over-tftp">boot NuttX automatically</a>.</p>
+<p>NuttX boots on Duo S and NuttShell (nsh) appears in the Serial Console.
+To see the available commands in NuttShell:</p>
 <div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$ </span><span class="nb">help</span>
 </pre></div>
 </div>
@@ -325,12 +354,12 @@ NuttX boots on Ox64 and NuttShell (nsh) appears in the Serial Console.</p>
 <p>Basic configuration that runs NuttShell (nsh).
 This configuration is focused on low level, command-line driver testing.
 Built-in applications are supported, but none are enabled.
-Serial Console is enabled on UART3 at 2 Mbps.</p>
+Serial Console is enabled on UART0 at 115.2 kbps.</p>
 </section>
 </section>
 <section id="peripheral-support">
 <h2>Peripheral Support<a class="headerlink" href="#peripheral-support" title="Permalink to this heading"></a></h2>
-<p>NuttX for Ox64 supports these peripherals:</p>
+<p>NuttX for Milk-V Duo S supports these peripherals:</p>
 <table class="docutils align-default">
 <thead>
 <tr class="row-odd"><th class="head"><p>Peripheral</p></th>
@@ -352,8 +381,8 @@ Serial Console is enabled on UART3 at 2 Mbps.</p>
            </div>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="../../index.html" class="btn btn-neutral float-left" title="Bouffalo Lab BL808" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="../../../c906/index.html" class="btn btn-neutral float-right" title="THEAD C906" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="../../index.html" class="btn btn-neutral float-left" title="SOPHGO SG2000" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="../../../../sim/index.html" class="btn btn-neutral float-right" title="Simulators" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
diff --git a/content/docs/latest/platforms/risc-v/rv32m1/index.html b/content/docs/latest/platforms/risc-v/sg2000/index.html
similarity index 80%
copy from content/docs/latest/platforms/risc-v/rv32m1/index.html
copy to content/docs/latest/platforms/risc-v/sg2000/index.html
index cfae4607e..15562a36f 100644
--- a/content/docs/latest/platforms/risc-v/rv32m1/index.html
+++ b/content/docs/latest/platforms/risc-v/sg2000/index.html
@@ -23,7 +23,7 @@
   <meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
 
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-  <title>NXP RV32M1 &mdash; NuttX latest documentation</title>
+  <title>SOPHGO SG2000 &mdash; NuttX latest documentation</title>
       <link rel="stylesheet" href="../../../_static/pygments.css" type="text/css" />
       <link rel="stylesheet" href="../../../_static/css/theme.css" type="text/css" />
       <link rel="stylesheet" href="../../../_static/copybutton.css" type="text/css" />
@@ -44,8 +44,8 @@
     <script src="../../../_static/js/theme.js"></script>
     <link rel="index" title="Index" href="../../../genindex.html" />
     <link rel="search" title="Search" href="../../../search.html" />
-    <link rel="next" title="rv32m1-vega" href="boards/rv32m1-vega/index.html" />
-    <link rel="prev" title="rv-virt" href="../qemu-rv/boards/rv-virt/index.html" /> 
+    <link rel="next" title="Milk-V Duo S" href="boards/milkv_duos/index.html" />
+    <link rel="prev" title="rv32m1-vega" href="../rv32m1/boards/rv32m1-vega/index.html" /> 
 </head>
 
 <body class="wy-body-for-nav"> 
@@ -142,9 +142,10 @@
 <li class="toctree-l3"><a class="reference internal" href="../litex/index.html">Enjoy Digital LiteX FPGA’s</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../mpfs/index.html">Microchip PolarFire® SoC FPGA’s (MPFS)</a></li>
 <li class="toctree-l3"><a class="reference internal" href="../qemu-rv/index.html">QEMU Generic RV32/RV64</a></li>
-<li class="toctree-l3 current"><a class="current reference internal" href="#">NXP RV32M1</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../rv32m1/index.html">NXP RV32M1</a></li>
+<li class="toctree-l3 current"><a class="current reference internal" href="#">SOPHGO SG2000</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="#supported-boards">Supported Boards</a><ul>
-<li class="toctree-l5"><a class="reference internal" href="boards/rv32m1-vega/index.html">rv32m1-vega</a></li>
+<li class="toctree-l5"><a class="reference internal" href="boards/milkv_duos/index.html">Milk-V Duo S</a></li>
 </ul>
 </li>
 </ul>
@@ -187,9 +188,9 @@
       <li><a href="../../../index.html" class="icon icon-home" aria-label="Home"></a></li>
           <li class="breadcrumb-item"><a href="../../index.html">Supported Platforms</a></li>
           <li class="breadcrumb-item"><a href="../index.html">RISC-V</a></li>
-      <li class="breadcrumb-item active">NXP RV32M1</li>
+      <li class="breadcrumb-item active">SOPHGO SG2000</li>
       <li class="wy-breadcrumbs-aside">
-            <a href="../../../_sources/platforms/risc-v/rv32m1/index.rst.txt" rel="nofollow"> View page source</a>
+            <a href="../../../_sources/platforms/risc-v/sg2000/index.rst.txt" rel="nofollow"> View page source</a>
       </li>
   </ul>
   <hr/>
@@ -197,13 +198,49 @@
           <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
            <div itemprop="articleBody">
              
-  <section id="nxp-rv32m1">
-<h1>NXP RV32M1<a class="headerlink" href="#nxp-rv32m1" title="Permalink to this heading"></a></h1>
+  <section id="sophgo-sg2000">
+<h1>SOPHGO SG2000<a class="headerlink" href="#sophgo-sg2000" title="Permalink to this heading"></a></h1>
+<p><a class="reference external" href="https://milkv.io/chips/sg2000">SOPHGO SG2000</a> is a 64-bit RISC-V SoC with 2 RISC-V Cores and 1 Arm Core:</p>
+<ul class="simple">
+<li><dl class="simple">
+<dt><strong>Main Processor:</strong> T-Head C906 1.0 GHz 64-bit RISC-V Core</dt><dd><ul>
+<li><p>32 KB I-Cache, 64KB D-Cache</p></li>
+<li><p>Integrated Vector and Floating-Point Operation Unit (FPU)</p></li>
+</ul>
+</dd>
+</dl>
+</li>
+<li><dl class="simple">
+<dt><strong>Co-Processor:</strong> T-Head C906 700 MHz 64-bit RISC-V Core</dt><dd><ul>
+<li><p>Integrated Floating-Point Unit (FPU)</p></li>
+</ul>
+</dd>
+</dl>
+</li>
+<li><dl class="simple">
+<dt><strong>Alternate Main Processor:</strong> Cortex-A53 1.0 GHz 64-bit Arm Core</dt><dd><ul>
+<li><p>32 KB I-Cache, 32 KB D-Cache</p></li>
+<li><p>128 KB L2 Cache</p></li>
+<li><p>Support Neon and Floating-Point Operation Unit (FPU)</p></li>
+</ul>
+</dd>
+</dl>
+</li>
+<li><p><strong>MCU:</strong> 8051 with 6 KB SRAM</p></li>
+<li><p><strong>TPU:</strong> 0.5 TOPS INT8</p></li>
+<li><p><strong>Memory:</strong> SIP DRAM 512 MB</p></li>
+<li><p><strong>Video Module:</strong> ISP 5M &#64; 30 FPS, 2L MIPI DSI 5M &#64; 30 FPS, 4L or 2L+2L MIPI CSI 5M &#64; 30 FPS, H.265 / H.264 Decoding and Encoding 5M &#64; 30 FPS</p></li>
+<li><p><strong>Audio Module:</strong> 16-bit Audio Codec, 2 x I2S / PCM, 1 x DMIC</p></li>
+<li><p><strong>Storage:</strong> SPI-NOR, SPI-NAND, eMMC 5.0, 2 x SDIO 3.0</p></li>
+<li><p><strong>Network:</strong> 10M / 100M MAC PHY</p></li>
+<li><p><strong>Security Module:</strong> Crypto, Secure Boot, TRNG, Efuse</p></li>
+<li><p><strong>Peripherals:</strong> 1 x USB 2.0 DRD, 5 x UART, 4 x SPI, 16 x PWM, 1 x IR, 6 x I2C, 6 x ADC, GPIOs</p></li>
+</ul>
 <section id="supported-boards">
 <h2>Supported Boards<a class="headerlink" href="#supported-boards" title="Permalink to this heading"></a></h2>
 <div class="toctree-wrapper compound">
 <ul>
-<li class="toctree-l1"><a class="reference internal" href="boards/rv32m1-vega/index.html">rv32m1-vega</a></li>
+<li class="toctree-l1"><a class="reference internal" href="boards/milkv_duos/index.html">Milk-V Duo S</a></li>
 </ul>
 </div>
 </section>
@@ -213,8 +250,8 @@
            </div>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="../qemu-rv/boards/rv-virt/index.html" class="btn btn-neutral float-left" title="rv-virt" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="boards/rv32m1-vega/index.html" class="btn btn-neutral float-right" title="rv32m1-vega" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="../rv32m1/boards/rv32m1-vega/index.html" class="btn btn-neutral float-left" title="rv32m1-vega" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="boards/milkv_duos/index.html" class="btn btn-neutral float-right" title="Milk-V Duo S" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
diff --git a/content/docs/latest/platforms/sim/index.html b/content/docs/latest/platforms/sim/index.html
index 6fbb93d9f..2e34ccd30 100644
--- a/content/docs/latest/platforms/sim/index.html
+++ b/content/docs/latest/platforms/sim/index.html
@@ -45,7 +45,7 @@
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
     <link rel="next" title="SIM" href="sim/index.html" />
-    <link rel="prev" title="rv32m1-vega" href="../risc-v/rv32m1/boards/rv32m1-vega/index.html" /> 
+    <link rel="prev" title="Milk-V Duo S" href="../risc-v/sg2000/boards/milkv_duos/index.html" /> 
 </head>
 
 <body class="wy-body-for-nav"> 
@@ -199,7 +199,7 @@ The purpose of this port is primarily to support OS feature development.</p>
            </div>
           </div>
           <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="../risc-v/rv32m1/boards/rv32m1-vega/index.html" class="btn btn-neutral float-left" title="rv32m1-vega" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="../risc-v/sg2000/boards/milkv_duos/index.html" class="btn btn-neutral float-left" title="Milk-V Duo S" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
         <a href="sim/index.html" class="btn btn-neutral float-right" title="SIM" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
diff --git a/content/docs/latest/searchindex.js b/content/docs/latest/searchindex.js
index 2742e36ef..30a452f9a 100644
--- a/content/docs/latest/searchindex.js
+++ b/content/docs/latest/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", "applications/audioutils/index", "applications/audioutils/mml_parser/index", "applications/audioutils/nxaudio/index", "applications/benchmarks/cachespeed/index", "applications/benchmarks/coremark-pro/index", "applications/benchmarks/coremark/index", "applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", "applications/benchmarks/index", "applications/benchmarks/iozone/index", "applications/bench [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["applications/audioutils/fmsynt/index", "applications/audioutils/index", "applications/audioutils/mml_parser/index", "applications/audioutils/nxaudio/index", "applications/benchmarks/cachespeed/index", "applications/benchmarks/coremark-pro/index", "applications/benchmarks/coremark/index", "applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index", "applications/benchmarks/index", "applications/benchmarks/iozone/index", "applications/bench [...]
\ No newline at end of file
diff --git a/content/feed.xml b/content/feed.xml
index 041cb380c..aa5556432 100644
--- a/content/feed.xml
+++ b/content/feed.xml
@@ -5,8 +5,8 @@
     <description></description>
     <link>/</link>
     <atom:link href="/feed.xml" rel="self" type="application/rss+xml"/>
-    <pubDate>Mon, 17 Jun 2024 00:18:27 +0000</pubDate>
-    <lastBuildDate>Mon, 17 Jun 2024 00:18:27 +0000</lastBuildDate>
+    <pubDate>Tue, 18 Jun 2024 00:18:13 +0000</pubDate>
+    <lastBuildDate>Tue, 18 Jun 2024 00:18:13 +0000</lastBuildDate>
     <generator>Jekyll v4.3.2</generator>
     
       <item>