[U-Boot] [PATCH v3 8/9] sunxi: non-FEL SPL boot support for sun7i

Ian Campbell
2014-04-27T19:29:02Z

On Sun, 2014-04-27 at 21:15 +0200, Marek Vasut wrote:
> On Sunday, April 27, 2014 at 08:38:52 PM, Ian Campbell wrote:
> > On Sun, 2014-04-27 at 20:07 +0200, Marek Vasut wrote:
> > > # git grep common.h tools/
> > > tools/patman/test.py: include/common.h | 8 ++++++
> > > tools/patman/test.py:+#include <common.h>
> > > tools/scripts/define2mk.sed:# which preprocesses the common.h header
> > > files and outputs the final
> >
> > I only got these three when I looked. I'm on v2014.04, but even with
> > current trunk I only see fit_common.h not the ones which you show below
> > (tools/updater isn't even in trunk). Perhaps this is some newer stuff
> > not yet in trunk?
>
> Ah, darn. What errors do you get ?

All sorts...

HOSTCC tools/mksunxiboot
In file included from include/common.h:20:0,
from tools/mksunxiboot.c:18:
include/linux/bitops.h: In function ?generic_set_bit?:
include/linux/bitops.h:141:23: error: ?BITS_PER_LONG? undeclared (first use in this function)
unsigned long mask = BIT_MASK(nr);
^
include/linux/bitops.h:141:23: note: each undeclared identifier is reported only once for each function it appears in
include/linux/bitops.h: In function ?generic_clear_bit?:
include/linux/bitops.h:149:23: error: ?BITS_PER_LONG? undeclared (first use in this function)
unsigned long mask = BIT_MASK(nr);
^
In file included from include/part.h:177:0,
from include/common.h:92,
from tools/mksunxiboot.c:18:
include/part_efi.h: At top level:
include/part_efi.h:62:1: error: unknown type name ?u16?
typedef u16 efi_char16_t;
^
include/part_efi.h:65:2: error: unknown type name ?u8?
u8 b[16];
^
include/part_efi.h:70:2: error: unknown type name ?u8?
u8 boot_ind; /* 0x80 - active */
^
include/part_efi.h:71:2: error: unknown type name ?u8?
u8 head; /* starting head */
^
include/part_efi.h:72:2: error: unknown type name ?u8?
u8 sector; /* starting sector */
^
include/part_efi.h:73:2: error: unknown type name ?u8?
u8 cyl; /* starting cylinder */
^
include/part_efi.h:74:2: error: unknown type name ?u8?
u8 sys_ind; /* What partition type */
^
include/part_efi.h:75:2: error: unknown type name ?u8?
u8 end_head; /* end head */
^
include/part_efi.h:76:2: error: unknown type name ?u8?
u8 end_sector; /* end sector */
^
include/part_efi.h:77:2: error: unknown type name ?u8?
u8 end_cyl; /* end cylinder */
^
include/part_efi.h:98:12: error: expected ?=?, ?,?, ?;?, ?asm? or ?__attribute__? before ?gpt_header?
} __packed gpt_header;
^
include/part_efi.h:102:3: error: unknown type name ?u64?
u64 required_to_function:1;
^
include/part_efi.h:103:3: error: unknown type name ?u64?
u64 no_block_io_protocol:1;
^
include/part_efi.h:104:3: error: unknown type name ?u64?
u64 legacy_bios_bootable:1;
^
include/part_efi.h:105:3: error: unknown type name ?u64?
u64 reserved:45;
^
include/part_efi.h:105:3: error: width of ?reserved? exceeds its type
include/part_efi.h:106:3: error: unknown type name ?u64?
u64 type_guid_specific:16;
^
include/part_efi.h:109:12: error: expected ?=?, ?,?, ?;?, ?asm? or ?__attribute__? before ?gpt_entry_attributes?
} __packed gpt_entry_attributes;
^
include/part_efi.h:117:2: error: unknown type name ?gpt_entry_attributes?
gpt_entry_attributes attributes;
^
include/part_efi.h:119:12: error: expected ?=?, ?,?, ?;?, ?asm? or ?__attribute__? before ?gpt_entry?
} __packed gpt_entry;
^
include/part_efi.h:122:2: error: unknown type name ?u8?
u8 boot_code[440];
^
include/part_efi.h:127:12: error: expected ?=?, ?,?, ?;?, ?asm? or ?__attribute__? before ?legacy_mbr?
} __packed legacy_mbr;
^
In file included from include/common.h:92:0,
from tools/mksunxiboot.c:18:
include/part.h:193:5: error: unknown type name ?gpt_header?
gpt_header *gpt_h, gpt_entry *gpt_e);
^
include/part.h:193:24: error: unknown type name ?gpt_entry?
gpt_header *gpt_h, gpt_entry *gpt_e);
^
include/part.h:205:18: error: unknown type name ?gpt_header?
int gpt_fill_pte(gpt_header *gpt_h, gpt_entry *gpt_e,
^
include/part.h:205:37: error: unknown type name ?gpt_entry?
int gpt_fill_pte(gpt_header *gpt_h, gpt_entry *gpt_e,
^
include/part.h:218:49: error: unknown type name ?gpt_header?
int gpt_fill_header(block_dev_desc_t *dev_desc, gpt_header *gpt_h,
^
In file included from include/image.h:49:0,
from include/common.h:94,
from tools/mksunxiboot.c:18:
include/fdt_support.h:15:1: error: unknown type name ?u32?
u32 fdt_getprop_u32_default(const void *fdt, const char *path,
^
include/fdt_support.h:16:5: error: unknown type name ?u32?
const char *prop, const u32 dflt);
^
include/fdt_support.h:22:6: error: unknown type name ?u32?
u32 val, int create);
^
include/fdt_support.h:36:24: error: unknown type name ?u32?
const char *prop, u32 val, int create);
^
include/fdt_support.h:40:26: error: unknown type name ?u32?
const char *prop, u32 val, int create);
^
include/fdt_support.h:41:34: error: unknown type name ?u64?
int fdt_fixup_memory(void *blob, u64 start, u64 size);
^
include/fdt_support.h:41:45: error: unknown type name ?u64?
int fdt_fixup_memory(void *blob, u64 start, u64 size);
^
include/fdt_support.h:42:40: error: unknown type name ?u64?
int fdt_fixup_memory_banks(void *blob, u64 start[], u64 size[], int banks);
^
include/fdt_support.h:42:53: error: unknown type name ?u64?
int fdt_fixup_memory_banks(void *blob, u64 start[], u64 size[], int banks);
^
include/fdt_support.h:51:49: error: unknown type name ?bd_t?
static inline void fdt_fixup_dr_usb(void *blob, bd_t *bd) {}
^
include/fdt_support.h:65:33: error: unknown type name ?bd_t?
void ft_board_setup(void *blob, bd_t *bd);
^
include/fdt_support.h:66:31: error: unknown type name ?bd_t?
void ft_cpu_setup(void *blob, bd_t *bd);
^
include/fdt_support.h:67:31: error: unknown type name ?bd_t?
void ft_pci_setup(void *blob, bd_t *bd);
^
include/fdt_support.h:77:1: error: unknown type name ?u64?
u64 fdt_translate_address(void *blob, int node_offset, const __be32 *in_addr);
^
include/fdt_support.h:79:6: error: unknown type name ?phys_addr_t?
phys_addr_t compat_off);
^
include/fdt_support.h:86:10: error: unknown type name ?u64?
u64 addr);
^
include/fdt_support.h:87:1: error: unknown type name ?u64?
u64 fdt_get_base_address(void *fdt, int node);
^
In file included from include/common.h:94:0,
from tools/mksunxiboot.c:18:
include/image.h:322:13: error: field ?lmb? has incomplete type
struct lmb lmb; /* for memory mgmt */
^
include/image.h: In function ?fit_image_check_target_arch?:
include/image.h:981:41: error: ?IH_ARCH_DEFAULT? undeclared (first use in this function)
return fit_image_check_arch(fdt, node, IH_ARCH_DEFAULT);
^
In file included from /home/ijc/devel/u-boot.git/arch/arm/include/asm/u-boot.h:25:0,
from include/common.h:153,
from tools/mksunxiboot.c:18:
include/asm-generic/u-boot.h: At top level:
include/asm-generic/u-boot.h:29:2: error: unknown type name ?phys_size_t?
phys_size_t bi_memsize; /* size of DRAM memory in bytes */
^
In file included from /home/ijc/devel/u-boot.git/arch/arm/include/asm/global_data.h:45:0,
from include/common.h:154,
from tools/mksunxiboot.c:18:
include/asm-generic/global_data.h:60:2: error: unknown type name ?phys_size_t?
phys_size_t ram_size; /* RAM size */
^
In file included from tools/mksunxiboot.c:18:0:
include/common.h:267:1: error: unknown type name ?phys_size_t?
phys_size_t initdram (int);
^
include/common.h:306:1: error: unknown type name ?u8?
extern u8 __dtb_dt_begin[]; /* embedded device tree blob */
^
include/common.h:352:14: error: unknown type name ?cmd_tbl_t?
int do_tftpb(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
^
include/common.h:355:19: error: unknown type name ?cmd_tbl_t?
int do_fat_fsload(cmd_tbl_t *, int, int, char * const []);
^
include/common.h:358:17: error: unknown type name ?cmd_tbl_t?
int do_ext2load(cmd_tbl_t *, int, int, char * const []);
^
include/common.h:391:5: error: conflicting types for ?setenv?
int setenv (const char *, const char *);
^
In file included from /home/ijc/devel/u-boot.git/include/compiler.h:23:0,
from /home/ijc/devel/u-boot.git/include/libfdt_env.h:12,
from <command-line>:0:
/usr/include/stdlib.h:584:12: note: previous declaration of ?setenv? was here
extern int setenv (const char *__name, const char *__value, int __replace)
^
In file included from tools/mksunxiboot.c:18:0:
include/common.h:471:1: error: unknown type name ?phys_size_t?
phys_size_t get_effective_memsize(void);
^
include/common.h:635:1: error: unknown type name ?u32?
u32 cpu_mask (void);
^
In file included from include/common.h:825:0,
from tools/mksunxiboot.c:18:
include/uuid.h:18:3: error: conflicting types for ?__packed?
} __packed;
^
In file included from include/part.h:177:0,
from include/common.h:92,
from tools/mksunxiboot.c:18:
include/part_efi.h:80:3: note: previous declaration of ?__packed? was here
} __packed;
^
In file included from /home/ijc/devel/u-boot.git/include/compiler.h:25:0,
from /home/ijc/devel/u-boot.git/include/libfdt_env.h:12,
from <command-line>:0:
include/common.h:860:5: error: conflicting types for ?_IO_getc?
int getc(void);
^
In file included from /usr/include/stdio.h:74:0,
from /home/ijc/devel/u-boot.git/include/compiler.h:25,
from /home/ijc/devel/u-boot.git/include/libfdt_env.h:12,
from <command-line>:0:
/usr/include/libio.h:434:12: note: previous declaration of ?_IO_getc? was here
extern int _IO_getc (_IO_FILE *__fp);
^
In file included from tools/mksunxiboot.c:18:0:
include/common.h:864:23: error: macro "putc" requires 2 arguments, but only 1 given
void putc(const char c);
^
include/common.h:864:6: error: ?putc? redeclared as different kind of symbol
void putc(const char c);
^
include/common.h:865:6: error: conflicting types for ?puts?
void puts(const char *s);
^
include/common.h:883:5: error: conflicting types for ?fprintf?
int fprintf(int file, const char *fmt, ...)
^
include/common.h:885:6: error: conflicting types for ?fputs?
void fputs(int file, const char *s);
^
include/common.h:886:6: error: conflicting types for ?fputc?
void fputc(int file, const char c);
^
include/common.h:888:5: error: conflicting types for ?fgetc?
int fgetc(int file);
^
In file included from /home/ijc/devel/u-boot.git/include/compiler.h:25:0,
from /home/ijc/devel/u-boot.git/include/libfdt_env.h:12,
from <command-line>:0:
/usr/include/stdio.h:531:12: note: previous declaration of ?fgetc? was here
extern int fgetc (FILE *__stream);
^
In file included from include/common.h:898:0,
from tools/mksunxiboot.c:18:
include/net.h:632:1: error: unknown type name ?u8?
static inline int is_zero_ether_addr(const u8 *addr)
^
include/net.h:644:1: error: unknown type name ?u8?
static inline int is_multicast_ether_addr(const u8 *addr)
^
include/net.h:655:1: error: unknown type name ?u8?
static inline int is_broadcast_ether_addr(const u8 *addr)
^
include/net.h:670:1: error: unknown type name ?u8?
static inline int is_valid_ether_addr(const u8 *addr)
^
In file included from tools/mksunxiboot.c:18:0:
include/common.h:933:32: error: unknown type name ?phys_addr_t?
static inline void *map_sysmem(phys_addr_t paddr, unsigned long len)
^
include/common.h:942:1: error: unknown type name ?phys_addr_t?
static inline phys_addr_t map_to_sysmem(const void *ptr)
^
include/common.h: In function ?map_to_sysmem?:
include/common.h:944:10: error: ?phys_addr_t? undeclared (first use in this function)
return (phys_addr_t)(uintptr_t)ptr;
^
include/common.h:944:23: error: expected expression before ?uintptr_t?
return (phys_addr_t)(uintptr_t)ptr;
^
include/common.h:944:33: error: expected ?;? before ?ptr?
return (phys_addr_t)(uintptr_t)ptr;
^
make[1]: *** [tools/mksunxiboot] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [tools] Error 2