<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/lib/efi_loader/efi_file.c, branch v2023.07.01</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/u-boot.git/atom/lib/efi_loader/efi_file.c?h=v2023.07.01</id>
<link rel='self' href='http://cgit.235523.xyz/u-boot.git/atom/lib/efi_loader/efi_file.c?h=v2023.07.01'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<updated>2022-11-16T07:34:06Z</updated>
<entry>
<title>efi_loader: replace a u16_strdup with alloc + memcpy</title>
<updated>2022-11-16T07:34:06Z</updated>
<author>
<name>Ilias Apalodimas</name>
<email>ilias.apalodimas@linaro.org</email>
</author>
<published>2022-11-11T18:04:31Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=a930d69baa958d5f308b3910187c5f3c083fe171'/>
<id>urn:sha1:a930d69baa958d5f308b3910187c5f3c083fe171</id>
<content type='text'>
Heinrich reports that on RISC-V unaligned access is emulated by OpenSBI
which is very slow.  Performance wise it's better if we skip the calls
to u16_strdup() -- which in turn calls u16_strsize() and just allocate/copy the
memory directly.  The access to dp.length may still be unaligned, but that's
way less than what u16_strsize() would do

Signed-off-by: Ilias Apalodimas &lt;ilias.apalodimas@linaro.org&gt;
Use malloc() instead of calloc().
Reviewed-by: Heinrich Schuchardt &lt;heinrich.schuchardt@canonical.com&gt;
</content>
</entry>
<entry>
<title>efi_loader: add missing EFI_CALL when closing a file</title>
<updated>2022-11-16T07:34:06Z</updated>
<author>
<name>Ilias Apalodimas</name>
<email>ilias.apalodimas@linaro.org</email>
</author>
<published>2022-11-11T16:20:37Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=64012e0c52eefa6fbfedbad772133a478bd741ea'/>
<id>urn:sha1:64012e0c52eefa6fbfedbad772133a478bd741ea</id>
<content type='text'>
Closing the files uses the EFI protocol and specifically it's .close
callback.  This needs to be wrapped on an EFI_CALL()

Signed-off-by: Ilias Apalodimas &lt;ilias.apalodimas@linaro.org&gt;
Reviewed-by: Heinrich Schuchardt &lt;heinrich.schuchardt@canonical.com&gt;
</content>
</entry>
<entry>
<title>efi_loader: add comments on efi_file_from_path() regarding alignment</title>
<updated>2022-11-16T07:34:06Z</updated>
<author>
<name>Ilias Apalodimas</name>
<email>ilias.apalodimas@linaro.org</email>
</author>
<published>2022-11-10T13:31:30Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=94a574d8f6116a12def77fbf9a92f02a430a1d12'/>
<id>urn:sha1:94a574d8f6116a12def77fbf9a92f02a430a1d12</id>
<content type='text'>
UEFI specification requires pointers that are passed to protocol member
functions to be aligned.  There's a u16_strdup in that function which
doesn't make sense otherwise  Add a comment so no one removes it
accidentally

Signed-off-by: Ilias Apalodimas &lt;ilias.apalodimas@linaro.org&gt;
Reviewed-by: Heinrich Schuchardt &lt;heinrich.schuchardt@canonical.com&gt;
</content>
</entry>
<entry>
<title>efi_loader: improve description of efi_file_from_path()</title>
<updated>2022-11-16T07:34:06Z</updated>
<author>
<name>Heinrich Schuchardt</name>
<email>heinrich.schuchardt@canonical.com</email>
</author>
<published>2022-11-10T13:14:06Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=95d18c5ed0ca952947214c619140e68b33005a4c'/>
<id>urn:sha1:95d18c5ed0ca952947214c619140e68b33005a4c</id>
<content type='text'>
Provide a description of the function's logic.

Signed-off-by: Heinrich Schuchardt &lt;heinrich.schuchardt@canonical.com&gt;
Reviewed-by: Ilias Apalodimas &lt;ilias.apalodimas@linaro.org&gt;
</content>
</entry>
<entry>
<title>eficonfig: menu-driven addition of UEFI boot option</title>
<updated>2022-09-14T06:43:31Z</updated>
<author>
<name>Masahisa Kojima</name>
<email>masahisa.kojima@linaro.org</email>
</author>
<published>2022-09-12T08:33:50Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=87d791423ac69affec43dfb834965adcb0aa02e6'/>
<id>urn:sha1:87d791423ac69affec43dfb834965adcb0aa02e6</id>
<content type='text'>
This commit add the "eficonfig" command.
The "eficonfig" command implements the menu-driven UEFI boot option
maintenance feature. This commit implements the addition of
new boot option. User can select the block device volume having
efi_simple_file_system_protocol and select the file corresponding
to the Boot#### variable. User can also enter the description and
optional_data of the BOOT#### variable in utf8.

