forked from Minki/linux
staging/android: remove driver_data from struct sync_fence_info
It is unclear in what situations driver_data should be used thus better do not upstream it for now. If a need arises in the future a discussion can be started to re-add it. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
b5b24ac57a
commit
c7434b8436
@ -47,19 +47,6 @@ static int sw_sync_fence_has_signaled(struct fence *fence)
|
||||
return (pt->value > obj->value) ? 0 : 1;
|
||||
}
|
||||
|
||||
static int sw_sync_fill_driver_data(struct fence *fence,
|
||||
void *data, int size)
|
||||
{
|
||||
struct sw_sync_pt *pt = (struct sw_sync_pt *)fence;
|
||||
|
||||
if (size < sizeof(pt->value))
|
||||
return -ENOMEM;
|
||||
|
||||
memcpy(data, &pt->value, sizeof(pt->value));
|
||||
|
||||
return sizeof(pt->value);
|
||||
}
|
||||
|
||||
static void sw_sync_timeline_value_str(struct sync_timeline *sync_timeline,
|
||||
char *str, int size)
|
||||
{
|
||||
@ -78,7 +65,6 @@ static void sw_sync_fence_value_str(struct fence *fence, char *str, int size)
|
||||
static struct sync_timeline_ops sw_sync_timeline_ops = {
|
||||
.driver_name = "sw_sync",
|
||||
.has_signaled = sw_sync_fence_has_signaled,
|
||||
.fill_driver_data = sw_sync_fill_driver_data,
|
||||
.timeline_value_str = sw_sync_timeline_value_str,
|
||||
.fence_value_str = sw_sync_fence_value_str,
|
||||
};
|
||||
|
@ -351,16 +351,6 @@ static bool android_fence_enable_signaling(struct fence *fence)
|
||||
return true;
|
||||
}
|
||||
|
||||
static int android_fence_fill_driver_data(struct fence *fence,
|
||||
void *data, int size)
|
||||
{
|
||||
struct sync_timeline *parent = fence_parent(fence);
|
||||
|
||||
if (!parent->ops->fill_driver_data)
|
||||
return 0;
|
||||
return parent->ops->fill_driver_data(fence, data, size);
|
||||
}
|
||||
|
||||
static void android_fence_value_str(struct fence *fence,
|
||||
char *str, int size)
|
||||
{
|
||||
@ -394,7 +384,6 @@ static const struct fence_ops android_fence_ops = {
|
||||
.signaled = android_fence_signaled,
|
||||
.wait = fence_default_wait,
|
||||
.release = android_fence_release,
|
||||
.fill_driver_data = android_fence_fill_driver_data,
|
||||
.fence_value_str = android_fence_value_str,
|
||||
.timeline_value_str = android_fence_timeline_value_str,
|
||||
};
|
||||
@ -493,22 +482,12 @@ err_put_fd:
|
||||
static int sync_fill_fence_info(struct fence *fence, void *data, int size)
|
||||
{
|
||||
struct sync_fence_info *info = data;
|
||||
int ret;
|
||||
|
||||
if (size < sizeof(*info))
|
||||
return -ENOMEM;
|
||||
|
||||
info->len = sizeof(*info);
|
||||
|
||||
if (fence->ops->fill_driver_data) {
|
||||
ret = fence->ops->fill_driver_data(fence, info->driver_data,
|
||||
size - sizeof(*info));
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
info->len += ret;
|
||||
}
|
||||
|
||||
strlcpy(info->obj_name, fence->ops->get_timeline_name(fence),
|
||||
sizeof(info->obj_name));
|
||||
strlcpy(info->driver_name, fence->ops->get_driver_name(fence),
|
||||
|
@ -32,10 +32,6 @@ struct sync_file;
|
||||
* 1 if pt has signaled
|
||||
* 0 if pt has not signaled
|
||||
* <0 on error
|
||||
* @fill_driver_data: write implementation specific driver data to data.
|
||||
* should return an error if there is not enough room
|
||||
* as specified by size. This information is returned
|
||||
* to userspace by SYNC_IOC_FENCE_INFO.
|
||||
* @timeline_value_str: fill str with the value of the sync_timeline's counter
|
||||
* @fence_value_str: fill str with the value of the fence
|
||||
*/
|
||||
@ -45,9 +41,6 @@ struct sync_timeline_ops {
|
||||
/* required */
|
||||
int (*has_signaled)(struct fence *fence);
|
||||
|
||||
/* optional */
|
||||
int (*fill_driver_data)(struct fence *fence, void *data, int size);
|
||||
|
||||
/* optional */
|
||||
void (*timeline_value_str)(struct sync_timeline *timeline, char *str,
|
||||
int size);
|
||||
|
@ -28,12 +28,11 @@ struct sync_merge_data {
|
||||
|
||||
/**
|
||||
* struct sync_fence_info - detailed fence information
|
||||
* @len: length of sync_fence_info including any driver_data
|
||||
* @len: length of sync_fence_info
|
||||
* @obj_name: name of parent sync_timeline
|
||||
* @driver_name: name of driver implementing the parent
|
||||
* @status: status of the fence 0:active 1:signaled <0:error
|
||||
* @timestamp_ns: timestamp of status change in nanoseconds
|
||||
* @driver_data: any driver dependent data
|
||||
*/
|
||||
struct sync_fence_info {
|
||||
__u32 len;
|
||||
@ -41,8 +40,6 @@ struct sync_fence_info {
|
||||
char driver_name[32];
|
||||
__s32 status;
|
||||
__u64 timestamp_ns;
|
||||
|
||||
__u8 driver_data[0];
|
||||
};
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user