<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/pci, branch releng/12.4</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F12.4</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F12.4'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2022-09-06T05:44:56Z</updated>
<entry>
<title>pci(4): Fix a typo in asource code comment</title>
<updated>2022-09-06T05:44:56Z</updated>
<author>
<name>Gordon Bergling</name>
<email>gbe@FreeBSD.org</email>
</author>
<published>2022-09-03T13:28:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b5cb4a2741d1657adbc2acb488a954e745c80313'/>
<id>urn:sha1:b5cb4a2741d1657adbc2acb488a954e745c80313</id>
<content type='text'>
- s/overriden/overridden/

(cherry picked from commit 6b497700885b21106235a1ee7bfd31194e4ca42b)
</content>
</entry>
<entry>
<title>pci: Add helper routines to iterate over a device's BARs.</title>
<updated>2022-08-25T16:40:10Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2022-08-19T21:59:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=bb5b19a12c611a8a53b24def420f98ab10c262fe'/>
<id>urn:sha1:bb5b19a12c611a8a53b24def420f98ab10c262fe</id>
<content type='text'>
Reviewed by:	imp, markj, emaste
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D36237

(cherry picked from commit 16bedf532c022f2380b0bb2970a3a3ebc7ca0f36)
</content>
</entry>
<entry>
<title>pci(4): Fix a common typo in source code comments</title>
<updated>2022-07-08T02:28:30Z</updated>
<author>
<name>Gordon Bergling</name>
<email>gbe@FreeBSD.org</email>
</author>
<published>2022-07-03T11:43:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b829fb631887c2d7d70b9de5c89e34f3cf9d1abf'/>
<id>urn:sha1:b829fb631887c2d7d70b9de5c89e34f3cf9d1abf</id>
<content type='text'>
- s/transistions/transitions/

(cherry picked from commit 00c00c3824cb32abf732a8eb177eaba9385dab8b)
</content>
</entry>
<entry>
<title>pci_dw: fix outbound I/O window configuration</title>
<updated>2021-10-14T16:16:33Z</updated>
<author>
<name>Marcin Wojtas</name>
<email>mw@FreeBSD.org</email>
</author>
<published>2021-04-06T12:31:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=d12f564865718e213e9d41aa493a3b6aa7faca60'/>
<id>urn:sha1:d12f564865718e213e9d41aa493a3b6aa7faca60</id>
<content type='text'>
Use viewport "2" instead of "0" and change window type from MEM to IO.
Without these changes the MEM ATU window can be overwritten with the IO one.

Submitted by: Kornel Duleba &lt;mindal@semihalf.com&gt;
Obtained from: Semihalf
Sponsored by: Marvell
Differential revision: https://reviews.freebsd.org/D29516

(cherry picked from commit 57dbb3c25936f0d61fef152eb224ca86a73af0e9)
</content>
</entry>
<entry>
<title>pci_dw: Trim ATU windows bigger than 4GB</title>
<updated>2021-10-14T16:09:44Z</updated>
<author>
<name>Wojciech Macek</name>
<email>wma@FreeBSD.org</email>
</author>
<published>2021-04-09T07:28:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8f2e39b9d3ecbd9653f859d9261745059f2b9071'/>
<id>urn:sha1:8f2e39b9d3ecbd9653f859d9261745059f2b9071</id>
<content type='text'>
The size of the ATU MEM/IO windows is implicitly casted to uint32_t.
Because of that some window sizes were silently demoted to 0 and ignored.
Check the size if its too large, trim it to 4GB and print a warning message.

Submitted by: Kornel Duleba &lt;mindal@semihalf.com&gt;
Reviewed by: mw
Obtained from: Semihalf
Sponsored by: Marvell
Differential revision: https://reviews.freebsd.org/D29625

(cherry picked from commit 243000b19f8b4ab104b584b2d16bc6aa9131c9b5)
</content>
</entry>
<entry>
<title>pci_user: call bus_translate_resource before BAR mmap</title>
<updated>2021-10-11T13:40:11Z</updated>
<author>
<name>Marcin Wojtas</name>
<email>mw@FreeBSD.org</email>
</author>
<published>2021-04-06T15:10:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=14721190e8298199a6cfbb6d2568ea1d17e7a107'/>
<id>urn:sha1:14721190e8298199a6cfbb6d2568ea1d17e7a107</id>
<content type='text'>
On some armv8 machines it is possible that the mapping between CPU
and PCI bus BAR base addresses is not 1:1. In case a BAR is allocated
in kernel using bus_alloc_resource_any this translation is handled in
ofw_pci_activate_resource.

