[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 09/10] commands/file: use definitions from arm/linux.h
From: |
Leif Lindholm |
Subject: |
Re: [PATCH 09/10] commands/file: use definitions from arm/linux.h |
Date: |
Tue, 27 Feb 2018 12:36:37 +0000 |
User-agent: |
NeoMutt/20170113 (1.7.2) |
On Thu, Feb 15, 2018 at 11:30:32AM +0100, Daniel Kiper wrote:
> On Thu, Feb 01, 2018 at 06:18:57PM +0000, Leif Lindholm wrote:
> > Clean up code for matching IS_ARM slightly by making use of struct
> > linux_arm_kernel_header and GRUB_LINUX_ARM_MAGIC_SIGNATURE.
> >
> > Signed-off-by: Leif Lindholm <address@hidden>
> > ---
> > grub-core/commands/file.c | 14 ++++++--------
> > 1 file changed, 6 insertions(+), 8 deletions(-)
> >
> > diff --git a/grub-core/commands/file.c b/grub-core/commands/file.c
> > index 63c84499b..fad191202 100644
> > --- a/grub-core/commands/file.c
> > +++ b/grub-core/commands/file.c
> > @@ -27,6 +27,7 @@
> > #include <grub/elf.h>
> > #include <grub/xen_file.h>
> > #include <grub/efi/pe32.h>
> > +#include <grub/arm/linux.h>
> > #include <grub/i386/linux.h>
> > #include <grub/xnu.h>
> > #include <grub/machoload.h>
> > @@ -383,21 +384,18 @@ grub_cmd_file (grub_extcmd_context_t ctxt, int argc,
> > char **args)
> > }
> > case IS_ARM_LINUX:
> > {
> > - grub_uint32_t sig, sig_pi;
> > - if (grub_file_read (file, &sig_pi, 4) != 4)
> > + struct linux_arm_kernel_header lh;
> > + if (grub_file_read (file, &lh, sizeof (lh)) != sizeof (lh))
> > break;
> > /* Raspberry pi. */
> > - if (sig_pi == grub_cpu_to_le32_compile_time (0xea000006))
> > + if (lh.code0 == grub_cpu_to_le32_compile_time (0xea000006))
>
> Could you define 0xea000006 as a constant? If you add the comment
> what does it mean that will be perfect.
I'll be completely honest here and say "I don't have a clue".
Well, that's not true, I'm broken enough to see that that is a short
forward branch in the A32 ("ARM") instruction set. What I don't
understand is what significance that has for Raspberry Pi.
I just kept the logic for compatibility.
Vladimir?
/
Leif
- [PATCH 06/10] arm64: align linux kernel magic macro naming with i386, (continued)
- [PATCH 06/10] arm64: align linux kernel magic macro naming with i386, Leif Lindholm, 2018/02/01
- [PATCH 07/10] arm: switch linux loader to linux_arm_kernel_header struct, Leif Lindholm, 2018/02/01
- [PATCH 10/10] commands/file: use definitions from arm64/linux.h, Leif Lindholm, 2018/02/01
- [PATCH 05/10] arm64: align linux kernel header struct naming with i386, Leif Lindholm, 2018/02/01
- [PATCH 09/10] commands/file: use definitions from arm/linux.h, Leif Lindholm, 2018/02/01
- [PATCH 08/10] arm: make linux.h safe to include for non-native builds, Leif Lindholm, 2018/02/01
- Re: [PATCH 00/10] various cleanup, Daniel Kiper, 2018/02/15