From: Leif Lindholm <leif.lindholm@linaro.org>
To: Arnd Bergmann <arnd@arndb.de>
Cc: linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, grant.likely@secretlab.ca,
linux-efi@vger.kernel.org, linux@arm.linux.org.uk,
patches@linaro.org, Will Deacon <will.deacon@arm.com>,
roy.franz@linaro.org, matt.fleming@intel.com, msalter@redhat.com
Subject: Re: [PATCH v4 4/5] arm: Add [U]EFI runtime services support
Date: Tue, 14 Jan 2014 11:44:19 +0000 [thread overview]
Message-ID: <20140114114419.GH30907@bivouac.eciton.net> (raw)
In-Reply-To: <201401140752.33257.arnd@arndb.de>
On Tue, Jan 14, 2014 at 07:52:32AM +0100, Arnd Bergmann wrote:
> > > > It uses the generic configuration table scanning to populate ACPI and
> > > > SMBIOS pointers.
> > >
> > > As far as I'm concerned there are no plans to have ACPI support on ARM32,
> > > so I wonder what the code to populate the ACPI tables is about. Can
> > > you clarify this?
> >
> > Are you suggesting that I should #ifndef ARM in common code, or that I
> > should neglect to document what the common code will do with data it is
> > given by UEFI?
>
> It would probably be good to document the fact that it won't work,
> possibly even having a BUG_ON statement in the code for this case.
Why?
You'll only touch that pointer if you enable CONFIG_ACPI, and if you
do you probably want that address. Sounds a bit hostile to throw a BUG
in the face of someone who's (for example) just succeeded to get Linux
running on a Windows RT device.
> > > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > > > index 78a79a6a..1ab24cc 100644
> > > > --- a/arch/arm/Kconfig
> > > > +++ b/arch/arm/Kconfig
> > > > @@ -1853,6 +1853,20 @@ config EARLY_IOREMAP
> > > > the same virtual memory range as kmap so all early mappings must
> > > > be unapped before paging_init() is called.
> > > >
> > > > +config EFI
> > > > + bool "UEFI runtime service support"
> > > > + depends on OF && !CPU_BIG_ENDIAN
> > >
> > > What is the dependency on !CPU_BIG_ENDIAN?
> >
> > Mainly on code not being implemented to byte-reverse UCS strings.
>
> Why would you byte-reverse /strings/? They normally just come in
> order of the characters, and UTF-16 strings are already defined
> as being big-endian or marked by the BOM character.
Well, then that bit might just work[tm].
Although no other architectures supported by UEFI support big-endian,
so to be honest, I don't want to have to be the first one to validate
that in order to get the basic support into the kernel.
Some of the data structures might need swizzling though...
Again - if there is demand, this can be dealt with at a later date.
> > > > +struct efi_memory_map memmap;
> > >
> > > "memmap" is not a good name for a global identifier, particularly because
> > > it's easily confused with the well-known "mem_map" array. This
> > > wants namespace prefix like you other variable, or a "static" tag,
> > > preferably both.
> >
> > It is defined by include/linux/efi.h.
>
> This seems to be a mistake: there is no user of this variable outside
> of arch/x86/platform/efi/efi.c and arch/x86/platform/efi/efi_64.c.
> I think it should just be moved into an x86 specific header file,
> or preferably be renamed in the process. There is also efi->memmap,
> which seems to be the same pointer.
Humm, seems I unknowingly removed the only remaining x86-external
reference to this variable when I made efi_lookup_mapped_address a
common function.
Yeah, changing this makes sense.
/
Leif
next prev parent reply other threads:[~2014-01-14 11:43 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-11 13:05 [PATCH v4 0/5] arm: add UEFI " Leif Lindholm
2014-01-11 13:05 ` [PATCH v4 1/5] arm: break part of __soft_restart out into separate function Leif Lindholm
2014-01-22 11:09 ` Will Deacon
2014-01-11 13:05 ` [PATCH v4 2/5] arm: add new asm macro update_sctlr Leif Lindholm
2014-01-22 11:20 ` Will Deacon
2014-01-29 18:28 ` Leif Lindholm
2014-01-29 19:27 ` Will Deacon
2014-01-29 20:58 ` Mark Salter
2014-01-30 13:12 ` Leif Lindholm
2014-02-03 10:34 ` Will Deacon
2014-02-03 15:55 ` Leif Lindholm
2014-02-03 16:00 ` Will Deacon
2014-02-03 16:20 ` Rob Herring
2014-02-03 16:46 ` Leif Lindholm
2014-02-03 16:57 ` Will Deacon
2014-02-03 18:15 ` Leif Lindholm
2014-01-11 13:05 ` [PATCH v4 3/5] Documentation: arm: add UEFI support documentation Leif Lindholm
2014-01-11 13:05 ` [PATCH v4 4/5] arm: Add [U]EFI runtime services support Leif Lindholm
2014-01-13 15:40 ` Matt Fleming
2014-01-13 18:43 ` Arnd Bergmann
2014-01-13 20:01 ` Leif Lindholm
2014-01-14 6:52 ` Arnd Bergmann
2014-01-14 11:44 ` Leif Lindholm [this message]
2014-01-14 13:26 ` Arnd Bergmann
2014-01-14 15:25 ` Leif Lindholm
2014-01-11 13:05 ` [PATCH v4 5/5] init: efi: arm: enable (U)EFI runtime services on arm Leif Lindholm
2014-01-13 18:29 ` Arnd Bergmann
2014-01-13 18:57 ` Leif Lindholm
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=20140114114419.GH30907@bivouac.eciton.net \
--to=leif.lindholm@linaro.org \
--cc=arnd@arndb.de \
--cc=grant.likely@secretlab.ca \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=matt.fleming@intel.com \
--cc=msalter@redhat.com \
--cc=patches@linaro.org \
--cc=roy.franz@linaro.org \
--cc=will.deacon@arm.com \
/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
all inboxes | Powered by JetHome®