[edk2] [PATCH] MdePkg/Uefi ARM: only support native ARM/Thumb images

Ard Biesheuvel posted 1 patch 6 years, 4 months ago
Failed in applying to current master (apply log)
MdePkg/Include/Uefi/UefiBaseType.h | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
[edk2] [PATCH] MdePkg/Uefi ARM: only support native ARM/Thumb images
Posted by Ard Biesheuvel 6 years, 4 months ago
The ARM calling convention is fundamentally incompatible with EBC,
and having a cross compatible machine type identical to the native
type does not make a lot of sense either. So restrict the compatible
machine type for ARM to EFI_IMAGE_MACHINE_ARMTHUMB_MIXED, and remove
the cross compatible.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 MdePkg/Include/Uefi/UefiBaseType.h | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/MdePkg/Include/Uefi/UefiBaseType.h b/MdePkg/Include/Uefi/UefiBaseType.h
index 728a0472602a..d9556cd2ec4e 100644
--- a/MdePkg/Include/Uefi/UefiBaseType.h
+++ b/MdePkg/Include/Uefi/UefiBaseType.h
@@ -270,10 +270,9 @@ typedef union {
 
 #elif defined (MDE_CPU_ARM)
 
-#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) \
-  (((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED) || ((Machine) == EFI_IMAGE_MACHINE_EBC))
+#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED)
 
-#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED) 
+#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) (FALSE)
 
 #elif defined (MDE_CPU_AARCH64)
 
-- 
2.11.0

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] MdePkg/Uefi ARM: only support native ARM/Thumb images
Posted by Leif Lindholm 6 years, 4 months ago
On Fri, Dec 08, 2017 at 03:55:14PM +0000, Ard Biesheuvel wrote:
> The ARM calling convention is fundamentally incompatible with EBC,
> and having a cross compatible machine type identical to the native
> type does not make a lot of sense either. So restrict the compatible
> machine type for ARM to EFI_IMAGE_MACHINE_ARMTHUMB_MIXED, and remove
> the cross compatible.
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

Looks reasonable.
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>

> ---
>  MdePkg/Include/Uefi/UefiBaseType.h | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/MdePkg/Include/Uefi/UefiBaseType.h b/MdePkg/Include/Uefi/UefiBaseType.h
> index 728a0472602a..d9556cd2ec4e 100644
> --- a/MdePkg/Include/Uefi/UefiBaseType.h
> +++ b/MdePkg/Include/Uefi/UefiBaseType.h
> @@ -270,10 +270,9 @@ typedef union {
>  
>  #elif defined (MDE_CPU_ARM)
>  
> -#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) \
> -  (((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED) || ((Machine) == EFI_IMAGE_MACHINE_EBC))
> +#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED)
>  
> -#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED) 
> +#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) (FALSE)
>  
>  #elif defined (MDE_CPU_AARCH64)
>  
> -- 
> 2.11.0
> 
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] MdePkg/Uefi ARM: only support native ARM/Thumb images
Posted by Gao, Liming 6 years, 4 months ago
Reviewed-by: Liming Gao <liming.gao@intel.com>

> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ard Biesheuvel
> Sent: Friday, December 8, 2017 11:55 PM
> To: edk2-devel@lists.01.org
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>; leif.lindholm@linaro.org; Ard Biesheuvel
> <ard.biesheuvel@linaro.org>
> Subject: [edk2] [PATCH] MdePkg/Uefi ARM: only support native ARM/Thumb images
> 
> The ARM calling convention is fundamentally incompatible with EBC,
> and having a cross compatible machine type identical to the native
> type does not make a lot of sense either. So restrict the compatible
> machine type for ARM to EFI_IMAGE_MACHINE_ARMTHUMB_MIXED, and remove
> the cross compatible.
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
>  MdePkg/Include/Uefi/UefiBaseType.h | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/MdePkg/Include/Uefi/UefiBaseType.h b/MdePkg/Include/Uefi/UefiBaseType.h
> index 728a0472602a..d9556cd2ec4e 100644
> --- a/MdePkg/Include/Uefi/UefiBaseType.h
> +++ b/MdePkg/Include/Uefi/UefiBaseType.h
> @@ -270,10 +270,9 @@ typedef union {
> 
>  #elif defined (MDE_CPU_ARM)
> 
> -#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) \
> -  (((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED) || ((Machine) == EFI_IMAGE_MACHINE_EBC))
> +#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED)
> 
> -#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED)
> +#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) (FALSE)
> 
>  #elif defined (MDE_CPU_AARCH64)
> 
> --
> 2.11.0
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] MdePkg/Uefi ARM: only support native ARM/Thumb images
Posted by Ard Biesheuvel 6 years, 4 months ago
On 10 December 2017 at 13:30, Gao, Liming <liming.gao@intel.com> wrote:
> Reviewed-by: Liming Gao <liming.gao@intel.com>
>

Thanks. Pushed as 3b3c009a25543bf709267982b2583dd486d4d24d

>> -----Original Message-----
>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ard Biesheuvel
>> Sent: Friday, December 8, 2017 11:55 PM
>> To: edk2-devel@lists.01.org
>> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>; leif.lindholm@linaro.org; Ard Biesheuvel
>> <ard.biesheuvel@linaro.org>
>> Subject: [edk2] [PATCH] MdePkg/Uefi ARM: only support native ARM/Thumb images
>>
>> The ARM calling convention is fundamentally incompatible with EBC,
>> and having a cross compatible machine type identical to the native
>> type does not make a lot of sense either. So restrict the compatible
>> machine type for ARM to EFI_IMAGE_MACHINE_ARMTHUMB_MIXED, and remove
>> the cross compatible.
>>
>> Contributed-under: TianoCore Contribution Agreement 1.1
>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>> ---
>>  MdePkg/Include/Uefi/UefiBaseType.h | 5 ++---
>>  1 file changed, 2 insertions(+), 3 deletions(-)
>>
>> diff --git a/MdePkg/Include/Uefi/UefiBaseType.h b/MdePkg/Include/Uefi/UefiBaseType.h
>> index 728a0472602a..d9556cd2ec4e 100644
>> --- a/MdePkg/Include/Uefi/UefiBaseType.h
>> +++ b/MdePkg/Include/Uefi/UefiBaseType.h
>> @@ -270,10 +270,9 @@ typedef union {
>>
>>  #elif defined (MDE_CPU_ARM)
>>
>> -#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) \
>> -  (((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED) || ((Machine) == EFI_IMAGE_MACHINE_EBC))
>> +#define EFI_IMAGE_MACHINE_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED)
>>
>> -#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) ((Machine) == EFI_IMAGE_MACHINE_ARMTHUMB_MIXED)
>> +#define EFI_IMAGE_MACHINE_CROSS_TYPE_SUPPORTED(Machine) (FALSE)
>>
>>  #elif defined (MDE_CPU_AARCH64)
>>
>> --
>> 2.11.0
>>
>> _______________________________________________
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel