#include <linux/string.h>
#include <linux/sysfs.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/spinlock.h>
#include <linux/idr.h>
#include "audio_manager.h"
#include "audio_manager_private.h"
static struct kset *manager_kset;
static LIST_HEAD(modules_list);
static DECLARE_RWSEM(modules_rwsem);
static DEFINE_IDA(module_id);
static struct gb_audio_manager_module *gb_audio_manager_get_locked(int id)
{ … }
int gb_audio_manager_add(struct gb_audio_manager_module_descriptor *desc)
{ … }
EXPORT_SYMBOL_GPL(…);
int gb_audio_manager_remove(int id)
{ … }
EXPORT_SYMBOL_GPL(…);
void gb_audio_manager_remove_all(void)
{ … }
EXPORT_SYMBOL_GPL(…);
struct gb_audio_manager_module *gb_audio_manager_get_module(int id)
{ … }
EXPORT_SYMBOL_GPL(…);
void gb_audio_manager_put_module(struct gb_audio_manager_module *module)
{ … }
EXPORT_SYMBOL_GPL(…);
int gb_audio_manager_dump_module(int id)
{ … }
EXPORT_SYMBOL_GPL(…);
void gb_audio_manager_dump_all(void)
{ … }
EXPORT_SYMBOL_GPL(…);
static int __init manager_init(void)
{ … }
static void __exit manager_exit(void)
{ … }
module_init(…) …;
module_exit(manager_exit);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
MODULE_AUTHOR(…) …;