cmd: Prepare sysboot command independence
[oweals/u-boot.git] / drivers / dfu / Kconfig
index 6b92064f0b52f76de8d5145b25fc23b405d0f48b..75fe0a12c61c31fd89048f2208846a4038676287 100644 (file)
@@ -1,10 +1,72 @@
 menu "DFU support"
 
+config DFU
+       bool
+       imply DFU_OVER_USB if USB_GADGET
+
+config DFU_OVER_USB
+       bool
+       select HASH
+       depends on USB_GADGET
+
+config DFU_OVER_TFTP
+       bool
+       depends on NET
+
+if DFU
 config DFU_TFTP
        bool "DFU via TFTP"
+       select DFU_OVER_TFTP
        help
          This option allows performing update of DFU-managed medium with data
          sent via TFTP boot.
 
          Detailed description of this feature can be found at ./doc/README.dfutftp
+
+config DFU_MMC
+       bool "MMC back end for DFU"
+       help
+         This option enables using DFU to read and write to MMC based storage.
+
+config DFU_NAND
+       bool "NAND back end for DFU"
+       depends on CMD_MTDPARTS
+       depends on MTD_RAW_NAND
+       help
+         This option enables using DFU to read and write to NAND based
+         storage.
+
+config DFU_RAM
+       bool "RAM back end for DFU"
+       help
+         This option enables using DFU to read and write RAM on the target.
+
+config DFU_SF
+       bool "SPI flash back end for DFU"
+       help
+         This option enables using DFU to read and write to SPI flash based
+         storage.
+
+config DFU_SF_PART
+       bool "MTD partition support for SPI flash back end"
+       depends on DFU_SF && CMD_MTDPARTS
+       default y
+       help
+         This option enables the support of "part" and "partubi" target in
+         SPI flash DFU back end.
+
+config DFU_MTD
+       bool "MTD back end for DFU"
+       depends on DM_MTD
+       help
+         This option enables using DFU to read and write to on any MTD device.
+
+config DFU_VIRT
+       bool "VIRTUAL flash back end for DFU"
+       help
+         This option enables using DFU to read and write to VIRTUAL device
+         used at board level to manage specific behavior
+         (OTP update for example).
+
+endif
 endmenu