Edit online

接口设计

29 May 2024
Read time: 2 minute(s)

应用通过 hal_ge_open 打开 GE 驱动。

1. IOC_GE_VERSION
接口语法:
int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd, unsinged int *pversion);
功能说明 获取 GE 版本
参数
cmd:IOC_GE_VERSION
pversion: 指向 32bits 无符号版本号指针
返回值
0:成功
<0:失败
注意事项
2. IOC_GE_MODE
接口语法:
int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd, enum ge_mode *mode);
功能说明 获取工作模式
参数
cmd:IOC_GE_MODE
mode: enum ge_mode 指针
返回值
0:成功
<0:失败
注意事项
3. IOC_GE_FILLRECT
接口语法:
int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd, struct ge_fillrect *fill);
功能说明 矩形填充
参数
cmd:IOC_GE_FILLRECT
fill: 指向 struct ge_fillrect 指针
返回值
0:成功
<0:失败
注意事项 仅供 normal 模式使用, cmd queue 模式不可用
4. IOC_GE_BITBLT
接口语法:
int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd, struct ge_bitblt *bitblt);
功能说明 位块搬移
参数
cmd:IOC_GE_BITBLT
bitblt: 指向 struct ge_bitblt 指针
返回值
0:成功
<0:失败
注意事项 仅供 normal 模式使用, cmd queue 模式不可用
5. IOC_GE_ROTATE
接口语法:
int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd, struct ge_rotation *rot);
功能说明 任意角度旋转
参数
cmd:IOC_GE_ROTATE
rot: 指向 struct ge_rotation 指针
返回值
0:成功
<0:失败
注意事项 仅供 normal 模式使用, cmd queue 模式不可用
6. IOC_GE_SYNC
接口语法:
int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd);
功能说明 等待任务完成
参数
cmd:IOC_GE_SYNC
返回值
0:成功
<0:失败
注意事项
7. IOC_GE_CMD_BUF_SIZE
接口语法:
int ioctl(int fd, unsigned long cmd, unsinged int *size);
功能说明 获取 cmd buffer size
参数
cmd:IOC_GE_CMD_BUF_SIZE
size: 指向 32bits 无符号数指针
返回值
0:成功
<0:失败
注意事项 cmd queue 模式可用,normal 模式不可用