freedreno: Use symbol visibility.
Hiding fd_device_del_locked, and fd_cleanup_bo_cache. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>main
parent
2d1044cc47
commit
479b6cef70
|
@ -2,6 +2,7 @@ AUTOMAKE_OPTIONS=subdir-objects
|
|||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
$(VISIBILITY_CFLAGS) \
|
||||
-I$(top_srcdir) \
|
||||
-I$(top_srcdir)/freedreno \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
|
|
|
@ -163,8 +163,8 @@ static struct fd_bo *find_in_bucket(struct fd_device *dev,
|
|||
}
|
||||
|
||||
|
||||
struct fd_bo * fd_bo_new(struct fd_device *dev,
|
||||
uint32_t size, uint32_t flags)
|
||||
drm_public struct fd_bo *
|
||||
fd_bo_new(struct fd_device *dev, uint32_t size, uint32_t flags)
|
||||
{
|
||||
struct fd_bo *bo = NULL;
|
||||
struct fd_bo_bucket *bucket;
|
||||
|
@ -197,8 +197,8 @@ struct fd_bo * fd_bo_new(struct fd_device *dev,
|
|||
return bo;
|
||||
}
|
||||
|
||||
struct fd_bo *fd_bo_from_handle(struct fd_device *dev,
|
||||
uint32_t handle, uint32_t size)
|
||||
drm_public struct fd_bo *
|
||||
fd_bo_from_handle(struct fd_device *dev, uint32_t handle, uint32_t size)
|
||||
{
|
||||
struct fd_bo *bo = NULL;
|
||||
|
||||
|
@ -209,7 +209,7 @@ struct fd_bo *fd_bo_from_handle(struct fd_device *dev,
|
|||
return bo;
|
||||
}
|
||||
|
||||
struct fd_bo * fd_bo_from_name(struct fd_device *dev, uint32_t name)
|
||||
drm_public struct fd_bo * fd_bo_from_name(struct fd_device *dev, uint32_t name)
|
||||
{
|
||||
struct drm_gem_open req = {
|
||||
.name = name,
|
||||
|
@ -242,13 +242,13 @@ out_unlock:
|
|||
return bo;
|
||||
}
|
||||
|
||||
struct fd_bo * fd_bo_ref(struct fd_bo *bo)
|
||||
drm_public struct fd_bo * fd_bo_ref(struct fd_bo *bo)
|
||||
{
|
||||
atomic_inc(&bo->refcnt);
|
||||
return bo;
|
||||
}
|
||||
|
||||
void fd_bo_del(struct fd_bo *bo)
|
||||
drm_public void fd_bo_del(struct fd_bo *bo)
|
||||
{
|
||||
struct fd_device *dev = bo->dev;
|
||||
|
||||
|
@ -307,7 +307,7 @@ static void bo_del(struct fd_bo *bo)
|
|||
bo->funcs->destroy(bo);
|
||||
}
|
||||
|
||||
int fd_bo_get_name(struct fd_bo *bo, uint32_t *name)
|
||||
drm_public int fd_bo_get_name(struct fd_bo *bo, uint32_t *name)
|
||||
{
|
||||
if (!bo->name) {
|
||||
struct drm_gem_flink req = {
|
||||
|
@ -330,17 +330,17 @@ int fd_bo_get_name(struct fd_bo *bo, uint32_t *name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
uint32_t fd_bo_handle(struct fd_bo *bo)
|
||||
drm_public uint32_t fd_bo_handle(struct fd_bo *bo)
|
||||
{
|
||||
return bo->handle;
|
||||
}
|
||||
|
||||
uint32_t fd_bo_size(struct fd_bo *bo)
|
||||
drm_public uint32_t fd_bo_size(struct fd_bo *bo)
|
||||
{
|
||||
return bo->size;
|
||||
}
|
||||
|
||||
void * fd_bo_map(struct fd_bo *bo)
|
||||
drm_public void * fd_bo_map(struct fd_bo *bo)
|
||||
{
|
||||
if (!bo->map) {
|
||||
uint64_t offset;
|
||||
|
@ -362,12 +362,12 @@ void * fd_bo_map(struct fd_bo *bo)
|
|||
}
|
||||
|
||||
/* a bit odd to take the pipe as an arg, but it's a, umm, quirk of kgsl.. */
|
||||
int fd_bo_cpu_prep(struct fd_bo *bo, struct fd_pipe *pipe, uint32_t op)
|
||||
drm_public int fd_bo_cpu_prep(struct fd_bo *bo, struct fd_pipe *pipe, uint32_t op)
|
||||
{
|
||||
return bo->funcs->cpu_prep(bo, pipe, op);
|
||||
}
|
||||
|
||||
void fd_bo_cpu_fini(struct fd_bo *bo)
|
||||
drm_public void fd_bo_cpu_fini(struct fd_bo *bo)
|
||||
{
|
||||
bo->funcs->cpu_fini(bo);
|
||||
}
|
||||
|
|
|
@ -76,7 +76,7 @@ init_cache_buckets(struct fd_device *dev)
|
|||
}
|
||||
}
|
||||
|
||||
struct fd_device * fd_device_new(int fd)
|
||||
drm_public struct fd_device * fd_device_new(int fd)
|
||||
{
|
||||
struct fd_device *dev;
|
||||
drmVersionPtr version;
|
||||
|
@ -115,7 +115,7 @@ struct fd_device * fd_device_new(int fd)
|
|||
/* like fd_device_new() but creates it's own private dup() of the fd
|
||||
* which is close()d when the device is finalized.
|
||||
*/
|
||||
struct fd_device * fd_device_new_dup(int fd)
|
||||
drm_public struct fd_device * fd_device_new_dup(int fd)
|
||||
{
|
||||
struct fd_device *dev = fd_device_new(dup(fd));
|
||||
if (dev)
|
||||
|
@ -123,7 +123,7 @@ struct fd_device * fd_device_new_dup(int fd)
|
|||
return dev;
|
||||
}
|
||||
|
||||
struct fd_device * fd_device_ref(struct fd_device *dev)
|
||||
drm_public struct fd_device * fd_device_ref(struct fd_device *dev)
|
||||
{
|
||||
atomic_inc(&dev->refcnt);
|
||||
return dev;
|
||||
|
@ -146,7 +146,7 @@ void fd_device_del_locked(struct fd_device *dev)
|
|||
fd_device_del_impl(dev);
|
||||
}
|
||||
|
||||
void fd_device_del(struct fd_device *dev)
|
||||
drm_public void fd_device_del(struct fd_device *dev)
|
||||
{
|
||||
if (!atomic_dec_and_test(&dev->refcnt))
|
||||
return;
|
||||
|
|
|
@ -29,7 +29,8 @@
|
|||
#include "freedreno_drmif.h"
|
||||
#include "freedreno_priv.h"
|
||||
|
||||
struct fd_pipe * fd_pipe_new(struct fd_device *dev, enum fd_pipe_id id)
|
||||
drm_public struct fd_pipe *
|
||||
fd_pipe_new(struct fd_device *dev, enum fd_pipe_id id)
|
||||
{
|
||||
struct fd_pipe *pipe = NULL;
|
||||
|
||||
|
@ -54,18 +55,18 @@ fail:
|
|||
return NULL;
|
||||
}
|
||||
|
||||
void fd_pipe_del(struct fd_pipe *pipe)
|
||||
drm_public void fd_pipe_del(struct fd_pipe *pipe)
|
||||
{
|
||||
pipe->funcs->destroy(pipe);
|
||||
}
|
||||
|
||||
int fd_pipe_get_param(struct fd_pipe *pipe, enum fd_param_id param,
|
||||
uint64_t *value)
|
||||
drm_public int fd_pipe_get_param(struct fd_pipe *pipe,
|
||||
enum fd_param_id param, uint64_t *value)
|
||||
{
|
||||
return pipe->funcs->get_param(pipe, param, value);
|
||||
}
|
||||
|
||||
int fd_pipe_wait(struct fd_pipe *pipe, uint32_t timestamp)
|
||||
drm_public int fd_pipe_wait(struct fd_pipe *pipe, uint32_t timestamp)
|
||||
{
|
||||
return pipe->funcs->wait(pipe, timestamp);
|
||||
}
|
||||
|
|
|
@ -29,6 +29,10 @@
|
|||
#ifndef FREEDRENO_PRIV_H_
|
||||
#define FREEDRENO_PRIV_H_
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
|
@ -41,6 +45,7 @@
|
|||
#include <stdio.h>
|
||||
#include <assert.h>
|
||||
|
||||
#include "libdrm.h"
|
||||
#include "xf86drm.h"
|
||||
#include "xf86atomic.h"
|
||||
|
||||
|
|
|
@ -32,8 +32,8 @@
|
|||
#include "freedreno_priv.h"
|
||||
#include "freedreno_ringbuffer.h"
|
||||
|
||||
struct fd_ringbuffer * fd_ringbuffer_new(struct fd_pipe *pipe,
|
||||
uint32_t size)
|
||||
drm_public struct fd_ringbuffer *
|
||||
fd_ringbuffer_new(struct fd_pipe *pipe, uint32_t size)
|
||||
{
|
||||
struct fd_ringbuffer *ring;
|
||||
|
||||
|
@ -51,7 +51,7 @@ struct fd_ringbuffer * fd_ringbuffer_new(struct fd_pipe *pipe,
|
|||
return ring;
|
||||
}
|
||||
|
||||
void fd_ringbuffer_del(struct fd_ringbuffer *ring)
|
||||
drm_public void fd_ringbuffer_del(struct fd_ringbuffer *ring)
|
||||
{
|
||||
ring->funcs->destroy(ring);
|
||||
}
|
||||
|
@ -60,13 +60,13 @@ void fd_ringbuffer_del(struct fd_ringbuffer *ring)
|
|||
* the IB source) as it's parent before emitting reloc's, to ensure
|
||||
* the bookkeeping works out properly.
|
||||
*/
|
||||
void fd_ringbuffer_set_parent(struct fd_ringbuffer *ring,
|
||||
struct fd_ringbuffer *parent)
|
||||
drm_public void fd_ringbuffer_set_parent(struct fd_ringbuffer *ring,
|
||||
struct fd_ringbuffer *parent)
|
||||
{
|
||||
ring->parent = parent;
|
||||
}
|
||||
|
||||
void fd_ringbuffer_reset(struct fd_ringbuffer *ring)
|
||||
drm_public void fd_ringbuffer_reset(struct fd_ringbuffer *ring)
|
||||
{
|
||||
uint32_t *start = ring->start;
|
||||
if (ring->pipe->id == FD_PIPE_2D)
|
||||
|
@ -77,30 +77,32 @@ void fd_ringbuffer_reset(struct fd_ringbuffer *ring)
|
|||
}
|
||||
|
||||
/* maybe get rid of this and use fd_ringmarker_flush() from DDX too? */
|
||||
int fd_ringbuffer_flush(struct fd_ringbuffer *ring)
|
||||
drm_public int fd_ringbuffer_flush(struct fd_ringbuffer *ring)
|
||||
{
|
||||
return ring->funcs->flush(ring, ring->last_start);
|
||||
}
|
||||
|
||||
uint32_t fd_ringbuffer_timestamp(struct fd_ringbuffer *ring)
|
||||
drm_public uint32_t fd_ringbuffer_timestamp(struct fd_ringbuffer *ring)
|
||||
{
|
||||
return ring->last_timestamp;
|
||||
}
|
||||
|
||||
void fd_ringbuffer_reloc(struct fd_ringbuffer *ring,
|
||||
const struct fd_reloc *reloc)
|
||||
drm_public void fd_ringbuffer_reloc(struct fd_ringbuffer *ring,
|
||||
const struct fd_reloc *reloc)
|
||||
{
|
||||
ring->funcs->emit_reloc(ring, reloc);
|
||||
}
|
||||
|
||||
void fd_ringbuffer_emit_reloc_ring(struct fd_ringbuffer *ring,
|
||||
struct fd_ringmarker *target, struct fd_ringmarker *end)
|
||||
drm_public void
|
||||
fd_ringbuffer_emit_reloc_ring(struct fd_ringbuffer *ring,
|
||||
struct fd_ringmarker *target,
|
||||
struct fd_ringmarker *end)
|
||||
{
|
||||
assert(target->ring == end->ring);
|
||||
ring->funcs->emit_reloc_ring(ring, target, end);
|
||||
}
|
||||
|
||||
struct fd_ringmarker * fd_ringmarker_new(struct fd_ringbuffer *ring)
|
||||
drm_public struct fd_ringmarker * fd_ringmarker_new(struct fd_ringbuffer *ring)
|
||||
{
|
||||
struct fd_ringmarker *marker = NULL;
|
||||
|
||||
|
@ -117,23 +119,23 @@ struct fd_ringmarker * fd_ringmarker_new(struct fd_ringbuffer *ring)
|
|||
return marker;
|
||||
}
|
||||
|
||||
void fd_ringmarker_del(struct fd_ringmarker *marker)
|
||||
drm_public void fd_ringmarker_del(struct fd_ringmarker *marker)
|
||||
{
|
||||
free(marker);
|
||||
}
|
||||
|
||||
void fd_ringmarker_mark(struct fd_ringmarker *marker)
|
||||
drm_public void fd_ringmarker_mark(struct fd_ringmarker *marker)
|
||||
{
|
||||
marker->cur = marker->ring->cur;
|
||||
}
|
||||
|
||||
uint32_t fd_ringmarker_dwords(struct fd_ringmarker *start,
|
||||
struct fd_ringmarker *end)
|
||||
drm_public uint32_t fd_ringmarker_dwords(struct fd_ringmarker *start,
|
||||
struct fd_ringmarker *end)
|
||||
{
|
||||
return end->cur - start->cur;
|
||||
}
|
||||
|
||||
int fd_ringmarker_flush(struct fd_ringmarker *marker)
|
||||
drm_public int fd_ringmarker_flush(struct fd_ringmarker *marker)
|
||||
{
|
||||
struct fd_ringbuffer *ring = marker->ring;
|
||||
return ring->funcs->flush(ring, marker->cur);
|
||||
|
|
|
@ -171,8 +171,8 @@ struct fd_bo * kgsl_bo_from_handle(struct fd_device *dev,
|
|||
return bo;
|
||||
}
|
||||
|
||||
struct fd_bo * fd_bo_from_fbdev(struct fd_pipe *pipe,
|
||||
int fbfd, uint32_t size)
|
||||
drm_public struct fd_bo *
|
||||
fd_bo_from_fbdev(struct fd_pipe *pipe, int fbfd, uint32_t size)
|
||||
{
|
||||
struct fd_bo *bo;
|
||||
|
||||
|
|
Loading…
Reference in New Issue