1e016f0b2SSteve Raecomment "FASTBOOT" 2e016f0b2SSteve Rae 3c2948731SYann E. MORINmenuconfig FASTBOOT 4c2948731SYann E. MORIN bool "Fastboot support" 548f6232eSTom Rini depends on USB_GADGET 6e016f0b2SSteve Rae 7c2948731SYann E. MORINif FASTBOOT 8e016f0b2SSteve Rae 9e016f0b2SSteve Raeconfig USB_FUNCTION_FASTBOOT 10e016f0b2SSteve Rae bool "Enable USB fastboot gadget" 11e016f0b2SSteve Rae help 12e016f0b2SSteve Rae This enables the USB part of the fastboot gadget. 13e016f0b2SSteve Rae 14e016f0b2SSteve Raeconfig CMD_FASTBOOT 15e016f0b2SSteve Rae bool "Enable FASTBOOT command" 16e016f0b2SSteve Rae help 17e016f0b2SSteve Rae This enables the command "fastboot" which enables the Android 18e016f0b2SSteve Rae fastboot mode for the platform's USB device. Fastboot is a USB 19e016f0b2SSteve Rae protocol for downloading images, flashing and device control 20e016f0b2SSteve Rae used on Android devices. 21e016f0b2SSteve Rae 2200fd59ddSSimon Glass See doc/README.android-fastboot for more information. 2300fd59ddSSimon Glass 24e016f0b2SSteve Raeif USB_FUNCTION_FASTBOOT 25e016f0b2SSteve Rae 26e016f0b2SSteve Raeconfig FASTBOOT_BUF_ADDR 27e016f0b2SSteve Rae hex "Define FASTBOOT buffer address" 2848f6232eSTom Rini default 0x82000000 if MX6SX || MX6SL || MX6UL || MX6SLL 2948f6232eSTom Rini default 0x81000000 if ARCH_OMAP2PLUS 3048f6232eSTom Rini default 0x42000000 if ARCH_SUNXI && !MACH_SUN9I 3148f6232eSTom Rini default 0x22000000 if ARCH_SUNXI && MACH_SUN9I 32*81ae24d4SKever Yang default 0x60800800 if ROCKCHIP_RK3036 || ROCKCHIP_RK3066 || \ 33*81ae24d4SKever Yang ROCKCHIP_RK3188 || ROCKCHIP_RK322X 3448f6232eSTom Rini default 0x800800 if ROCKCHIP_RK3288 || ROCKCHIP_RK3329 || \ 3548f6232eSTom Rini ROCKCHIP_RK3399 3648f6232eSTom Rini default 0x280000 if ROCKCHIP_RK3368 3748f6232eSTom Rini default 0x100000 if ARCH_ZYNQMP 38e016f0b2SSteve Rae help 39e016f0b2SSteve Rae The fastboot protocol requires a large memory buffer for 40e016f0b2SSteve Rae downloads. Define this to the starting RAM address to use for 41e016f0b2SSteve Rae downloaded images. 42e016f0b2SSteve Rae 43e016f0b2SSteve Raeconfig FASTBOOT_BUF_SIZE 44e016f0b2SSteve Rae hex "Define FASTBOOT buffer size" 4548f6232eSTom Rini default 0x8000000 if ARCH_ROCKCHIP 4648f6232eSTom Rini default 0x6000000 if ARCH_ZYNQMP 4748f6232eSTom Rini default 0x2000000 if ARCH_SUNXI 4848f6232eSTom Rini default 0x7000000 49e016f0b2SSteve Rae help 50e016f0b2SSteve Rae The fastboot protocol requires a large memory buffer for 51e016f0b2SSteve Rae downloads. This buffer should be as large as possible for a 52e016f0b2SSteve Rae platform. Define this to the size available RAM for fastboot. 53e016f0b2SSteve Rae 549af5ba87SSemen Protsenkoconfig FASTBOOT_USB_DEV 559af5ba87SSemen Protsenko int "USB controller number" 569af5ba87SSemen Protsenko default 0 579af5ba87SSemen Protsenko help 589af5ba87SSemen Protsenko Some boards have USB OTG controller other than 0. Define this 599af5ba87SSemen Protsenko option so it can be used in compiled environment (e.g. in 609af5ba87SSemen Protsenko CONFIG_BOOTCOMMAND). 619af5ba87SSemen Protsenko 62e016f0b2SSteve Raeconfig FASTBOOT_FLASH 63e016f0b2SSteve Rae bool "Enable FASTBOOT FLASH command" 64e016f0b2SSteve Rae help 65e016f0b2SSteve Rae The fastboot protocol includes a "flash" command for writing 66e016f0b2SSteve Rae the downloaded image to a non-volatile storage device. Define 67e016f0b2SSteve Rae this to enable the "fastboot flash" command. 68e016f0b2SSteve Rae 69e016f0b2SSteve Raeconfig FASTBOOT_FLASH_MMC_DEV 70e016f0b2SSteve Rae int "Define FASTBOOT MMC FLASH default device" 7148f6232eSTom Rini depends on FASTBOOT_FLASH && MMC 72e016f0b2SSteve Rae help 73e016f0b2SSteve Rae The fastboot "flash" command requires additional information 74e016f0b2SSteve Rae regarding the non-volatile storage device. Define this to 75e016f0b2SSteve Rae the eMMC device that fastboot should use to store the image. 76e016f0b2SSteve Rae 776f6c8630SPetr Kulhavyconfig FASTBOOT_GPT_NAME 786f6c8630SPetr Kulhavy string "Target name for updating GPT" 796f6c8630SPetr Kulhavy depends on FASTBOOT_FLASH 806f6c8630SPetr Kulhavy default "gpt" 816f6c8630SPetr Kulhavy help 826f6c8630SPetr Kulhavy The fastboot "flash" command supports writing the downloaded 836f6c8630SPetr Kulhavy image to the Protective MBR and the Primary GUID Partition 846f6c8630SPetr Kulhavy Table. (Additionally, this downloaded image is post-processed 856f6c8630SPetr Kulhavy to generate and write the Backup GUID Partition Table.) 866f6c8630SPetr Kulhavy This occurs when the specified "partition name" on the 876f6c8630SPetr Kulhavy "fastboot flash" command line matches the value defined here. 886f6c8630SPetr Kulhavy The default target name for updating GPT is "gpt". 896f6c8630SPetr Kulhavy 906f6c8630SPetr Kulhavyconfig FASTBOOT_MBR_NAME 916f6c8630SPetr Kulhavy string "Target name for updating MBR" 926f6c8630SPetr Kulhavy depends on FASTBOOT_FLASH 936f6c8630SPetr Kulhavy default "mbr" 946f6c8630SPetr Kulhavy help 956f6c8630SPetr Kulhavy The fastboot "flash" command allows to write the downloaded image 966f6c8630SPetr Kulhavy to the Master Boot Record. This occurs when the "partition name" 976f6c8630SPetr Kulhavy specified on the "fastboot flash" command line matches the value 986f6c8630SPetr Kulhavy defined here. The default target name for updating MBR is "mbr". 996f6c8630SPetr Kulhavy 100e016f0b2SSteve Raeendif # USB_FUNCTION_FASTBOOT 101e016f0b2SSteve Rae 102c2948731SYann E. MORINendif # FASTBOOT 103