On Mon, Nov 03, 2014 at 01:32:46PM -0800, Andy Lutomirski wrote: > On Mon, Nov 3, 2014 at 1:27 PM, Greg Kroah-Hartman > <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > > On Mon, Nov 03, 2014 at 11:33:23AM -0800, Andy Lutomirski wrote: > >> On 11/02/2014 07:07 PM, Kweh Hock Leong wrote: > >> > From: "Kweh, Hock Leong" <hock.leong.kweh-ral2JQCrhuEAvxtiuMwx3w@xxxxxxxxxxxxxxxx> > >> > > >> > Hi Guys, > >> > > >> > This patchset is created on top of "efi: Capsule update support" patch: > >> > http://permalink.gmane.org/gmane.linux.kernel.efi/4837 > >> > > >> > It leverages the request_firmware_nowait() to expose the user helper interface for user to upload the capsule binary and calling the > >> > efi_capsule_update() API to pass the binary to EFI firmware. > >> > >> I don't get it. Why is the firmware interface at all reasonable for > >> uploading capsules? > > > > Tradition dictates that BIOS updates go through the firmware interface, > > that way you don't have to write a new userspace tool, which is a good > > thing. > > > >> The firmware interface makes sense for nonvolatile firmware where > >> hotplugging something or otherwise loading a driver needs a blob. > > > > Or BIOS data. We've been doing it this way for a long time now. > > On what system? Dell? Yes. > IMO this sucks from a UI point of view. When I install wifi firmware, > I expect to stick it somewhere and have the driver find it, because > the driver knows exactly when it needs the firmware. When I update my > BIOS, I want to click a button or type a command and update my bios. I agree, it should be "triggered" by something, not just automagically loaded whenever the kernel randomly looks for it. > >> But uploading an EFI capsule is an *action*, not something that should > >> happen transparently. If there's an EFI firmware update available and > >> the user wants to install it, then the userspace tool should install it, > >> and it shouldn't hang around in /lib/firmware. In fact, you shouldn't > >> even need /lib to be on writable media to use this. > > > > What does /lib have to do with this? > > Where else does the file come from, given that udev no longer supports > userspace firmware loading? Is there really some pre-existing tool > that pokes it into the sysfs firmware class thing? Well, you can specify other locations than /lib/firmware/ for firmware updates, but yes, you are right, it should be in /lib somewhere. But /lib doesn't need to be writable, it's a read-only file. > Since EFI capsules are apparently on their way to becoming a > ubiquitous mechanism, I think it might be time to rethink > request_firmware for this. What do you suggest instead? A "custom" sysfs file? What is going to trigger it to be loaded? A userspace script that someone else has to write? :) thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html