<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/puc, branch main</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>bus: Document special ranges of IVARs</title>
<updated>2026-02-17T20:45:13+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2026-02-17T20:45:13+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=6cf4e30252fe48b230b9d76cac20576d5b3d2ffa'/>
<id>6cf4e30252fe48b230b9d76cac20576d5b3d2ffa</id>
<content type='text'>
Some IVAR indices are special in that they have global meaning across
multiple buses where as other IVARs are always private to the local bus.
Try to document this a bit and add constants for the various ranges to
avoid future conflicts.

This is a no-op, but IVAR indices are now generally defined as enums
as that makes it easier to define them in terms of ranges.

Reviewed by:	imp, royger, andrew
Differential Revision:	https://reviews.freebsd.org/D54159
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some IVAR indices are special in that they have global meaning across
multiple buses where as other IVARs are always private to the local bus.
Try to document this a bit and add constants for the various ranges to
avoid future conflicts.

This is a no-op, but IVAR indices are now generally defined as enums
as that makes it easier to define them in terms of ranges.

Reviewed by:	imp, royger, andrew
Differential Revision:	https://reviews.freebsd.org/D54159
</pre>
</div>
</content>
</entry>
<entry>
<title>bus_alloc_resource: Pass rid by value to BUS_ALLOC_RESOURCE DEVMETHOD</title>
<updated>2025-12-09T20:00:06+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2025-12-09T19:59:21+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=575639548cef58590a1d70c29e47aae0e8d44153'/>
<id>575639548cef58590a1d70c29e47aae0e8d44153</id>
<content type='text'>
The wrapper functions such as bus_alloc_resource_any() still support
passing the rid by value or pointer, but the underlying implementation
now passes by value.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D53402
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The wrapper functions such as bus_alloc_resource_any() still support
passing the rid by value or pointer, but the underlying implementation
now passes by value.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D53402
</pre>
</div>
</content>
</entry>
<entry>
<title>puc: Add support for Systembase SB16C1054, SB16C1058.</title>
<updated>2025-08-26T11:09:15+00:00</updated>
<author>
<name>Jashank Jeremy</name>
<email>jashank@rulingia.com.au</email>
</author>
<published>2025-08-26T11:09:15+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=768ce2eba66c155a4358d5285008555872b4bb61'/>
<id>768ce2eba66c155a4358d5285008555872b4bb61</id>
<content type='text'>
The Systembase SB16C1054 and SB16C1058 are PCI quad- and octal-UART
complexes, based on multiple Systembase SB16C1050 cores, which appear to
be compatible with the NS8250 family (except for the "enable interrupts"
bit in the other BAR).

The SB16C105x family are one of two families of PCIe UART complexes on
cards by StarTech.com, such as the PEX4S1050 and PEX8S1050. (Other
StarTech.com serial offerings use the ASIX AX99100 or ASIX MCS990x.)

This is derived from the NetBSD driver.

Reviewed by:    imp
Tested by:      Jashank Jeremy &lt;jashank@rulingia.com.au&gt;
Obtained from:  Jashank Jeremy &lt;jashank@rulingia.com.au&gt;
MFC after:      1 week
Differential Revision:  &lt;https://reviews.freebsd.org/D52150
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Systembase SB16C1054 and SB16C1058 are PCI quad- and octal-UART
complexes, based on multiple Systembase SB16C1050 cores, which appear to
be compatible with the NS8250 family (except for the "enable interrupts"
bit in the other BAR).

The SB16C105x family are one of two families of PCIe UART complexes on
cards by StarTech.com, such as the PEX4S1050 and PEX8S1050. (Other
StarTech.com serial offerings use the ASIX AX99100 or ASIX MCS990x.)

This is derived from the NetBSD driver.

Reviewed by:    imp
Tested by:      Jashank Jeremy &lt;jashank@rulingia.com.au&gt;
Obtained from:  Jashank Jeremy &lt;jashank@rulingia.com.au&gt;
MFC after:      1 week
Differential Revision:  &lt;https://reviews.freebsd.org/D52150
</pre>
</div>
</content>
</entry>
<entry>
<title>puc: Use device_delete_children if attach fails</title>
<updated>2025-01-02T18:25:38+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2025-01-02T18:25:38+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=925e1016b163701268a4298d1eca4b2484a81526'/>
<id>925e1016b163701268a4298d1eca4b2484a81526</id>
<content type='text'>
This is slightly simpler than deleting individual devices.

