mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
fastboot: Correct dependencies in FASTBOOT_FLASH
Ensure that when selecting FASTBOOT_FLASH you end up with a buildable configuration. Prior to this you could select NAND without MTDPARTS and end up with an image which (surprisingly) excluded NAND. Also fix dependencies on FASTBOOT_GPT_NAME/FASTBOOT_MBR_NAME which require you have EFI_PARTITION/DOS_PARTITION enabled. Delete redundant FASTBOOT_FLASH_NAND_DEV from Kconfig - it was only ever used as a guard and the value was ignored in all cases, we're using FASTBOOT_FLASH_NAND as the guard now. Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
This commit is contained in:
parent
d2df2abbcd
commit
42d8dd4424
4 changed files with 15 additions and 28 deletions
|
@ -85,7 +85,7 @@ static void omap_set_fastboot_board_rev(void)
|
|||
env_set("fastboot.board_rev", board_rev);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC
|
||||
static u32 omap_mmc_get_part_size(const char *part)
|
||||
{
|
||||
int res;
|
||||
|
@ -128,7 +128,7 @@ static void omap_set_fastboot_userdata_size(void)
|
|||
static inline void omap_set_fastboot_userdata_size(void)
|
||||
{
|
||||
}
|
||||
#endif /* CONFIG_FASTBOOT_FLASH_MMC_DEV */
|
||||
#endif /* CONFIG_FASTBOOT_FLASH_MMC */
|
||||
void omap_set_fastboot_vars(void)
|
||||
{
|
||||
omap_set_fastboot_cpu();
|
||||
|
|
|
@ -56,6 +56,7 @@ config FASTBOOT_USB_DEV
|
|||
config FASTBOOT_FLASH
|
||||
bool "Enable FASTBOOT FLASH command"
|
||||
default y if ARCH_SUNXI
|
||||
depends on MMC || (NAND && CMD_MTDPARTS)
|
||||
help
|
||||
The fastboot protocol includes a "flash" command for writing
|
||||
the downloaded image to a non-volatile storage device. Define
|
||||
|
@ -71,7 +72,7 @@ config FASTBOOT_FLASH_MMC
|
|||
|
||||
config FASTBOOT_FLASH_NAND
|
||||
bool "FASTBOOT on NAND"
|
||||
depends on NAND
|
||||
depends on NAND && CMD_MTDPARTS
|
||||
|
||||
endchoice
|
||||
|
||||
|
@ -85,19 +86,9 @@ config FASTBOOT_FLASH_MMC_DEV
|
|||
regarding the non-volatile storage device. Define this to
|
||||
the eMMC device that fastboot should use to store the image.
|
||||
|
||||
config FASTBOOT_FLASH_NAND_DEV
|
||||
int "Define FASTBOOT NAND FLASH default device"
|
||||
depends on FASTBOOT_FLASH_NAND
|
||||
depends on CMD_MTDPARTS
|
||||
default 0 if ARCH_SUNXI && NAND_SUNXI
|
||||
help
|
||||
The fastboot "flash" command requires additional information
|
||||
regarding the non-volatile storage device. Define this to
|
||||
the NAND device that fastboot should use to store the image.
|
||||
|
||||
config FASTBOOT_GPT_NAME
|
||||
string "Target name for updating GPT"
|
||||
depends on FASTBOOT_FLASH
|
||||
depends on FASTBOOT_FLASH_MMC && EFI_PARTITION
|
||||
default "gpt"
|
||||
help
|
||||
The fastboot "flash" command supports writing the downloaded
|
||||
|
@ -110,7 +101,7 @@ config FASTBOOT_GPT_NAME
|
|||
|
||||
config FASTBOOT_MBR_NAME
|
||||
string "Target name for updating MBR"
|
||||
depends on FASTBOOT_FLASH
|
||||
depends on FASTBOOT_FLASH_MMC && DOS_PARTITION
|
||||
default "mbr"
|
||||
help
|
||||
The fastboot "flash" command allows to write the downloaded image
|
||||
|
|
|
@ -2,9 +2,5 @@
|
|||
|
||||
obj-y += fb_common.o
|
||||
|
||||
ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV
|
||||
obj-y += fb_mmc.o
|
||||
endif
|
||||
ifdef CONFIG_FASTBOOT_FLASH_NAND_DEV
|
||||
obj-y += fb_nand.o
|
||||
endif
|
||||
obj-$(CONFIG_FASTBOOT_FLASH_MMC) += fb_mmc.o
|
||||
obj-$(CONFIG_FASTBOOT_FLASH_NAND) += fb_nand.o
|
||||
|
|
|
@ -20,10 +20,10 @@
|
|||
#include <linux/compiler.h>
|
||||
#include <version.h>
|
||||
#include <g_dnl.h>
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC
|
||||
#include <fb_mmc.h>
|
||||
#endif
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_NAND_DEV
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_NAND
|
||||
#include <fb_nand.h>
|
||||
#endif
|
||||
|
||||
|
@ -583,11 +583,11 @@ static void cb_flash(struct usb_ep *ep, struct usb_request *req)
|
|||
}
|
||||
|
||||
fastboot_fail("no flash device defined", response);
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC
|
||||
fb_mmc_flash_write(cmd, (void *)CONFIG_FASTBOOT_BUF_ADDR,
|
||||
download_bytes, response);
|
||||
#endif
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_NAND_DEV
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_NAND
|
||||
fb_nand_flash_write(cmd, (void *)CONFIG_FASTBOOT_BUF_ADDR,
|
||||
download_bytes, response);
|
||||
#endif
|
||||
|
@ -598,7 +598,7 @@ static void cb_flash(struct usb_ep *ep, struct usb_request *req)
|
|||
static void cb_oem(struct usb_ep *ep, struct usb_request *req)
|
||||
{
|
||||
char *cmd = req->buf;
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC
|
||||
if (strncmp("format", cmd + 4, 6) == 0) {
|
||||
char cmdbuf[32];
|
||||
sprintf(cmdbuf, "gpt write mmc %x $partitions",
|
||||
|
@ -631,10 +631,10 @@ static void cb_erase(struct usb_ep *ep, struct usb_request *req)
|
|||
}
|
||||
|
||||
fastboot_fail("no flash device defined", response);
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC_DEV
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_MMC
|
||||
fb_mmc_erase(cmd, response);
|
||||
#endif
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_NAND_DEV
|
||||
#ifdef CONFIG_FASTBOOT_FLASH_NAND
|
||||
fb_nand_erase(cmd, response);
|
||||
#endif
|
||||
fastboot_tx_write_str(response);
|
||||
|
|
Loading…
Reference in a new issue