1// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause 2/* 3 * Copyright (C) 2019, STMicroelectronics - All Rights Reserved 4 */ 5#include <common.h> 6#include <dfu.h> 7#include <errno.h> 8#include <log.h> 9#include <malloc.h> 10 11int __weak dfu_write_medium_virt(struct dfu_entity *dfu, u64 offset, 12 void *buf, long *len) 13{ 14 debug("%s: off=0x%llx, len=0x%x\n", __func__, offset, (u32)*len); 15 16 return 0; 17} 18 19int __weak dfu_get_medium_size_virt(struct dfu_entity *dfu, u64 *size) 20{ 21 *size = 0; 22 23 return 0; 24} 25 26int __weak dfu_read_medium_virt(struct dfu_entity *dfu, u64 offset, 27 void *buf, long *len) 28{ 29 debug("%s: off=0x%llx, len=0x%x\n", __func__, offset, (u32)*len); 30 *len = 0; 31 32 return 0; 33} 34 35int dfu_fill_entity_virt(struct dfu_entity *dfu, char *devstr, char **argv, int argc) 36{ 37 debug("%s: devstr = %s\n", __func__, devstr); 38 39 if (argc != 0) 40 return -EINVAL; 41 42 dfu->dev_type = DFU_DEV_VIRT; 43 dfu->layout = DFU_RAW_ADDR; 44 dfu->data.virt.dev_num = dectoul(devstr, NULL); 45 46 dfu->write_medium = dfu_write_medium_virt; 47 dfu->get_medium_size = dfu_get_medium_size_virt; 48 dfu->read_medium = dfu_read_medium_virt; 49 50 dfu->inited = 0; 51 52 return 0; 53} 54