diff mbox

[U-Boot,v3,1/4] sunxi: move SPL-related definitions to platform-specific include

Message ID 1442508773-29993-2-git-send-email-bernhard.nortmann@web.de
State Accepted
Delegated to: Hans de Goede
Headers show

Commit Message

Bernhard Nortmann Sept. 17, 2015, 4:52 p.m. UTC
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@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(-)

Comments

Bernhard Nortmann Sept. 18, 2015, 7:58 a.m. UTC | #1
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@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
Hans de Goede Sept. 20, 2015, 1:06 p.m. UTC | #2
Hi,

On 09/18/2015 03:58 AM, Bernhard Nortmann wrote:
> 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@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...

Good point, I've fixed this up in my personal tree.

Regards,

Hans
diff mbox

Patch

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 */