]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/irda/ircomm/ircomm_param.c
Pull osi into release branch
[linux-2.6-omap-h63xx.git] / net / irda / ircomm / ircomm_param.c
index a39f5735a90bffeb854d843fbeb58091ba93419c..e5e4792a0314d8e1d21652abf61d29d977c336fb 100644 (file)
@@ -1,5 +1,5 @@
 /*********************************************************************
- *                
+ *
  * Filename:      ircomm_param.c
  * Version:       1.0
  * Description:   Parameter handling for the IrCOMM protocol
@@ -8,27 +8,26 @@
  * Created at:    Mon Jun  7 10:25:11 1999
  * Modified at:   Sun Jan 30 14:32:03 2000
  * Modified by:   Dag Brattli <dagb@cs.uit.no>
- * 
+ *
  *     Copyright (c) 1999-2000 Dag Brattli, All Rights Reserved.
- *     
- *     This program is free software; you can redistribute it and/or 
- *     modify it under the terms of the GNU General Public License as 
- *     published by the Free Software Foundation; either version 2 of 
+ *
+ *     This program is free software; you can redistribute it and/or
+ *     modify it under the terms of the GNU General Public License as
+ *     published by the Free Software Foundation; either version 2 of
  *     the License, or (at your option) any later version.
- * 
+ *
  *     This program is distributed in the hope that it will be useful,
  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  *     GNU General Public License for more details.
- * 
- *     You should have received a copy of the GNU General Public License 
- *     along with this program; if not, write to the Free Software 
- *     Foundation, Inc., 59 Temple Place, Suite 330, Boston, 
+ *
+ *     You should have received a copy of the GNU General Public License
+ *     along with this program; if not, write to the Free Software
+ *     Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  *     MA 02111-1307 USA
- *     
+ *
  ********************************************************************/
 
-#include <linux/sched.h>
 #include <linux/workqueue.h>
 #include <linux/interrupt.h>
 
 
 #include <net/irda/ircomm_param.h>
 
