Add a set of combined tests for the bootdev, bootflow and bootmeth
commands, along with associated functionality.
Expand the sandbox console-recording limit so that these can work.
These tests rely on a filesystem script which is not yet added to the
Python tests. It is included here as a shell s
At present we support reading a string list a string at a time. Apart
from being inefficient, this makes it impossible to separate reading of
the devicetree into the of_to_plat() method where it belongs, since any
code which needs access to the string must read it from the devicetree.
Add a functi
Provide a way for sandbox MMC to present data from a backing file. This
allows a filesystem to be created on the host and easily served via an
emulated mmc device.
Signed-off-by: Simon Glass
---
Changes in v2:
- Free the memory buffer, to avoid running out of memory
- Unmap the file
- Reorder st
Add a bootdev driver for Ethernet. It can use the PXE boot mechanism to
locate a file, added later.
Signed-off-by: Simon Glass
---
(no changes since v1)
MAINTAINERS | 1 +
net/Kconfig | 9 +
net/Makefile | 1 +
net/eth-uclass.c | 8
net/eth_bootdev.c | 101 ++
Add documentation for this feature, including the commands and full
devicetree bindings.
Signed-off-by: Simon Glass
---
(no changes since v1)
MAINTAINERS | 4 +
doc/develop/bootstd.rst | 600 ++
doc/develop/distro.rst
Add a 'bootmeth' command to handle listing and ordering of boot methods.
Signed-off-by: Simon Glass
---
(no changes since v1)
cmd/Kconfig| 3 +-
cmd/Makefile | 2 +-
cmd/bootmeth.c | 158 +
3 files changed, 161 insertions(+), 2 deletion
Switch this over, for testing purposes.
Signed-off-by: Simon Glass
---
(no changes since v1)
boot/Kconfig | 3 ++-
include/configs/rpi.h | 41 -
2 files changed, 6 insertions(+), 38 deletions(-)
diff --git a/boot/Kconfig b/boot/Kconfig
index 2
+u-boot-board-maintain...@lists.denx.de
+u-boot-custodi...@lists.denx.de
On Sat, 23 Oct 2021 at 17:26, Simon Glass wrote:
>
>
> The bootflow feature provide a built-in way for U-Boot to automatically
> boot an Operating System without custom scripting and other customisation.
> This is called 'st
We need to create a disk image with a partition table and a DOS-format
filesystem containing a few files. Provide a fallback binary for CI since
it does not seem able to detect the loopback partitions.
Add this to a dm_init test so that it happens when needed.
Signed-off-by: Simon Glass
---
(no
Add a bootmeth driver for sandbox, used for testing.
Signed-off-by: Simon Glass
---
(no changes since v1)
boot/Kconfig| 7 +
boot/Makefile | 1 +
boot/bootmeth_sandbox.c | 67 +
3 files changed, 75 insertions(+)
create mode 1
Update the blk test to stop USB first, in case another test has started
it.
Signed-off-by: Simon Glass
---
(no changes since v1)
test/dm/blk.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/test/dm/blk.c b/test/dm/blk.c
index deccf05289b..b5957a20fb0 100644
--- a/test/dm/blk.c
+++ b
The bootflow tests need to use an MMC with an associated backing file
containing a filesystem. Update the fastboot tests to cope with this.
Signed-off-by: Simon Glass
---
(no changes since v1)
test/dm/fastboot.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/test/dm/fa
Add a bootdev driver for USB host. It can use the distro boot mechanism to
locate a file, or any other available bootmeth.
Signed-off-by: Simon Glass
---
(no changes since v1)
common/usb_storage.c | 12 +++
drivers/usb/host/Makefile | 4 +++
drivers/usb/host/usb_bootdev.c |
Add a bootmeth driver which handles EFI boot manager, using EFI_LOADER.
In effect, this provides the same functionality as the 'bootefi bootmgr'
command and shares the same code. But the interface into it is via a
bootmeth, so it does not require any special scripts, etc.
For now this requires th
Add a bootdev driver for MMC. It mostly just calls the bootdev helper
function.
Add a function to obtain the block device for an MMC controller.
Fix up the comment for mmc_get_blk_desc() while we are here.
Signed-off-by: Simon Glass
---
(no changes since v1)
MAINTAINERS | 1 +
Add a bootmeth driver which handles distro boot from a disk, so we can
boot a bootflow using this commonly used mechanism.
In effect, this provides the same functionality as the 'sysboot' command
and shares the same code. But the interface into it is via a bootmeth.
For now this requires the 'pxe
In some cases it is useful to search just by a partial name, such as
when looking for a sibling device that has a common name substring. Add
helper functions to handle these requirements.
Signed-off-by: Simon Glass
---
(no changes since v1)
drivers/core/device.c | 13 ++---
drivers/cor
At present the hexdump tests are disabled in sandbox_flattree. This is
good, because they do not pass. Enable the required Kconfig so that they
will, when enabled.
Signed-off-by: Simon Glass
---
(no changes since v1)
configs/sandbox_flattree_defconfig | 1 +
1 file changed, 1 insertion(+)
dif
The details for of_property_read_string_helper() and
ofnode_read_string_index() are a little inaccurate. Fix up the comments to
avoid confusion.
Signed-off-by: Simon Glass
---
(no changes since v1)
drivers/core/of_access.c | 3 ++-
include/dm/ofnode.h | 4 ++--
2 files changed, 4 insertio
This method is currently called after the platform data has been freed.
But the pre_unbind() method may wish to access this, e.g. to free some
data structures stored there.
Split the unbinding of devices into two pieces, as is done with removal.
This corrects the problem.
Also tidy a code-style i
Some boot methods don't act on a single bootdev but instead do their own
thing. An example is EFI bootmgr which scan various devices using its own
logic. Add a bootdev to handle this.
Signed-off-by: Simon Glass
---
(no changes since v1)
boot/Makefile | 2 +-
boot/bootstd-uclass.c | 6
Add a bootmeth driver which handles distro boot from a network device, so
we can boot a bootflow using this commonly used mechanism.
In effect, this provides the same functionality as the 'pxe' command
and shares the same code. But the interface into it is via a bootmeth.
For now this requires th
Add a bootmeth driver which handles EFI boot, using EFI_LOADER.
In effect, this provides the same functionality as the 'bootefi' command
and shares the same code. But the interface into it is via a bootmeth,
so it does not require any special scripts, etc.
For now this requires the 'bootefi' comm
Add a 'bootflow' command to handle listing and selection of bootflow.
Signed-off-by: Simon Glass
---
(no changes since v1)
cmd/Kconfig| 10 +-
cmd/Makefile | 2 +-
cmd/bootflow.c | 386 +
3 files changed, 395 insertions(+), 3 deletions(-
Add a 'bootdev' command to handle listing and selection of bootdevs.
Disable standard boot for a few boards which otherwise run out of space.
Signed-off-by: Simon Glass
---
(no changes since v1)
MAINTAINERS| 1 +
cmd/Kconfig| 8 ++
cmd/Makef
Add support for bootflows, including maintaining a list of them and
iterating to find them.
Signed-off-by: Simon Glass
---
(no changes since v1)
MAINTAINERS | 3 +-
boot/Makefile | 1 +
boot/bootdev-uclass.c | 12 +-
boot/bootflow.c | 576 ++
A bootmeth is a method of locating an operating system. For now, just
add the uclass itself. Drivers for particular bootmeths are added later.
If no bootmeths devices are included in the devicetree, create them
automatically. This avoids the need for boilerplate in the devicetree
files.
Signed-of
A bootflow encapsulates the process used to boot an operating system.
It typically has a control file (such as extlinux.conf) and information
about which 'bootdev' it came from.
Add the header file for this first, since it is needed by all other
files.
Signed-off-by: Simon Glass
---
(no changes
A 'bootdev' is a device which can be used to boot an operating system.
It is a child of the media device (e.g. MMC) which handles reading files
from that device, such as a bootflow file.
Add a uclass for bootdev and the various helpers needed to make it
work. Also add a binding file, empty for now
The 'bootstd' device provides the central information about U-Boot
standard boot.
Add a uclass for bootstd and the various helpers needed to make it
work. Also add a binding file.
Signed-off-by: Simon Glass
---
(no changes since v1)
MAINTAINERS | 2 +
boot/Kconfig
At present an Exception is raised if a command fails. This is a very broad
class and makes it difficult for callers to catch the error without also
catching other things, like programming bugs.
Change it to ValueError to make this easier.
Signed-off-by: Simon Glass
---
(no changes since v1)
t
At present the collection function used by pytest is quite strict on the
naming of the functions it detects. In particular it requires the name of
the test to be repeated in the function name.
This is not enforced anywhere else, but instead the tests are silently
omitted from the pytest run. This
Add a function that returns the number of devices in a uclass. This can be
helpful in sizing an array that needs to hold a list of them.
Signed-off-by: Simon Glass
---
(no changes since v1)
drivers/core/uclass.c | 12
include/dm/uclass.h | 8
2 files changed, 20 insert
These functions currently lack tests so add some. The error handling
differs betwee livetree and flattree at present, so only check the error
codes with livetree.
Signed-off-by: Simon Glass
---
(no changes since v1)
arch/sandbox/dts/test.dts | 1 +
test/dm/ofnode.c | 76 +
When ext is NULL we cannot dereference it. Update the code flow to avoid
this, so that layout_mbr_partitions() can be used with partition tables
that do not include an extended partition.
Signed-off-by: Simon Glass
---
(no changes since v1)
disk/part_dos.c | 10 ++
1 file changed, 6 in
At present the MMC uclass assumes that the only child it can have is a
block device. Update this so we can add a bootmethod too.
Signed-off-by: Simon Glass
---
(no changes since v1)
drivers/mmc/mmc-uclass.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/mmc/mmc
Before relocation there is generally not as much available memory and not
that much console output. At present the console-output buffer is the same
side before and after relocation. Add a separate Kconfig option to remove
this limitation.
Signed-off-by: Simon Glass
---
(no changes since v1)
c
At present this command considers the partitions to be identical if the
start and size are smaller than expected. It should check that they are
the same. Fix this and tidy up the code style a little.
Signed-off-by: Simon Glass
---
(no changes since v1)
cmd/mbr.c | 8
1 file changed, 4
LTO (Link-Time Optimisation) is an very useful feature which can
significantly reduce the size of U-Boot binaries. So far it has been
made available for selected ARM boards and sandbox.
However, incremental builds are much slower when LTO is used. For example,
an incremental build of sandbox takes
When running a program on the host, allow input to be passed in as stdin.
This is needed for running sfdisk, for example.
Signed-off-by: Simon Glass
---
(no changes since v1)
test/py/multiplexed_log.py | 8 +---
test/py/u_boot_utils.py| 5 +++--
2 files changed, 8 insertions(+), 5 dele
At present it is not possible to find out which part of the string is the
number part and which is before it. Add a new variant which provides this
feature, so we can separate the two in the caller.
Signed-off-by: Simon Glass
---
(no changes since v1)
include/vsprintf.h | 18 ++
Add the opposite of mapping, so that we can unmap and avoid running out of
address space.
Signed-off-by: Simon Glass
---
(no changes since v1)
arch/sandbox/cpu/os.c | 10 ++
include/os.h | 9 +
2 files changed, 19 insertions(+)
diff --git a/arch/sandbox/cpu/os.c b/ar
The bootflow feature provide a built-in way for U-Boot to automatically
boot an Operating System without custom scripting and other customisation.
This is called 'standard boot' since it provides a standard way for
U-Boot to boot a distro, without scripting.
It introduces the following concepts:
On 10/11/21 1:36 PM, Heinrich Schuchardt wrote:
Hi,
In case U-Boot starts with GD_FLG_SKIP_RELOC, the efi loader
relocation code breaks down because it assumes gd->relocaddr
points to relocated U-Boot code, which is not the case. Add
special case for handling GD_FLG_SKIP_RELOC, which uses the
__
The DHSOM uses different SPI NOR layout than the ST devkit, stop
pulling in the ST specific runtime mtdparts settings and adjust
the mtdparts accordingly.
Signed-off-by: Marek Vasut
Cc: Patrice Chotard
Cc: Patrick Delaunay
---
board/dhelectronics/dh_stm32mp1/Makefile | 1 -
configs/stm32mp15_d
Icenowy Zheng wrote:
> The OHCI and EHCI controllers are both bound to the same PHY. They will
> both do init and power_on operations when the controller is brought up
> and both do power_off and exit when the controller is stopped. However,
> the PHY uclass of U-Boot is not as sane as we thought -
If clk_get_by_name() returns 0 it means it executed successfully while now
we consider it as an error. So let's check if return value is negative to
be an error. Otherwise this prevents "axi" and "disp_axi" to be enabled.
Signed-off-by: Giulio Benetti
---
drivers/video/mxsfb.c | 4 ++--
1 file c
On Sat, Oct 23, 2021 at 07:05:03PM +0530, Jagan Teki wrote:
> Hi Tom,
>
> Please pull the PR.
>
> Summary:
> - Fix mtd erase with mtdpart (Marek Behún)
> - NXP fspi driver fixes (Kuldeep Singh)
>
> CI:
> https://source.denx.de/u-boot/custodians/u-boot-spi/-/pipelines/9582
>
> thanks,
> Jagan.
On 10/21/21 9:26 AM, Patrick DELAUNAY wrote:
On 10/19/21 5:03 AM, Marek Vasut wrote:
All the STM32MP1 based DHSOM have SPI NOR from which they boot,
enable DFU_SF support to make it possible to expose that SPI NOR
via the DFU.
Signed-off-by: Marek Vasut
Cc: Patrice Chotard
Cc: Patrick Delaun
The video output support is unused and disabling it saves about 20 kiB of space.
In case video output support is required, it can be re-enabled.
Signed-off-by: Marek Vasut
Cc: Patrice Chotard
Cc: Patrick Delaunay
---
configs/stm32mp15_dhcom_basic_defconfig | 14 +-
configs/stm32mp1
The EFI support is unused and disabling it saves about 70 kiB of space.
In case EFI support is required, it can be re-enabled.
Signed-off-by: Marek Vasut
Cc: Patrice Chotard
Cc: Patrick Delaunay
---
configs/stm32mp15_dhcom_basic_defconfig | 4
configs/stm32mp15_dhcor_basic_defconfig | 4 +
Increase default SPI NOR bus frequency from 1 MHz to 50 MHz and
enable SFDP parsing to obtain more accurate SPI NOR configuration.
Signed-off-by: Marek Vasut
Cc: Patrice Chotard
Cc: Patrick Delaunay
---
configs/stm32mp15_dhcom_basic_defconfig | 4 +++-
configs/stm32mp15_dhcor_basic_defconfig |
The nWP GPIO hog was used to unlock the SPI NOR write protect when U-Boot
used to operate the SPI NOR in 1-1-1 mode. Now that the SPI NOR is operated
in 1-1-4 mode, the hog has adverse effects and causes transfer corruption,
since the hogged pin is also the IO2 pin. Remove the hogs.
Signed-off-by:
All the STM32MP1 based DHSOM have SPI NOR from which they boot,
enable DFU_MTD support to make it possible to expose that SPI NOR
via the DFU.
Signed-off-by: Marek Vasut
Cc: Patrice Chotard
Cc: Patrick Delaunay
---
configs/stm32mp15_dhcom_basic_defconfig | 2 ++
configs/stm32mp15_dhcor_basic_d
在 2021-10-23星期六的 13:23 -0400,Siva Mahadevan写道:
> Icenowy Zheng wrote:
> > The OHCI and EHCI controllers are both bound to the same PHY. They
> > will
> > both do init and power_on operations when the controller is brought
> > up
> > and both do power_off and exit when the controller is stopped.
> >
On Fri, Oct 22, 2021 at 02:49:17PM -0500, Adam Ford wrote:
> On Fri, Oct 22, 2021 at 2:26 PM Marek Behún wrote:
> >
> > On Fri, 22 Oct 2021 14:19:16 -0500
> > Adam Ford wrote:
> >
> > > I am not sure it's the right solution, but it appears to work for me
> > > on a board that uses LTO. I didn't
On Sat, 23 Oct 2021 at 11:40, Heinrich Schuchardt wrote:
>
> On 10/22/21 13:24, Masahisa Kojima wrote:
> > This commit fixes the following compilation warning
> > of boottime->install_configuration_table() function.
> >
> > ---
> > lib/efi_selftest/efi_selftest_tcg2.c:475:46:
> > warning: passing
From: Wei Fu
This patch adds memcpy_fromio and memcpy_toio definitions for some device
drivers which have these definitions, like cadence_qspi_apb.c
Signed-off-by: Wei Fu
Reviewed-by: Bin Meng
---
arch/riscv/include/asm/io.h | 4
1 file changed, 4 insertions(+)
diff --git a/arch/riscv/i
This change provides the possibility to build XEA (imx287 based) board
U-Boot as a single binary (without support for CONFIG_SPL_FRAMEWORK).
The generated u-boot.sb can be used in the factory environment to for
example perform initial setup or HW testing.
It can be used with 'uuu' utility
(SDPS:
Provide preliminary instructions on how to get U-Boot to run on
Apple Silicon Macs.
Signed-off-by: Mark Kettenis
Reviewed-by: Simon Glass https://github.com/AsahiLinux/docs/wiki/SW%3Am1n1
+
+.. code-block:: bash
+
+$ cat m1n1.macho t8103-j274.dtb u-boot-nodtb.bin > u-boot.macho
+
+This uses `
Add support for Apple's M1 SoC that is used in "Apple Silicon"
Macs. This builds a basic U-Boot that can be used as a payload
for the m1n1 boot loader being developed by the Asahi Linux
project.
Signed-off-by: Mark Kettenis
Reviewed-by: Simon Glass
---
arch/arm/Kconfig| 21
Add preliminary device trees for the Apple M1 mini (2020) and
Apple M1 Macbook Pro 13" (2020). Device tree bindings for
the Apple M1 SoC are still being formalized and these device
trees will be synchronized with the Linux kernel as needed.
The device trees in this commit are based on the initial
Apple M1 SoCs include an S5L UART which is a variant of the S5P
UART. Add support for this variant and enable it by default
on Apple SoCs.
Signed-off-by: Mark Kettenis
Reviewed-by: Simon Glass
---
arch/arm/Kconfig| 1 +
arch/arm/include/asm/arch-m1/uart.h | 41 ++
The DART is an IOMMU that is used on Apple's M1 SoC. This driver
configures the DART such that it operates in bypass mode which is
enough to support DMA for the USB3 ports integrated on the SoC.
Signed-off-by: Mark Kettenis
Reviewed-by: Simon Glass
---
arch/arm/Kconfig | 1 +
driver
Add a set of tests for the IOMMU uclass.
Signed-off-by: Mark Kettenis
Reviewed-by: Simon Glass
---
arch/sandbox/dts/test.dts | 6 ++
configs/sandbox64_defconfig| 1 +
configs/sandbox_defconfig | 1 +
configs/sandbox_flattree_defconfig | 1 +
configs/sandbox_noi
This uclass is intended to manage IOMMUs on systems where the
IOMMUs are not in bypass mode by default. In that case U-Boot
cannot ignore the IOMMUs if it wants to use devices that need
to do DMA and sit behind such an IOMMU.
This initial IOMMU uclass implementation does not implement and
device
This series adds basic support for Apple's M1 SoC to U-Boot.
This builds a basic U-Boot that can be used as a payload
for the m1n1 boot loader being developed by the Asahi Linux
project.
The goal here is to privide an UEFI interface on these machines that
allows booting various open source OSes.
Add a mailmap entry for me.
Signed-off-by: Heinrich Schuchardt
---
.mailmap | 1 +
1 file changed, 1 insertion(+)
diff --git a/.mailmap b/.mailmap
index 93533d96b5..8e69f20c3a 100644
--- a/.mailmap
+++ b/.mailmap
@@ -24,6 +24,7 @@ Boris Brezillon
Boris Brezillon
Dirk Behme
Fabio Esteva
The block descriptor contains the if_type. There is no need to first look
up the uclass for the if_type and then to check the parent device's uclass
to know if the device has the correct if_type.
Signed-off-by: Heinrich Schuchardt
---
drivers/block/blk-uclass.c | 35 +
Hi Tom,
Please pull the PR.
Summary:
- Fix mtd erase with mtdpart (Marek Behún)
- NXP fspi driver fixes (Kuldeep Singh)
CI:
https://source.denx.de/u-boot/custodians/u-boot-spi/-/pipelines/9582
thanks,
Jagan.
The following changes since commit 7a508a7245592ca44b3dc51c0293656dce60d658:
Merge
On 9/25/21 02:30, Simon Glass wrote:
At present UCLASS_EFI is used to represent an EFI filesystem among other
UCLASS_EFI is for UEFI drivers that provide the driver binding protocol.
Your new UCLASS seems to be for U-Boot drivers consuming the
EFI_BLOCK_IO_PROTOCOL.
I agree that lib/efi_dr
On 9/25/21 02:30, Simon Glass wrote:
Most EFI implementations use 64-bit but U-Boot only supports running as
a 32-bit app at present. While efi-x86_payload64 does boot from 64-bit
UEFI it immediately changes back to 32-bit before starting U-Boot.
In order to support a 64-bit U-Boot app, updat
On 9/25/21 02:30, Simon Glass wrote:
For the EFI app, we must embed the devicetree in the ELF file since that
is the only thing that is run by UEFI. Drop the warning to avoid
confusion.
Signed-off-by: Simon Glass
---
Changes in v2:
- Add new patch to drop the OF_EMBED warning for EFI
Mak
On 9/25/21 02:30, Simon Glass wrote:
This structure is uncommented. Fix it.
The commit message is incomplete. You are deleting field device path.
Signed-off-by: Simon Glass
---
(no changes since v1)
include/efi.h | 26 +-
1 file changed, 25 insertions(+), 1 d
Support for PPC4XX processors has been removed. So we should not mention it
in the documentation.
Signed-off-by: Heinrich Schuchardt
---
doc/README.bedbug | 22 --
1 file changed, 22 deletions(-)
diff --git a/doc/README.bedbug b/doc/README.bedbug
index 35e9d2706a..1a2acd0f14
On 10/22/21 13:24, Masahisa Kojima wrote:
This commit adds the missing EFI_TCG2_PROTOCOL selftest
and Measured Boot selftest in lib/efi_selftest.
Signed-off-by: Masahisa Kojima
---
lib/efi_selftest/Makefile | 10 +
.../efi_selftest_miniapp_measuredboot.c | 93 +
Hi Guillaume,
> Il 22/10/2021 14:34 Guillaume GARDET ha scritto:
>
>
> Hi Dario,
>
> - Dario Binacchi a écrit :
> > Hi Guillaume,
> >
> > > Il 21/10/2021 16:47 Guillaume GARDET ha
> > > scritto:
> > >
> > >
> > > Hi,
> > >
> > > Commit 76c2ff3e [0] broke backlight on Chromebook sn
On 10/22/21 13:24, Masahisa Kojima wrote:
This commit fixes the following compilation warning
of boottime->install_configuration_table() function.
---
lib/efi_selftest/efi_selftest_tcg2.c:475:46:
warning: passing argument 1 of ‘boottime->install_configuration_table’
discards ‘const’ qualifier fr
On 10/22/21 05:08, Simon Glass wrote:
These conflict with real-word addresses. Use locally administered
MAC addresses and a suitable IPv4 address from 192.0.2.0/24
(TEST-NET-1).
Signed-off-by: Simon Glass
Suggested-by: Alexander Dahl
---
Changes in v10:
- Add new patch to update the test M
On 10/22/21 05:08, Simon Glass wrote:
Make various other updates suggested during review of the rST conversion.
Signed-off-by: Simon Glass
Suggested-by: Heinrich Schuchardt
---
Changes in v10:
- Add updates as suggested by Heinrich
doc/develop/environment.rst | 51
doc/d
On 10/23/21 01:23, Roman Bacik wrote:
From: Bharat Gooty
Following netXtreme commands are supported:-
Device probe, remove, supported speeds, get/set speeds and
get/set MAC address.
Signed-off-by: Bharat Gooty
Signed-off-by: Roman Bacik
Please, add a man-page for the new command in doc
81 matches
Mail list logo