adf_fops32.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #ifndef __VIDEO_ADF_ADF_FOPS32_H
  2. #define __VIDEO_ADF_ADF_FOPS32_H
  3. #include <linux/compat.h>
  4. #include <linux/ioctl.h>
  5. #include <video/adf.h>
  6. #define ADF_POST_CONFIG32 \
  7. _IOW(ADF_IOCTL_TYPE, 2, struct adf_post_config32)
  8. #define ADF_GET_DEVICE_DATA32 \
  9. _IOR(ADF_IOCTL_TYPE, 4, struct adf_device_data32)
  10. #define ADF_GET_INTERFACE_DATA32 \
  11. _IOR(ADF_IOCTL_TYPE, 5, struct adf_interface_data32)
  12. #define ADF_GET_OVERLAY_ENGINE_DATA32 \
  13. _IOR(ADF_IOCTL_TYPE, 6, struct adf_overlay_engine_data32)
  14. struct adf_post_config32 {
  15. compat_size_t n_interfaces;
  16. compat_uptr_t interfaces;
  17. compat_size_t n_bufs;
  18. compat_uptr_t bufs;
  19. compat_size_t custom_data_size;
  20. compat_uptr_t custom_data;
  21. __s32 complete_fence;
  22. };
  23. struct adf_device_data32 {
  24. char name[ADF_NAME_LEN];
  25. compat_size_t n_attachments;
  26. compat_uptr_t attachments;
  27. compat_size_t n_allowed_attachments;
  28. compat_uptr_t allowed_attachments;
  29. compat_size_t custom_data_size;
  30. compat_uptr_t custom_data;
  31. };
  32. struct adf_interface_data32 {
  33. char name[ADF_NAME_LEN];
  34. __u8 type;
  35. __u32 id;
  36. /* e.g. type=ADF_INTF_TYPE_DSI, id=1 => DSI.1 */
  37. __u32 flags;
  38. __u8 dpms_state;
  39. __u8 hotplug_detect;
  40. __u16 width_mm;
  41. __u16 height_mm;
  42. struct drm_mode_modeinfo current_mode;
  43. compat_size_t n_available_modes;
  44. compat_uptr_t available_modes;
  45. compat_size_t custom_data_size;
  46. compat_uptr_t custom_data;
  47. };
  48. struct adf_overlay_engine_data32 {
  49. char name[ADF_NAME_LEN];
  50. compat_size_t n_supported_formats;
  51. compat_uptr_t supported_formats;
  52. compat_size_t custom_data_size;
  53. compat_uptr_t custom_data;
  54. };
  55. long adf_file_compat_ioctl(struct file *file, unsigned int cmd,
  56. unsigned long arg);
  57. #endif /* __VIDEO_ADF_ADF_FOPS32_H */