<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/efidev, branch releng/14.2</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>efirt: Move comment about fpu_kern_enter to where it is called</title>
<updated>2023-10-11T15:10:31+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2023-08-25T19:33:00+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b53155d4dfc67ee3754d886a03682e8522d85b31'/>
<id>b53155d4dfc67ee3754d886a03682e8522d85b31</id>
<content type='text'>
Reviewed by:	imp, kib, andrew, markj
Differential Revision:	https://reviews.freebsd.org/D41576

(cherry picked from commit 8173fa60ddb7e9a805dec9fef7bf07e74ae4144d)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewed by:	imp, kib, andrew, markj
Differential Revision:	https://reviews.freebsd.org/D41576

(cherry picked from commit 8173fa60ddb7e9a805dec9fef7bf07e74ae4144d)
</pre>
</div>
</content>
</entry>
<entry>
<title>sys: Remove $FreeBSD$: one-line .c pattern</title>
<updated>2023-08-16T17:54:36+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-08-16T17:54:36+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=685dc743dc3b5645e34836464128e1c0558b404b'/>
<id>685dc743dc3b5645e34836464128e1c0558b404b</id>
<content type='text'>
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
</pre>
</div>
</content>
</entry>
<entry>
<title>Expose EFI wake time API</title>
<updated>2023-04-28T01:27:55+00:00</updated>
<author>
<name>Johannes Totz</name>
<email>jo@bruelltuete.com</email>
</author>
<published>2023-04-26T16:15:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=3f3ad56520ac608a05a237c73adcb664f79de3fb'/>
<id>3f3ad56520ac608a05a237c73adcb664f79de3fb</id>
<content type='text'>
Reviewed by:	kib
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D36714
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reviewed by:	kib
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D36714
</pre>
</div>
</content>
</entry>
<entry>
<title>Use the correct size when checking an EFI address</title>
<updated>2022-09-09T07:47:15+00:00</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2022-09-09T07:42:49+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=643e14d0941fad1e2105aaf8ed5c3ca1dcffdb56'/>
<id>643e14d0941fad1e2105aaf8ed5c3ca1dcffdb56</id>
<content type='text'>
Use the correct page size macro when checking if an address is with
the EFI runtime map. This would previously work correctly when the
page size is 4k. With a larger page size it may incorrectly detect
memory as within the map when it's not.

Reported by:	imp
Sponsored by:	Innovate UK
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use the correct page size macro when checking if an address is with
the EFI runtime map. This would previously work correctly when the
page size is 4k. With a larger page size it may incorrectly detect
memory as within the map when it's not.

Reported by:	imp
Sponsored by:	Innovate UK
</pre>
</div>
</content>
</entry>
<entry>
<title>efirtc: Remove unused devclass argument to DRIVER_MODULE.</title>
<updated>2022-05-06T22:39:29+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2022-04-19T21:12:48+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=7bb02a79086a9bf0720647e92982e6d7c516d6e0'/>
<id>7bb02a79086a9bf0720647e92982e6d7c516d6e0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>efirt: Mark buffers filled out by EFI firmware as initialized</title>
<updated>2021-09-07T15:19:29+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2021-09-07T14:07:04+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=eec892a8458b748bfd5273c7c675d73ef1805823'/>
<id>eec892a8458b748bfd5273c7c675d73ef1805823</id>
<content type='text'>
Otherwise KMSAN may report false positives.

Sponsored by:	The FreeBSD Foundation
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Otherwise KMSAN may report false positives.

Sponsored by:	The FreeBSD Foundation
</pre>
</div>
</content>
</entry>
<entry>
<title>EFI RT: resurrect EFIIOC_GET_TABLE</title>
<updated>2021-07-03T17:06:48+00:00</updated>
<author>
<name>Pavel Balaev</name>
<email>pavel.balaev@3mdeb.com</email>
</author>
<published>2021-07-01T16:27:25+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=d12d651f8692cfcaf6fd0a6e8264c29547f644c9'/>
<id>d12d651f8692cfcaf6fd0a6e8264c29547f644c9</id>
<content type='text'>
Make it work, but change the interface to be safe for non-root users. In
particular, right now interface only works for the tables which can be
minimally parsed by kernel to determine the table size. Then, userspace can
query the table size, after that it provides a buffer of needed size
and kernel copies out just table to userspace.

Main advantage is that user no longer need to be able to read /dev/mem,
the disadvantage is the need to have minimal parsers aware of the table
types.  Right now the parsers are implemented for ESRT and PROP tables.

Future extension of the present interface might be a return of only
the table physical address, in case kernel does not have suitable
parser yet. Then, a privileged user could read the table from /dev/mem.
This extension, which logically equivalent to the old (non-worked)
EFIIOC_GET_TABLE variant, is not implemented until needed.

