sandbox: Support 'source' command
Enhance the source command to work with sandbox, by using map_sysmem() to convert a ulong address into a pointer. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
39042d821e
commit
4ca30d6024
|
@ -36,6 +36,7 @@
|
||||||
#include <image.h>
|
#include <image.h>
|
||||||
#include <malloc.h>
|
#include <malloc.h>
|
||||||
#include <asm/byteorder.h>
|
#include <asm/byteorder.h>
|
||||||
|
#include <asm/io.h>
|
||||||
#if defined(CONFIG_8xx)
|
#if defined(CONFIG_8xx)
|
||||||
#include <mpc8xx.h>
|
#include <mpc8xx.h>
|
||||||
#endif
|
#endif
|
||||||
|
@ -44,9 +45,10 @@ int
|
||||||
source (ulong addr, const char *fit_uname)
|
source (ulong addr, const char *fit_uname)
|
||||||
{
|
{
|
||||||
ulong len;
|
ulong len;
|
||||||
image_header_t *hdr;
|
const image_header_t *hdr;
|
||||||
ulong *data;
|
ulong *data;
|
||||||
int verify;
|
int verify;
|
||||||
|
void *buf;
|
||||||
#if defined(CONFIG_FIT)
|
#if defined(CONFIG_FIT)
|
||||||
const void* fit_hdr;
|
const void* fit_hdr;
|
||||||
int noffset;
|
int noffset;
|
||||||
|
@ -56,9 +58,10 @@ source (ulong addr, const char *fit_uname)
|
||||||
|
|
||||||
verify = getenv_yesno ("verify");
|
verify = getenv_yesno ("verify");
|
||||||
|
|
||||||
switch (genimg_get_format ((void *)addr)) {
|
buf = map_sysmem(addr, 0);
|
||||||
|
switch (genimg_get_format(buf)) {
|
||||||
case IMAGE_FORMAT_LEGACY:
|
case IMAGE_FORMAT_LEGACY:
|
||||||
hdr = (image_header_t *)addr;
|
hdr = buf;
|
||||||
|
|
||||||
if (!image_check_magic (hdr)) {
|
if (!image_check_magic (hdr)) {
|
||||||
puts ("Bad magic number\n");
|
puts ("Bad magic number\n");
|
||||||
|
@ -104,7 +107,7 @@ source (ulong addr, const char *fit_uname)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fit_hdr = (const void *)addr;
|
fit_hdr = buf;
|
||||||
if (!fit_check_format (fit_hdr)) {
|
if (!fit_check_format (fit_hdr)) {
|
||||||
puts ("Bad FIT image format\n");
|
puts ("Bad FIT image format\n");
|
||||||
return 1;
|
return 1;
|
||||||
|
|
Loading…
Reference in New Issue