comment "FASTBOOT" 
 | 
  
 | 
menuconfig FASTBOOT 
 | 
    bool "Fastboot support" 
 | 
    depends on USB_GADGET 
 | 
  
 | 
if FASTBOOT 
 | 
  
 | 
config USB_FUNCTION_FASTBOOT 
 | 
    bool "Enable USB fastboot gadget" 
 | 
    help 
 | 
      This enables the USB part of the fastboot gadget. 
 | 
  
 | 
config UDP_FUNCTION_FASTBOOT 
 | 
    select NET 
 | 
    bool "Enable fastboot protocol over UDP" 
 | 
    help 
 | 
      This enables the fastboot protocol over UDP. 
 | 
  
 | 
config CMD_FASTBOOT 
 | 
    bool "Enable FASTBOOT command" 
 | 
    depends on USB_FUNCTION_FASTBOOT || UDP_FUNCTION_FASTBOOT 
 | 
    help 
 | 
      This enables the command "fastboot" which enables the Android 
 | 
      fastboot mode for the platform. Fastboot is a protocol for 
 | 
      downloading images, flashing and device control used on 
 | 
      Android devices. Fastboot requires either network stack 
 | 
      enabled or support for acting as a USB device. 
 | 
  
 | 
      See doc/README.android-fastboot for more information. 
 | 
  
 | 
if USB_FUNCTION_FASTBOOT || UDP_FUNCTION_FASTBOOT 
 | 
  
 | 
config FASTBOOT_BUF_ADDR 
 | 
    hex "Define FASTBOOT buffer address" 
 | 
    default 0x82000000 if MX6SX || MX6SL || MX6UL || MX6SLL 
 | 
    default 0x81000000 if ARCH_OMAP2PLUS 
 | 
    default 0x42000000 if ARCH_SUNXI && !MACH_SUN9I 
 | 
    default 0x22000000 if ARCH_SUNXI && MACH_SUN9I 
 | 
    default 0x60800800 if ROCKCHIP_RK3036 || ROCKCHIP_RK3066 || \ 
 | 
                ROCKCHIP_RK3188 || ROCKCHIP_RK322X 
 | 
    default 0x800800 if ROCKCHIP_RK3288 || ROCKCHIP_RK3329 || \ 
 | 
                ROCKCHIP_RK3399 
 | 
    default 0x280000 if ROCKCHIP_RK3368 
 | 
    default 0x100000 if ARCH_ZYNQMP 
 | 
    help 
 | 
      The fastboot protocol requires a large memory buffer for 
 | 
      downloads. Define this to the starting RAM address to use for 
 | 
      downloaded images. 
 | 
  
 | 
config FASTBOOT_BUF_SIZE 
 | 
    hex "Define FASTBOOT buffer size" 
 | 
    default 0x8000000 if ARCH_ROCKCHIP 
 | 
    default 0x6000000 if ARCH_ZYNQMP 
 | 
    default 0x2000000 if ARCH_SUNXI 
 | 
    default 0x7000000 
 | 
    help 
 | 
      The fastboot protocol requires a large memory buffer for 
 | 
      downloads. This buffer should be as large as possible for a 
 | 
      platform. Define this to the size available RAM for fastboot. 
 | 
  
 | 
config FASTBOOT_USB_DEV 
 | 
    int "USB controller number" 
 | 
    default 0 
 | 
    help 
 | 
      Some boards have USB OTG controller other than 0. Define this 
 | 
      option so it can be used in compiled environment (e.g. in 
 | 
      CONFIG_BOOTCOMMAND). 
 | 
  
 | 
config FASTBOOT_FLASH 
 | 
    bool "Enable FASTBOOT FLASH command" 
 | 
    help 
 | 
      The fastboot protocol includes a "flash" command for writing 
 | 
      the downloaded image to a non-volatile storage device. Define 
 | 
      this to enable the "fastboot flash" command. 
 | 
  
 | 
config FASTBOOT_FLASH_MMC_DEV 
 | 
    int "Define FASTBOOT MMC FLASH default device" 
 | 
    depends on FASTBOOT_FLASH && MMC 
 | 
    help 
 | 
      The fastboot "flash" command requires additional information 
 | 
      regarding the non-volatile storage device. Define this to 
 | 
      the eMMC device that fastboot should use to store the image. 
 | 
  
 | 
config FASTBOOT_OEM_UNLOCK 
 | 
    bool "Enable FASTBOOT OEM UNLOCK command" 
 | 
    depends on ANDROID_KEYMASTER_CA 
 | 
    help 
 | 
      This enables the command "fastboot oem unlock" the fastboot 
 | 
      oem unlock command requires tee security storage to store 
 | 
      unlock status. oem unlock status attach to bootargs on boot. 
 | 
  
 | 
config RK_AVB_LIBAVB_ENABLE_ATH_UNLOCK 
 | 
    bool "AVB Authenticated unlock function" 
 | 
    depends on ANDROID_AVB 
 | 
    help 
 | 
      Enabled authenticated unlock function can prevent lock state 
 | 
      from invalid unlock cmd. 
 | 
  
 | 
endif # USB_FUNCTION_FASTBOOT || UDP_FUNCTION_FASTBOOT 
 | 
  
 | 
endif # FASTBOOT 
 |