public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: AKASHI Takahiro <takahiro.akashi@linaro.org>
To: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: masami.hiramatsu@linaro.org, u-boot@lists.denx.de,
	sjg@chromium.org, ilias.apalodimas@linaro.org,
	Tom Rini <trini@konsulko.com>
Subject: Re: [PATCH v5 00/12] efi_loader: more tightly integrate UEFI disks to driver model
Date: Tue, 26 Apr 2022 23:44:18 +0900	[thread overview]
Message-ID: <20220426144418.GA62529@laputa> (raw)
In-Reply-To: <4e897c5c-1c49-70ed-2668-40e8d932d5ea@gmx.de>

On Tue, Apr 26, 2022 at 03:57:26PM +0200, Heinrich Schuchardt wrote:
> On 4/26/22 01:44, AKASHI Takahiro wrote:
> > On Mon, Apr 25, 2022 at 10:43:44PM +0200, Heinrich Schuchardt wrote:
> > > On 4/19/22 03:05, AKASHI Takahiro wrote:
> > > > With this patch set[1] applied, UEFI subsystem maintains a list of its
> > > > disk objects dynamically at runtime based on block device's probing.
> > > > (See "issues" and "prerequisite" below.)
> > > > 
> > > > [1] https://github.com/t-akashi/u-boot/tree/efi/dm_disk
> > > > 
> > > > For instance,
> > > > => dm tree
> > > >    Class     Index  Probed  Driver                Name
> > > > -----------------------------------------------------------
> > > >    root          0  [ + ]   root_driver           root_driver
> > > >    ...
> > > >    pci           0  [ + ]   pci_generic_ecam      |-- pcie@10000000
> > > >    ...
> > > >    ahci          0  [   ]   ahci_pci              |   |-- ahci_pci
> > > >    scsi          0  [   ]   ahci_scsi             |   |   `-- ahci_scsi
> > > >    usb           0  [   ]   xhci_pci              |   `-- xhci_pci
> > > >    ...
> > > > => efi devices
> > > > Missing RNG device for EFI_RNG_PROTOCOL
> > > > No EFI system partition
> > > > Unable to find TPMv2 device
> > > > Device           Device Path
> > > > ================ ====================
> > > > 000000013eee88d0 /VenHw(..)
> > > > 000000013ffeb798 /VenHw(..)/Uart(0,0,D,D)
> > > > 000000013eeeb810 /VenHw(..)/MAC(525252525252,1)
> > > > => scsi rescan
> > > 
> > > 
> > > With the series binding block devices after initializing the UEFI
> > > sub-system works fine. Also unbinding is reflected in the EFI devices.
> > > 
> > > But this series breaks UEFI compliance.
> > 
> > I don't think so.
> > 
> > > All block devices must be probed
> > > before booting.
> > 
> > This (not enumerating all the devices) is also true even before my patch.
> > 
> > > Without this GRUB will not be able to read the boot
> > > partition with vmlinuz and initrd.
> > 
> > I'm not sure what you expect here, but
> > is it enough to define "preboot" variables with any number of
> > enumerating commands, like "scsi rescan", "usb start" and so on?
> 
> I expect that boards that booted with previous versions of U-Boot using
> the respective defconfig still boot. But they don't. Here is one example
> (orangepi_pc_defconfig):
> 
>     Found U-Boot script /boot.scr.uimg
>     189 bytes read in 2 ms (91.8 KiB/s)
>     ## Executing script at 43100000
>     22979 bytes read in 8 ms (2.7 MiB/s)
>     98304 bytes read in 8 ms (11.7 MiB/s)
>     Booting /EFI\debian\grubarm.efi
>     Welcome to GRUB!
> 
>     error: disk `,msdos2' not found.
>     grub rescue>
> 
> In U-Boot v2022.04 function efi_disk_register() ensured that all block
> devices and their partitions were added as EFI handles.

Not the all block devices, but the block devices which have already
enumerated when efi_init_obj_list() is called.

> But that
> function is missing now.

What (boot) device are you using here?

Please show me the values of env variables, particularly, "boot_targets".

Please show me the content of boot.scr.uimg, too.

Please show me the output from
=> dm tree
=> efidebug devices
for 2022.04 and 2022.07-rc1.

-Takahiro Akashi



> Best regards
> 
> Heinrich
> 
> 
> > 
> > # Again, this method can also be applied even without my patch.
> > 
> > -Takahiro Akashi
> > 
> > > Will you provide the missing patch?
> > > 
> > > Best regards
> > > 
> > > Heinrich
> 

  reply	other threads:[~2022-04-26 14:44 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-19  1:05 [PATCH v5 00/12] efi_loader: more tightly integrate UEFI disks to driver model AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 01/12] dm: tag: change ENOSPC to ENOMEM AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 02/12] dm: tag: add some document AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 03/12] test: dm: add tests for tag support AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 04/12] dm: disk: add UCLASS_PARTITION AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 05/12] dm: blk: add a device-probe hook for scanning disk partitions AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 06/12] efi_loader: split efi_init_obj_list() into two stages AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 07/12] efi_loader: disk: a helper function to create efi_disk objects from udevice AKASHI Takahiro
2022-04-30 18:44   ` Johan Jonker
2022-05-18  9:23   ` Neil Armstrong
2022-05-19  5:04     ` AKASHI Takahiro
2022-06-01  0:25       ` AKASHI Takahiro
2022-08-24  9:00       ` Vyacheslav
2022-08-24  9:29         ` Vyacheslav
2022-06-13 19:54     ` Fabio Estevam
2022-06-13 20:10       ` Tom Rini
2022-06-13 22:21         ` Mark Kettenis
2022-06-13 22:48           ` Fabio Estevam
2022-06-13 23:39             ` Heinrich Schuchardt
2022-06-13 23:54               ` Fabio Estevam
2022-06-14  3:59                 ` Heiko Thiery
2022-06-13 23:39             ` AKASHI, Takahiro
2022-04-19  1:05 ` [PATCH v5 08/12] efi_loader: disk: not create BLK device for BLK(IF_TYPE_EFI_LOADER) devices AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 09/12] efi_loader: disk: a helper function to delete efi_disk objects AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 10/12] efi_loader: disk: not delete BLK device for BLK(IF_TYPE_EFI_LOADER) devices AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 11/12] dm: disk: add read/write interfaces with udevice AKASHI Takahiro
2022-04-19  1:05 ` [PATCH v5 12/12] efi_loader: disk: use udevice instead of blk_desc AKASHI Takahiro
2022-04-25 20:43 ` [PATCH v5 00/12] efi_loader: more tightly integrate UEFI disks to driver model Heinrich Schuchardt
2022-04-25 23:44   ` AKASHI Takahiro
2022-04-26 13:57     ` Heinrich Schuchardt
2022-04-26 14:44       ` AKASHI Takahiro [this message]
2022-04-26 17:02         ` Heinrich Schuchardt
2022-04-26 17:18           ` Mark Kettenis
2022-04-26 17:23             ` Tom Rini
2022-04-27  3:26           ` AKASHI Takahiro
2022-04-28  4:52             ` AKASHI Takahiro
2022-04-28  6:45               ` Heinrich Schuchardt
2022-04-28  9:09                 ` Mark Kettenis
2022-04-28  9:42                   ` Heinrich Schuchardt
2022-04-28 10:11                     ` Mark Kettenis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220426144418.GA62529@laputa \
    --to=takahiro.akashi@linaro.org \
    --cc=ilias.apalodimas@linaro.org \
    --cc=masami.hiramatsu@linaro.org \
    --cc=sjg@chromium.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=xypron.glpk@gmx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox