[PATCH] arm: boot: ep93xx: don't rely on machine_is_*() for removed board files

Alexander Sverdlin alexander.sverdlin at gmail.com
Sun May 10 10:40:54 PDT 2026


Hi Ethan,

On Sat, 2026-05-09 at 15:38 -0700, Ethan Nelson-Moore wrote:
> Code in misc-ep93xx.h relies on machine_is_*() macros for several
> boards that no longer have legacy board files. They were removed in
> commit e5ef574dda70 ("ARM: ep93xx: delete all boardfiles"). This
> prevents the removal of machine IDs no longer used by the kernel from
> mach-types. To resolve this issue, create local copies of these macros.
> (The checks themselves are still valid because the IDs are still passed
> in by the bootloader on these machines.) Also take the opportunity to
> remove three repeated checks for the same ID.

I most probably miss something, but what is the reason for removing
the machine IDs from the mach-types, especially if they are still used
by the kernel (though only in its decompressor code)?

> Signed-off-by: Ethan Nelson-Moore <enelsonmoore at gmail.com>
> ---
>  arch/arm/boot/compressed/misc-ep93xx.h | 20 ++++++++++++++++----
>  1 file changed, 16 insertions(+), 4 deletions(-)
> 
> diff --git a/arch/arm/boot/compressed/misc-ep93xx.h b/arch/arm/boot/compressed/misc-ep93xx.h
> index 65b4121d1490..b0a1b42aab31 100644
> --- a/arch/arm/boot/compressed/misc-ep93xx.h
> +++ b/arch/arm/boot/compressed/misc-ep93xx.h
> @@ -3,7 +3,22 @@
>   * Copyright (C) 2006 Lennert Buytenhek <buytenh at wantstofly.org>
>   */
>  
> -#include <asm/mach-types.h>
> +/*
> + * These machine IDs are no longer used by the kernel since EP93xx was converted
> + * to DT booting, but they are still passed in by bootloaders, so we use our own
> + * local definitions of the relevant macros.
> + */
> +#define machine_is_bk3()		(__machine_arch_type == 1880)
> +#define machine_is_edb9301()		(__machine_arch_type == 462)
> +#define machine_is_edb9302a()		(__machine_arch_type == 1127)
> +#define machine_is_edb9302()		(__machine_arch_type == 538)
> +#define machine_is_edb9307a()		(__machine_arch_type == 1128)
> +#define machine_is_edb9307()		(__machine_arch_type == 607)
> +#define machine_is_edb9312()		(__machine_arch_type == 451)
> +#define machine_is_edb9315a()		(__machine_arch_type == 772)
> +#define machine_is_edb9315()		(__machine_arch_type == 463)
> +#define machine_is_ts72xx()		(__machine_arch_type == 673)
> +#define machine_is_vision_ep9307()	(__machine_arch_type == 1578)
>  
>  static inline unsigned int __raw_readl(unsigned int ptr)
>  {
> @@ -60,14 +75,11 @@ static inline void ep93xx_decomp_setup(void)
>  	if (machine_is_edb9301() ||
>  	    machine_is_edb9302() ||
>  	    machine_is_edb9302a() ||
> -	    machine_is_edb9302a() ||
>  	    machine_is_edb9307() ||
>  	    machine_is_edb9307a() ||
> -	    machine_is_edb9307a() ||
>  	    machine_is_edb9312() ||
>  	    machine_is_edb9315() ||
>  	    machine_is_edb9315a() ||
> -	    machine_is_edb9315a() ||
>  	    machine_is_ts72xx() ||
>  	    machine_is_bk3() ||
>  	    machine_is_vision_ep9307())

-- 
Alexander Sverdlin.



More information about the linux-arm-kernel mailing list