Revision tags: v00.04.15, v00.04.14, v00.04.13, v00.04.12, v00.04.11, v00.04.10, v00.04.09, v00.04.08, v00.04.07, v00.04.06, v00.04.05, v00.04.04, v00.04.03, v00.04.02, v00.04.01, v00.04.00, v2021.04, v00.03.03, v2021.01, v2020.10, v2020.07, v00.02.13, v2020.04, v2020.01, v2019.10, v00.02.05, v00.02.04, v00.02.03, v00.02.02, v00.02.01, v2019.07, v00.02.00, v2019.04 |
|
#
c4d32379 |
| 18-Jan-2019 |
Tom Rini <trini@konsulko.com> |
Merge branch '2019-01-18-master-imports'
- Bugfix for SPI environment optimization - Spelling fixes - Remove some defconfigs per various maintainers - Minor db410, bananapi r2 fixes - Bump QEMU to v
Merge branch '2019-01-18-master-imports'
- Bugfix for SPI environment optimization - Spelling fixes - Remove some defconfigs per various maintainers - Minor db410, bananapi r2 fixes - Bump QEMU to v3.1.0 for most platforms
show more ...
|
#
7de24b27 |
| 12-Jan-2019 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
disk: efi: GUIDs should be const
Make system_guid const.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
|
#
3d5ced9e |
| 10-Oct-2018 |
Tom Rini <trini@konsulko.com> |
Merge tag 'dm-9oct18' of git://git.denx.de/u-boot-dm
Test improvements to tidy up output and drop duplicate tests Sandbox SPL/TPL support Various dm-related improvements
|
#
67b90522 |
| 01-Oct-2018 |
Simon Glass <sjg@chromium.org> |
Rename GPT_HEADER_SIGNATURE to avoid conflict
The current name conflicts with the Chrome OS verified boot library, which prevents it being built. That library uses a string whereas U-Boot uses a 64-
Rename GPT_HEADER_SIGNATURE to avoid conflict
The current name conflicts with the Chrome OS verified boot library, which prevents it being built. That library uses a string whereas U-Boot uses a 64-bit hex value. Rename this in U-Boot.
Signed-off-by: Simon Glass <sjg@chromium.org>
show more ...
|
#
dee37fc9 |
| 06-Aug-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Remove <inttypes.h> includes and PRI* usages in printf() entirely
In int-ll64.h, we always use the following typedefs:
typedef unsigned int u32; typedef unsigned long uintptr_t;
Remove <inttypes.h> includes and PRI* usages in printf() entirely
In int-ll64.h, we always use the following typedefs:
typedef unsigned int u32; typedef unsigned long uintptr_t; typedef unsigned long long u64;
This does not need to match to the compiler's <inttypes.h>. Do not include it.
The use of PRI* makes the code super-ugly. You can simply use "l" for printing uintptr_t, "ll" for u64, and no modifier for u32.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
Revision tags: v2018.07 |
|
#
9d0dc692 |
| 14-Jun-2018 |
Tom Rini <trini@konsulko.com> |
Merge tag 'signed-efi-next' of git://github.com/agraf/u-boot
Patch queue for efi - 2018-06-14
A few minor fixes for the release:
- Compile fixes - HI20 relocations for RISC-V - Fix bootefi w
Merge tag 'signed-efi-next' of git://github.com/agraf/u-boot
Patch queue for efi - 2018-06-14
A few minor fixes for the release:
- Compile fixes - HI20 relocations for RISC-V - Fix bootefi without load path - Fix Runtime Services with certain compilers
show more ...
|
#
44ab2d32 |
| 09-Jun-2018 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
efi_loader: avoid initializer element is not constant
When building with -pedantic the current definition of EFI_GUID() causes an error 'initializer element is not constant'.
Currently EFI_GUID() i
efi_loader: avoid initializer element is not constant
When building with -pedantic the current definition of EFI_GUID() causes an error 'initializer element is not constant'.
Currently EFI_GUID() is used both as an anonymous constant and as an intializer. A conversion to efi_guid_t is not allowable when using EFI_GUID() as an initializer. But it is needed when using it as an anonymous constant.
We should not use EFI_GUID() for anything but an initializer. So let's introduce a variable where needed and remove the conversion.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
#
955575c8 |
| 21-May-2018 |
Sam Protsenko <semen.protsenko@linaro.org> |
disk: efi: Correct backing up the MBR boot code
In commit e163a931af34 ("cmd: gpt: backup boot code before writing MBR") there was added the procedure for storing old boot code when doing "gpt write
disk: efi: Correct backing up the MBR boot code
In commit e163a931af34 ("cmd: gpt: backup boot code before writing MBR") there was added the procedure for storing old boot code when doing "gpt write". But instead of storing just backup code, the whole MBR was stored, and only specific fields were replaced further, keeping everything else intact. That's obviously not what we want.
Fix the code to actually store only old boot code and zero out everything else. This fixes next testing case:
=> mmc write $loadaddr 0x0 0x7b => gpt write mmc 1 $partitions
In case when $loadaddr address and further memory contains 0xff, the board was bricked (ROM-code probably didn't like partition entries that were clobbered with 0xff). With this patch applied, commands above don't brick the board.
Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org> Cc: Alejandro Hernandez <ajhernandez@ti.com> Tested-by: Andy Shevchenko <andy.shevchenko@gmail.com>
show more ...
|
#
83d290c5 |
| 06-May-2018 |
Tom Rini <trini@konsulko.com> |
SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So
SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us.
In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style.
This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one.
Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
Revision tags: v2018.03 |
|
#
1811a928 |
| 06-Feb-2018 |
Adam Ford <aford173@gmail.com> |
Move most CONFIG_HAVE_BLOCK_DEVICE to Kconfig
config_fallbacks.h has some logic that sets HAVE_BLOCK_DEVICE based on a list of enabled options. Moving HAVE_BLOCK_DEVICE to Kconfig allows us to dras
Move most CONFIG_HAVE_BLOCK_DEVICE to Kconfig
config_fallbacks.h has some logic that sets HAVE_BLOCK_DEVICE based on a list of enabled options. Moving HAVE_BLOCK_DEVICE to Kconfig allows us to drastically shrink the logic in config_fallbacks.h
Signed-off-by: Adam Ford <aford173@gmail.com> [trini: Rename HAVE_BLOCK_DEVICE to CONFIG_BLOCK_DEVICE] Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
Revision tags: v2018.01 |
|
#
3cc56611 |
| 17-Nov-2017 |
Patrick Delaunay <patrick.delaunay@st.com> |
disk: efi: correct the allocation size for mbr header in stack
use ALLOC_CACHE_ALIGN_BUFFER_PAD for mbr header allocation in stack to fix alloc issue in is_gpt_valid()
this patch fix also issue for
disk: efi: correct the allocation size for mbr header in stack
use ALLOC_CACHE_ALIGN_BUFFER_PAD for mbr header allocation in stack to fix alloc issue in is_gpt_valid()
this patch fix also issue for GPT partition handling with blocksize != 512 in set_protective_mbr()
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
show more ...
|
Revision tags: v2017.11 |
|
#
bb021013 |
| 27-Oct-2017 |
Lukasz Majewski <lukma@denx.de> |
gpt: Use cache aligned buffers for gpt_h and gpt_e
Before this patch one could receive following errors when executing "gpt write" command on machine with cache enabled:
display5 factory > gpt writ
gpt: Use cache aligned buffers for gpt_h and gpt_e
Before this patch one could receive following errors when executing "gpt write" command on machine with cache enabled:
display5 factory > gpt write mmc ${mmcdev} ${partitions} Writing GPT: CACHE: Misaligned operation at range [4ef8f7f0, 4ef8f9f0] CACHE: Misaligned operation at range [4ef8f9f8, 4ef939f8] CACHE: Misaligned operation at range [4ef8f9f8, 4ef939f8] CACHE: Misaligned operation at range [4ef8f7f0, 4ef8f9f0] success!
To alleviate this problem - the calloc()s have been replaced with malloc_cache_aligned() and memset().
After those changes the buffers are properly aligned (with both start address and size) to SoC cache line.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
show more ...
|
#
ae0e0228 |
| 18-Oct-2017 |
Patrick Delaunay <patrick.delaunay@st.com> |
disk: efi: correct the overlap check on GPT header and PTE
the partition starting at 0x4400 is refused with overlap error: $> gpt write mmc 0 "name=test,start=0x4400,size=0" Writing GPT: Partiti
disk: efi: correct the overlap check on GPT header and PTE
the partition starting at 0x4400 is refused with overlap error: $> gpt write mmc 0 "name=test,start=0x4400,size=0" Writing GPT: Partition overlap error!
even if the 0x4400 is the first available offset for LBA35 with default value: - MBR=LBA1 - GPT header=LBA2 - PTE= 32 LBAs (128 entry), 3 to 34
And the command to have one partition for all the disk failed also : $> gpt write mmc 0 "name=test,size=0"
After the patch :
$> gpt write mmc 0 "name=test,size=0" Writing GPT: success! $> part list mmc 0
Partition Map for MMC device 0 -- Partition Type: EFI
Part Start LBA End LBA Name Attributes Type GUID Partition GUID 1 0x00000022 0x01ce9fde "test" attrs: 0x0000000000000000 type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 type: data guid: b4b84b8a-04e3-4000-0036-aff5c9c495b1
And 0x22 = 34 LBA => offset = 0x4400 is accepted as expected
Reviewed-by: Łukasz Majewski <lukma@denx.de> Tested-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
show more ...
|
#
b351ccf1 |
| 03-Oct-2017 |
Tom Rini <trini@konsulko.com> |
part_efi: In is_gpt_valid() check argument validity before allocation
While this goes somewhat against normal coding style we should ensure that dev_desc is not NULL before we dereference it in allo
part_efi: In is_gpt_valid() check argument validity before allocation
While this goes somewhat against normal coding style we should ensure that dev_desc is not NULL before we dereference it in allocation of legacy_mbr.
Reported-by: Coverity (CID: 167292) Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
#
9b643e31 |
| 16-Sep-2017 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
treewide: replace with error() with pr_err()
U-Boot widely uses error() as a bit noisier variant of printf().
This macro causes name conflict with the following line in include/linux/compiler-gcc.h
treewide: replace with error() with pr_err()
U-Boot widely uses error() as a bit noisier variant of printf().
This macro causes name conflict with the following line in include/linux/compiler-gcc.h:
# define __compiletime_error(message) __attribute__((error(message)))
This prevents us from using __compiletime_error(), and makes it difficult to fully sync BUILD_BUG macros with Linux. (Notice Linux's BUILD_BUG_ON_MSG is implemented by using compiletime_assert().)
Let's convert error() into now treewide-available pr_err().
Done with the help of Coccinelle, excluing tools/ directory.
The semantic patch I used is as follows:
// <smpl> @@@@ -error +pr_err (...) // </smpl>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reviewed-by: Simon Glass <sjg@chromium.org> [trini: Re-run Coccinelle] Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
#
958046fc |
| 01-Oct-2017 |
Tom Rini <trini@konsulko.com> |
Merge tag 'signed-efi-next' of git://github.com/agraf/u-boot
Patch queue for efi - 2017-10-01
Lots of new things this time. High level highlights are:
- Shim support (to boot Fedora) - Initial
Merge tag 'signed-efi-next' of git://github.com/agraf/u-boot
Patch queue for efi - 2017-10-01
Lots of new things this time. High level highlights are:
- Shim support (to boot Fedora) - Initial set of unit tests - Preparations to support UEFI Shell
show more ...
|
#
ff98cb90 |
| 13-Sep-2017 |
Peter Jones <pjones@redhat.com> |
part: extract MBR signature from partitions
EFI client programs need the signature information from the partition table to determine the disk a partition is on, so we need to fill that in here.
Sig
part: extract MBR signature from partitions
EFI client programs need the signature information from the partition table to determine the disk a partition is on, so we need to fill that in here.
Signed-off-by: Peter Jones <pjones@redhat.com> [separated from efi_loader part, and fixed build-errors for non- CONFIG_EFI_PARTITION case] Signed-off-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
#
79c5912e |
| 23-Aug-2017 |
Maxime Ripard <maxime.ripard@free-electrons.com> |
part: efi: Disable overlap check
The current code checks that no partitions overlap with the GPT partition table using the offset of the first LBA usable for that partition.
This works fine, unless
part: efi: Disable overlap check
The current code checks that no partitions overlap with the GPT partition table using the offset of the first LBA usable for that partition.
This works fine, unless you have a partition entry that is further away than it usually is and you want to create partitions in the gap between the GPT header and the GPT partition entries, for example to reflash a bootloader that needs to be set there.
Rework the test to something a bit smarter that checks whether a partition would overlap with either the GPT header or the partition entries, no matter where it is on the disk.
Partitions that do not have a start LBA specified will still start at the first LBA usable set in the GPT header, to avoid weird behaviours.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Tom Rini <trini@konsulko.com>
show more ...
|
#
47d7ee47 |
| 23-Aug-2017 |
Maxime Ripard <maxime.ripard@free-electrons.com> |
part: efi: make gpt_fill_pte take the device descriptor
The gpt_fill_pte will need to access the device block size. Let's pass the device descriptor as an argument.
Signed-off-by: Maxime Ripard <ma
part: efi: make gpt_fill_pte take the device descriptor
The gpt_fill_pte will need to access the device block size. Let's pass the device descriptor as an argument.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Tom Rini <trini@konsulko.com>
show more ...
|
#
5276e8b6 |
| 23-Aug-2017 |
Maxime Ripard <maxime.ripard@free-electrons.com> |
part: efi: rework the partition start and size in gpt_fill_pte
The start variable is only used inside a loop, and is never affected inside it, so it's a purely local variable.
In the same way the p
part: efi: rework the partition start and size in gpt_fill_pte
The start variable is only used inside a loop, and is never affected inside it, so it's a purely local variable.
In the same way the partition size is accessed several times, so we can store it in a variable.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Tom Rini <trini@konsulko.com>
show more ...
|
#
89d33a2c |
| 23-Aug-2017 |
Maxime Ripard <maxime.ripard@free-electrons.com> |
part: efi: Fix offset
Both the config option and the DT options specify the offset to set the GPT at in bytes, yet the code treats those values as block numbers.
Fix that.
Signed-off-by: Maxime Ri
part: efi: Fix offset
Both the config option and the DT options specify the offset to set the GPT at in bytes, yet the code treats those values as block numbers.
Fix that.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
show more ...
|
#
73d6d18b |
| 25-Jun-2017 |
Alison Chaiken <alison@peloton-tech.com> |
GPT: add accessor function for disk GUID
In order to read the GPT, modify the partition name strings, and then write out a new GPT, the disk GUID is needed. While there is an existing accessor for
GPT: add accessor function for disk GUID
In order to read the GPT, modify the partition name strings, and then write out a new GPT, the disk GUID is needed. While there is an existing accessor for the partition UUIDs, there is none yet for the disk GUID.
Changes since v6: none.
Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
show more ...
|
#
db9b6200 |
| 25-Jun-2017 |
Alison Chaiken <alison@peloton-tech.com> |
EFI: replace number with UUID_STR_LEN macro
Changes since v6: none.
Signed-off-by: Alison Chaiken <alison@peloton-tech.com>
|
#
02e43537 |
| 01-Mar-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
part_efi: support padding between the GPT header and partition entries
Some architectures require their SPL loader at a fixed address within the first 16KB of the disk. To avoid an overlap with the
part_efi: support padding between the GPT header and partition entries
Some architectures require their SPL loader at a fixed address within the first 16KB of the disk. To avoid an overlap with the partition entries of the EFI partition table, the first safe offset (in bytes, from the start of the device) for the entries can be set through CONFIG_EFI_PARTITION_ENTRIES_OFF (via Kconfig)
When formatting a device with an EFI partition table, we may need to leave a gap between the GPT header (always in LBA 1) and the partition entries. The GPT header already contains a field to specify the on-disk location, which has so far always been set to LBA 2. With this change, a configurable offset will be translated into a LBA address indicating where to put the entries.
Now also allows an override via device-tree using a config-node (see doc/device-tree-bindings/config.txt for documentation).
Tested (exporting an internal MMC formatted with this) against Linux, MacOS X and Windows.
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> [trini: __maybe_unused on config_offset to avoid warning] Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
#
9da52f8f |
| 27-Feb-2017 |
Vincent Tinelli <vincent.tinelli@intel.com> |
gpt: Fix uuid string format
Change GPT UUID string format from UUID to GUID per specification.
Signed-off-by: Vincent Tinelli <vincent.tinelli@intel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
|