-static int ircomm_param_service_type(void *instance, irda_param_t *param, 
+static int ircomm_param_service_type(void *instance, irda_param_t *param,
                                     int get);
-static int ircomm_param_port_type(void *instance, irda_param_t *param, 
+static int ircomm_param_port_type(void *instance, irda_param_t *param,
                                  int get);
-static int ircomm_param_port_name(void *instance, irda_param_t *param, 
+static int ircomm_param_port_name(void *instance, irda_param_t *param,
                                  int get);
-static int ircomm_param_service_type(void *instance, irda_param_t *param, 
+static int ircomm_param_service_type(void *instance, irda_param_t *param,
                                     int get);
-static int ircomm_param_data_rate(void *instance, irda_param_t *param, 
+static int ircomm_param_data_rate(void *instance, irda_param_t *param,
                                  int get);
-static int ircomm_param_data_format(void *instance, irda_param_t *param, 
+static int ircomm_param_data_format(void *instance, irda_param_t *param,
                                    int get);
-static int ircomm_param_flow_control(void *instance, irda_param_t *param, 
+static int ircomm_param_flow_control(void *instance, irda_param_t *param,
                                     int get);
 static int ircomm_param_xon_xoff(void *instance, irda_param_t *param, int get);
 static int ircomm_param_enq_ack(void *instance, irda_param_t *param, int get);
-static int ircomm_param_line_status(void *instance, irda_param_t *param, 
+static int ircomm_param_line_status(void *instance, irda_param_t *param,
                                    int get);
 static int ircomm_param_dte(void *instance, irda_param_t *param, int get);
 static int ircomm_param_dce(void *instance, irda_param_t *param, int get);
@@ -85,7 +84,7 @@ static pi_minor_info_t pi_minor_call_table_9_wire[] = {
 static pi_major_info_t pi_major_call_table[] = {
        { pi_minor_call_table_common,  3 },
        { pi_minor_call_table_non_raw, 6 },
-       { pi_minor_call_table_9_wire,  3 }
+       { pi_minor_call_table_9_wire,  3 }
 /*     { pi_minor_call_table_centronics }  */
 };
 
@@ -119,23 +118,23 @@ int ircomm_param_request(struct ircomm_tty_cb *self, __u8 pi, int flush)
 
        spin_lock_irqsave(&self->spinlock, flags);
 
-       skb = self->ctrl_skb;   
+       skb = self->ctrl_skb;
        if (!skb) {
                skb = alloc_skb(256, GFP_ATOMIC);
                if (!skb) {
                        spin_unlock_irqrestore(&self->spinlock, flags);
                        return -ENOMEM;
                }
-               
+
                skb_reserve(skb, self->max_header_size);
                self->ctrl_skb = skb;
        }
-       /* 
+       /*
         * Inserting is a little bit tricky since we don't know how much
-        * room we will need. But this should hopefully work OK 
+        * room we will need. But this should hopefully work OK
         */
-       count = irda_param_insert(self, pi, skb->tail, skb_tailroom(skb),
-                                 &ircomm_param_info);
+       count = irda_param_insert(self, pi, skb_tail_pointer(skb),
+                                 skb_tailroom(skb), &ircomm_param_info);
        if (count < 0) {
                IRDA_WARNING("%s(), no room for parameter!\n", __FUNCTION__);
                spin_unlock_irqrestore(&self->spinlock, flags);
@@ -162,7 +161,7 @@ int ircomm_param_request(struct ircomm_tty_cb *self, __u8 pi, int flush)
  *    query and then the remote device sends its initial parameters
  *
  */
-static int ircomm_param_service_type(void *instance, irda_param_t *param, 
+static int ircomm_param_service_type(void *instance, irda_param_t *param,
                                     int get)
 {
        struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) instance;
@@ -179,7 +178,7 @@ static int ircomm_param_service_type(void *instance, irda_param_t *param,
        /* Find all common service types */
        service_type &= self->service_type;
        if (!service_type) {
-               IRDA_DEBUG(2, 
+               IRDA_DEBUG(2,
                           "%s(), No common service type to use!\n", __FUNCTION__ );
                return -1;
        }
@@ -198,12 +197,12 @@ static int ircomm_param_service_type(void *instance, irda_param_t *param,
        else if (service_type & IRCOMM_3_WIRE_RAW)
                self->settings.service_type = IRCOMM_3_WIRE_RAW;
 
-       IRDA_DEBUG(0, "%s(), resulting service type=0x%02x\n", __FUNCTION__ , 
+       IRDA_DEBUG(0, "%s(), resulting service type=0x%02x\n", __FUNCTION__ ,
                   self->settings.service_type);
 
-       /* 
+       /*
         * Now the line is ready for some communication. Check if we are a
-         * server, and send over some initial parameters.
+        * server, and send over some initial parameters.
         * Client do it in ircomm_tty_state_setup().
         * Note : we may get called from ircomm_tty_getvalue_confirm(),
         * therefore before we even have open any socket. And self->client
@@ -235,13 +234,13 @@ static int ircomm_param_port_type(void *instance, irda_param_t *param, int get)
 
        IRDA_ASSERT(self != NULL, return -1;);
        IRDA_ASSERT(self->magic == IRCOMM_TTY_MAGIC, return -1;);
-       
+
        if (get)
                param->pv.i = IRCOMM_SERIAL;
        else {
                self->settings.port_type = (__u8) param->pv.i;
 
-               IRDA_DEBUG(0, "%s(), port type=%d\n", __FUNCTION__ , 
+               IRDA_DEBUG(0, "%s(), port type=%d\n", __FUNCTION__ ,
                           self->settings.port_type);
        }
        return 0;
@@ -256,7 +255,7 @@ static int ircomm_param_port_type(void *instance, irda_param_t *param, int get)
 static int ircomm_param_port_name(void *instance, irda_param_t *param, int get)
 {
        struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) instance;
-       
+
        IRDA_ASSERT(self != NULL, return -1;);
        IRDA_ASSERT(self->magic == IRCOMM_TTY_MAGIC, return -1;);
 
@@ -279,7 +278,7 @@ static int ircomm_param_port_name(void *instance, irda_param_t *param, int get)
 static int ircomm_param_data_rate(void *instance, irda_param_t *param, int get)
 {
        struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) instance;
-       
+
        IRDA_ASSERT(self != NULL, return -1;);
        IRDA_ASSERT(self->magic == IRCOMM_TTY_MAGIC, return -1;);
 
@@ -287,7 +286,7 @@ static int ircomm_param_data_rate(void *instance, irda_param_t *param, int get)
                param->pv.i = self->settings.data_rate;
        else
                self->settings.data_rate = param->pv.i;
-       
+
        IRDA_DEBUG(2, "%s(), data rate = %d\n", __FUNCTION__ , param->pv.i);
 
        return 0;
@@ -299,7 +298,7 @@ static int ircomm_param_data_rate(void *instance, irda_param_t *param, int get)
  *    Exchange data format to be used in this settings
  *
  */
-static int ircomm_param_data_format(void *instance, irda_param_t *param, 
+static int ircomm_param_data_format(void *instance, irda_param_t *param,
                                    int get)
 {
        struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) instance;
@@ -311,7 +310,7 @@ static int ircomm_param_data_format(void *instance, irda_param_t *param,
                param->pv.i = self->settings.data_format;
        else
                self->settings.data_format = (__u8) param->pv.i;
-       
+
        return 0;
 }
 
@@ -321,14 +320,14 @@ static int ircomm_param_data_format(void *instance, irda_param_t *param,
  *    Exchange flow control settings to be used in this settings
  *
  */
-static int ircomm_param_flow_control(void *instance, irda_param_t *param, 
+static int ircomm_param_flow_control(void *instance, irda_param_t *param,
                                     int get)
 {
        struct ircomm_tty_cb *self = (struct ircomm_tty_cb *) instance;
 
        IRDA_ASSERT(self != NULL, return -1;);
        IRDA_ASSERT(self->magic == IRCOMM_TTY_MAGIC, return -1;);
-       
+
        if (get)
                param->pv.i = self->settings.flow_control;
        else
@@ -351,7 +350,7 @@ static int ircomm_param_xon_xoff(void *instance, irda_param_t *param, int get)
 
        IRDA_ASSERT(self != NULL, return -1;);
        IRDA_ASSERT(self->magic == IRCOMM_TTY_MAGIC, return -1;);
-       
+
        if (get) {
                param->pv.i = self->settings.xonxoff[0];
                param->pv.i |= self->settings.xonxoff[1] << 8;
@@ -360,7 +359,7 @@ static int ircomm_param_xon_xoff(void *instance, irda_param_t *param, int get)
                self->settings.xonxoff[1] = (__u16) param->pv.i >> 8;
        }
 
-       IRDA_DEBUG(0, "%s(), XON/XOFF = 0x%02x,0x%02x\n", __FUNCTION__ , 
+       IRDA_DEBUG(0, "%s(), XON/XOFF = 0x%02x,0x%02x\n", __FUNCTION__ ,
                   param->pv.i & 0xff, param->pv.i >> 8);
 
        return 0;
@@ -378,7 +377,7 @@ static int ircomm_param_enq_ack(void *instance, irda_param_t *param, int get)
 
        IRDA_ASSERT(self != NULL, return -1;);
        IRDA_ASSERT(self->magic == IRCOMM_TTY_MAGIC, return -1;);
-       
+
        if (get) {
                param->pv.i = self->settings.enqack[0];
                param->pv.i |= self->settings.enqack[1] << 8;
@@ -396,10 +395,10 @@ static int ircomm_param_enq_ack(void *instance, irda_param_t *param, int get)
 /*
  * Function ircomm_param_line_status (self, param)
  *
- *    
+ *
  *
  */
-static int ircomm_param_line_status(void *instance, irda_param_t *param, 
+static int ircomm_param_line_status(void *instance, irda_param_t *param,
                                    int get)
 {
        IRDA_DEBUG(2, "%s(), not impl.\n", __FUNCTION__ );
@@ -427,7 +426,7 @@ static int ircomm_param_dte(void *instance, irda_param_t *param, int get)
                dte = (__u8) param->pv.i;
 
                self->settings.dce = 0;
-                               
+
                if (dte & IRCOMM_DELTA_DTR)
                        self->settings.dce |= (IRCOMM_DELTA_DSR|
                                              IRCOMM_DELTA_RI |
@@ -436,7 +435,7 @@ static int ircomm_param_dte(void *instance, irda_param_t *param, int get)
                        self->settings.dce |= (IRCOMM_DSR|
                                              IRCOMM_RI |
                                              IRCOMM_CD);
-               
+
                if (dte & IRCOMM_DELTA_RTS)
                        self->settings.dce |= IRCOMM_DELTA_CTS;
                if (dte & IRCOMM_RTS)
@@ -455,7 +454,7 @@ static int ircomm_param_dte(void *instance, irda_param_t *param, int get)
 /*
  * Function ircomm_param_dce (instance, param)
  *
- *    
+ *
  *
  */
 static int ircomm_param_dce(void *instance, irda_param_t *param, int get)