* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h [not found] ` <1452456249-2974-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> @ 2016-01-11 14:40 ` Matt Fleming 2016-01-11 16:15 ` Guenter Roeck [not found] ` <20160111144004.GD2644-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org> 0 siblings, 2 replies; 7+ messages in thread From: Matt Fleming @ 2016-01-11 14:40 UTC (permalink / raw) To: Ard Biesheuvel Cc: linux-efi-u79uwXL29TY76Z2rM5mHXA, linux-0h96xk9xTtrk1uMJSBkQmQ, Will Deacon, Fenghua Yu, Tony Luck, linux-ia64-u79uwXL29TY76Z2rM5mHXA (Cc'ing ia64 maintainers) On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote: > The code in efi.c uses early_memremap(), but relies on a transitive > include rather than including asm/early_ioremap.h directly. > Unfortunately, this header does not exist on ia64, so it cannot be > included directly. > > Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code > for reuse by 32-bit ARM") attempted to work around this by including > asm/efi.h, which transitively includes asm/early_ioremap.h on most > architectures. However, since asm/efi.h does not exist on ia64 either, > this is not much of an improvement. > > So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64 > is defined. > > Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for reuse by 32-bit ARM") > Cc: Will Deacon <will.deacon@arm.com> > Reported-by: Guenter Roeck <linux@roeck-us.net> > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> > --- > drivers/firmware/efi/efi.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c > index cffa89b3317b..53f71177824f 100644 > --- a/drivers/firmware/efi/efi.c > +++ b/drivers/firmware/efi/efi.c > @@ -25,7 +25,9 @@ > #include <linux/io.h> > #include <linux/platform_device.h> > > -#include <asm/efi.h> > +#ifndef CONFIG_IA64 > +#include <asm/early_ioremap.h> > +#endif > > struct efi __read_mostly efi = { > .mps = EFI_INVALID_TABLE_ADDR, I certainly can't think of a better way to fix this right now. Tony, Fenghua do you guys have any suggestions? Reviewed-by: Matt Fleming <matt@codeblueprint.co.uk> ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h 2016-01-11 14:40 ` [PATCH] efi: add conditional include of asm/early_ioremap.h Matt Fleming @ 2016-01-11 16:15 ` Guenter Roeck [not found] ` <5693D52E.9090407-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org> [not found] ` <20160111144004.GD2644-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org> 1 sibling, 1 reply; 7+ messages in thread From: Guenter Roeck @ 2016-01-11 16:15 UTC (permalink / raw) To: Matt Fleming, Ard Biesheuvel Cc: linux-efi, Will Deacon, Fenghua Yu, Tony Luck, linux-ia64 On 01/11/2016 06:40 AM, Matt Fleming wrote: > (Cc'ing ia64 maintainers) > > On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote: >> The code in efi.c uses early_memremap(), but relies on a transitive >> include rather than including asm/early_ioremap.h directly. >> Unfortunately, this header does not exist on ia64, so it cannot be >> included directly. >> >> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code >> for reuse by 32-bit ARM") attempted to work around this by including >> asm/efi.h, which transitively includes asm/early_ioremap.h on most >> architectures. However, since asm/efi.h does not exist on ia64 either, >> this is not much of an improvement. >> >> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64 >> is defined. >> >> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for reuse by 32-bit ARM") >> Cc: Will Deacon <will.deacon@arm.com> >> Reported-by: Guenter Roeck <linux@roeck-us.net> >> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> >> --- >> drivers/firmware/efi/efi.c | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c >> index cffa89b3317b..53f71177824f 100644 >> --- a/drivers/firmware/efi/efi.c >> +++ b/drivers/firmware/efi/efi.c >> @@ -25,7 +25,9 @@ >> #include <linux/io.h> >> #include <linux/platform_device.h> >> >> -#include <asm/efi.h> >> +#ifndef CONFIG_IA64 >> +#include <asm/early_ioremap.h> >> +#endif >> >> struct efi __read_mostly efi = { >> .mps = EFI_INVALID_TABLE_ADDR, > > I certainly can't think of a better way to fix this right now. Tony, > Fenghua do you guys have any suggestions? > How about including asm/early_ioremap.h from arch/arm/include/asm/io.h, as it is done by arm64 and x86 ? Guenter ^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <5693D52E.9090407-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>]
* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h [not found] ` <5693D52E.9090407-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org> @ 2016-01-11 17:35 ` Ard Biesheuvel [not found] ` <CAKv+Gu9=yVNAVOLfuv135tu6anzNxGO8i7cdsLQ6PxUigNVU4g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 7+ messages in thread From: Ard Biesheuvel @ 2016-01-11 17:35 UTC (permalink / raw) To: Guenter Roeck, Williams, Dan J Cc: Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Will Deacon, Fenghua Yu, Tony Luck, linux-ia64-u79uwXL29TY76Z2rM5mHXA@public.gmane.org (+ Dan) On 11 January 2016 at 17:15, Guenter Roeck <linux@roeck-us.net> wrote: > On 01/11/2016 06:40 AM, Matt Fleming wrote: >> >> (Cc'ing ia64 maintainers) >> >> On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote: >>> >>> The code in efi.c uses early_memremap(), but relies on a transitive >>> include rather than including asm/early_ioremap.h directly. >>> Unfortunately, this header does not exist on ia64, so it cannot be >>> included directly. >>> >>> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code >>> for reuse by 32-bit ARM") attempted to work around this by including >>> asm/efi.h, which transitively includes asm/early_ioremap.h on most >>> architectures. However, since asm/efi.h does not exist on ia64 either, >>> this is not much of an improvement. >>> >>> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64 >>> is defined. >>> >>> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for >>> reuse by 32-bit ARM") >>> Cc: Will Deacon <will.deacon@arm.com> >>> Reported-by: Guenter Roeck <linux@roeck-us.net> >>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> >>> --- >>> drivers/firmware/efi/efi.c | 4 +++- >>> 1 file changed, 3 insertions(+), 1 deletion(-) >>> >>> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c >>> index cffa89b3317b..53f71177824f 100644 >>> --- a/drivers/firmware/efi/efi.c >>> +++ b/drivers/firmware/efi/efi.c >>> @@ -25,7 +25,9 @@ >>> #include <linux/io.h> >>> #include <linux/platform_device.h> >>> >>> -#include <asm/efi.h> >>> +#ifndef CONFIG_IA64 >>> +#include <asm/early_ioremap.h> >>> +#endif >>> >>> struct efi __read_mostly efi = { >>> .mps = EFI_INVALID_TABLE_ADDR, >> >> >> I certainly can't think of a better way to fix this right now. Tony, >> Fenghua do you guys have any suggestions? >> > > How about including asm/early_ioremap.h from arch/arm/include/asm/io.h, > as it is done by arm64 and x86 ? > That would work as well, but it does not address how early_memremap() is so poorly defined. I think the correct way would be to add the include unconditionally, and move ia64's definition to a new ia64 version of early_ioremap.h ^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <CAKv+Gu9=yVNAVOLfuv135tu6anzNxGO8i7cdsLQ6PxUigNVU4g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h [not found] ` <CAKv+Gu9=yVNAVOLfuv135tu6anzNxGO8i7cdsLQ6PxUigNVU4g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2016-01-11 18:47 ` Guenter Roeck 0 siblings, 0 replies; 7+ messages in thread From: Guenter Roeck @ 2016-01-11 18:47 UTC (permalink / raw) To: Ard Biesheuvel Cc: Williams, Dan J, Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Will Deacon, Fenghua Yu, Tony Luck, linux-ia64-u79uwXL29TY76Z2rM5mHXA@public.gmane.org On Mon, Jan 11, 2016 at 06:35:44PM +0100, Ard Biesheuvel wrote: [ ... ] > >> > >> > >> I certainly can't think of a better way to fix this right now. Tony, > >> Fenghua do you guys have any suggestions? > >> > > > > How about including asm/early_ioremap.h from arch/arm/include/asm/io.h, > > as it is done by arm64 and x86 ? > > > > That would work as well, but it does not address how early_memremap() > is so poorly defined. I think the correct way would be to add the > include unconditionally, and move ia64's definition to a new ia64 > version of early_ioremap.h Depends on the definition of "poorly". Is the API exported through asm/early_ioremap.h, or through asm/io.h ? Guenter ^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <20160111144004.GD2644-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>]
* RE: [PATCH] efi: add conditional include of asm/early_ioremap.h [not found] ` <20160111144004.GD2644-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org> @ 2016-01-11 19:54 ` Luck, Tony [not found] ` <3908561D78D1C84285E8C5FCA982C28F39FA9F4B-8oqHQFITsIE64kNsxIetb7fspsVTdybXVpNB7YpNyf8@public.gmane.org> 0 siblings, 1 reply; 7+ messages in thread From: Luck, Tony @ 2016-01-11 19:54 UTC (permalink / raw) To: Matt Fleming, Ard Biesheuvel Cc: linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org, Will Deacon, Yu, Fenghua, linux-ia64-u79uwXL29TY76Z2rM5mHXA@public.gmane.org On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote: > The code in efi.c uses early_memremap(), but relies on a transitive > include rather than including asm/early_ioremap.h directly. > Unfortunately, this header does not exist on ia64, so it cannot be > included directly. I wouldn't be adverse to you making an asm/early_ioremap.h file for ia64 -Tony ^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <3908561D78D1C84285E8C5FCA982C28F39FA9F4B-8oqHQFITsIE64kNsxIetb7fspsVTdybXVpNB7YpNyf8@public.gmane.org>]
* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h [not found] ` <3908561D78D1C84285E8C5FCA982C28F39FA9F4B-8oqHQFITsIE64kNsxIetb7fspsVTdybXVpNB7YpNyf8@public.gmane.org> @ 2016-01-11 20:15 ` Ard Biesheuvel 2016-01-11 21:46 ` Luck, Tony 0 siblings, 1 reply; 7+ messages in thread From: Ard Biesheuvel @ 2016-01-11 20:15 UTC (permalink / raw) To: Luck, Tony Cc: Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org, Will Deacon, Yu, Fenghua, linux-ia64-u79uwXL29TY76Z2rM5mHXA@public.gmane.org On 11 January 2016 at 20:54, Luck, Tony <tony.luck@intel.com> wrote: > On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote: >> The code in efi.c uses early_memremap(), but relies on a transitive >> include rather than including asm/early_ioremap.h directly. >> Unfortunately, this header does not exist on ia64, so it cannot be >> included directly. > > I wouldn't be adverse to you making an asm/early_ioremap.h file > for ia64 > How about an asm/efi.h? A lot of the EFI source files include both linux/efi.h and asm/efi.h, so it would make sense to have one on ia64 as well ^ permalink raw reply [flat|nested] 7+ messages in thread
* RE: [PATCH] efi: add conditional include of asm/early_ioremap.h 2016-01-11 20:15 ` Ard Biesheuvel @ 2016-01-11 21:46 ` Luck, Tony 0 siblings, 0 replies; 7+ messages in thread From: Luck, Tony @ 2016-01-11 21:46 UTC (permalink / raw) To: Ard Biesheuvel Cc: Matt Fleming, linux-efi@vger.kernel.org, linux@roeck-us.net, Will Deacon, Yu, Fenghua, linux-ia64@vger.kernel.org Pj4gSSB3b3VsZG4ndCBiZSBhZHZlcnNlIHRvIHlvdSBtYWtpbmcgYW4gYXNtL2Vhcmx5X2lvcmVt YXAuaCBmaWxlDQo+PiBmb3IgaWE2NA0KPj4NCj4NCj4gSG93IGFib3V0IGFuIGFzbS9lZmkuaD8g QSBsb3Qgb2YgdGhlIEVGSSBzb3VyY2UgZmlsZXMgaW5jbHVkZSBib3RoDQo+IGxpbnV4L2VmaS5o IGFuZCBhc20vZWZpLmgsIHNvIGl0IHdvdWxkIG1ha2Ugc2Vuc2UgdG8gaGF2ZSBvbmUgb24gaWE2 NA0KPiBhcyB3ZWxsDQoNClBlcmhhcHMuICBJZiBJIGp1c3QgZW5kIHVwIHdpdGggYW4gZW1wdHkg PGFzbS9zb21ldGhpbmcuaD4gZmlsZSBqdXN0DQpzbyBpdCBjYW4gYmUgaW5jbHVkZWQgd2l0aG91 dCBtYWtpbmcgYW4gZXJyb3IgdGhhdCdzIGxlc3MgZGVzaXJhYmxlIHRoYW4NCmhhdmluZyBzb21l dGhpbmcgcmVsZXZhbnQgaW4gdGhlIGZpbGUuDQoNCi1Ub255DQo ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-01-11 21:46 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1452456249-2974-1-git-send-email-ard.biesheuvel@linaro.org>
[not found] ` <1452456249-2974-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-01-11 14:40 ` [PATCH] efi: add conditional include of asm/early_ioremap.h Matt Fleming
2016-01-11 16:15 ` Guenter Roeck
[not found] ` <5693D52E.9090407-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2016-01-11 17:35 ` Ard Biesheuvel
[not found] ` <CAKv+Gu9=yVNAVOLfuv135tu6anzNxGO8i7cdsLQ6PxUigNVU4g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-01-11 18:47 ` Guenter Roeck
[not found] ` <20160111144004.GD2644-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2016-01-11 19:54 ` Luck, Tony
[not found] ` <3908561D78D1C84285E8C5FCA982C28F39FA9F4B-8oqHQFITsIE64kNsxIetb7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-01-11 20:15 ` Ard Biesheuvel
2016-01-11 21:46 ` Luck, Tony
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox