patch-2.2.15 linux/include/net/irda/qos.h
Next file: linux/include/net/irda/smc-ircc.h
Previous file: linux/include/net/irda/pc87108.h
Back to the patch index
Back to the overall index
- Lines: 134
- Date:
Fri Apr 21 23:11:02 2000
- Orig file:
v2.2.14/include/net/irda/qos.h
- Orig date:
Thu Dec 17 17:01:03 1998
diff -u --new-file --recursive --exclude-from ../../exclude v2.2.14/include/net/irda/qos.h linux/include/net/irda/qos.h
@@ -1,33 +1,41 @@
/*********************************************************************
*
* Filename: qos.h
- * Version: 0.1
+ * Version: 1.0
* Description: Quality of Service definitions
* Status: Experimental.
* Author: Dag Brattli <dagb@cs.uit.no>
* Created at: Fri Sep 19 23:21:09 1997
- * Modified at: Wed Dec 9 10:32:47 1998
+ * Modified at: Thu Dec 2 13:51:54 1999
* Modified by: Dag Brattli <dagb@cs.uit.no>
*
- * Copyright (c) 1998 Dag Brattli <dagb@cs.uit.no>, All Rights Reserved.
+ * Copyright (c) 1999 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
* the License, or (at your option) any later version.
- *
- * Neither Dag Brattli nor University of Tromsų admit liability nor
- * provide warranty for any of this software. This material is
- * provided "AS-IS" and at no charge.
- *
+ *
+ * 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,
+ * MA 02111-1307 USA
+ *
********************************************************************/
-#ifndef QOS_H
-#define QOS_H
+#ifndef IRDA_QOS_H
+#define IRDA_QOS_H
#include <linux/config.h>
#include <linux/skbuff.h>
+#include <net/irda/parameters.h>
+
#define PI_BAUD_RATE 0x01
#define PI_MAX_TURN_TIME 0x82
#define PI_DATA_SIZE 0x83
@@ -41,26 +49,27 @@
#define IR_115200_MAX 0x3f
/* Baud rates (first byte) */
-#define IR_2400 0x01
-#define IR_9600 0x02
-#define IR_19200 0x04
-#define IR_38400 0x08
-#define IR_57600 0x10
-#define IR_115200 0x20
-#define IR_576000 0x40
-#define IR_1152000 0x80
+#define IR_2400 0x01
+#define IR_9600 0x02
+#define IR_19200 0x04
+#define IR_38400 0x08
+#define IR_57600 0x10
+#define IR_115200 0x20
+#define IR_576000 0x40
+#define IR_1152000 0x80
/* Baud rates (second byte) */
-#define IR_4000000 0x01
+#define IR_4000000 0x01
+#define IR_16000000 0x02
/* Quality of Service information */
typedef struct {
- int value;
+ __u32 value;
__u16 bits; /* LSB is first byte, MSB is second byte */
} qos_value_t;
struct qos_info {
- int magic;
+ magic_t magic;
qos_value_t baud_rate; /* IR_11520O | ... */
qos_value_t max_turn_time;
@@ -77,24 +86,25 @@
#endif
};
-extern int baud_rates[];
-extern int data_size[];
-extern int min_turn_time[];
-extern int add_bofs[];
-extern int compression[];
-
-void irda_init_max_qos_capabilies( struct qos_info *qos);
-void irda_qos_compute_intersection( struct qos_info *, struct qos_info *);
-int irda_insert_qos_negotiation_params( struct qos_info *qos, __u8 *fp);
-void irda_qos_negotiate( struct qos_info *qos_rx, struct qos_info *qos_tx,
- struct sk_buff *skb);
-
-int msb_index ( __u16 byte);
-int byte_value( __u8 byte, int *array);
-int value_index( int value, int *array);
-int index_value( int index, int *array);
+extern __u32 baud_rates[];
+extern __u32 data_sizes[];
+extern __u32 min_turn_times[];
+extern __u32 add_bofs[];
+extern __u32 compressions[];
+
+void irda_init_max_qos_capabilies(struct qos_info *qos);
+void irda_qos_compute_intersection(struct qos_info *, struct qos_info *);
+
+__u32 irlap_max_line_capacity(__u32 speed, __u32 max_turn_time);
+__u32 irlap_requested_line_capacity(struct qos_info *qos);
+__u32 irlap_min_turn_time_in_bytes(__u32 speed, __u32 min_turn_time);
+
+int msb_index(__u16 byte);
+int value_index(__u32 value, __u32 *array);
+__u32 byte_value(__u8 byte, __u32 *array);
+__u32 index_value(int index, __u32 *array);
-void irda_qos_bits_to_value( struct qos_info *qos);
+void irda_qos_bits_to_value(struct qos_info *qos);
#endif
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)