staging: csr: oska: remove refcount.c
It's not called by anyone, so remove it and the .h file and don't export the functions as they are not around anymore. Cc: Mikko Virkkilä <mikko.virkkila@bluegiga.com> Cc: Lauri Hintsala <Lauri.Hintsala@bluegiga.com> Cc: Riku Mettälä <riku.mettala@bluegiga.com> Cc: Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
e74927deee
commit
44bb4ac4bf
|
@ -2,7 +2,6 @@ obj-$(CONFIG_CSR_WIFI) := csr_oska.o
|
|||
|
||||
csr_oska-y := \
|
||||
list.o \
|
||||
refcount.o \
|
||||
event.o \
|
||||
oska_module.o \
|
||||
print.o \
|
||||
|
|
|
@ -8,14 +8,6 @@
|
|||
*/
|
||||
#include <linux/module.h>
|
||||
|
||||
#include "all.h"
|
||||
#include "refcount.h"
|
||||
|
||||
EXPORT_SYMBOL(os_refcount_init);
|
||||
EXPORT_SYMBOL(os_refcount_destroy);
|
||||
EXPORT_SYMBOL(os_refcount_get);
|
||||
EXPORT_SYMBOL(os_refcount_put);
|
||||
|
||||
MODULE_DESCRIPTION("Operating System Kernel Abstraction");
|
||||
MODULE_AUTHOR("Cambridge Silicon Radio Ltd.");
|
||||
MODULE_LICENSE("GPL and additional rights");
|
||||
|
|
|
@ -1,47 +0,0 @@
|
|||
/*
|
||||
* OSKA generic implementation -- reference counting.
|
||||
*
|
||||
* Copyright (C) 2010 Cambridge Silicon Radio Ltd.
|
||||
*
|
||||
* Refer to LICENSE.txt included with this source code for details on
|
||||
* the license terms.
|
||||
*/
|
||||
#include "refcount.h"
|
||||
#include "types.h"
|
||||
|
||||
void os_refcount_init(os_refcount_t *refcount, os_refcount_callback_f func, void *arg)
|
||||
{
|
||||
os_spinlock_init(&refcount->lock);
|
||||
refcount->count = 1;
|
||||
refcount->func = func;
|
||||
refcount->arg = arg;
|
||||
}
|
||||
|
||||
void os_refcount_destroy(os_refcount_t *refcount)
|
||||
{
|
||||
os_spinlock_destroy(&refcount->lock);
|
||||
}
|
||||
|
||||
void os_refcount_get(os_refcount_t *refcount)
|
||||
{
|
||||
os_int_status_t istate;
|
||||
|
||||
os_spinlock_lock_intsave(&refcount->lock, &istate);
|
||||
refcount->count++;
|
||||
os_spinlock_unlock_intrestore(&refcount->lock, &istate);
|
||||
}
|
||||
|
||||
void os_refcount_put(os_refcount_t *refcount)
|
||||
{
|
||||
bool is_zero;
|
||||
os_int_status_t istate;
|
||||
|
||||
os_spinlock_lock_intsave(&refcount->lock, &istate);
|
||||
refcount->count--;
|
||||
is_zero = refcount->count == 0;
|
||||
os_spinlock_unlock_intrestore(&refcount->lock, &istate);
|
||||
|
||||
if (is_zero) {
|
||||
refcount->func(refcount->arg);
|
||||
}
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
/*
|
||||
* Operating system kernel abstraction -- reference counting.
|
||||
*
|
||||
* Copyright (C) 2010 Cambridge Silicon Radio Ltd.
|
||||
*
|
||||
* Refer to LICENSE.txt included with this source code for details on
|
||||
* the license terms.
|
||||
*/
|
||||
#ifndef __OSKA_REFCOUNT_H
|
||||
#define __OSKA_REFCOUNT_H
|
||||
|
||||
#include "spinlock.h"
|
||||
|
||||
/**
|
||||
* @defgroup refcount Reference Counting
|
||||
*
|
||||
* A reference count is an atomic counter. A callback function is
|
||||
* called whenever the count reaches zero.
|
||||
*
|
||||
* A generic implementation is provided that is suitable for all
|
||||
* platforms that support the spinlock API in <oska/spinlock.h> (see
|
||||
* \ref spinlock).
|
||||
*/
|
||||
|
||||
typedef void (*os_refcount_callback_f)(void *arg);
|
||||
|
||||
struct __os_refcount_impl {
|
||||
unsigned count;
|
||||
os_spinlock_t lock;
|
||||
os_refcount_callback_f func;
|
||||
void *arg;
|
||||
};
|
||||
|
||||
/**
|
||||
* A reference count object.
|
||||
*
|
||||
* @ingroup refcount
|
||||
*/
|
||||
typedef struct __os_refcount_impl os_refcount_t;
|
||||
|
||||
/**
|
||||
* Initialize a reference count to 1.
|
||||
*
|
||||
* Initialized reference counts must be destroyed by calling
|
||||
* os_refcount_destroy().
|
||||
*
|
||||
* @param refcount the reference count.
|
||||
* @param func the function which will be called when the
|
||||
* reference count reaches 0.
|
||||
* @param arg an argument to pass to func.
|
||||
*
|
||||
* @ingroup refcount
|
||||
*/
|
||||
void os_refcount_init(os_refcount_t *refcount, os_refcount_callback_f func, void *arg);
|
||||
|
||||
/**
|
||||
* Destroy a reference count object.
|
||||
*
|
||||
* @param refcount the reference count.
|
||||
*
|
||||
* @ingroup refcount
|
||||
*/
|
||||
void os_refcount_destroy(os_refcount_t *refcount);
|
||||
|
||||
/**
|
||||
* Atomically increase the reference count by 1.
|
||||
*
|
||||
* @param refcount the reference count.
|
||||
*
|
||||
* @ingroup refcount
|
||||
*/
|
||||
void os_refcount_get(os_refcount_t *refcount);
|
||||
|
||||
/**
|
||||
* Atomically decrease the reference count by 1.
|
||||
*
|
||||
* The callback function passed to the call to os_refcount_init() is
|
||||
* called if the count was decreased to zero.
|
||||
*
|
||||
* @param refcount the reference count.
|
||||
*
|
||||
* @ingroup refcount
|
||||
*/
|
||||
void os_refcount_put(os_refcount_t *refcount);
|
||||
|
||||
#endif /* #ifndef __OSKA_REFCOUNT_H */
|
Loading…
Reference in New Issue