blob: 971204758aa8f8281157e954dec7c263a6df7a95 [file] [log] [blame]
Lukasz Majewski770a8012015-08-24 00:21:49 +02001menu "DFU support"
2
Marek Vasutea84f802018-02-16 16:41:17 +01003config DFU
4 bool
Marek Vasut7f8d4362018-02-16 16:41:18 +01005 imply DFU_OVER_USB if USB_GADGET
Marek Vasutea84f802018-02-16 16:41:17 +01006
Marek Vasut7f8d4362018-02-16 16:41:18 +01007config DFU_OVER_USB
Tom Rini265c7da2016-09-19 13:31:30 -04008 bool
Maxime Ripardab68b432018-01-16 09:44:13 +01009 select HASH
Marek Vasutea84f802018-02-16 16:41:17 +010010 depends on USB_GADGET
Tom Rini265c7da2016-09-19 13:31:30 -040011
Marek Vasut7f8d4362018-02-16 16:41:18 +010012config DFU_OVER_TFTP
Marek Vasutea84f802018-02-16 16:41:17 +010013 bool
14 depends on NET
15
16if DFU
AKASHI Takahirofb6732f2020-10-29 13:47:41 +090017config DFU_WRITE_ALT
18 bool
AKASHI Takahirofb6732f2020-10-29 13:47:41 +090019
Lukasz Majewski770a8012015-08-24 00:21:49 +020020config DFU_TFTP
21 bool "DFU via TFTP"
Tom Rini492e8182023-10-26 14:31:12 -040022 depends on NETDEVICES
AKASHI Takahiro768d58d2020-10-29 13:47:43 +090023 select UPDATE_COMMON
AKASHI Takahiro5cef0452020-11-17 09:27:16 +090024 select DFU_OVER_TFTP
Lukasz Majewski770a8012015-08-24 00:21:49 +020025 help
Robert P. J. Day8c60f922016-05-04 04:47:31 -040026 This option allows performing update of DFU-managed medium with data
27 sent via TFTP boot.
Lukasz Majewski770a8012015-08-24 00:21:49 +020028
Robert P. J. Day8c60f922016-05-04 04:47:31 -040029 Detailed description of this feature can be found at ./doc/README.dfutftp
Tom Rini265c7da2016-09-19 13:31:30 -040030
Andy Shevchenko1e414012019-11-27 18:12:15 +020031config DFU_TIMEOUT
32 bool "Timeout waiting for DFU"
33 help
34 This option adds an optional timeout parameter for DFU which, if set,
35 will cause DFU to only wait for that many seconds before exiting.
36
Tom Rini265c7da2016-09-19 13:31:30 -040037config DFU_MMC
38 bool "MMC back end for DFU"
Ashok Reddy Somaaaf085e2023-07-07 02:51:36 -060039 depends on MMC
Tom Rini265c7da2016-09-19 13:31:30 -040040 help
41 This option enables using DFU to read and write to MMC based storage.
42
Marek Vasutd7dc2002021-10-26 00:37:05 +020043config DFU_MTD
44 bool "MTD back end for DFU"
45 depends on DM_MTD
Marek Vasutd7dc2002021-10-26 00:37:05 +020046 help
47 This option enables using DFU to read and write to on any MTD device.
48
Tom Rini265c7da2016-09-19 13:31:30 -040049config DFU_NAND
50 bool "NAND back end for DFU"
Boris Brezillon41fc0ad2018-11-13 12:43:10 +010051 depends on CMD_MTDPARTS
Miquel Raynalaf1a8292019-10-03 19:50:22 +020052 depends on MTD_RAW_NAND
Tom Rini265c7da2016-09-19 13:31:30 -040053 help
54 This option enables using DFU to read and write to NAND based
55 storage.
56
Guillermo Rodríguez5378fb12019-12-16 16:27:57 +010057config DFU_NAND_TRIMFFS
58 bool "Skip empty pages when flashing UBI images to NAND"
59 depends on DFU_NAND
60 help
61 When flashing UBI images to NAND, enable the DROP_FFS flag to drop
62 trailing all-0xff pages.
63
Tom Rini265c7da2016-09-19 13:31:30 -040064config DFU_RAM
65 bool "RAM back end for DFU"
66 help
67 This option enables using DFU to read and write RAM on the target.
68
69config DFU_SF
70 bool "SPI flash back end for DFU"
Heinrich Schuchardt0953f9c2024-06-04 07:44:25 +020071 depends on SPI_FLASH || DM_SPI_FLASH
Tom Rini265c7da2016-09-19 13:31:30 -040072 help
73 This option enables using DFU to read and write to SPI flash based
74 storage.
75
Patrick Delaunaybdc0f122019-10-14 09:28:00 +020076config DFU_SF_PART
77 bool "MTD partition support for SPI flash back end"
78 depends on DFU_SF && CMD_MTDPARTS
79 default y
80 help
81 This option enables the support of "part" and "partubi" target in
82 SPI flash DFU back end.
83
Patrick Delaunay2111e3c2019-10-14 09:28:06 +020084config DFU_VIRT
85 bool "VIRTUAL flash back end for DFU"
86 help
87 This option enables using DFU to read and write to VIRTUAL device
88 used at board level to manage specific behavior
89 (OTP update for example).
90
Patrick Delaunaye51b1bd2020-02-26 10:28:41 +010091config SET_DFU_ALT_INFO
92 bool "Dynamic set of DFU alternate information"
93 help
94 This option allows to call the function set_dfu_alt_info to
95 dynamically build dfu_alt_info in board.
Aswath Govindrajucc13c5d2021-06-01 16:51:47 +053096
97config SYS_DFU_DATA_BUF_SIZE
98 hex "Size of buffer to be allocated for transfer to raw storage device"
99 default 0x800000
100 help
101 DFU transfer uses a buffer before writing data to the
102 raw storage device. This value can be used for setting the
103 size of this buffer. The size of the buffer is also configurable
104 through the "dfu_bufsiz" environment variable. If both are
105 given the size of the buffer is set to "dfu_bufsize".
106
107config SYS_DFU_MAX_FILE_SIZE
108 hex "Size of the buffer to be allocated for transferring files"
109 default SYS_DFU_DATA_BUF_SIZE
110 help
111 When updating files rather than the raw storage device,
112 we use a static buffer to copy the file into and then write
113 the buffer once we've been given the whole file. Define
114 this to the maximum filesize (in bytes) for the buffer.
115 If undefined it defaults to the CONFIG_SYS_DFU_DATA_BUF_SIZE.
Jaehoon Chung0efc2fe2022-06-20 20:13:54 +0900116
117config DFU_NAME_MAX_SIZE
118 int "Size of the name to be added in dfu entity"
119 default 32
120 depends on DFU
121 help
122 This value is used to maximum size. If name is longer than default size,
123 we need to change the proper maximum size.
124
Tom Rini265c7da2016-09-19 13:31:30 -0400125endif
Lukasz Majewski770a8012015-08-24 00:21:49 +0200126endmenu