diff options
-rw-r--r-- | vmeta_lib.c | 48 |
1 files changed, 15 insertions, 33 deletions
diff --git a/vmeta_lib.c b/vmeta_lib.c index bfcd2d3..324ef71 100644 --- a/vmeta_lib.c +++ b/vmeta_lib.c @@ -342,7 +342,7 @@ static int get_version(char *msg) FILE *file = fopen(msg, "r"); if(!file) { - dbg_printf(VDEC_DEBUG_ALL, "Error: get_mem_size -> fopen failed\n"); + dbg_printf(VDEC_DEBUG_ALL, "Error: %s -> fopen failed\n", __FUNCTION__); return -1; } @@ -356,41 +356,23 @@ static int get_version(char *msg) return version; } -static UNSG32 get_mem_size(char *msg) -{ - int ret; - UNSG32 result; - FILE *file = fopen(msg, "r"); - - if(!file) { - dbg_printf(VDEC_DEBUG_ALL, "Error: get_mem_size -> fopen failed\n"); - return -VDEC_OS_DRIVER_OPEN_FAIL; - } - - ret = fscanf(file, "0x%x", &result); - if(ret<0) { - dbg_printf(VDEC_DEBUG_ALL, "Error: get_mem_size -> fscanf failed\n"); - result = 0; - } - - fclose(file); - return result; -} - -static UNSG32 get_mem_addr(char *msg) +static UNSG32 get_file_unsg32(const char *filename) { + FILE *file; UNSG32 result; int ret; - FILE *file = fopen(msg, "r"); + file = fopen(filename, "r"); if(!file) { - dbg_printf(VDEC_DEBUG_ALL, "Error: get_mem_addr -> fopen failed\n"); + dbg_printf(VDEC_DEBUG_ALL, "Error: %s: fopen %s failed\n", + __FUNCTION__, filename); return -VDEC_OS_DRIVER_OPEN_FAIL; } ret = fscanf(file, "0x%x", &result); - if(ret<0) { - dbg_printf(VDEC_DEBUG_ALL, "Error: get_mem_addr -> fscanf failed\n"); + if (ret != 1) { + dbg_printf(VDEC_DEBUG_ALL, "Error: %s: fscanf %s failed\n", + __FUNCTION__, filename); result = 0; } @@ -453,7 +435,7 @@ SIGN32 vdec_os_driver_init(void) dbg_printf(VDEC_DEBUG_VER, "vdec os driver kern=%d user=%s\n", vdec_iface->kern_ver,VMETA_USER_VER); // Get the IO mem size of vPro's register - vdec_iface->io_mem_size = get_mem_size(UIO_IO_MEM_SIZE); + vdec_iface->io_mem_size = get_file_unsg32(UIO_IO_MEM_SIZE); if(vdec_iface->io_mem_size <= 0) { ret = -VDEC_OS_DRIVER_MMAP_FAIL; goto err_mmap_fail; @@ -461,7 +443,7 @@ SIGN32 vdec_os_driver_init(void) dbg_printf(VDEC_DEBUG_MEM, "vdec os driver io mem size: 0x%x\n", vdec_iface->io_mem_size); // Get the IO mem phy addr - vdec_iface->io_mem_phy_addr = get_mem_addr(UIO_IO_MEM_ADDR); + vdec_iface->io_mem_phy_addr = get_file_unsg32(UIO_IO_MEM_ADDR); if(vdec_iface->io_mem_phy_addr <= 0) { ret = -VDEC_OS_DRIVER_MMAP_FAIL; goto err_mmap_fail; @@ -624,7 +606,7 @@ SIGN32 vdec_os_api_get_hw_obj_addr(UNSG32* vaddr,UNSG32 size) return VDEC_OS_DRIVER_OK; } - io_mem_size = get_mem_size(UIO_IO_VMETA_OBJ_SIZE); + io_mem_size = get_file_unsg32(UIO_IO_VMETA_OBJ_SIZE); if(io_mem_size <= 0 || io_mem_size < size) { ret = -VDEC_OS_DRIVER_MMAP_FAIL; dbg_printf(VDEC_DEBUG_MEM, "vdec_os_api_get_hw_obj_addr error: get_mem_size io_mem_size=%d, requested size=%d!!!\n", \ @@ -665,7 +647,7 @@ SIGN32 vdec_os_api_get_hw_context_addr(UNSG32* paddr, UNSG32* vaddr, UNSG32 size return VDEC_OS_DRIVER_OK; } - io_mem_size = get_mem_size(UIO_IO_HW_CONTEXT_SIZE); + io_mem_size = get_file_unsg32(UIO_IO_HW_CONTEXT_SIZE); if(io_mem_size <= 0 || io_mem_size < size) { ret = -VDEC_OS_DRIVER_MMAP_FAIL; dbg_printf(VDEC_DEBUG_MEM, "vdec_os_api_get_hw_context_addr error: get_mem_size io_mem_size=%d, requested size=%d!!!\n", \ @@ -675,7 +657,7 @@ SIGN32 vdec_os_api_get_hw_context_addr(UNSG32* paddr, UNSG32* vaddr, UNSG32 size dbg_printf(VDEC_DEBUG_MEM, "vdec_os_api_get_hw_context_addr: get_mem_size io_mem_size=%d, requested size=%d\n", \ io_mem_size,size); - io_mem_addr = get_mem_addr(UIO_IO_HW_CONTEXT_ADDR); + io_mem_addr = get_file_unsg32(UIO_IO_HW_CONTEXT_ADDR); if(io_mem_addr <= 0) { ret = -VDEC_OS_DRIVER_MMAP_FAIL; dbg_printf(VDEC_DEBUG_MEM, "vdec_os_api_get_hw_context_addr: get_mem_addr error\n"); @@ -705,7 +687,7 @@ SIGN32 vdec_os_api_get_ks(kernel_share** pp_ks) return 0; } - io_mem_size = get_mem_size(UIO_IO_KERNEL_SHARE_SIZE); + io_mem_size = get_file_unsg32(UIO_IO_KERNEL_SHARE_SIZE); if(io_mem_size <= 0 ) { ret = -VDEC_OS_DRIVER_MMAP_FAIL; dbg_printf(VDEC_DEBUG_MEM, "vdec_os_api_get_ks: get_mem_size error\n"); |