1 /* Copyright (C) 2010 - 2013 UNISYS CORPORATION
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or (at
7 * your option) any later version.
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
12 * NON INFRINGEMENT. See the GNU General Public License for more
17 #include <linux/kernel.h>
18 #ifdef CONFIG_MODVERSIONS
19 #include <config/modversions.h>
21 #include <linux/module.h>
22 #include <linux/init.h> /* for module_init and module_exit */
23 #include <linux/slab.h> /* for memcpy */
24 #include <linux/types.h>
28 #include "timskmodutils.h"
32 channel_mod_init(void)
34 if (!unisys_spar_platform)
40 channel_mod_exit(void)
45 SignalInsert_withLock(CHANNEL_HEADER __iomem *pChannel, U32 Queue,
46 void *pSignal, spinlock_t *lock)
50 spin_lock_irqsave(lock, flags);
51 result = visor_signal_insert(pChannel, Queue, pSignal);
52 spin_unlock_irqrestore(lock, flags);
57 SignalRemove_withLock(CHANNEL_HEADER __iomem *pChannel, U32 Queue,
58 void *pSignal, spinlock_t *lock)
62 result = visor_signal_remove(pChannel, Queue, pSignal);
67 module_init(channel_mod_init);
68 module_exit(channel_mod_exit);
70 MODULE_LICENSE("GPL");
71 MODULE_AUTHOR("Bryan Glaudel");
72 MODULE_ALIAS("uischan");
73 /* this is extracted during depmod and kept in modules.dep */