mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-25 23:06:15 +00:00
Merge branch 'sandbox' of git://git.denx.de/u-boot-x86
This commit is contained in:
commit
97cdf64026
10 changed files with 42 additions and 40 deletions
|
@ -367,6 +367,7 @@ int os_dirent_ls(const char *dirname, struct os_dirent_node **headp)
|
||||||
|
|
||||||
done:
|
done:
|
||||||
closedir(dir);
|
closedir(dir);
|
||||||
|
free(fname);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -130,7 +130,8 @@ static int sandbox_cmdline_cb_memory(struct sandbox_state *state,
|
||||||
state->write_ram_buf = true;
|
state->write_ram_buf = true;
|
||||||
state->ram_buf_fname = arg;
|
state->ram_buf_fname = arg;
|
||||||
|
|
||||||
if (os_read_ram_buf(arg)) {
|
err = os_read_ram_buf(arg);
|
||||||
|
if (err) {
|
||||||
printf("Failed to read RAM buffer\n");
|
printf("Failed to read RAM buffer\n");
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
#include <dataflash.h>
|
#include <dataflash.h>
|
||||||
#endif
|
#endif
|
||||||
#include <hash.h>
|
#include <hash.h>
|
||||||
|
#include <inttypes.h>
|
||||||
#include <watchdog.h>
|
#include <watchdog.h>
|
||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
#include <linux/compiler.h>
|
#include <linux/compiler.h>
|
||||||
|
@ -338,7 +339,8 @@ static int do_mem_cmp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||||
if (word1 != word2) {
|
if (word1 != word2) {
|
||||||
ulong offset = buf1 - base;
|
ulong offset = buf1 - base;
|
||||||
#ifdef CONFIG_SYS_SUPPORT_64BIT_DATA
|
#ifdef CONFIG_SYS_SUPPORT_64BIT_DATA
|
||||||
printf("%s at 0x%p (%#0*llx) != %s at 0x%p (%#0*llx)\n",
|
printf("%s at 0x%p (%#0*"PRIx64") != %s at 0x%p (%#0*"
|
||||||
|
PRIx64 ")\n",
|
||||||
type, (void *)(addr1 + offset), size, word1,
|
type, (void *)(addr1 + offset), size, word1,
|
||||||
type, (void *)(addr2 + offset), size, word2);
|
type, (void *)(addr2 + offset), size, word2);
|
||||||
#else
|
#else
|
||||||
|
@ -1146,7 +1148,7 @@ mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char * const argv[])
|
||||||
printf(" %08x", *((u32 *)ptr));
|
printf(" %08x", *((u32 *)ptr));
|
||||||
#ifdef CONFIG_SYS_SUPPORT_64BIT_DATA
|
#ifdef CONFIG_SYS_SUPPORT_64BIT_DATA
|
||||||
else if (size == 8)
|
else if (size == 8)
|
||||||
printf(" %016llx", *((u64 *)ptr));
|
printf(" %016" PRIx64, *((u64 *)ptr));
|
||||||
#endif
|
#endif
|
||||||
else if (size == 2)
|
else if (size == 2)
|
||||||
printf(" %04x", *((u16 *)ptr));
|
printf(" %04x", *((u16 *)ptr));
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <common.h>
|
#include <common.h>
|
||||||
|
#include <inttypes.h>
|
||||||
#include <stdio_dev.h>
|
#include <stdio_dev.h>
|
||||||
#include <linux/ctype.h>
|
#include <linux/ctype.h>
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
|
@ -914,8 +915,6 @@ void fdt_del_node_and_alias(void *blob, const char *alias)
|
||||||
fdt_delprop(blob, off, alias);
|
fdt_delprop(blob, off, alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define PRu64 "%llx"
|
|
||||||
|
|
||||||
/* Max address size we deal with */
|
/* Max address size we deal with */
|
||||||
#define OF_MAX_ADDR_CELLS 4
|
#define OF_MAX_ADDR_CELLS 4
|
||||||
#define OF_BAD_ADDR ((u64)-1)
|
#define OF_BAD_ADDR ((u64)-1)
|
||||||
|
@ -973,8 +972,8 @@ static u64 of_bus_default_map(fdt32_t *addr, const fdt32_t *range,
|
||||||
s = of_read_number(range + na + pna, ns);
|
s = of_read_number(range + na + pna, ns);
|
||||||
da = of_read_number(addr, na);
|
da = of_read_number(addr, na);
|
||||||
|
|
||||||
debug("OF: default map, cp="PRu64", s="PRu64", da="PRu64"\n",
|
debug("OF: default map, cp=%" PRIu64 ", s=%" PRIu64
|
||||||
cp, s, da);
|
", da=%" PRIu64 "\n", cp, s, da);
|
||||||
|
|
||||||
if (da < cp || da >= (cp + s))
|
if (da < cp || da >= (cp + s))
|
||||||
return OF_BAD_ADDR;
|
return OF_BAD_ADDR;
|
||||||
|
@ -1052,7 +1051,7 @@ static int of_translate_one(void * blob, int parent, struct of_bus *bus,
|
||||||
|
|
||||||
finish:
|
finish:
|
||||||
of_dump_addr("OF: parent translation for:", addr, pna);
|
of_dump_addr("OF: parent translation for:", addr, pna);
|
||||||
debug("OF: with offset: "PRu64"\n", offset);
|
debug("OF: with offset: %" PRIu64 "\n", offset);
|
||||||
|
|
||||||
/* Translate it into parent bus space */
|
/* Translate it into parent bus space */
|
||||||
return pbus->translate(addr, offset, pna);
|
return pbus->translate(addr, offset, pna);
|
||||||
|
@ -1381,9 +1380,9 @@ int fdt_verify_alias_address(void *fdt, int anode, const char *alias, u64 addr)
|
||||||
|
|
||||||
dt_addr = fdt_translate_address(fdt, node, reg);
|
dt_addr = fdt_translate_address(fdt, node, reg);
|
||||||
if (addr != dt_addr) {
|
if (addr != dt_addr) {
|
||||||
printf("Warning: U-Boot configured device %s at address %llx,\n"
|
printf("Warning: U-Boot configured device %s at address %"
|
||||||
" but the device tree has it address %llx.\n",
|
PRIx64 ",\n but the device tree has it address %"
|
||||||
alias, addr, dt_addr);
|
PRIx64 ".\n", alias, addr, dt_addr);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
#include <common.h>
|
#include <common.h>
|
||||||
#include <command.h>
|
#include <command.h>
|
||||||
#include <ide.h>
|
#include <ide.h>
|
||||||
|
#include <inttypes.h>
|
||||||
#include <malloc.h>
|
#include <malloc.h>
|
||||||
#include <part_efi.h>
|
#include <part_efi.h>
|
||||||
#include <linux/ctype.h>
|
#include <linux/ctype.h>
|
||||||
|
@ -553,7 +554,7 @@ static int is_gpt_valid(block_dev_desc_t *dev_desc, u64 lba,
|
||||||
|
|
||||||
/* Check that the my_lba entry points to the LBA that contains the GPT */
|
/* Check that the my_lba entry points to the LBA that contains the GPT */
|
||||||
if (le64_to_cpu(pgpt_head->my_lba) != lba) {
|
if (le64_to_cpu(pgpt_head->my_lba) != lba) {
|
||||||
printf("GPT: my_lba incorrect: %llX != %llX\n",
|
printf("GPT: my_lba incorrect: %llX != %" PRIX64 "\n",
|
||||||
le64_to_cpu(pgpt_head->my_lba),
|
le64_to_cpu(pgpt_head->my_lba),
|
||||||
lba);
|
lba);
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -562,18 +563,18 @@ static int is_gpt_valid(block_dev_desc_t *dev_desc, u64 lba,
|
||||||
/* Check the first_usable_lba and last_usable_lba are within the disk. */
|
/* Check the first_usable_lba and last_usable_lba are within the disk. */
|
||||||
lastlba = (u64)dev_desc->lba;
|
lastlba = (u64)dev_desc->lba;
|
||||||
if (le64_to_cpu(pgpt_head->first_usable_lba) > lastlba) {
|
if (le64_to_cpu(pgpt_head->first_usable_lba) > lastlba) {
|
||||||
printf("GPT: first_usable_lba incorrect: %llX > %llX\n",
|
printf("GPT: first_usable_lba incorrect: %llX > %" PRIX64 "\n",
|
||||||
le64_to_cpu(pgpt_head->first_usable_lba), lastlba);
|
le64_to_cpu(pgpt_head->first_usable_lba), lastlba);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (le64_to_cpu(pgpt_head->last_usable_lba) > lastlba) {
|
if (le64_to_cpu(pgpt_head->last_usable_lba) > lastlba) {
|
||||||
printf("GPT: last_usable_lba incorrect: %llX > %llX\n",
|
printf("GPT: last_usable_lba incorrect: %llX > %" PRIX64 "\n",
|
||||||
le64_to_cpu(pgpt_head->last_usable_lba), lastlba);
|
le64_to_cpu(pgpt_head->last_usable_lba), lastlba);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
debug("GPT: first_usable_lba: %llX last_usable_lba %llX last lba %llX\n",
|
debug("GPT: first_usable_lba: %llX last_usable_lba %llX last lba %"
|
||||||
le64_to_cpu(pgpt_head->first_usable_lba),
|
PRIX64 "\n", le64_to_cpu(pgpt_head->first_usable_lba),
|
||||||
le64_to_cpu(pgpt_head->last_usable_lba), lastlba);
|
le64_to_cpu(pgpt_head->last_usable_lba), lastlba);
|
||||||
|
|
||||||
/* Read and allocate Partition Table Entries */
|
/* Read and allocate Partition Table Entries */
|
||||||
|
|
|
@ -85,10 +85,10 @@ branch. Put all your commits in a branch, set the branch's upstream to a
|
||||||
valid value, and all will be well. Otherwise buildman will perform random
|
valid value, and all will be well. Otherwise buildman will perform random
|
||||||
actions. Use -n to check what the random actions might be.
|
actions. Use -n to check what the random actions might be.
|
||||||
|
|
||||||
If you just want to build the current source tree, leave off the -b flag.
|
If you just want to build the current source tree, leave off the -b flag
|
||||||
This will display results and errors as they happen. You can still look
|
and add -e. This will display results and errors as they happen. You can
|
||||||
at them later using -s. Note that buildman will assume that the source
|
still look at them later using -se. Note that buildman will assume that the
|
||||||
has changed, and will build all specified boards in this case.
|
source has changed, and will build all specified boards in this case.
|
||||||
|
|
||||||
Buildman is optimised for building many commits at once, for many boards.
|
Buildman is optimised for building many commits at once, for many boards.
|
||||||
On multi-core machines, Buildman is fast because it uses most of the
|
On multi-core machines, Buildman is fast because it uses most of the
|
||||||
|
@ -693,9 +693,9 @@ Quick Sanity Check
|
||||||
==================
|
==================
|
||||||
|
|
||||||
If you have made changes and want to do a quick sanity check of the
|
If you have made changes and want to do a quick sanity check of the
|
||||||
currently-checked-out source, run buildman without the -b flag. This will
|
currently checked-out source, run buildman without the -b flag. This will
|
||||||
build the selected boards and display build status and errors as it runs
|
build the selected boards and display build status as it runs (i.e. -v is
|
||||||
(i.e. -v amd -e are enabled automatically).
|
enabled automatically). Use -e to see errors/warnings as well.
|
||||||
|
|
||||||
|
|
||||||
Other options
|
Other options
|
||||||
|
@ -752,7 +752,7 @@ an error and green indicating that a commit fixed an error. Use the -e
|
||||||
flag to see the full errors and -l to see which boards caused which errors.
|
flag to see the full errors and -l to see which boards caused which errors.
|
||||||
|
|
||||||
If you really want to see build results as they happen, use -v when doing a
|
If you really want to see build results as they happen, use -v when doing a
|
||||||
build (-e will be enabled automatically).
|
build (and -e to see the errors/warnings too).
|
||||||
|
|
||||||
You don't need to stick around on that branch while buildman is running. It
|
You don't need to stick around on that branch while buildman is running. It
|
||||||
checks out its own copy of the source code, so you can change branches,
|
checks out its own copy of the source code, so you can change branches,
|
||||||
|
@ -816,11 +816,10 @@ TODO
|
||||||
|
|
||||||
This has mostly be written in my spare time as a response to my difficulties
|
This has mostly be written in my spare time as a response to my difficulties
|
||||||
in testing large series of patches. Apart from tidying up there is quite a
|
in testing large series of patches. Apart from tidying up there is quite a
|
||||||
bit of scope for improvement. Things like better error diffs, easier access
|
bit of scope for improvement. Things like better error diffs and easier
|
||||||
to log files, error display while building. Also it would be nice it buildman
|
access to log files. Also it would be nice it buildman could 'hunt' for
|
||||||
could 'hunt' for problems, perhaps by building a few boards for each arch,
|
problems, perhaps by building a few boards for each arch, or checking
|
||||||
or checking commits for changed files and building only boards which use
|
commits for changed files and building only boards which use those files.
|
||||||
those files.
|
|
||||||
|
|
||||||
|
|
||||||
Credits
|
Credits
|
||||||
|
|
|
@ -918,6 +918,7 @@ class Builder:
|
||||||
if self._list_error_boards:
|
if self._list_error_boards:
|
||||||
names = []
|
names = []
|
||||||
for board in line_boards[line]:
|
for board in line_boards[line]:
|
||||||
|
if not board.target in names:
|
||||||
names.append(board.target)
|
names.append(board.target)
|
||||||
names_str = '(%s) ' % ','.join(names)
|
names_str = '(%s) ' % ','.join(names)
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -332,7 +332,7 @@ class BuilderThread(threading.Thread):
|
||||||
|
|
||||||
# Now write the actual build output
|
# Now write the actual build output
|
||||||
if keep_outputs:
|
if keep_outputs:
|
||||||
patterns = ['u-boot', '*.bin', 'u-boot.dtb', '*.map',
|
patterns = ['u-boot', '*.bin', 'u-boot.dtb', '*.map', '*.img',
|
||||||
'include/autoconf.mk', 'spl/u-boot-spl',
|
'include/autoconf.mk', 'spl/u-boot-spl',
|
||||||
'spl/u-boot-spl.bin']
|
'spl/u-boot-spl.bin']
|
||||||
for pattern in patterns:
|
for pattern in patterns:
|
||||||
|
|
|
@ -70,7 +70,7 @@ def ShowActions(series, why_selected, boards_selected, builder, options):
|
||||||
if commits:
|
if commits:
|
||||||
for upto in range(0, len(series.commits), options.step):
|
for upto in range(0, len(series.commits), options.step):
|
||||||
commit = series.commits[upto]
|
commit = series.commits[upto]
|
||||||
print ' ', col.Color(col.YELLOW, commit.hash, bright=False),
|
print ' ', col.Color(col.YELLOW, commit.hash[:8], bright=False),
|
||||||
print commit.subject
|
print commit.subject
|
||||||
print
|
print
|
||||||
for arg in why_selected:
|
for arg in why_selected:
|
||||||
|
@ -188,7 +188,6 @@ def DoBuildman(options, args, toolchains=None, make_func=None, boards=None,
|
||||||
else:
|
else:
|
||||||
series = None
|
series = None
|
||||||
options.verbose = True
|
options.verbose = True
|
||||||
options.show_errors = True
|
|
||||||
|
|
||||||
# By default we have one thread per CPU. But if there are not enough jobs
|
# By default we have one thread per CPU. But if there are not enough jobs
|
||||||
# we can have fewer threads and use a high '-j' value for make.
|
# we can have fewer threads and use a high '-j' value for make.
|
||||||
|
|
|
@ -248,8 +248,7 @@ class PatchStream:
|
||||||
# Detect the start of a new commit
|
# Detect the start of a new commit
|
||||||
elif commit_match:
|
elif commit_match:
|
||||||
self.CloseCommit()
|
self.CloseCommit()
|
||||||
# TODO: We should store the whole hash, and just display a subset
|
self.commit = commit.Commit(commit_match.group(1))
|
||||||
self.commit = commit.Commit(commit_match.group(1)[:8])
|
|
||||||
|
|
||||||
# Detect tags in the commit message
|
# Detect tags in the commit message
|
||||||
elif tag_match:
|
elif tag_match:
|
||||||
|
|
Loading…
Add table
Reference in a new issue