Edit online

接口设计

应用通过 hal_ge_open打开 GE 驱动。
  • IOC_GE_VERSION
    接口语法:
    int ioctl(int fd, unsigned long cmd, unsinged int *pversion);
    1. IOC_GE_VERSION
    功能说明 获取 GE 版本
    参数 cmd:IOC_GE_VERSION

    pversion: 指向 32bits 无符号版本号指针

    返回值 0:成功

    <0:失败

    注意事项 -
  • 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:失败

    注意事项
  • IOC_GE_FILLRECT
    接口语法:
    int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd, struct ge_fillrect *fill);
    功能说明 矩形填充
    参数 cmd:IOC_GE_FILLRECT

    fill: 指向 fillrect 指针

    返回值 0:成功

    <0:失败

    注意事项 仅供 normal 模式使用, cmd queue 模式不可用
  • IOC_GE_BITBLT
    接口语法:
    int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd, struct ge_bitblt *bitblt);
    功能说明 位块搬移
    参数 cmd:IOC_GE_BITBLTbitblt: 指向 bitblt 指针
    返回值 0:成功

    <0:失败

    注意事项 仅供 normal 模式使用, cmd queue 模式不可用
  • IOC_GE_ROTATE
    int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd, struct ge_rotation *rot);
    功能说明 任意角度旋转
    参数 cmd:IOC_GE_ROTATErot: 指向 rotation 指针
    返回值 0:成功

    <0:失败

    注意事项 仅供 normal 模式使用, cmd queue 模式不可用
  • IOC_GE_SYNC
    接口语法:
    int hal_ge_control(struct aic_ge_client *clt, unsigned long cmd);
    功能说明 等待任务完成
    参数 cmd:IOC_GE_SYNC
    返回值 0:成功

    <0:失败

    注意事项 -
  • IOC_GE_CMD_BUF_SIZE
    接口语法:
    int ioctl(int fd, unsigned long cmd, unsinged int *size);
    功能说明 获取 cmd buffer size
    参数 cmd:IOC_GE_CMD_BUF_SIZEsize: 指向 32bits 无符号数指针
    返回值 0:成功

    <0:失败

    注意事项 cmd queue 模式可用,normal 模式不可用