Home
last modified time | relevance | path

Searched refs:dfu (Results 1 – 24 of 24) sorted by relevance

/rk3399_rockchip-uboot/drivers/dfu/
H A Ddfu.c97 unsigned char *dfu_get_buf(struct dfu_entity *dfu) in dfu_get_buf() argument
111 if (dfu->max_buf_size && dfu_buf_size > dfu->max_buf_size) in dfu_get_buf()
112 dfu_buf_size = dfu->max_buf_size; in dfu_get_buf()
139 static int dfu_write_buffer_drain(struct dfu_entity *dfu) in dfu_write_buffer_drain() argument
145 w_size = dfu->i_buf - dfu->i_buf_start; in dfu_write_buffer_drain()
150 dfu_hash_algo->hash_update(dfu_hash_algo, &dfu->crc, in dfu_write_buffer_drain()
151 dfu->i_buf_start, w_size, 0); in dfu_write_buffer_drain()
153 ret = dfu->write_medium(dfu, dfu->offset, dfu->i_buf_start, &w_size); in dfu_write_buffer_drain()
158 dfu->i_buf = dfu->i_buf_start; in dfu_write_buffer_drain()
161 dfu->offset += w_size; in dfu_write_buffer_drain()
[all …]
H A Ddfu_mmc.c23 static int mmc_block_op(enum dfu_op op, struct dfu_entity *dfu, in mmc_block_op() argument
30 mmc = find_mmc_device(dfu->data.mmc.dev_num); in mmc_block_op()
32 pr_err("Device MMC %d - not found!", dfu->data.mmc.dev_num); in mmc_block_op()
40 *len = ALIGN(*len, dfu->data.mmc.lba_blk_size); in mmc_block_op()
42 blk_start = dfu->data.mmc.lba_start + in mmc_block_op()
43 (u32)lldiv(offset, dfu->data.mmc.lba_blk_size); in mmc_block_op()
44 blk_count = *len / dfu->data.mmc.lba_blk_size; in mmc_block_op()
46 dfu->data.mmc.lba_start + dfu->data.mmc.lba_size) { in mmc_block_op()
51 if (dfu->data.mmc.hw_partition >= 0) { in mmc_block_op()
54 dfu->data.mmc.dev_num, in mmc_block_op()
[all …]
H A Ddfu_mtd.c15 static int dfu_write_medium_mtd(struct dfu_entity *dfu, u64 offset, void *buf, long *len) in dfu_write_medium_mtd() argument
21 switch (dfu->layout) { in dfu_write_medium_mtd()
25 *len = dfu->data.nand.size; in dfu_write_medium_mtd()
36 if (dfu->data.mtd.ubi && !offset) { in dfu_write_medium_mtd()
37 block_start = dfu->data.mtd.start >> 9; in dfu_write_medium_mtd()
38 block_len = dfu->data.mtd.size >> 9; in dfu_write_medium_mtd()
45 block_start = (dfu->data.mtd.start + offset) >> 9; in dfu_write_medium_mtd()
54 dfu_get_layout(dfu->layout)); in dfu_write_medium_mtd()
60 static int dfu_get_medium_size_mtd(struct dfu_entity *dfu, u64 *size) in dfu_get_medium_size_mtd() argument
62 *size = dfu->data.mtd.size; in dfu_get_medium_size_mtd()
[all …]
H A Ddfu_sf.c15 static int dfu_get_medium_size_sf(struct dfu_entity *dfu, u64 *size) in dfu_get_medium_size_sf() argument
17 *size = dfu->data.sf.size; in dfu_get_medium_size_sf()
22 static int dfu_read_medium_sf(struct dfu_entity *dfu, u64 offset, void *buf, in dfu_read_medium_sf() argument
25 return spi_flash_read(dfu->data.sf.dev, dfu->data.sf.start + offset, in dfu_read_medium_sf()
29 static u64 find_sector(struct dfu_entity *dfu, u64 start, u64 offset) in find_sector() argument
31 return (lldiv((start + offset), dfu->data.sf.dev->sector_size)) * in find_sector()
32 dfu->data.sf.dev->sector_size; in find_sector()
35 static int dfu_write_medium_sf(struct dfu_entity *dfu, in dfu_write_medium_sf() argument
40 ret = spi_flash_erase(dfu->data.sf.dev, in dfu_write_medium_sf()
41 find_sector(dfu, dfu->data.sf.start, offset), in dfu_write_medium_sf()
[all …]
H A Ddfu_nand.c22 static int nand_block_op(enum dfu_op op, struct dfu_entity *dfu, in nand_block_op() argument
32 *len = dfu->data.nand.size; in nand_block_op()
36 start = dfu->data.nand.start + offset + dfu->bad_skip; in nand_block_op()
37 lim = dfu->data.nand.start + dfu->data.nand.size - start; in nand_block_op()
83 dfu->bad_skip += actual - count; in nand_block_op()
88 static inline int nand_block_write(struct dfu_entity *dfu, in nand_block_write() argument
91 return nand_block_op(DFU_OP_WRITE, dfu, offset, buf, len); in nand_block_write()
94 static inline int nand_block_read(struct dfu_entity *dfu, in nand_block_read() argument
97 return nand_block_op(DFU_OP_READ, dfu, offset, buf, len); in nand_block_read()
100 static int dfu_write_medium_nand(struct dfu_entity *dfu, in dfu_write_medium_nand() argument
[all …]
H A Ddfu_ram.c17 static int dfu_transfer_medium_ram(enum dfu_op op, struct dfu_entity *dfu, in dfu_transfer_medium_ram() argument
20 if (dfu->layout != DFU_RAM_ADDR) { in dfu_transfer_medium_ram()
21 pr_err("unsupported layout: %s\n", dfu_get_layout(dfu->layout)); in dfu_transfer_medium_ram()
25 if (offset > dfu->data.ram.size) { in dfu_transfer_medium_ram()
31 memcpy(dfu->data.ram.start + offset, buf, *len); in dfu_transfer_medium_ram()
33 memcpy(buf, dfu->data.ram.start + offset, *len); in dfu_transfer_medium_ram()
38 static int dfu_write_medium_ram(struct dfu_entity *dfu, u64 offset, in dfu_write_medium_ram() argument
41 return dfu_transfer_medium_ram(DFU_OP_WRITE, dfu, offset, buf, len); in dfu_write_medium_ram()
44 int dfu_get_medium_size_ram(struct dfu_entity *dfu, u64 *size) in dfu_get_medium_size_ram() argument
46 *size = dfu->data.ram.size; in dfu_get_medium_size_ram()
[all …]
H A Ddfu_tftp.c18 struct dfu_entity *dfu; in dfu_tftp_write() local
52 dfu = dfu_get_entity(alt_setting_num); in dfu_tftp_write()
53 if (!dfu) { in dfu_tftp_write()
59 ret = dfu_write_from_mem_addr(dfu, (void *)addr, len); in dfu_tftp_write()
H A DMakefile8 obj-$(CONFIG_USB_FUNCTION_DFU) += dfu.o
/rk3399_rockchip-uboot/include/
H A Ddfu.h126 int (*get_medium_size)(struct dfu_entity *dfu, u64 *size);
128 int (*read_medium)(struct dfu_entity *dfu,
131 int (*write_medium)(struct dfu_entity *dfu,
134 int (*flush_medium)(struct dfu_entity *dfu);
135 unsigned int (*poll_timeout)(struct dfu_entity *dfu);
137 void (*free_entity)(struct dfu_entity *dfu);
170 unsigned char *dfu_get_buf(struct dfu_entity *dfu);
199 static inline void dfu_set_defer_flush(struct dfu_entity *dfu) in dfu_set_defer_flush() argument
201 dfu_defer_flush = dfu; in dfu_set_defer_flush()
216 int dfu_write_from_mem_addr(struct dfu_entity *dfu, void *buf, int size);
[all …]
/rk3399_rockchip-uboot/board/warp/
H A DREADME8 - dfu-util: http://dfu-util.sourceforge.net/releases/
40 => dfu 0 mmc 0
44 $ sudo dfu-util -D u-boot.imx -a boot
/rk3399_rockchip-uboot/board/technexion/pico-imx6ul/
H A DREADME8 - dfu-util: http://dfu-util.sourceforge.net/releases/
41 => dfu 0 mmc 0
45 $ sudo dfu-util -D u-boot.imx -a boot
/rk3399_rockchip-uboot/board/warp7/
H A DREADME8 - dfu-util: http://dfu-util.sourceforge.net/releases/ (if you are in a
47 => dfu 0 mmc 0
51 $ sudo dfu-util -D u-boot.imx -a boot
/rk3399_rockchip-uboot/doc/
H A DREADME.dfutftp44 The "dfu" command has been extended to support transfer via TFTP - one
45 needs to type for example "dfu tftp 0 mmc 0"
57 The "dfu tftp" command can be used in the "preboot" environment variable
86 3. If required, to update firmware on boot, put the "dfu tftp 0 mmc 0" in the
89 4. Inspect "dfu" specific variables:
121 * Extend dfu-util command to support TFTP based transfers
H A Dgit-mailrc122 alias dfu uboot, lukma
H A DREADME.x86490 $ dfu-util -v -d 8087:0a99 --alt u-boot0 -D u-boot.bin
/rk3399_rockchip-uboot/cmd/
H A Ddfu.c62 U_BOOT_CMD(dfu, CONFIG_SYS_MAXARGS, 1, do_dfu,
H A DMakefile166 obj-$(CONFIG_CMD_DFU) += dfu.o
H A DKconfig614 bool "dfu"
617 Enables the command "dfu" which is used to have U-Boot create a DFU
/rk3399_rockchip-uboot/drivers/usb/gadget/
H A Df_dfu.c175 static inline int dfu_get_manifest_timeout(struct dfu_entity *dfu) in dfu_get_manifest_timeout() argument
177 return dfu->poll_timeout ? dfu->poll_timeout(dfu) : in dfu_get_manifest_timeout()
185 struct dfu_entity *dfu = dfu_get_entity(f_dfu->altsetting); in handle_getstatus() local
198 dfu_set_poll_timeout(dstat, dfu_get_manifest_timeout(dfu)); in handle_getstatus()
/rk3399_rockchip-uboot/drivers/
H A DMakefile59 obj-$(CONFIG_SPL_DFU) += dfu/
101 obj-y += dfu/
H A DKconfig29 source "drivers/dfu/Kconfig"
/rk3399_rockchip-uboot/common/
H A DMakefile75 obj-$(CONFIG_DFU_OVER_USB) += dfu.o
156 obj-$(CONFIG_CMD_DFU) += dfu.o
/rk3399_rockchip-uboot/
H A DMAINTAINERS311 T: git git://git.denx.de/u-boot-dfu.git
312 F: drivers/dfu/
/rk3399_rockchip-uboot/common/spl/
H A DKconfig823 the SPL built with dfu. The user can load binaries (u-boot/kernel) to
824 selected device partition from host-pc using dfu-utils.