Document mxusbdevice

This commit is contained in:
Bottersnike 2022-04-25 02:42:40 +01:00
parent 9f4bab7cd5
commit 223cfddaf1
1 changed files with 29 additions and 9 deletions

View File

@ -1,5 +1,6 @@
{% extends "sega.html" %}
{% macro nameTable(name, guid=None) %}
<h3>Device registrations</h3>
<table>
<tr>
<td>Device Name</td>
@ -11,7 +12,7 @@
</tr>
<tr>
<td>Device GUID</td>
<td>{% if guid %}<code>{{ guid }}</code>{% endif %}</td>
<td>{% if guid %}<code>{{ "{" }}{{ guid }}{{ "}" }}</code>{% endif %}</td>
</tr>
</table>
{% endmacro %}
@ -78,7 +79,6 @@
<h2 id="columba">columba</h2>
<p>Columba is a driver used to fetch DMI information about the current system.</p>
<h3>Devices overview</h3>
{{ nameTable("columba") }}
<h3>IO control codes</h3>
<table>
@ -107,7 +107,6 @@
<h2 id="mxhwreset">mxhwreset</h2>
<p></p>
<h3>Devices overview</h3>
{{ nameTable("mxhwreset") }}
<h3>IO control codes</h3>
<table>
@ -138,7 +137,6 @@
<h2 id="mxjvs">mxjvs</h2>
<p>mxjvs is the driver used to communicate with the JVS IO board connected to the Ring* PC via the JVS USB port.</p>
<h3>Devices overview</h3>
{{ nameTable("mxjvs") }}
<h3>IO control codes</h3>
<table>
@ -169,7 +167,6 @@
<h2 id="mxparallel">mxparallel</h2>
<p>mxparallel is a wrapper driver for the parallel port used to communicate with the keychip</p>
<h3>Devices overview</h3>
{{ nameTable("mxparallel") }}
<h3>IO control codes</h3>
<table>
@ -290,7 +287,6 @@
</tr>
</tbody>
</table>
<h3>Devices overview</h3>
{{ nameTable(None, "5c49e1fe-3fec-4b8d-a4b5-76be7025d842") }}
<h3>IO control codes</h3>
<table>
@ -339,7 +335,6 @@
<h2 id="mxsram">mxsram</h2>
<p>The on-board SRAM. This device driver also supports reading and writing like a file.</p>
<h3>Devices overview</h3>
{{ nameTable("mxsram") }}
<h3>IO control codes</h3>
<table>
@ -403,7 +398,6 @@
<h2 id="mxsuperio">mxsuperio</h2>
<p>This driver communicates with some additional on-board devices. Notably EEPROM and the W83791D hardware monitor.</p>
<h3>Devices overview</h3>
{{ nameTable("mxsuperio") }}
<h3>IO control codes</h3>
<table>
@ -460,6 +454,32 @@
</ul>
<h2 id="mxusbdevice">mxusbdevice</h2>
<p>mxusbdevice is unknown currently</p>
<p>Monitors connected devices to the system, and when a device connects matching the
<code>GUID_DEVINTERFACE_USB_DEVICE</code> class (<code>{a5dcbf10-6530-11d2-901f-00c04fb951ed}</code>) it checks the
VID and PID. If it matches a pair it has been instructed to scan for, it increments the count and informs the
caller.
</p>
{{ nameTable("mxusbdevice") }}
<h3>IO control codes</h3>
<table>
<thead>
<tr>
<td>IOCTL Code</td>
<td>#define</td>
<td>Bytes in</td>
<td>Bytes out</td>
<td>Meaning</td>
</tr>
</thead>
<tbody>
<tr>
<td><code>0x9c402000</code></td>
<td><code>{{ ioctl("0x9c402000") }}</code></td>
<td>8</td>
<td>0</td>
<td>Equeue a new query. <code>{ uint insertion_count, wchar_t vid; wchar_t pid }<code> is currently my best guess regarding the structure of the payload.</td>
</tr>
</tbody>
</table>
{% endblock %}