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 e11f2ea07 Publishing web: 89395e1aa4444fd4118252756087f44366832e88
docs: d243322f5770f2611d60a428e1c5410139c9daab
e11f2ea07 is described below
commit e11f2ea071bbf183e421e63fe1d0613cf29315c7
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
AuthorDate: Fri Sep 26 00:32:26 2025 +0000
Publishing web: 89395e1aa4444fd4118252756087f44366832e88 docs:
d243322f5770f2611d60a428e1c5410139c9daab
---
content/docs/10.0.0/index.html | 2 +-
content/docs/10.0.1/index.html | 2 +-
content/docs/10.1.0/index.html | 2 +-
content/docs/10.2.0/index.html | 2 +-
content/docs/10.3.0/index.html | 2 +-
content/docs/11.0.0/index.html | 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.10.0/index.html | 2 +-
content/docs/12.10.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 +-
content/docs/12.6.0/index.html | 2 +-
content/docs/12.6.0/searchindex.js | 2 +-
content/docs/12.7.0/index.html | 2 +-
content/docs/12.7.0/searchindex.js | 2 +-
content/docs/12.8.0/index.html | 2 +-
content/docs/12.8.0/searchindex.js | 2 +-
content/docs/12.9.0/index.html | 2 +-
content/docs/12.9.0/searchindex.js | 2 +-
.../latest/_sources/components/net/index.rst.txt | 1 +
.../latest/_sources/components/net/mdio.rst.txt | 73 +++++++++++
content/docs/latest/components/index.html | 1 +
.../components/net/delay_act_and_tcp_perf.html | 1 +
content/docs/latest/components/net/index.html | 2 +
content/docs/latest/components/net/ipfilter.html | 1 +
.../net/{netguardsize.html => mdio.html} | 144 ++++++++++-----------
content/docs/latest/components/net/nat.html | 1 +
content/docs/latest/components/net/netdev.html | 1 +
content/docs/latest/components/net/netdriver.html | 5 +-
.../docs/latest/components/net/netguardsize.html | 5 +-
content/docs/latest/components/net/netlink.html | 1 +
content/docs/latest/components/net/pkt.html | 1 +
content/docs/latest/components/net/sixlowpan.html | 1 +
content/docs/latest/components/net/slip.html | 1 +
content/docs/latest/components/net/socketcan.html | 1 +
.../latest/components/net/tcp_network_perf.html | 1 +
.../latest/components/net/wqueuedeadlocks.html | 1 +
content/docs/latest/guides/fully_linked_elf.html | 2 +-
.../docs/latest/guides/partially_linked_elf.html | 2 +-
content/docs/latest/index.html | 2 +-
content/docs/latest/objects.inv | Bin 163442 -> 163649 bytes
content/docs/latest/searchindex.js | 2 +-
content/feed.xml | 4 +-
56 files changed, 201 insertions(+), 117 deletions(-)
diff --git a/content/docs/10.0.0/index.html b/content/docs/10.0.0/index.html
index ac5b90e7c..4fc4ee71c 100644
--- a/content/docs/10.0.0/index.html
+++ b/content/docs/10.0.0/index.html
@@ -207,7 +207,7 @@ by following these <a class="reference internal"
href="contributing/documentatio
<div class="section" id="nuttx-documentation">
<h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation"
title="Permalink to this headline">¶</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: 25 September 25 at 00:15</p>
+<p>Last Updated: 26 September 25 at 00:13</p>
<div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Table of Contents</span></p>
<ul class="current">
diff --git a/content/docs/10.0.1/index.html b/content/docs/10.0.1/index.html
index 683ca3f0f..eadabcd36 100644
--- a/content/docs/10.0.1/index.html
+++ b/content/docs/10.0.1/index.html
@@ -245,7 +245,7 @@ by following these <a class="reference internal"
href="contributing/documentatio
<div class="section" id="nuttx-documentation">
<h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation"
title="Permalink to this headline">¶</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: 25 September 25 at 00:15</p>
+<p>Last Updated: 26 September 25 at 00:14</p>
<div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Table of Contents</span></p>
<ul class="current">
diff --git a/content/docs/10.1.0/index.html b/content/docs/10.1.0/index.html
index f40223291..4c8c76fa5 100644
--- a/content/docs/10.1.0/index.html
+++ b/content/docs/10.1.0/index.html
@@ -245,7 +245,7 @@ by following these <a class="reference internal"
href="contributing/documentatio
<div class="section" id="nuttx-documentation">
<h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation"
title="Permalink to this headline">¶</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: 25 September 25 at 00:16</p>
+<p>Last Updated: 26 September 25 at 00:14</p>
<div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Table of Contents</span></p>
<ul class="current">
diff --git a/content/docs/10.2.0/index.html b/content/docs/10.2.0/index.html
index 74a5266e8..b05ca4cdd 100644
--- a/content/docs/10.2.0/index.html
+++ b/content/docs/10.2.0/index.html
@@ -246,7 +246,7 @@ by following these <a class="reference internal"
href="contributing/documentatio
<div class="section" id="nuttx-documentation">
<h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation"
title="Permalink to this headline">¶</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: 25 September 25 at 00:16</p>
+<p>Last Updated: 26 September 25 at 00:14</p>
<div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Table of Contents</span></p>
<ul class="current">
diff --git a/content/docs/10.3.0/index.html b/content/docs/10.3.0/index.html
index 74a5266e8..b05ca4cdd 100644
--- a/content/docs/10.3.0/index.html
+++ b/content/docs/10.3.0/index.html
@@ -246,7 +246,7 @@ by following these <a class="reference internal"
href="contributing/documentatio
<div class="section" id="nuttx-documentation">
<h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation"
title="Permalink to this headline">¶</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: 25 September 25 at 00:16</p>
+<p>Last Updated: 26 September 25 at 00:14</p>
<div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Table of Contents</span></p>
<ul class="current">
diff --git a/content/docs/11.0.0/index.html b/content/docs/11.0.0/index.html
index 74a5266e8..bdfdc0ab6 100644
--- a/content/docs/11.0.0/index.html
+++ b/content/docs/11.0.0/index.html
@@ -246,7 +246,7 @@ by following these <a class="reference internal"
href="contributing/documentatio
<div class="section" id="nuttx-documentation">
<h1>NuttX Documentation<a class="headerlink" href="#nuttx-documentation"
title="Permalink to this headline">¶</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: 25 September 25 at 00:16</p>
+<p>Last Updated: 26 September 25 at 00:15</p>
<div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Table of Contents</span></p>
<ul class="current">
diff --git a/content/docs/12.0.0/index.html b/content/docs/12.0.0/index.html
index feeea115d..19f2f4f09 100644
--- a/content/docs/12.0.0/index.html
+++ b/content/docs/12.0.0/index.html
@@ -171,7 +171,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 headline"></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: 25 September 25 at 00:17</p>
+<p>Last Updated: 26 September 25 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.0.0/searchindex.js
b/content/docs/12.0.0/searchindex.js
index 9c44b4d70..e1b80b6ea 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/drivers/character
[...]
\ 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/drivers/character
[...]
\ 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 d4e0fb5e4..b7aa503e1 100644
--- a/content/docs/12.1.0/index.html
+++ b/content/docs/12.1.0/index.html
@@ -171,7 +171,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 headline"></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: 25 September 25 at 00:17</p>
+<p>Last Updated: 26 September 25 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.1.0/searchindex.js
b/content/docs/12.1.0/searchindex.js
index 5f5b64529..fd5a96976 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/drivers/character
[...]
\ 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/drivers/character
[...]
\ No newline at end of file
diff --git a/content/docs/12.10.0/index.html b/content/docs/12.10.0/index.html
index 0885107f3..1bd2c23b4 100644
--- a/content/docs/12.10.0/index.html
+++ b/content/docs/12.10.0/index.html
@@ -183,7 +183,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: 25 September 25 at 00:29</p>
+<p>Last Updated: 26 September 25 at 00:28</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.10.0/searchindex.js
b/content/docs/12.10.0/searchindex.js
index 8225f1b1d..cb6dfcbf8 100644
--- a/content/docs/12.10.0/searchindex.js
+++ b/content/docs/12.10.0/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["_tags/arch-arm64", "_tags/arch-avr",
"_tags/arch-example", "_tags/chip-a527", "_tags/chip-a64",
"_tags/chip-at90usb", "_tags/chip-atmega", "_tags/chip-atmega2560",
"_tags/chip-bcm2711", "_tags/chip-esp32", "_tags/chip-esp32a1s",
"_tags/chip-esp32picod4", "_tags/chip-esp32s2", "_tags/chip-esp32s3",
"_tags/chip-esp32wroom32", "_tags/chip-esp32wrover32", "_tags/chip-example",
"_tags/chip-fpga", "_tags/chip-imx8", "_tags/chip-imx93", "_tags/chip-nrf52",
"_tags/ [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["_tags/arch-arm64", "_tags/arch-avr",
"_tags/arch-example", "_tags/chip-a527", "_tags/chip-a64",
"_tags/chip-at90usb", "_tags/chip-atmega", "_tags/chip-atmega2560",
"_tags/chip-bcm2711", "_tags/chip-esp32", "_tags/chip-esp32a1s",
"_tags/chip-esp32picod4", "_tags/chip-esp32s2", "_tags/chip-esp32s3",
"_tags/chip-esp32wroom32", "_tags/chip-esp32wrover32", "_tags/chip-example",
"_tags/chip-fpga", "_tags/chip-imx8", "_tags/chip-imx93", "_tags/chip-nrf52",
"_tags/ [...]
\ 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 02ac97431..1701b740b 100644
--- a/content/docs/12.2.0/index.html
+++ b/content/docs/12.2.0/index.html
@@ -172,7 +172,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: 25 September 25 at 00:17</p>
+<p>Last Updated: 26 September 25 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/12.2.0/searchindex.js
b/content/docs/12.2.0/searchindex.js
index 299fab556..b4b6592bd 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 2551b4ea5..1701b740b 100644
--- a/content/docs/12.2.1/index.html
+++ b/content/docs/12.2.1/index.html
@@ -172,7 +172,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: 25 September 25 at 00:18</p>
+<p>Last Updated: 26 September 25 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/12.2.1/searchindex.js
b/content/docs/12.2.1/searchindex.js
index fd3e2e684..5a5fa5875 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 d157e3f8a..ae9074911 100644
--- a/content/docs/12.3.0/index.html
+++ b/content/docs/12.3.0/index.html
@@ -172,7 +172,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: 25 September 25 at 00:18</p>
+<p>Last Updated: 26 September 25 at 00:17</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 a1ebb7f14..c386cf598 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 1e433415e..62126b878 100644
--- a/content/docs/12.4.0/index.html
+++ b/content/docs/12.4.0/index.html
@@ -179,7 +179,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: 25 September 25 at 00:19</p>
+<p>Last Updated: 26 September 25 at 00:17</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 1c2870bf9..7dd640384 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 17b5ba2c5..18e6bb69e 100644
--- a/content/docs/12.5.0/index.html
+++ b/content/docs/12.5.0/index.html
@@ -179,7 +179,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: 25 September 25 at 00:20</p>
+<p>Last Updated: 26 September 25 at 00:19</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 6666dc915..ae1e0619e 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 03324250d..5ac25be74 100644
--- a/content/docs/12.5.1/index.html
+++ b/content/docs/12.5.1/index.html
@@ -179,7 +179,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: 25 September 25 at 00:22</p>
+<p>Last Updated: 26 September 25 at 00:20</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 21aa3f0e3..d21f05bf5 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/12.6.0/index.html b/content/docs/12.6.0/index.html
index eda137a61..ad372d486 100644
--- a/content/docs/12.6.0/index.html
+++ b/content/docs/12.6.0/index.html
@@ -180,7 +180,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: 25 September 25 at 00:23</p>
+<p>Last Updated: 26 September 25 at 00:21</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.6.0/searchindex.js
b/content/docs/12.6.0/searchindex.js
index 5d3726eba..0fe411740 100644
--- a/content/docs/12.6.0/searchindex.js
+++ b/content/docs/12.6.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/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/docs/12.7.0/index.html b/content/docs/12.7.0/index.html
index 762ed1b75..709fa07a6 100644
--- a/content/docs/12.7.0/index.html
+++ b/content/docs/12.7.0/index.html
@@ -179,7 +179,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: 25 September 25 at 00:24</p>
+<p>Last Updated: 26 September 25 at 00:23</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.7.0/searchindex.js
b/content/docs/12.7.0/searchindex.js
index 1754ef70f..63c65e861 100644
--- a/content/docs/12.7.0/searchindex.js
+++ b/content/docs/12.7.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/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/docs/12.8.0/index.html b/content/docs/12.8.0/index.html
index 0508c383e..6b18a7f32 100644
--- a/content/docs/12.8.0/index.html
+++ b/content/docs/12.8.0/index.html
@@ -179,7 +179,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: 25 September 25 at 00:26</p>
+<p>Last Updated: 26 September 25 at 00:24</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.8.0/searchindex.js
b/content/docs/12.8.0/searchindex.js
index a7a91c5ae..bb8e04751 100644
--- a/content/docs/12.8.0/searchindex.js
+++ b/content/docs/12.8.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/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/docs/12.9.0/index.html b/content/docs/12.9.0/index.html
index 3c1662cd2..70674670e 100644
--- a/content/docs/12.9.0/index.html
+++ b/content/docs/12.9.0/index.html
@@ -179,7 +179,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: 25 September 25 at 00:27</p>
+<p>Last Updated: 26 September 25 at 00:26</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.9.0/searchindex.js
b/content/docs/12.9.0/searchindex.js
index ca5d914c2..fc3bf2226 100644
--- a/content/docs/12.9.0/searchindex.js
+++ b/content/docs/12.9.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/cachespeed/index",
"applications/benchmarks/coremark-pro/index",
"applications/benchmarks/coremark/index",
"applications/benchmarks/cyclictest/index",
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index",
"applications/benchmarks/index", "applications/b [...]
\ 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/cyclictest/index",
"applications/benchmarks/dhrystone/index", "applications/benchmarks/fio/index",
"applications/benchmarks/index", "applications/b [...]
\ No newline at end of file
diff --git a/content/docs/latest/_sources/components/net/index.rst.txt
b/content/docs/latest/_sources/components/net/index.rst.txt
index 025966919..148880d89 100644
--- a/content/docs/latest/_sources/components/net/index.rst.txt
+++ b/content/docs/latest/_sources/components/net/index.rst.txt
@@ -12,6 +12,7 @@ Network Support
nat.rst
netdev.rst
netdriver.rst
+ mdio.rst
netguardsize.rst
netlink.rst
slip.rst
diff --git a/content/docs/latest/_sources/components/net/mdio.rst.txt
b/content/docs/latest/_sources/components/net/mdio.rst.txt
new file mode 100644
index 000000000..2c6fa1534
--- /dev/null
+++ b/content/docs/latest/_sources/components/net/mdio.rst.txt
@@ -0,0 +1,73 @@
+.. _mdio_bus:
+
+.. include:: /substitutions.rst
+
+=================
+MDIO Bus Driver
+=================
+
+The NuttX MDIO bus driver provides a standardized interface for communicating
with Ethernet PHY (Physical Layer) transceivers.
+It employs a classic upper-half/lower-half architecture to abstract
hardware-specific logic from the generic MDIO protocol,
+which is currently compliant with Clause 22 of the IEEE 802.3 standard.
+The primary implementation of the upper-half can be found in
``drivers/net/mdio.c``.
+
+Driver Architecture
+===================
+
+The MDIO driver framework serves as an intermediary layer between a network
device driver and the physical bus.
+The intended operational model is ``netdev -> phydev -> mdio``, where the
network device communicates with a dedicated PHY driver,
+which in turn uses the MDIO bus driver for low-level hardware access.
+Direct interaction between the network device and the MDIO bus is discouraged.
+
+Upper-Half Implementation
+-------------------------
+
+The upper-half driver contains the core logic for the MDIO bus, including bus
locking mechanisms to ensure safe transactions.
+It exposes a generic API for managing the bus lifecycle and is capable of
handling multiple, independent MDIO bus instances concurrently.
+This abstracts implementation details from both the PHY driver and the
underlying hardware-specific code.
+
+Lower-Half Implementation
+-------------------------
+
+A lower-half MDIO driver serves as a thin layer that maps the generic
operations defined by the upper-half to hardware-specific register
manipulations.
+It is not intended to contain complex logic, but rather to provide a direct
translation for bus operations.
+
+Implementing a Lower-Half Driver
+================================
+
+Integrating MDIO support for new hardware requires the implementation of a
lower-half driver.
+The contract between the upper and lower halves is defined in
``include/nuttx/net/mdio.h`` and is centered around two key structures.
+
+Key Data Structures
+-------------------
+
+1. ``struct mdio_ops_s``: A structure containing function pointers that the
lower-half driver must implement to perform hardware-level operations.
+ * ``read``: Performs a Clause 22 MDIO read operation.
+ * ``write``: Performs a Clause 22 MDIO write operation.
+ * ``reset``: An optional function to execute a hardware-specific PHY
reset.
+
+2. ``struct mdio_lowerhalf_s``: The container for the lower-half instance,
which holds a pointer to the ``mdio_ops_s`` vtable
+ and an optional private data pointer for the driver's internal state.
+
+Registration and Unregistration
+-------------------------------
+
+The board-level initialization logic is responsible for instantiating the
lower-half driver and registering it with the upper-half via the
``mdio_register()`` function.
+Each call to this function with a distinct lower-half driver creates a new,
unique bus handle, allowing the system to manage several MDIO buses
concurrently.
+
+.. code-block:: c
+
+ FAR struct mdio_dev_s *mdio_register(FAR struct mdio_lowerhalf_s *lower);
+
+This function accepts the lower-half instance and returns an opaque handle
(``FAR struct mdio_dev_s *``),
+which is subsequently used by the PHY driver to interact with the bus.
+
+When a bus instance is no longer required, it should be deallocated by calling
the ``mdio_unregister()`` function to ensure proper cleanup of resources.
+
+.. code-block:: c
+
+ int mdio_unregister(FAR struct mdio_dev_s *dev);
+
+This function takes the handle returned by ``mdio_register()`` and releases
the associated bus instance.
+
+A (mostly) complete reference implementation for a lower-half driver is
available in ``arch/arm/src/stm32h7/stm32_mdio.c``.
diff --git a/content/docs/latest/components/index.html
b/content/docs/latest/components/index.html
index 3c26513ca..cd165914a 100644
--- a/content/docs/latest/components/index.html
+++ b/content/docs/latest/components/index.html
@@ -259,6 +259,7 @@ case, you can head to the <a class="reference internal"
href="../reference/index
<li class="toctree-l2"><a class="reference internal"
href="net/nat.html">Network Address Translation (NAT)</a></li>
<li class="toctree-l2"><a class="reference internal"
href="net/netdev.html">Network Devices</a></li>
<li class="toctree-l2"><a class="reference internal"
href="net/netdriver.html">Network Drivers</a></li>
+<li class="toctree-l2"><a class="reference internal" href="net/mdio.html">MDIO
Bus Driver</a></li>
<li class="toctree-l2"><a class="reference internal"
href="net/netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l2"><a class="reference internal"
href="net/netlink.html">Netlink Route support</a></li>
<li class="toctree-l2"><a class="reference internal"
href="net/slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/delay_act_and_tcp_perf.html
b/content/docs/latest/components/net/delay_act_and_tcp_perf.html
index 9f0d9f61c..2141bfb33 100644
--- a/content/docs/latest/components/net/delay_act_and_tcp_perf.html
+++ b/content/docs/latest/components/net/delay_act_and_tcp_perf.html
@@ -146,6 +146,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/index.html
b/content/docs/latest/components/net/index.html
index be120bb01..f3a6b662f 100644
--- a/content/docs/latest/components/net/index.html
+++ b/content/docs/latest/components/net/index.html
@@ -146,6 +146,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
@@ -214,6 +215,7 @@
<li class="toctree-l1"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l1"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l1"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l1"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l1"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l1"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l1"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/ipfilter.html
b/content/docs/latest/components/net/ipfilter.html
index 7a934b626..24f51747d 100644
--- a/content/docs/latest/components/net/ipfilter.html
+++ b/content/docs/latest/components/net/ipfilter.html
@@ -151,6 +151,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/netguardsize.html
b/content/docs/latest/components/net/mdio.html
similarity index 59%
copy from content/docs/latest/components/net/netguardsize.html
copy to content/docs/latest/components/net/mdio.html
index 66d01a505..7bbdc5784 100644
--- a/content/docs/latest/components/net/netguardsize.html
+++ b/content/docs/latest/components/net/mdio.html
@@ -25,7 +25,7 @@
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.19:
https://docutils.sourceforge.io/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>CONFIG_NET_GUARDSIZE — NuttX latest documentation</title>
+ <title>MDIO Bus Driver — NuttX latest documentation</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css"
/>
<link rel="stylesheet" type="text/css"
href="../../_static/css/theme.css" />
<link rel="stylesheet" type="text/css"
href="../../_static/copybutton.css" />
@@ -46,7 +46,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="Netlink Route support" href="netlink.html" />
+ <link rel="next" title="CONFIG_NET_GUARDSIZE" href="netguardsize.html" />
<link rel="prev" title="Network Drivers" href="netdriver.html" />
</head>
@@ -146,12 +146,20 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
-<li class="toctree-l3 current"><a class="current reference internal"
href="#">CONFIG_NET_GUARDSIZE</a><ul>
-<li class="toctree-l4"><a class="reference internal"
href="#global-option-for-all-drivers">Global Option for All Drivers</a></li>
-<li class="toctree-l4"><a class="reference internal"
href="#packet-receipt">Packet Receipt</a></li>
-<li class="toctree-l4"><a class="reference internal"
href="#packet-transmission">Packet Transmission</a></li>
+<li class="toctree-l3 current"><a class="current reference internal"
href="#">MDIO Bus Driver</a><ul>
+<li class="toctree-l4"><a class="reference internal"
href="#driver-architecture">Driver Architecture</a><ul>
+<li class="toctree-l5"><a class="reference internal"
href="#upper-half-implementation">Upper-Half Implementation</a></li>
+<li class="toctree-l5"><a class="reference internal"
href="#lower-half-implementation">Lower-Half Implementation</a></li>
</ul>
</li>
+<li class="toctree-l4"><a class="reference internal"
href="#implementing-a-lower-half-driver">Implementing a Lower-Half
Driver</a><ul>
+<li class="toctree-l5"><a class="reference internal"
href="#key-data-structures">Key Data Structures</a></li>
+<li class="toctree-l5"><a class="reference internal"
href="#registration-and-unregistration">Registration and Unregistration</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
<li class="toctree-l3"><a class="reference internal"
href="wqueuedeadlocks.html">Work Queue Deadlocks</a></li>
@@ -199,9 +207,9 @@
<li><a href="../../index.html" class="icon icon-home"
aria-label="Home"></a></li>
<li class="breadcrumb-item"><a href="../index.html">OS
Components</a></li>
<li class="breadcrumb-item"><a href="index.html">Network
Support</a></li>
- <li class="breadcrumb-item active">CONFIG_NET_GUARDSIZE</li>
+ <li class="breadcrumb-item active">MDIO Bus Driver</li>
<li class="wy-breadcrumbs-aside">
- <a
href="https://github.com/apache/nuttx/blob/master/Documentation/components/net/netguardsize.rst"
class="fa fa-github"> Edit on GitHub</a>
+ <a
href="https://github.com/apache/nuttx/blob/master/Documentation/components/net/mdio.rst"
class="fa fa-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
@@ -209,75 +217,61 @@
<div role="main" class="document" itemscope="itemscope"
itemtype="http://schema.org/Article">
<div itemprop="articleBody">
- <section id="config-net-guardsize">
-<h1>CONFIG_NET_GUARDSIZE<a class="headerlink" href="#config-net-guardsize"
title="Permalink to this heading"></a></h1>
-<section id="global-option-for-all-drivers">
-<h2>Global Option for All Drivers<a class="headerlink"
href="#global-option-for-all-drivers" title="Permalink to this
heading"></a></h2>
-<p><code class="docutils literal notranslate"><span
class="pre">CONFIG_NET_GUARD_SIZE</span></code> is global option. It is added
to the allocated size of
-each driver packet buffer. Currently it is a very small value, defaulting to
only
-two bytes. So it is not a memory hog and should be added to the packetsize for
-all drivers for commonality. But why?</p>
-<p>It should (eventually) be larger and common for all drivers. We need to
look at
-how it is used today and how it might be used tomorrow. There is a probably a
lot
-more involved than you might be initially considering.</p>
+ <span class="target" id="mdio-bus"></span><section id="mdio-bus-driver">
+<h1>MDIO Bus Driver<a class="headerlink" href="#mdio-bus-driver"
title="Permalink to this heading"></a></h1>
+<p>The NuttX MDIO bus driver provides a standardized interface for
communicating with Ethernet PHY (Physical Layer) transceivers.
+It employs a classic upper-half/lower-half architecture to abstract
hardware-specific logic from the generic MDIO protocol,
+which is currently compliant with Clause 22 of the IEEE 802.3 standard.
+The primary implementation of the upper-half can be found in <code
class="docutils literal notranslate"><span
class="pre">drivers/net/mdio.c</span></code>.</p>
+<section id="driver-architecture">
+<h2>Driver Architecture<a class="headerlink" href="#driver-architecture"
title="Permalink to this heading"></a></h2>
+<p>The MDIO driver framework serves as an intermediary layer between a network
device driver and the physical bus.
+The intended operational model is <code class="docutils literal
notranslate"><span class="pre">netdev</span> <span class="pre">-></span>
<span class="pre">phydev</span> <span class="pre">-></span> <span
class="pre">mdio</span></code>, where the network device communicates with a
dedicated PHY driver,
+which in turn uses the MDIO bus driver for low-level hardware access.
+Direct interaction between the network device and the MDIO bus is
discouraged.</p>
+<section id="upper-half-implementation">
+<h3>Upper-Half Implementation<a class="headerlink"
href="#upper-half-implementation" title="Permalink to this heading"></a></h3>
+<p>The upper-half driver contains the core logic for the MDIO bus, including
bus locking mechanisms to ensure safe transactions.
+It exposes a generic API for managing the bus lifecycle and is capable of
handling multiple, independent MDIO bus instances concurrently.
+This abstracts implementation details from both the PHY driver and the
underlying hardware-specific code.</p>
</section>
-<section id="packet-receipt">
-<h2>Packet Receipt<a class="headerlink" href="#packet-receipt"
title="Permalink to this heading"></a></h2>
-<p>For packet receipt, it is necessary for some hardware, but not for others.
Often
-the hardware will DMA a 2 byte FCS at the end of the packet or possibly other
-hardware-specific info. But that is only part of the whole story.
-<code class="docutils literal notranslate"><span
class="pre">CONFIG_NET_GUARDSIZE</span></code> is not just for hardware packet
receipt.</p>
+<section id="lower-half-implementation">
+<h3>Lower-Half Implementation<a class="headerlink"
href="#lower-half-implementation" title="Permalink to this heading"></a></h3>
+<p>A lower-half MDIO driver serves as a thin layer that maps the generic
operations defined by the upper-half to hardware-specific register
manipulations.
+It is not intended to contain complex logic, but rather to provide a direct
translation for bus operations.</p>
</section>
-<section id="packet-transmission">
-<h2>Packet Transmission<a class="headerlink" href="#packet-transmission"
title="Permalink to this heading"></a></h2>
-<p>There are several issues for packet transmission. These are less well
defined
-and need further study, but we need to keep all of the driver packet
definitions
-in place until we understand how we are going to handle these things:</p>
-<ul>
-<li><p>Memory Overrun Bugs</p>
-<p>There was in the past, a bug that caused write past the end of the buffer by
-a couple of bytes during TX message formatting. I don’t know if that bug still
-exists, but the minimum, two-byte <code class="docutils literal
notranslate"><span class="pre">CONFIG_NET_GUARDSIZE</span></code> was
sufficient to
-eliminate the bug. That is why it has the name GUARD: Its primary purpose is
-to protect from overrunning the packet buffer and corrupting the following
memory.</p>
-<p>I do no know if we have any such bugs today. Perhaps they still do?
-Perhaps they do not? Having such a guard is a good thing for reliability in
-any case.</p>
-</li>
-<li><p>Variable size IP/TCP headers</p>
-<p>There is a limitation in the way IP packets are formatted now. Basically
they
-are formatted like this:</p>
-<blockquote>
-<div><ol class="arabic simple">
-<li><p>When the packet is received a pointer to the location of the payload is
-set (d_appdata). This is an offset into the packet buffer For TCP, that
-accounts for the MAC/Ethernet header, the minimum IPv4/IPv6 header size,
-and the minimum TCP header size.</p></li>
-<li><p>The TCP payload is written at that location,</p></li>
-<li><p>The correctly sized IPv4/IPv6 headers and the correctly sized TCP header
-are added below the payload, and finally</p></li>
-<li><p>The MAC/Ethernet header as added.</p></li>
+</section>
+<section id="implementing-a-lower-half-driver">
+<h2>Implementing a Lower-Half Driver<a class="headerlink"
href="#implementing-a-lower-half-driver" title="Permalink to this
heading"></a></h2>
+<p>Integrating MDIO support for new hardware requires the implementation of a
lower-half driver.
+The contract between the upper and lower halves is defined in <code
class="docutils literal notranslate"><span
class="pre">include/nuttx/net/mdio.h</span></code> and is centered around two
key structures.</p>
+<section id="key-data-structures">
+<h3>Key Data Structures<a class="headerlink" href="#key-data-structures"
title="Permalink to this heading"></a></h3>
+<ol class="arabic simple">
+<li><p><code class="docutils literal notranslate"><span
class="pre">struct</span> <span class="pre">mdio_ops_s</span></code>: A
structure containing function pointers that the lower-half driver must
implement to perform hardware-level operations.
+* <code class="docutils literal notranslate"><span
class="pre">read</span></code>: Performs a Clause 22 MDIO read operation.
+* <code class="docutils literal notranslate"><span
class="pre">write</span></code>: Performs a Clause 22 MDIO write operation.
+* <code class="docutils literal notranslate"><span
class="pre">reset</span></code>: An optional function to execute a
hardware-specific PHY reset.</p></li>
+<li><p><code class="docutils literal notranslate"><span
class="pre">struct</span> <span class="pre">mdio_lowerhalf_s</span></code>: The
container for the lower-half instance, which holds a pointer to the <code
class="docutils literal notranslate"><span class="pre">mdio_ops_s</span></code>
vtable
+and an optional private data pointer for the driver’s internal state.</p></li>
</ol>
-</div></blockquote>
-<p>The start offset of the packet in the packet is no longer zero, but some
-variable offset into the packet buffer. That new start offset would have
-to be passed to driver in order to send the packet.</p>
-<p>The key to making this all work is:</p>
-<blockquote>
-<div><ul class="simple">
-<li><p>Keep <code class="docutils literal notranslate"><span
class="pre">CONFIG_NET_GUARDSIZE</span></code> in all driver buffers,
and</p></li>
-<li><p>Set the <code class="docutils literal notranslate"><span
class="pre">CONFIG_NET_GUARDSIZE</span></code> to the maximum size of IPv4/IPv6
and TCP options
-(depending on which IP version is enabled and if TCP is enabled)</p></li>
-<li><p>Extend the driver interface to accept data offset into the driver’s
packet buffer.</p></li>
-</ul>
-</div></blockquote>
-</li>
-<li><p>Variable MSS</p>
-<p>Closely related to this is the MSS which is the maximum size of the payload.
-Currently that is a constant because it assumes the minimum header lengths.
-It should be variable, depending on the actual header sizes.</p>
-</li>
-</ul>
+</section>
+<section id="registration-and-unregistration">
+<h3>Registration and Unregistration<a class="headerlink"
href="#registration-and-unregistration" title="Permalink to this
heading"></a></h3>
+<p>The board-level initialization logic is responsible for instantiating the
lower-half driver and registering it with the upper-half via the <code
class="docutils literal notranslate"><span
class="pre">mdio_register()</span></code> function.
+Each call to this function with a distinct lower-half driver creates a new,
unique bus handle, allowing the system to manage several MDIO buses
concurrently.</p>
+<div class="highlight-c notranslate"><div
class="highlight"><pre><span></span><span class="n">FAR</span><span class="w">
</span><span class="k">struct</span><span class="w"> </span><span
class="nc">mdio_dev_s</span><span class="w"> </span><span
class="o">*</span><span class="n">mdio_register</span><span
class="p">(</span><span class="n">FAR</span><span class="w"> </span><span
class="k">struct</span><span class="w"> </span><span
class="nc">mdio_lowerhalf_s</span><span class="w"> </span><s [...]
+</pre></div>
+</div>
+<p>This function accepts the lower-half instance and returns an opaque handle
(<code class="docutils literal notranslate"><span class="pre">FAR</span> <span
class="pre">struct</span> <span class="pre">mdio_dev_s</span> <span
class="pre">*</span></code>),
+which is subsequently used by the PHY driver to interact with the bus.</p>
+<p>When a bus instance is no longer required, it should be deallocated by
calling the <code class="docutils literal notranslate"><span
class="pre">mdio_unregister()</span></code> function to ensure proper cleanup
of resources.</p>
+<div class="highlight-c notranslate"><div
class="highlight"><pre><span></span><span class="kt">int</span><span class="w">
</span><span class="nf">mdio_unregister</span><span class="p">(</span><span
class="n">FAR</span><span class="w"> </span><span class="k">struct</span><span
class="w"> </span><span class="nc">mdio_dev_s</span><span class="w">
</span><span class="o">*</span><span class="n">dev</span><span
class="p">);</span>
+</pre></div>
+</div>
+<p>This function takes the handle returned by <code class="docutils literal
notranslate"><span class="pre">mdio_register()</span></code> and releases the
associated bus instance.</p>
+<p>A (mostly) complete reference implementation for a lower-half driver is
available in <code class="docutils literal notranslate"><span
class="pre">arch/arm/src/stm32h7/stm32_mdio.c</span></code>.</p>
+</section>
</section>
</section>
@@ -286,7 +280,7 @@ It should be variable, depending on the actual header
sizes.</p>
</div>
<footer><div class="rst-footer-buttons" role="navigation"
aria-label="Footer">
<a href="netdriver.html" class="btn btn-neutral float-left"
title="Network Drivers" accesskey="p" rel="prev"><span class="fa
fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
- <a href="netlink.html" class="btn btn-neutral float-right"
title="Netlink Route support" accesskey="n" rel="next">Next <span class="fa
fa-arrow-circle-right" aria-hidden="true"></span></a>
+ <a href="netguardsize.html" class="btn btn-neutral float-right"
title="CONFIG_NET_GUARDSIZE" 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/components/net/nat.html
b/content/docs/latest/components/net/nat.html
index c2146b552..0eecd5e95 100644
--- a/content/docs/latest/components/net/nat.html
+++ b/content/docs/latest/components/net/nat.html
@@ -152,6 +152,7 @@
</li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/netdev.html
b/content/docs/latest/components/net/netdev.html
index 99889e41c..656ee5d27 100644
--- a/content/docs/latest/components/net/netdev.html
+++ b/content/docs/latest/components/net/netdev.html
@@ -155,6 +155,7 @@
</ul>
</li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/netdriver.html
b/content/docs/latest/components/net/netdriver.html
index c12cec591..36f6a16ad 100644
--- a/content/docs/latest/components/net/netdriver.html
+++ b/content/docs/latest/components/net/netdriver.html
@@ -46,7 +46,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="CONFIG_NET_GUARDSIZE" href="netguardsize.html" />
+ <link rel="next" title="MDIO Bus Driver" href="mdio.html" />
<link rel="prev" title="Network Devices" href="netdev.html" />
</head>
@@ -150,6 +150,7 @@
<li class="toctree-l4"><a class="reference internal"
href="#lower-half-example">“Lower Half” Example</a></li>
</ul>
</li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
@@ -450,7 +451,7 @@ exceed the TX quota temporarily.</p></li>
</div>
<footer><div class="rst-footer-buttons" role="navigation"
aria-label="Footer">
<a href="netdev.html" class="btn btn-neutral float-left"
title="Network Devices" accesskey="p" rel="prev"><span class="fa
fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
- <a href="netguardsize.html" class="btn btn-neutral float-right"
title="CONFIG_NET_GUARDSIZE" accesskey="n" rel="next">Next <span class="fa
fa-arrow-circle-right" aria-hidden="true"></span></a>
+ <a href="mdio.html" class="btn btn-neutral float-right" title="MDIO
Bus Driver" 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/components/net/netguardsize.html
b/content/docs/latest/components/net/netguardsize.html
index 66d01a505..57116ff1e 100644
--- a/content/docs/latest/components/net/netguardsize.html
+++ b/content/docs/latest/components/net/netguardsize.html
@@ -47,7 +47,7 @@
<link rel="index" title="Index" href="../../genindex.html" />
<link rel="search" title="Search" href="../../search.html" />
<link rel="next" title="Netlink Route support" href="netlink.html" />
- <link rel="prev" title="Network Drivers" href="netdriver.html" />
+ <link rel="prev" title="MDIO Bus Driver" href="mdio.html" />
</head>
<body class="wy-body-for-nav">
@@ -146,6 +146,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3 current"><a class="current reference internal"
href="#">CONFIG_NET_GUARDSIZE</a><ul>
<li class="toctree-l4"><a class="reference internal"
href="#global-option-for-all-drivers">Global Option for All Drivers</a></li>
<li class="toctree-l4"><a class="reference internal"
href="#packet-receipt">Packet Receipt</a></li>
@@ -285,7 +286,7 @@ It should be variable, depending on the actual header
sizes.</p>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation"
aria-label="Footer">
- <a href="netdriver.html" class="btn btn-neutral float-left"
title="Network Drivers" accesskey="p" rel="prev"><span class="fa
fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+ <a href="mdio.html" class="btn btn-neutral float-left" title="MDIO Bus
Driver" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"
aria-hidden="true"></span> Previous</a>
<a href="netlink.html" class="btn btn-neutral float-right"
title="Netlink Route support" accesskey="n" rel="next">Next <span class="fa
fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
diff --git a/content/docs/latest/components/net/netlink.html
b/content/docs/latest/components/net/netlink.html
index 164633f87..91fc6e4f9 100644
--- a/content/docs/latest/components/net/netlink.html
+++ b/content/docs/latest/components/net/netlink.html
@@ -146,6 +146,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3 current"><a class="current reference internal"
href="#">Netlink Route support</a><ul>
<li class="toctree-l4"><a class="reference internal"
href="#messages-content">Messages content</a></li>
diff --git a/content/docs/latest/components/net/pkt.html
b/content/docs/latest/components/net/pkt.html
index 5ba370792..097a62d68 100644
--- a/content/docs/latest/components/net/pkt.html
+++ b/content/docs/latest/components/net/pkt.html
@@ -150,6 +150,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/sixlowpan.html
b/content/docs/latest/components/net/sixlowpan.html
index 802f05c3e..d7ac94cde 100644
--- a/content/docs/latest/components/net/sixlowpan.html
+++ b/content/docs/latest/components/net/sixlowpan.html
@@ -153,6 +153,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/slip.html
b/content/docs/latest/components/net/slip.html
index 3e7939d7f..434af4c04 100644
--- a/content/docs/latest/components/net/slip.html
+++ b/content/docs/latest/components/net/slip.html
@@ -146,6 +146,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3 current"><a class="current reference internal"
href="#">SLIP</a><ul>
diff --git a/content/docs/latest/components/net/socketcan.html
b/content/docs/latest/components/net/socketcan.html
index 2d09355d8..ece923f8e 100644
--- a/content/docs/latest/components/net/socketcan.html
+++ b/content/docs/latest/components/net/socketcan.html
@@ -146,6 +146,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/tcp_network_perf.html
b/content/docs/latest/components/net/tcp_network_perf.html
index dffd2f535..0a174e843 100644
--- a/content/docs/latest/components/net/tcp_network_perf.html
+++ b/content/docs/latest/components/net/tcp_network_perf.html
@@ -146,6 +146,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/components/net/wqueuedeadlocks.html
b/content/docs/latest/components/net/wqueuedeadlocks.html
index ce969f096..3b1912b57 100644
--- a/content/docs/latest/components/net/wqueuedeadlocks.html
+++ b/content/docs/latest/components/net/wqueuedeadlocks.html
@@ -146,6 +146,7 @@
<li class="toctree-l3"><a class="reference internal" href="nat.html">Network
Address Translation (NAT)</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdev.html">Network Devices</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netdriver.html">Network Drivers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="mdio.html">MDIO Bus
Driver</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netguardsize.html">CONFIG_NET_GUARDSIZE</a></li>
<li class="toctree-l3"><a class="reference internal"
href="netlink.html">Netlink Route support</a></li>
<li class="toctree-l3"><a class="reference internal"
href="slip.html">SLIP</a></li>
diff --git a/content/docs/latest/guides/fully_linked_elf.html
b/content/docs/latest/guides/fully_linked_elf.html
index 1435bbe6d..6c7a33226 100644
--- a/content/docs/latest/guides/fully_linked_elf.html
+++ b/content/docs/latest/guides/fully_linked_elf.html
@@ -475,7 +475,7 @@ NuttX package: <code class="docutils literal
notranslate"><span class="pre">nutt
<div
class="admonition-here-is-an-alternative-minimal-and-possibly-outdated-version
admonition">
<p class="admonition-title">Here is an alternative minimal (and possibly
outdated) version</p>
<div class="sphinx_collapse docutils">
-<input class="sphinx_collapse__input"
id="cfa0dbfd-49fa-4881-9988-23814a4d5957"
name="cfa0dbfd-49fa-4881-9988-23814a4d5957" type="checkbox"><label
class="sphinx_collapse__label" for="cfa0dbfd-49fa-4881-9988-23814a4d5957"><i
class="sphinx_collapse__icon"></i>Show content:</label><div
class="sphinx_collapse__content docutils">
+<input class="sphinx_collapse__input"
id="406cd52a-1e44-4edc-8954-daade05b8f62"
name="406cd52a-1e44-4edc-8954-daade05b8f62" type="checkbox"><label
class="sphinx_collapse__label" for="406cd52a-1e44-4edc-8954-daade05b8f62"><i
class="sphinx_collapse__icon"></i>Show content:</label><div
class="sphinx_collapse__content docutils">
<div class="highlight-text notranslate"><div
class="highlight"><pre><span></span>SECTIONS
{
.text 0x00000000 :
diff --git a/content/docs/latest/guides/partially_linked_elf.html
b/content/docs/latest/guides/partially_linked_elf.html
index c3d53a74f..4a13bf81c 100644
--- a/content/docs/latest/guides/partially_linked_elf.html
+++ b/content/docs/latest/guides/partially_linked_elf.html
@@ -501,7 +501,7 @@ NuttX package: <code class="docutils literal
notranslate"><span class="pre">nutt
<div
class="admonition-here-is-an-alternative-minimal-and-possibly-outdated-version
admonition">
<p class="admonition-title">Here is an alternative minimal (and possibly
outdated) version</p>
<div class="sphinx_collapse docutils">
-<input class="sphinx_collapse__input"
id="9cb5b521-c392-4318-8650-8b8b5a05c90d"
name="9cb5b521-c392-4318-8650-8b8b5a05c90d" type="checkbox"><label
class="sphinx_collapse__label" for="9cb5b521-c392-4318-8650-8b8b5a05c90d"><i
class="sphinx_collapse__icon"></i>Show content:</label><div
class="sphinx_collapse__content docutils">
+<input class="sphinx_collapse__input"
id="bab00f7a-8e94-48b7-9f90-343da11e9bbb"
name="bab00f7a-8e94-48b7-9f90-343da11e9bbb" type="checkbox"><label
class="sphinx_collapse__label" for="bab00f7a-8e94-48b7-9f90-343da11e9bbb"><i
class="sphinx_collapse__icon"></i>Show content:</label><div
class="sphinx_collapse__content docutils">
<div class="highlight-text notranslate"><div
class="highlight"><pre><span></span>SECTIONS
{
.text 0x00000000 :
diff --git a/content/docs/latest/index.html b/content/docs/latest/index.html
index 2f96684f6..f704396e2 100644
--- a/content/docs/latest/index.html
+++ b/content/docs/latest/index.html
@@ -185,7 +185,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: 25 September 25 at 00:31</p>
+<p>Last Updated: 26 September 25 at 00:29</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 810e0162c..42ba47d89 100644
Binary files a/content/docs/latest/objects.inv and
b/content/docs/latest/objects.inv differ
diff --git a/content/docs/latest/searchindex.js
b/content/docs/latest/searchindex.js
index e9006e9d3..05eb88f62 100644
--- a/content/docs/latest/searchindex.js
+++ b/content/docs/latest/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["_tags/arch-arm64", "_tags/arch-avr",
"_tags/arch-example", "_tags/arch-renesas", "_tags/chip-a527",
"_tags/chip-a64", "_tags/chip-at90usb", "_tags/chip-atmega",
"_tags/chip-atmega2560", "_tags/chip-bcm2711", "_tags/chip-esp32",
"_tags/chip-esp32a1s", "_tags/chip-esp32picod4", "_tags/chip-esp32s2",
"_tags/chip-esp32s3", "_tags/chip-esp32wroom32", "_tags/chip-esp32wrover32",
"_tags/chip-example", "_tags/chip-fpga", "_tags/chip-imx8", "_tags/chip-imx93",
"_tag [...]
\ No newline at end of file
+Search.setIndex({"docnames": ["_tags/arch-arm64", "_tags/arch-avr",
"_tags/arch-example", "_tags/arch-renesas", "_tags/chip-a527",
"_tags/chip-a64", "_tags/chip-at90usb", "_tags/chip-atmega",
"_tags/chip-atmega2560", "_tags/chip-bcm2711", "_tags/chip-esp32",
"_tags/chip-esp32a1s", "_tags/chip-esp32picod4", "_tags/chip-esp32s2",
"_tags/chip-esp32s3", "_tags/chip-esp32wroom32", "_tags/chip-esp32wrover32",
"_tags/chip-example", "_tags/chip-fpga", "_tags/chip-imx8", "_tags/chip-imx93",
"_tag [...]
\ No newline at end of file
diff --git a/content/feed.xml b/content/feed.xml
index 49c05fea1..8e4852bde 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>Thu, 25 Sep 2025 00:33:48 +0000</pubDate>
- <lastBuildDate>Thu, 25 Sep 2025 00:33:48 +0000</lastBuildDate>
+ <pubDate>Fri, 26 Sep 2025 00:32:09 +0000</pubDate>
+ <lastBuildDate>Fri, 26 Sep 2025 00:32:09 +0000</lastBuildDate>
<generator>Jekyll v4.3.2</generator>
<item>