Submitted by:	Pavel Balaev &lt;pavel.balaev@3mdeb.com&gt;
MFC after:	2 weeks
Differential revision:	https://reviews.freebsd.org/D30104
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make it work, but change the interface to be safe for non-root users. In
particular, right now interface only works for the tables which can be
minimally parsed by kernel to determine the table size. Then, userspace can
query the table size, after that it provides a buffer of needed size
and kernel copies out just table to userspace.

Main advantage is that user no longer need to be able to read /dev/mem,
the disadvantage is the need to have minimal parsers aware of the table
types.  Right now the parsers are implemented for ESRT and PROP tables.

Future extension of the present interface might be a return of only
the table physical address, in case kernel does not have suitable
parser yet. Then, a privileged user could read the table from /dev/mem.
This extension, which logically equivalent to the old (non-worked)
EFIIOC_GET_TABLE variant, is not implemented until needed.

Submitted by:	Pavel Balaev &lt;pavel.balaev@3mdeb.com&gt;
MFC after:	2 weeks
Differential revision:	https://reviews.freebsd.org/D30104
</pre>
</div>
</content>
</entry>
<entry>
<title>Switch the EFI virtual address to a uint64_t</title>
<updated>2021-05-01T06:01:20+00:00</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2021-04-14T08:22:06+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c78ad207baed95dc3148632ab882d445acc39034'/>
<id>c78ad207baed95dc3148632ab882d445acc39034</id>
<content type='text'>
It is defined as a uint64_t in the UEFI spec. As it's not used as a
pointer by the kernel follow this and define it as the same in the
kernel.

Reviewed by:	kib, manu, imp
Sponsored by:	Innovate UK
Differential Revision:	https://reviews.freebsd.org/D29759
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It is defined as a uint64_t in the UEFI spec. As it's not used as a
pointer by the kernel follow this and define it as the same in the
kernel.

Reviewed by:	kib, manu, imp
Sponsored by:	Innovate UK
Differential Revision:	https://reviews.freebsd.org/D29759
</pre>
</div>
</content>
</entry>
<entry>
<title>efirt: add hooks for diverging EFI implementations</title>
<updated>2021-02-16T14:26:11+00:00</updated>
<author>
<name>Roger Pau Monné</name>
<email>royger@FreeBSD.org</email>
</author>
<published>2021-02-12T11:11:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=27d3902679cd6df6404cd402ffc85a9763c449b1'/>
<id>27d3902679cd6df6404cd402ffc85a9763c449b1</id>
<content type='text'>
Introduce a set of hooks for MI EFI public functions, so that a new
implementation can be done. This will be used to implement the Xen PV
EFI interface that's used when running FreeBSD as a Xen dom0 from UEFI
firmware. Also make the efi_status_to_errno non-static since it will
be used to evaluate status return values from the PV interface.

No functional change indented.

Sponsored by:		Citrix Systems R&amp;D
Reviewed by:		kib, imp
Differential revision:	https://reviews.freebsd.org/D28620
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Introduce a set of hooks for MI EFI public functions, so that a new
implementation can be done. This will be used to implement the Xen PV
EFI interface that's used when running FreeBSD as a Xen dom0 from UEFI
firmware. Also make the efi_status_to_errno non-static since it will
be used to evaluate status return values from the PV interface.

No functional change indented.

Sponsored by:		Citrix Systems R&amp;D
Reviewed by:		kib, imp
Differential revision:	https://reviews.freebsd.org/D28620
</pre>
</div>
</content>
</entry>
<entry>
<title>efidev: remove EFIIOC_GET_TABLE ioctl</title>
<updated>2021-01-08T16:41:50+00:00</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2021-01-07T21:51:18+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=9be9771c875259b9c99414feb3833c5af03baa8b'/>
<id>9be9771c875259b9c99414feb3833c5af03baa8b</id>
<content type='text'>
This ioctl would instantly induce a panic, likely since near inception, up
until 0861c7d3e048. Lack of previous interest in fixing it combined with
the problematic interface (exports a pointer, really a physical address)
brings us to the natural conclusion: remove it until a useful consumer
forward.

If it eventually gets resurrected, the interface should definitely not
return in this exact form and likely needs to be reimagined.

The associated KPI, efi_get_table, is left intact for the time being.

Reviewed by:	imp, jrtc27
Also discussed with:	brooks, jhb
Differential Revision:	https://reviews.freebsd.org/D28030
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This ioctl would instantly induce a panic, likely since near inception, up
until 0861c7d3e048. Lack of previous interest in fixing it combined with
the problematic interface (exports a pointer, really a physical address)
brings us to the natural conclusion: remove it until a useful consumer
forward.

If it eventually gets resurrected, the interface should definitely not
return in this exact form and likely needs to be reimagined.

The associated KPI, efi_get_table, is left intact for the time being.

Reviewed by:	imp, jrtc27
Also discussed with:	brooks, jhb
Differential Revision:	https://reviews.freebsd.org/D28030
</pre>
</div>
</content>
</entry>
</feed>
