Files
TAIXIN/sdk/include/hal/rotate.h

51 lines
892 B
C
Raw Permalink Normal View History

#ifndef HAL_ROTATE_H
#define HAL_ROTATE_H
#ifdef __cplusplus
extern "C" {
#endif
enum rotate_ioctl_cmd {
ROTATE_IOCTL_CMD_SET_ANALE_RUN,
ROTATE_IOCTL_CMD_SET_SIZE,
ROTATE_IOCTL_CMD_SET_ADDR,
ROTATE_IOCTL_CMD_GET_STA,
};
enum rotate_angle {
ROT_90,
ROT_180,
ROT_270,
ROT_90_SQR,
};
enum rotate_bw {
ROT_16B,
ROT_32B,
};
struct rotate_device {
struct dev_obj dev;
};
struct rotate_hal_ops {
struct devobj_ops ops;
int32(*ioctl)(struct rotate_device *rotate_dev, enum rotate_ioctl_cmd ioctl_cmd, uint32 param1, uint32 param2);
};
int32 rotate_set_addr(struct rotate_device *p_rot, uint32_t src, uint32_t des);
int32 rotate_set_size(struct rotate_device *p_rot, uint16_t w, uint16_t h);
int32 rotate_run(struct rotate_device *p_rot, uint8_t angle, uint8_t bit_width);
int32 rotate_get_sta(struct rotate_device *p_rot);
#ifdef __cplusplus
}
#endif
#endif