[U-Boot] [PATCH v3 1/4] sunxi: move SPL-related definitions to platform-specific include
Bernhard Nortmann
bernhard.nortmann at web.de
Fri Sep 18 09:58:43 CEST 2015
Am 17.09.2015 um 18:52 schrieb Bernhard Nortmann:
> The sunxi platform currently doesn't seem to make any use of the
> asm/arch-sunxi/spl.h file. This patch moves some declarations from
> tools/mksunxiboot.c into it.
>
> This enables us to reuse those definitions when extending the
> sunxi board code (boards/sunxi/boards.c).
>
> Signed-off-by: Bernhard Nortmann <bernhard.nortmann at web.de>
>
> ---
>
> Changes in v3:
> - (new with v3)
>
> Changes in v2: None
>
> arch/arm/include/asm/arch-sunxi/spl.h | 25 +++++++++++++++++--------
> tools/mksunxiboot.c | 17 +----------------
> 2 files changed, 18 insertions(+), 24 deletions(-)
>
> diff --git a/arch/arm/include/asm/arch-sunxi/spl.h b/arch/arm/include/asm/arch-sunxi/spl.h
> index acbec46..751de75 100644
> --- a/arch/arm/include/asm/arch-sunxi/spl.h
> +++ b/arch/arm/include/asm/arch-sunxi/spl.h
> @@ -9,12 +9,21 @@
> #ifndef _ASM_ARCH_SPL_H_
> #define _ASM_ARCH_SPL_H_
>
> -#define BOOT_DEVICE_NONE 0
> -#define BOOT_DEVICE_XIP 1
> -#define BOOT_DEVICE_NAND 2
> -#define BOOT_DEVICE_ONE_NAND 3
> -#define BOOT_DEVICE_MMC2 5 /*emmc*/
> -#define BOOT_DEVICE_MMC1 6
> -#define BOOT_DEVICE_XIPWAIT 7
> -#define BOOT_DEVICE_MMC2_2 0xff
> +#define BOOT0_MAGIC "eGON.BT0"
> +
> +/* boot head definition from sun4i boot code */
> +struct boot_file_head {
> + uint32_t b_instruction; /* one intruction jumping to real code */
> + uint8_t magic[8]; /* ="eGON.BT0" or "eGON.BT1", not C-style str */
> + uint32_t check_sum; /* generated by PC */
> + uint32_t length; /* generated by PC */
> + /*
> + * We use a simplified header, only filling in what is needed
> + * by the boot ROM. To be compatible with Allwinner tools we
> + * would need to implement the proper fields here instead of
> + * padding.
> + */
> + uint8_t pad[12]; /* align to 32 bytes */
> +};
> +
> #endif
> diff --git a/tools/mksunxiboot.c b/tools/mksunxiboot.c
> index 676d392..54f4d05 100644
> --- a/tools/mksunxiboot.c
> +++ b/tools/mksunxiboot.c
> @@ -15,23 +15,8 @@
> #include <errno.h>
> #include <sys/types.h>
> #include <sys/stat.h>
> +#include "asm/arch/spl.h"
>
> -/* boot head definition from sun4i boot code */
> -struct boot_file_head {
> - uint32_t b_instruction; /* one intruction jumping to real code */
> - uint8_t magic[8]; /* ="eGON.BT0" or "eGON.BT1", not C-style str */
> - uint32_t check_sum; /* generated by PC */
> - uint32_t length; /* generated by PC */
> - /*
> - * We use a simplified header, only filling in what is needed
> - * by the boot ROM. To be compatible with Allwinner tools we
> - * would need to implement the proper fields here instead of
> - * padding.
> - */
> - uint8_t pad[12]; /* align to 32 bytes */
> -};
> -
> -#define BOOT0_MAGIC "eGON.BT0"
> #define STAMP_VALUE 0x5F0A6C39
>
> /* check sum functon from sun4i boot code */
One minor thing: This doesn't touch the boilerplate header of
asm/arch-sunxi/spl.h. However "a copy of omap3/spl.h" and the
copyright notice don't really apply any longer, so feel free
to change that to something more suitable...
Regards, B. Nortmann
More information about the U-Boot
mailing list