This patch adds a separate ioctl for delivering syncpoint base number to user space. If the syncpoint does not have an associated base, the function returns -ENXIO.
Showing the changes to include/uapi (1 of 2 files). Show all
Unified · Split
| @@ -68,6 +68,12 @@ struct drm_tegra_get_syncpt { · 67 unmodified lines | ||
| 68 | 68 | __u32 id; |
| 69 | 69 | }; |
| 70 | 70 | |
| 71 | +struct drm_tegra_get_syncpt_base { | |
| 72 | + __u64 context; | |
| 73 | + __u32 syncpt; | |
| 74 | + __u32 id; | |
| 75 | +}; | |
| 76 | + | |
| 71 | 77 | struct drm_tegra_syncpt { |
| 72 | 78 | __u32 id; |
| 73 | 79 | __u32 incrs; |
| @@ -118,15 +124,16 @@ struct drm_tegra_submit { · 44 unmodified lines | ||
| 118 | 124 | __u32 reserved[5]; /* future expansion */ |
| 119 | 125 | }; |
| 120 | 126 | |
| 121 | −#define DRM_TEGRA_GEM_CREATE 0x00 | |
| 122 | −#define DRM_TEGRA_GEM_MMAP 0x01 | |
| 123 | −#define DRM_TEGRA_SYNCPT_READ 0x02 | |
| 124 | −#define DRM_TEGRA_SYNCPT_INCR 0x03 | |
| 125 | −#define DRM_TEGRA_SYNCPT_WAIT 0x04 | |
| 126 | −#define DRM_TEGRA_OPEN_CHANNEL 0x05 | |
| 127 | −#define DRM_TEGRA_CLOSE_CHANNEL 0x06 | |
| 128 | −#define DRM_TEGRA_GET_SYNCPT 0x07 | |
| 129 | −#define DRM_TEGRA_SUBMIT 0x08 | |
| 127 | +#define DRM_TEGRA_GEM_CREATE 0x00 | |
| 128 | +#define DRM_TEGRA_GEM_MMAP 0x01 | |
| 129 | +#define DRM_TEGRA_SYNCPT_READ 0x02 | |
| 130 | +#define DRM_TEGRA_SYNCPT_INCR 0x03 | |
| 131 | +#define DRM_TEGRA_SYNCPT_WAIT 0x04 | |
| 132 | +#define DRM_TEGRA_OPEN_CHANNEL 0x05 | |
| 133 | +#define DRM_TEGRA_CLOSE_CHANNEL 0x06 | |
| 134 | +#define DRM_TEGRA_GET_SYNCPT 0x07 | |
| 135 | +#define DRM_TEGRA_SUBMIT 0x08 | |
| 136 | +#define DRM_TEGRA_GET_SYNCPT_BASE 0x09 | |
| 130 | 137 | |
| 131 | 138 | #define DRM_IOCTL_TEGRA_GEM_CREATE DRM_IOWR(DRM_COMMAND_BASE + DRM_TEGRA_GEM_CREATE, struct drm_tegra_gem_create) |
| 132 | 139 | #define DRM_IOCTL_TEGRA_GEM_MMAP DRM_IOWR(DRM_COMMAND_BASE + DRM_TEGRA_GEM_MMAP, struct drm_tegra_gem_mmap) |
| @@ -137,5 +144,6 @@ struct drm_tegra_submit { · 4 unmodified lines | ||
| 137 | 144 | #define DRM_IOCTL_TEGRA_CLOSE_CHANNEL DRM_IOWR(DRM_COMMAND_BASE + DRM_TEGRA_CLOSE_CHANNEL, struct drm_tegra_open_channel) |
| 138 | 145 | #define DRM_IOCTL_TEGRA_GET_SYNCPT DRM_IOWR(DRM_COMMAND_BASE + DRM_TEGRA_GET_SYNCPT, struct drm_tegra_get_syncpt) |
| 139 | 146 | #define DRM_IOCTL_TEGRA_SUBMIT DRM_IOWR(DRM_COMMAND_BASE + DRM_TEGRA_SUBMIT, struct drm_tegra_submit) |
| 147 | +#define DRM_IOCTL_TEGRA_GET_SYNCPT_BASE DRM_IOWR(DRM_COMMAND_BASE + DRM_TEGRA_GET_SYNCPT_BASE, struct drm_tegra_get_syncpt_base) | |
| 140 | 148 | |
| 141 | 149 | #endif |