Differential Revision:	https://reviews.freebsd.org/D47974
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is slightly simpler than deleting individual devices.

Differential Revision:	https://reviews.freebsd.org/D47974
</pre>
</div>
</content>
</entry>
<entry>
<title>Use bus_generic_detach to detach and delete child devices during detach</title>
<updated>2025-01-02T18:25:12+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2025-01-02T18:25:12+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=11a9117871e6037ae7b8011b243939322efce569'/>
<id>11a9117871e6037ae7b8011b243939322efce569</id>
<content type='text'>
This is simpler and more robust than individual calls to
device_delete_child.

Differential Revision:	https://reviews.freebsd.org/D47972
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is simpler and more robust than individual calls to
device_delete_child.

Differential Revision:	https://reviews.freebsd.org/D47972
</pre>
</div>
</content>
</entry>
<entry>
<title>uart: Add support for Brainboxes / Intashield serial cards.</title>
<updated>2024-12-31T09:04:27+00:00</updated>
<author>
<name>Yoshihiro Takahashi</name>
<email>nyan@FreeBSD.org</email>
</author>
<published>2024-12-31T09:04:27+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=41b30bbc1a57b60afee9acdd6ad240c92ef13790'/>
<id>41b30bbc1a57b60afee9acdd6ad240c92ef13790</id>
<content type='text'>
PR:		283226
Reported by:	Cameron Williams
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PR:		283226
Reported by:	Cameron Williams
</pre>
</div>
</content>
</entry>
<entry>
<title>newbus: globally replace device_add_child(..., -1) with DEVICE_UNIT_ANY</title>
<updated>2024-07-25T04:22:58+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2024-07-25T04:22:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=5b56413d04e608379c9a306373554a8e4d321bc0'/>
<id>5b56413d04e608379c9a306373554a8e4d321bc0</id>
<content type='text'>
Sponsored by:		Netflix
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Sponsored by:		Netflix
</pre>
</div>
</content>
</entry>
<entry>
<title>new-bus: Remove the 'rid' and 'type' arguments from BUS_RELEASE_RESOURCE</title>
<updated>2024-03-13T22:05:54+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2024-03-13T22:05:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=9dbf5b0e6876d8c93890754bcc9c748339de79c0'/>
<id>9dbf5b0e6876d8c93890754bcc9c748339de79c0</id>
<content type='text'>
The public bus_release_resource() API still accepts both forms, but
the internal kobj method no longer passes the arguments.
Implementations which need the rid or type now use rman_get_rid() or
rman_get_type() to fetch the value from the allocated resource.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D44131
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The public bus_release_resource() API still accepts both forms, but
the internal kobj method no longer passes the arguments.
Implementations which need the rid or type now use rman_get_rid() or
rman_get_type() to fetch the value from the allocated resource.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D44131
</pre>
</div>
</content>
</entry>
<entry>
<title>puc: Add support for Exar XR17V354 Quad PCI Express UART.</title>
<updated>2024-01-08T06:31:19+00:00</updated>
<author>
<name>Teerayut Hiruntaraporn</name>
<email>teerayut.h@throughwave.co.th</email>
</author>
<published>2024-01-08T06:31:19+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=5704277ae58b3498fbee2d041cd18d2444f5cf98'/>
<id>5704277ae58b3498fbee2d041cd18d2444f5cf98</id>
<content type='text'>
PR:		257207
MFC after:	1 week
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PR:		257207
MFC after:	1 week
</pre>
</div>
</content>
</entry>
<entry>
<title>sys: Automated cleanup of cdefs and other formatting</title>
<updated>2023-11-27T05:24:00+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-11-24T20:12:57+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=fdafd315ad0d0f28a11b9fb4476a9ab059c62b92'/>
<id>fdafd315ad0d0f28a11b9fb4476a9ab059c62b92</id>
<content type='text'>
Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+&lt;sys/cdefs.h&gt;.*\n/
Remove /\n+#include\s+&lt;sys/cdefs.h&gt;.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/types.h&gt;/
Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/param.h&gt;/
Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/capsicum.h&gt;/

Sponsored by:		Netflix
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+&lt;sys/cdefs.h&gt;.*\n/
Remove /\n+#include\s+&lt;sys/cdefs.h&gt;.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/types.h&gt;/
Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/param.h&gt;/
Remove /\n+#include\s+&lt;sys/cdefs.h&gt;\n#include\s+&lt;sys/capsicum.h&gt;/

Sponsored by:		Netflix
</pre>
</div>
</content>
</entry>
</feed>
