From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Stanacar, Stefan" Subject: Re: [PATCH v2] efi: Introduce EFI bootloader control driver Date: Thu, 24 Mar 2016 16:15:56 +0000 Message-ID: <1458836156.14677.9.camel@intel.com> References: <1458295910-26557-1-git-send-email-daniel.baluta@intel.com> <20160318161505.GU2619@codeblueprint.co.uk> <1458328697.16385.21.camel@intel.com> <20160324144741.GA4328@codeblueprint.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20160324144741.GA4328-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org> Content-Language: en-US Content-ID: Sender: linux-efi-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: "matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org" Cc: "Baluta, Daniel" , "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "dvhart-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org" , "Gumbel, Matthew K" , "Purdila, Octavian" , "linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "Abbas, Mohamed" , "Musca, Constantin" List-Id: linux-efi@vger.kernel.org T24gVGh1LCAyMDE2LTAzLTI0IGF0IDE0OjQ3ICswMDAwLCBNYXR0IEZsZW1pbmcgd3JvdGU6DQo+ IChTb3JyeSBmb3IgdGhlIGRlbGF5KQ0KPiANCj4gT24gRnJpLCAxOCBNYXIsIGF0IDA3OjE4OjE3 UE0sIFN0YW5hY2FyLCBTdGVmYW4gd3JvdGU6DQo+ID4gDQo+ID4gDQo+ID4gSGkgTWF0dCwNCj4g PiANCj4gPiBJdCBpcyBwb3NzaWJsZSwgYnV0IHRoYXQgbWVhbnMgbW9kaWZ5aW5nIHRob3NlIHVz ZXJzcGFjZSBhcHBzIDopDQo+ID4gVGhlcmUgYXJlIHJlYm9vdCBpbXBsZW1lbnRhdGlvbnMgdGhh dCBkbyAicmVib290IDxyZWFzb24+Iiwgc3VjaCBhcw0KPiA+IEFuZHJvaWQncyByZWJvb3QgY29t bWFuZCBbMV0gYW5kIFVwc3RhcnQncyByZWJvb3QgcmVwbGFjZW1lbnQgWzJdLA0KPiA+IHdoaWNo DQo+ID4gcGFzcyB0aGUgcmVhc29uIGFzIGFuIGFyZ3VtZW50IHRvIHRoZSByZWJvb3Qgc3lzY2Fs bC7CoA0KPiA+IFByb2JhYmx5IHlvdXIgZmlyc3QgcXVlc3Rpb24gd2lsbCBiZSAtICJXaHkgZG9u J3QgeW91IG1vZGlmeSB0aG9zZQ0KPiA+IGFwcHM/Ig0KPiBZb3VyIGd1ZXNzIGlzIGNvcnJlY3Qg OykNCj4gDQo+ID4gDQo+ID4gV2VsbCwgSSBkb24ndCBzZWUgcGxhdGZvcm0tYWdub3N0aWMgd2F5 IGhvdyB0aG9zZSBjb3VsZCBiZQ0KPiA+IG1vZGlmaWVkIHRvIHBhc3MgdGhlIHJlYXNvbiB0byB0 aGUgYm9vdGxvYWRlciwgcmVnYXJkbGVzcyBvZg0KPiA+IHBsYXRmb3JtIG9yDQo+ID4gYm9vdGxv YWRlci4NCj4gVGhpcyBpcyB0cnVlLiBCdXQgdGhlbiBhZ2Fpbiwgd2hhdCB5b3UncmUgcHJvcG9z aW5nIGlzbid0IGJvb3QgbG9hZGVyDQo+IG9yIHBsYXRmb3JtIGFnbm9zdGljIGFueXdheS4gWWVz IGl0J3MgdHJhbnNwYXJlbnQgdG8gYm90aCB0aGUgYXBwIGFuZA0KPiBib290IGxvYWRlciwgYnV0 IGl0J3Mgb25seSBnb2luZyB0byB3b3JrIG9uIEVGSSBwbGF0Zm9ybXMgcnVubmluZw0KPiBndW1t aWJvb3QuDQoNCll1cCwgdGhhdCdzIHRydWUuIEl0J3MgZ29pbmcgdG8gd29yayBvbmx5IG9uIEVG SSBwbGF0Zm9ybXMuIFRoZQ0KYm9vdGxvYWRlciBhY3R1YWxseSBkb2Vzbid0IG1hdHRlciAoYW55 IGVmaSBib290bG9hZGVyIHNob3VsZCB3b3JrKSBhcw0KbG9uZyBhcyBpdCByZWFkcyB0aGUgcmVh c29uIGFuZCBkb2VzIHdoYXQncyBzdXBwb3NlZCB0byBkbyB3aXRoIGl0IChib290DQppbiByZWNv dmVyeSwgZXRjKQ0KDQo+IA0KPiBBbmQgYmVjYXVzZSBvZiB0aGF0LCBpZiB0aGlzIGlzIGdvaW5n IHRvIGJlIG1lcmdlZCB1cHN0cmVhbSBJIHRoaW5rDQo+IHNvbWV0aGluZyBsaWtlIGRyaXZlcnMv cG93ZXIvcmVzZXQvIHdvdWxkIGJlIGEgbW9yZSBhcHByb3ByaWF0ZSBwbGFjZSwNCj4gb3IgZHJp dmVycy9wbGF0Zm9ybS94ODYuDQo+IA0KDQpBZ3JlZWQuIEl0IHNlZW1zIHRoYXQgZHJpdmVycy9w b3dlci9yZXNldCBpcyBwcmVmZXJyZWQgYnkgQVJNIGJvYXJkczoNCmh0dHBzOi8vZ2l0LmxpbmFy by5vcmcvcGVvcGxlL2pvaG4uc3R1bHR6L2Zsby5naXQvY29tbWl0L2YxZTcxMmJlMmJlOWY0Mg0K OTcyMTVmYzRhZjYxOTRlMGY3NWYwNWRmYg0KDQoNCj4gSWYgdGhpcyBkb2VzIGdldCBtZXJnZWQs IHBsZWFzZSByZXdvcmsgdGhlIHBhdGNoIHRvIHVzZSB0aGUgZWZpdmFyIEFQSQ0KPiBpbnN0ZWFk IG9mIGFjY2Vzc2luZyBlZmkuc2V0X3ZhcmlhYmxlKCkgZGlyZWN0bHkuIFdlJ3ZlIGFsc28gZ290 IGENCj4gYnVuY2ggb2YgdWNzMiBzdHJpbmcgZnVuY3Rpb25zIGluIGxpYi91Y3MyX3N0cmluZy5j IHRoYXQgeW91IGNvdWxkDQoNCk9rLg0KDQo+IHVzZS4gSW4gZmFjdCwgdGhpcyB2ZXJzaW9uIG9m IHRoZSBkcml2ZXIgSSBmb3VuZCBvbiB0aGUgbmV0IGlzIG11Y2gNCj4gbW9yZSBsaWtlIHdoYXQg SSBoYWQgaW4gbWluZCwNCj4gDQo+IMKgIGh0dHBzOi8vZ2l0aHViLmNvbS9CT1JFVFMyNC9LZXJu ZWwtZm9yLUFzdXMtWmVuZm9uZS0yL2Jsb2IvbWFzdGVyL2RyDQo+IGl2ZXJzL2V4dGVybmFsX2Ry aXZlcnMvZHJpdmVycy9wbGF0Zm9ybS94ODYvcmVib290X3RhcmdldF91ZWZpLmMNCg0KT2ssIHRo YXQncyBmdW5ueSBzb21laG93Li4uIEkgd291bGRuJ3QgYmUgc3VycHJpc2VkIGlmIEknZCBmaW5k IDMgbW9yZQ0KdmFyaWF0aW9ucyBvZiB0aGUgc2FtZSBkcml2ZXIgaW4gZGlmZmVyZW50IHZlbmRv ciB0cmVlcyA6KC4NCkknbGwgcGluZyB0aGUgYXV0aG9yIG9mIHRoZSBwYXRjaCwgdGhhbmtzIQ0K DQpDaGVlcnMsDQpTdGVmYW4NCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755614AbcCXQQP (ORCPT ); Thu, 24 Mar 2016 12:16:15 -0400 Received: from mga11.intel.com ([192.55.52.93]:62538 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751834AbcCXQQC (ORCPT ); Thu, 24 Mar 2016 12:16:02 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,385,1455004800"; d="scan'208";a="72588578" From: "Stanacar, Stefan" To: "matt@codeblueprint.co.uk" CC: "Baluta, Daniel" , "linux-kernel@vger.kernel.org" , "dvhart@infradead.org" , "Gumbel, Matthew K" , "Purdila, Octavian" , "linux-efi@vger.kernel.org" , "Abbas, Mohamed" , "Musca, Constantin" Subject: Re: [PATCH v2] efi: Introduce EFI bootloader control driver Thread-Topic: [PATCH v2] efi: Introduce EFI bootloader control driver Thread-Index: AQHRgP4gz9DmkaiYq0aye7ci0K473J9fYK2AgAAzMICACSJigIAAGKgA Date: Thu, 24 Mar 2016 16:15:56 +0000 Message-ID: <1458836156.14677.9.camel@intel.com> References: <1458295910-26557-1-git-send-email-daniel.baluta@intel.com> <20160318161505.GU2619@codeblueprint.co.uk> <1458328697.16385.21.camel@intel.com> <20160324144741.GA4328@codeblueprint.co.uk> In-Reply-To: <20160324144741.GA4328@codeblueprint.co.uk> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.237.105.93] Content-Type: text/plain; charset="utf-8" Content-ID: MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id u2OGGIiZ028391 On Thu, 2016-03-24 at 14:47 +0000, Matt Fleming wrote: > (Sorry for the delay) > > On Fri, 18 Mar, at 07:18:17PM, Stanacar, Stefan wrote: > > > > > > Hi Matt, > > > > It is possible, but that means modifying those userspace apps :) > > There are reboot implementations that do "reboot ", such as > > Android's reboot command [1] and Upstart's reboot replacement [2], > > which > > pass the reason as an argument to the reboot syscall.  > > Probably your first question will be - "Why don't you modify those > > apps?" > Your guess is correct ;) > > > > > Well, I don't see platform-agnostic way how those could be > > modified to pass the reason to the bootloader, regardless of > > platform or > > bootloader. > This is true. But then again, what you're proposing isn't boot loader > or platform agnostic anyway. Yes it's transparent to both the app and > boot loader, but it's only going to work on EFI platforms running > gummiboot. Yup, that's true. It's going to work only on EFI platforms. The bootloader actually doesn't matter (any efi bootloader should work) as long as it reads the reason and does what's supposed to do with it (boot in recovery, etc) > > And because of that, if this is going to be merged upstream I think > something like drivers/power/reset/ would be a more appropriate place, > or drivers/platform/x86. > Agreed. It seems that drivers/power/reset is preferred by ARM boards: https://git.linaro.org/people/john.stultz/flo.git/commit/f1e712be2be9f42 97215fc4af6194e0f75f05dfb > If this does get merged, please rework the patch to use the efivar API > instead of accessing efi.set_variable() directly. We've also got a > bunch of ucs2 string functions in lib/ucs2_string.c that you could Ok. > use. In fact, this version of the driver I found on the net is much > more like what I had in mind, > >   https://github.com/BORETS24/Kernel-for-Asus-Zenfone-2/blob/master/dr > ivers/external_drivers/drivers/platform/x86/reboot_target_uefi.c Ok, that's funny somehow... I wouldn't be surprised if I'd find 3 more variations of the same driver in different vendor trees :(. I'll ping the author of the patch, thanks! Cheers, Stefan