This commit adds "include/efi_config.h", it contains the common
definition to be used from other menus such as UEFI Secure Boot
key management.

Signed-off-by: Masahisa Kojima &lt;masahisa.kojima@linaro.org&gt;
</content>
</entry>
<entry>
<title>efi_loader: correct function comment style</title>
<updated>2022-01-29T09:23:40Z</updated>
<author>
<name>Heinrich Schuchardt</name>
<email>heinrich.schuchardt@canonical.com</email>
</author>
<published>2022-01-20T18:48:20Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=3dd719d4fb2ee10bbc00729f4bcd0fba47a8360d'/>
<id>urn:sha1:3dd719d4fb2ee10bbc00729f4bcd0fba47a8360d</id>
<content type='text'>
Replace @return and @param.

Signed-off-by: Heinrich Schuchardt &lt;heinrich.schuchardt@canonical.com&gt;
</content>
</entry>
<entry>
<title>efi_loader: use %pUs for printing GUIDs</title>
<updated>2022-01-19T15:16:33Z</updated>
<author>
<name>Heinrich Schuchardt</name>
<email>heinrich.schuchardt@canonical.com</email>
</author>
<published>2022-01-16T13:15:31Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ce00a7401aef52b6a67f496fc569c960e53c059e'/>
<id>urn:sha1:ce00a7401aef52b6a67f496fc569c960e53c059e</id>
<content type='text'>
For printing GUIDs with macro EFI_ENTRY use %pUs instead of %pUl to provide
readable debug output.

Signed-off-by: Heinrich Schuchardt &lt;heinrich.schuchardt@canonical.com&gt;
</content>
</entry>
<entry>
<title>efi_loader: provide file attributes in EFI_FILE_PROTOCOL.Read()</title>
<updated>2021-07-12T18:30:48Z</updated>
<author>
<name>Heinrich Schuchardt</name>
<email>xypron.glpk@gmx.de</email>
</author>
<published>2021-05-15T20:41:26Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=79a61ccb236547a69db53ee52751e62b6a4361c3'/>
<id>urn:sha1:79a61ccb236547a69db53ee52751e62b6a4361c3</id>
<content type='text'>
When reading a directory using EFI_FILE_PROTOCOL.Read() provide file
attributes and timestamps.

Signed-off-by: Heinrich Schuchardt &lt;xypron.glpk@gmx.de&gt;
</content>
</entry>
<entry>
<title>efi_loader: loosen buffer parameter check in efi_file_read_int</title>
<updated>2021-05-18T10:36:12Z</updated>
<author>
<name>Peng Fan</name>
<email>peng.fan@nxp.com</email>
</author>
<published>2021-04-28T13:54:01Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=bc3f46518176e541c767b099fb06ad1870d59fa5'/>
<id>urn:sha1:bc3f46518176e541c767b099fb06ad1870d59fa5</id>
<content type='text'>
This is same issue as https://bugzilla.redhat.com/show_bug.cgi?id=1733817,
but that fix was wrongly partial reverted.

When reading a directory, EFI_BUFFER_TOO_SMALL should be returned when
the supplied buffer is too small, so a use-case is to call
EFI_FILE_PROTOCOL.Read() with *buffer_size=0 and buffer=NULL to
obtain the needed size before doing the actual read.

So remove the check only for directory reading, file reading already
do the check by itself.

Fixes: db12f518edb0("efi_loader: implement non-blocking file services")
Signed-off-by: Peng Fan &lt;peng.fan@nxp.com&gt;
Cc: Stefan Sørensen &lt;stefan.sorensen@spectralink.com&gt;
Tested-by: Peter Robinson &lt;pbrobinson@gmail.com&gt;
Reviewed-by: Heinrich Schuchardt &lt;xypron.glpk@gmx.de&gt;
</content>
</entry>
<entry>
<title>efi_loader: Add helper functions for EFI</title>
<updated>2021-03-25T19:14:25Z</updated>
<author>
<name>Ilias Apalodimas</name>
<email>ilias.apalodimas@linaro.org</email>
</author>
<published>2021-03-17T19:54:59Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=37c3ca5c0b1a449356279efdcaca346b3eae84fd'/>
<id>urn:sha1:37c3ca5c0b1a449356279efdcaca346b3eae84fd</id>
<content type='text'>
A following patch introduces a different logic for loading initrd's
based on the EFI_LOAD_FILE2_PROTOCOL.
Since similar logic can be applied in the future for other system files
(i.e DTBs), let's add some helper functions which will retrieve and
parse file paths stored in EFI variables.

Signed-off-by: Ilias Apalodimas &lt;ilias.apalodimas@linaro.org&gt;
</content>
</entry>
</feed>
