18611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/**************************************************************************** 28611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu **************************************************************************** 38611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** 48611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** This header was automatically generated from a Linux kernel header 58611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** of the same name, to make information necessary for userspace to 68611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** call into the kernel available to libc. It contains only constants, 78611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** structures, and macros generated from the original header, and thus, 88611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** contains no copyrightable information. 98611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** 108611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** To edit the content of this header, modify the corresponding 118611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** source file (e.g. under external/kernel-headers/original/) then 128611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** run bionic/libc/kernel/tools/update_all.py 138611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** 148611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** Any manual change here will be lost the next time this script will 158611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** be run. You've been warned! 168611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** 178611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu **************************************************************************** 188611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ****************************************************************************/ 198611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#ifndef __MSM_ROTATOR_H__ 208611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define __MSM_ROTATOR_H__ 218611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#include <linux/types.h> 228611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#include <linux/msm_mdp.h> 238611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 248611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define MSM_ROTATOR_IOCTL_MAGIC 'R' 258611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define MSM_ROTATOR_IOCTL_START _IOWR(MSM_ROTATOR_IOCTL_MAGIC, 1, struct msm_rotator_img_info) 268611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define MSM_ROTATOR_IOCTL_ROTATE _IOW(MSM_ROTATOR_IOCTL_MAGIC, 2, struct msm_rotator_data_info) 278611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define MSM_ROTATOR_IOCTL_FINISH _IOW(MSM_ROTATOR_IOCTL_MAGIC, 3, int) 288611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 2976de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed#define MSM_ROTATOR_IOCTL_BUFFER_SYNC _IOW(MSM_ROTATOR_IOCTL_MAGIC, 4, struct msm_rotator_buf_sync) 308611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ROTATOR_VERSION_01 0xA5B4C301 318611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsuenum rotator_clk_type { 328611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ROTATOR_CORE_CLK, 338611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 3476de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed ROTATOR_PCLK, 358611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ROTATOR_IMEM_CLK 368611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 3776de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmedstruct msm_rotator_buf_sync { 3876de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 3976de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed uint32_t session_id; 4076de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed uint32_t flags; 4176de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed int acq_fen_fd; 4276de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed int rel_fen_fd; 4376de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 4476de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed}; 458611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsustruct msm_rotator_img_info { 468611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int session_id; 478611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct msmfb_img src; 4876de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 498611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct msmfb_img dst; 508611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct mdp_rect src_rect; 518611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int dst_x; 528611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int dst_y; 5376de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 548611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned char rotations; 558611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu int enable; 568611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int downscale_ratio; 578611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int secure; 5876de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 598611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 608611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsustruct msm_rotator_data_info { 618611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu int session_id; 628611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct msmfb_data src; 6376de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 648611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct msmfb_data dst; 658611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int version_key; 668611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct msmfb_data src_chroma; 678611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct msmfb_data dst_chroma; 6876de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 6976de202d7eae6422d5bcba124734a96b8b6b1b01Naseer Ahmed uint32_t wait_for_finish; 708611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 718611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsustruct msm_rot_clocks { 728611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu const char *clk_name; 738611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 748611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu enum rotator_clk_type clk_type; 758611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int clk_rate; 768611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 778611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsustruct msm_rotator_platform_data { 788611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 798611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int number_of_clocks; 808611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int hardware_version_number; 818611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct msm_rot_clocks *rotator_clks; 828611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu char rot_iommu_split_domain; 838611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 848611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 858611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#endif 86f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev 87