]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/hamradio/dmascc.c
Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
[linux-2.6-omap-h63xx.git] / drivers / net / hamradio / dmascc.c
index 79a8fbcf5f93bb4881c43a06094af73064a0450d..e6e721aff6f688baa925754b1df54ef8d12cce41 100644 (file)
@@ -249,10 +249,10 @@ static void start_timer(struct scc_priv *priv, int t, int r15);
 static inline unsigned char random(void);
 
 static inline void z8530_isr(struct scc_info *info);
-static irqreturn_t scc_isr(int irq, void *dev_id, struct pt_regs *regs);
+static irqreturn_t scc_isr(int irq, void *dev_id);
 static void rx_isr(struct scc_priv *priv);
 static void special_condition(struct scc_priv *priv, int rc);
-static void rx_bh(void *arg);
+static void rx_bh(struct work_struct *);
 static void tx_isr(struct scc_priv *priv);
 static void es_isr(struct scc_priv *priv);
 static void tm_isr(struct scc_priv *priv);
@@ -436,7 +436,7 @@ static int __init dmascc_init(void)
 module_init(dmascc_init);
 module_exit(dmascc_exit);
 
-static void dev_setup(struct net_device *dev)
+static void __init dev_setup(struct net_device *dev)
 {
        dev->type = ARPHRD_AX25;
        dev->hard_header_len = AX25_MAX_HEADER_LEN;
@@ -579,10 +579,9 @@ static int __init setup_adapter(int card_base, int type, int n)
                priv->param.clocks = TCTRxCP | RCRTxCP;
                priv->param.persist = 256;
                priv->param.dma = -1;
-               INIT_WORK(&priv->rx_work, rx_bh, priv);
+               INIT_WORK(&priv->rx_work, rx_bh);
                dev->priv = priv;
                sprintf(dev->name, "dmascc%i", 2 * n + i);
-               SET_MODULE_OWNER(dev);
                dev->base_addr = card_base;
                dev->irq = irq;
                dev->open = scc_open;
@@ -1143,7 +1142,7 @@ static inline void z8530_isr(struct scc_info *info)
 }
 
 
-static irqreturn_t scc_isr(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t scc_isr(int irq, void *dev_id)
 {
        struct scc_info *info = dev_id;
 
@@ -1273,9 +1272,9 @@ static void special_condition(struct scc_priv *priv, int rc)
 }
 
 
-static void rx_bh(void *arg)
+static void rx_bh(struct work_struct *ugli_api)
 {
-       struct scc_priv *priv = arg;
+       struct scc_priv *priv = container_of(ugli_api, struct scc_priv, rx_work);
        int i = priv->rx_tail;
        int cb;
        unsigned long flags;