fastboot: Change fastboot_buf_addr to an address
Given the name of this variable, it should be an address, not a pointer. Update this, to make it easier to use with sandbox. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Dmitrii Merkurev <dimorinny@google.com> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Tested-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> # on vim3
This commit is contained in:
parent
6d47fd39fc
commit
637425bab3
|
@ -159,7 +159,7 @@ NXTARG:
|
|||
return CMD_RET_USAGE;
|
||||
}
|
||||
|
||||
fastboot_init((void *)buf_addr, buf_size);
|
||||
fastboot_init(buf_addr, buf_size);
|
||||
|
||||
if (!strcmp(argv[1], "udp"))
|
||||
return do_fastboot_udp(argc, argv, buf_addr, buf_size);
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#include <fastboot-internal.h>
|
||||
#include <fb_mmc.h>
|
||||
#include <fb_nand.h>
|
||||
#include <mapmem.h>
|
||||
#include <part.h>
|
||||
#include <stdlib.h>
|
||||
#include <linux/printk.h>
|
||||
|
@ -243,6 +244,7 @@ void fastboot_data_download(const void *fastboot_data,
|
|||
{
|
||||
#define BYTES_PER_DOT 0x20000
|
||||
u32 pre_dot_num, now_dot_num;
|
||||
void *buf;
|
||||
|
||||
if (fastboot_data_len == 0 ||
|
||||
(fastboot_bytes_received + fastboot_data_len) >
|
||||
|
@ -252,8 +254,10 @@ void fastboot_data_download(const void *fastboot_data,
|
|||
return;
|
||||
}
|
||||
/* Download data to fastboot_buf_addr */
|
||||
memcpy(fastboot_buf_addr + fastboot_bytes_received,
|
||||
buf = map_sysmem(fastboot_buf_addr, 0);
|
||||
memcpy(buf + fastboot_bytes_received,
|
||||
fastboot_data, fastboot_data_len);
|
||||
unmap_sysmem(buf);
|
||||
|
||||
pre_dot_num = fastboot_bytes_received / BYTES_PER_DOT;
|
||||
fastboot_bytes_received += fastboot_data_len;
|
||||
|
@ -296,13 +300,16 @@ void fastboot_data_complete(char *response)
|
|||
*/
|
||||
static void __maybe_unused flash(char *cmd_parameter, char *response)
|
||||
{
|
||||
void *buf = map_sysmem(fastboot_buf_addr, 0);
|
||||
|
||||
if (IS_ENABLED(CONFIG_FASTBOOT_FLASH_MMC))
|
||||
fastboot_mmc_flash_write(cmd_parameter, fastboot_buf_addr,
|
||||
image_size, response);
|
||||
fastboot_mmc_flash_write(cmd_parameter, buf, image_size,
|
||||
response);
|
||||
|
||||
if (IS_ENABLED(CONFIG_FASTBOOT_FLASH_NAND))
|
||||
fastboot_nand_flash_write(cmd_parameter, fastboot_buf_addr,
|
||||
image_size, response);
|
||||
fastboot_nand_flash_write(cmd_parameter, buf, image_size,
|
||||
response);
|
||||
unmap_sysmem(buf);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
/**
|
||||
* fastboot_buf_addr - base address of the fastboot download buffer
|
||||
*/
|
||||
void *fastboot_buf_addr;
|
||||
ulong fastboot_buf_addr;
|
||||
|
||||
/**
|
||||
* fastboot_buf_size - size of the fastboot download buffer
|
||||
|
@ -154,7 +154,7 @@ void fastboot_boot(void)
|
|||
};
|
||||
|
||||
snprintf(boot_addr_start, sizeof(boot_addr_start) - 1,
|
||||
"0x%p", fastboot_buf_addr);
|
||||
"%lx", fastboot_buf_addr);
|
||||
printf("Booting kernel at %s...\n\n\n", boot_addr_start);
|
||||
|
||||
do_bootm(NULL, 0, 2, bootm_args);
|
||||
|
@ -214,16 +214,9 @@ void fastboot_set_progress_callback(void (*progress)(const char *msg))
|
|||
fastboot_progress_callback = progress;
|
||||
}
|
||||
|
||||
/*
|
||||
* fastboot_init() - initialise new fastboot protocol session
|
||||
*
|
||||
* @buf_addr: Pointer to download buffer, or NULL for default
|
||||
* @buf_size: Size of download buffer, or zero for default
|
||||
*/
|
||||
void fastboot_init(void *buf_addr, u32 buf_size)
|
||||
void fastboot_init(ulong buf_addr, u32 buf_size)
|
||||
{
|
||||
fastboot_buf_addr = buf_addr ? buf_addr :
|
||||
(void *)CONFIG_FASTBOOT_BUF_ADDR;
|
||||
fastboot_buf_addr = buf_addr ? buf_addr : CONFIG_FASTBOOT_BUF_ADDR;
|
||||
fastboot_buf_size = buf_size ? buf_size : CONFIG_FASTBOOT_BUF_SIZE;
|
||||
fastboot_set_progress_callback(NULL);
|
||||
}
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
/**
|
||||
* fastboot_buf_addr - base address of the fastboot download buffer
|
||||
*/
|
||||
extern void *fastboot_buf_addr;
|
||||
extern ulong fastboot_buf_addr;
|
||||
|
||||
/**
|
||||
* fastboot_buf_size - size of the fastboot download buffer
|
||||
|
|
|
@ -103,13 +103,13 @@ int fastboot_set_reboot_flag(enum fastboot_reboot_reason reason);
|
|||
*/
|
||||
void fastboot_set_progress_callback(void (*progress)(const char *msg));
|
||||
|
||||
/*
|
||||
/**
|
||||
* fastboot_init() - initialise new fastboot protocol session
|
||||
*
|
||||
* @buf_addr: Pointer to download buffer, or NULL for default
|
||||
* @buf_addr: Address of download buffer, or 0 for default
|
||||
* @buf_size: Size of download buffer, or zero for default
|
||||
*/
|
||||
void fastboot_init(void *buf_addr, u32 buf_size);
|
||||
void fastboot_init(ulong buf_addr, u32 buf_size);
|
||||
|
||||
/**
|
||||
* fastboot_boot() - Execute fastboot boot command
|
||||
|
|
Loading…
Reference in New Issue
Block a user