summaryrefslogtreecommitdiff
path: root/drivers/dahdi/wctdm24xxp
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dahdi/wctdm24xxp')
-rw-r--r--drivers/dahdi/wctdm24xxp/base.c33
1 files changed, 15 insertions, 18 deletions
diff --git a/drivers/dahdi/wctdm24xxp/base.c b/drivers/dahdi/wctdm24xxp/base.c
index 95f64ea..053d07a 100644
--- a/drivers/dahdi/wctdm24xxp/base.c
+++ b/drivers/dahdi/wctdm24xxp/base.c
@@ -910,9 +910,22 @@ wctdm_isr_getreg(struct wctdm *wc, struct wctdm_module *const mod, u8 address)
list_add(&cmd->node, &mod->pending_cmds);
}
+/* Must be called with wc.reglock held and local interrupts disabled */
static inline void
-wctdm_setreg_intr(struct wctdm *wc, struct wctdm_module *mod,
- int addr, int val);
+wctdm_setreg_intr(struct wctdm *wc, struct wctdm_module *mod, int addr, int val)
+{
+ struct wctdm_cmd *cmd;
+
+ cmd = kmalloc(sizeof(*cmd), GFP_ATOMIC);
+ if (unlikely(!cmd))
+ return;
+
+ cmd->complete = NULL;
+ cmd->cmd = CMD_WR(addr, val);
+
+ list_add_tail(&cmd->node, &mod->pending_cmds);
+}
+
static void cmd_checkisr(struct wctdm *wc, struct wctdm_module *const mod)
{
@@ -1058,22 +1071,6 @@ static inline void wctdm_transmitprep(struct wctdm *wc, unsigned char *sframe)
spin_unlock_irqrestore(&wc->reglock, flags);
}
-/* Must be called with wc.reglock held and local interrupts disabled */
-static inline void
-wctdm_setreg_intr(struct wctdm *wc, struct wctdm_module *mod, int addr, int val)
-{
- struct wctdm_cmd *cmd;
-
- cmd = kmalloc(sizeof(*cmd), GFP_ATOMIC);
- if (unlikely(!cmd))
- return;
-
- cmd->complete = NULL;
- cmd->cmd = CMD_WR(addr, val);
-
- list_add_tail(&cmd->node, &mod->pending_cmds);
-}
-
int wctdm_setreg(struct wctdm *wc, struct wctdm_module *mod, int addr, int val)
{
struct wctdm_cmd *cmd;