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 := \
|
csr_oska-y := \
|
||||||
list.o \
|
list.o \
|
||||||
refcount.o \
|
|
||||||
event.o \
|
event.o \
|
||||||
oska_module.o \
|
oska_module.o \
|
||||||
print.o \
|
print.o \
|
||||||
|
@ -8,14 +8,6 @@
|
|||||||
*/
|
*/
|
||||||
#include <linux/module.h>
|
#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_DESCRIPTION("Operating System Kernel Abstraction");
|
||||||
MODULE_AUTHOR("Cambridge Silicon Radio Ltd.");
|
MODULE_AUTHOR("Cambridge Silicon Radio Ltd.");
|
||||||
MODULE_LICENSE("GPL and additional rights");
|
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
Block a user