Do the same in pci_user.c by calling bus_translate_resource devmethod.
This fixes mmaping BARs to userspace on Marvell SoCs (Armada 7k8k/CN913x)
and possibly many other platforms.

Submitted by: Kornel Duleba &lt;mindal@semihalf.com&gt;
Reviewed by: kib
Obtained from: Semihalf
Sponsored by: Marvell
MFC after: 2 weeks
Differential revision: https://reviews.freebsd.org/D29604

(cherry picked from commit f2f1ab39c04088ce53287528549e652cf68cee09)

pci_user: fix build for 32-bit platforms

Commit: f2f1ab39c040 ("pci_user: call bus_translate_resource before BAR mmap")
broke build for 32-bit platforms due to rman_res_t and vm_paddr_t
incompatible types. Fix that.

(cherry picked from commit 9857e00a528bb230c8935ded5f118a7374bf808b)
</content>
</entry>
<entry>
<title>PCI hot-plug: use dedicated taskqueue for device attach / detach</title>
<updated>2021-05-21T10:31:04Z</updated>
<author>
<name>Andriy Gapon</name>
<email>avg@FreeBSD.org</email>
</author>
<published>2021-05-06T18:49:37Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2def2de60a6d0b979964bb67c5ff0e24d098e4a9'/>
<id>urn:sha1:2def2de60a6d0b979964bb67c5ff0e24d098e4a9</id>
<content type='text'>
Attaching and detaching devices can be heavy-weight and detaching can
sleep waiting for events.  For that reason using the system-wide
single-threaded taskqueue_thread is not really appropriate.
There is even a possibility for a deadlock if taskqueue_thread is used
for detaching.

In fact, there is an easy to reproduce deadlock involving nvme, pass
and a sudden removal of an NVMe device.
A pass peripheral would not release a reference on an nvme sim until
pass_shutdown_kqueue() is executed via taskqueue_thread.  But the
taskqueue's thread is blocked in nvme_detach() -&gt; ... -&gt; cam_sim_free()
because of the outstanding reference.

Sponsored by:	CyberSecure
Reviewed by:	mav, imp

(cherry picked from commit 12588ce02dd835b332952d9fece5881d943554a9)
</content>
</entry>
<entry>
<title>Set PCIe device's Max_Payload_Size to match PCIe root's.</title>
<updated>2021-05-05T00:57:07Z</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2021-04-05T14:34:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=96033da5c38e20c27e2ca9007cca8bfab7e350cc'/>
<id>urn:sha1:96033da5c38e20c27e2ca9007cca8bfab7e350cc</id>
<content type='text'>
Usually on boot the MPS is already configured by BIOS.  But we've
found that on hot-plug it is not true at least for our Supermicro
X11 boards.  As result, mismatch between root's configuration of
256 bytes and device's default of 128 bytes cause problems for some
devices, while others seem to work fine.

MFC after:	1 month
Sponsored by:	iXsystems, Inc.

(cherry picked from commit 5a898b2b78ce04d608bbaaa0813424b11f921ae7)
</content>
</entry>
<entry>
<title>Implement pci_get_relaxed_ordering_enabled() helper function.</title>
<updated>2021-03-24T07:59:58Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2021-03-16T15:06:42Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=7cf565b2c5f0ed90eecd52b0fde8b81b746d662e'/>
<id>urn:sha1:7cf565b2c5f0ed90eecd52b0fde8b81b746d662e</id>
<content type='text'>
Discussed with:	kib@
MFC after:	1 week
Sponsored by:	Mellanox Technologies // NVIDIA Networking

(cherry picked from commit 1acf24a044aaa0391c61af4abe7e018c3bf8a37c)
</content>
</entry>
<entry>
<title>MFC r368749:</title>
<updated>2020-12-25T13:22:37Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2020-12-18T03:46:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=88a502a77b8fb48475e02205153c15580c98fc9e'/>
<id>urn:sha1:88a502a77b8fb48475e02205153c15580c98fc9e</id>
<content type='text'>
pci_iov: When pci_iov_detach(9) is called, destroy VF children
instead of bailing out with EBUSY if there are any.

(cherry picked from commit 94f5c1cc7186ae555b962d2450cc17e06fd4fda0)
</content>
</entry>
</feed>
