grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 7/7] Add support for ARM UEFI ("EFI") platforms


From: Vladimir 'φ-coder/phcoder' Serbinenko
Subject: Re: [PATCH 7/7] Add support for ARM UEFI ("EFI") platforms
Date: Tue, 09 Apr 2013 19:30:46 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130116 Icedove/10.0.12

On 04.04.2013 14:54, Leif Lindholm wrote:

> On Wed, Apr 03, 2013 at 10:01:59PM +0200, Vladimir '??-coder/phcoder' 
> Serbinenko wrote:
>>> I don't see grub-mkimage currently being fully cross-platform anyway,
>>> so I would (as mentioned in previous email) prefer to postpone any
>>> such adjustments until the basic support is in. I have the patches
>>> for it, if not entirely up to date.
>>
>> grub-mkimage is fully cross-platform and is intended to be usable this
>> way. If you see a problem, please tell.
> 
> Well, the straightforward relocations for EM_386 and EM_X86_64 look OK,
> but much of the fiddly IA64 patching that goes on in grub-mkimagexx.c
> (add_value_to_slot_* and make_trampoline) does not appear
> endianess-safe to me.
> 

Fixed

> Since I didn't want to have to duplicate my relocation handling
> between kernel and grub-mkimage, I use kern/arm/dl.c for both.
> 

Could you move the common functions to dl_helper.c as in ISA64?

> In order to do that in an endianess-safe way, I need to be able to
> export target platform information over there, as well as the
> host_to_target/target_to_host macros. This would involve moving these
> macros, as well as the struct image_target_desc definition, out of
> grub-mkimage.c.

Is big-endian ARM of any interest at all? I was under impression that it
was limited to few devices and not supported by either u-boot or EFI.
You still have grub_le_to_cpu / grub_cpu_to_le

> 
> However, this would also make it possible to do the same for IA64,
> and get rid of some code duplication between grub-mkimagexx.c and
> kern/ia64/dl.c.
> 

I already did. For IA64 I simply used le_to_cpu/cpu_to_le as ia64-efi is
always little-endian

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]