⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fileiodrv.h

📁 56f8300E系列dsp的BOOTloader
💻 H
字号:
/******************************************************************************
*
* Motorola Inc.
* (c) Copyright 2001, 2002 Motorola, Inc.
* ALL RIGHTS RESERVED.
*
*******************************************************************************
*
* FileName:    fileiodrv.h 
*
* Description: Header file for the fileio device driver.
*
*******************************************************************************/

#ifndef __FILEIODRV_H
#define __FILEIODRV_H

#include "port.h"
#include "arch.h"
#include "sci.h"
#include "fileio.h"

#ifdef __cplusplus
extern "C" {
#endif

struct io_sFileIOInterface
{
	ssize_t  (*pRead)(handle_t hndl, void *buf, size_t);
	ssize_t  (*pWrite)(handle_t hndl, const void *buf, size_t len);
	int      (*pClose)(handle_t hndl);
	unsigned int (*pIoctl[1])(handle_t hndl, void *pParams );	
};

struct fileio_Handle
{
    io_sInterface *sFileIOInterface;
    handle_t       UartHandle;
    int            FileNumber;
    int            OFlags;
};

struct sHeader
{
	char FileNumber;
	char Command;
	char Path;
	char NumBytes;
};

#define FILE_IO_SHEADER_LENGTH 4

struct sCloseHeader
{
	char FileNumber;
	char Command;
	char FD;
};

#define FILE_IO_SCLOSE_HEADER_LENGTH 3

handle_t fileioOpen (const char * pName, int OFlags, ...);
int      fileioClose(handle_t FileDesc);
ssize_t  fileioRead (handle_t FileDesc, void * pBuffer, size_t NBytes);
ssize_t  fileioWrite(handle_t FileDesc, const void * pBuffer, size_t Size);
unsigned int ioctlFILEIO(handle_t FileDesc, void * pParams);

/* Redefine ioctl calls to map to standard driver */
#define FILE_IO_NAME            "\\\\PC\\"
#define FILE_IO_NAME_LENGTH     5
#define FILE_IO_SDK_PATH        "\\\\PC\\Embedded SDK\\"
#define FILE_IO_SDK_PATH_LENGTH 18

#define FILE_IO_HANDLE_WRITE    0
#define FILE_IO_HANDLE_READ     1
#define FILE_IO_BUFFER_SIZE     0xFF


#define FILE_IO_COMMAND_OPEN 'O'
#define FILE_IO_COMMAND_CLOSE 'C'
#define FILE_IO_COMMAND_READ 'R'
#define FILE_IO_COMMAND_WRITE 'W'


#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -