4c579f5e42154b447cd5" /********************************************************************* * * Filename: irda.h * Version: * Description: * Status: Experimental. * Author: Dag Brattli * Created at: Mon Mar 8 14:06:12 1999 * Modified at: Sat Dec 25 16:06:42 1999 * Modified by: Dag Brattli * * 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. * ********************************************************************/ #ifndef KERNEL_IRDA_H #define KERNEL_IRDA_H #include #include /* Note that this file is shared with user space. */ /* Hint bit positions for first hint byte */ #define HINT_PNP 0x01 #define HINT_PDA 0x02 #define HINT_COMPUTER 0x04 #define HINT_PRINTER 0x08 #define HINT_MODEM 0x10 #define HINT_FAX 0x20 #define HINT_LAN 0x40 #define HINT_EXTENSION 0x80 /* Hint bit positions for second hint byte (first extension byte) */ #define HINT_TELEPHONY 0x01 #define HINT_FILE_SERVER 0x02 #define HINT_COMM 0x04 #define HINT_MESSAGE 0x08 #define HINT_HTTP 0x10 #define HINT_OBEX 0x20 /* IrLMP character code values */ #define CS_ASCII 0x00 #define CS_ISO_8859_1 0x01 #define CS_ISO_8859_2 0x02 #define CS_ISO_8859_3 0x03 #define CS_ISO_8859_4 0x04 #define CS_ISO_8859_5 0x05 #define CS_ISO_8859_6 0x06 #define CS_ISO_8859_7 0x07 #define CS_ISO_8859_8 0x08 #define CS_ISO_8859_9 0x09 #define CS_UNICODE 0xff /* These are the currently known dongles */ typedef enum { IRDA_TEKRAM_DONGLE = 0, IRDA_ESI_DONGLE = 1, IRDA_ACTISYS_DONGLE = 2, IRDA_ACTISYS_PLUS_DONGLE = 3, IRDA_GIRBIL_DONGLE = 4, IRDA_LITELINK_DONGLE = 5, IRDA_AIRPORT_DONGLE = 6, IRDA_OLD_BELKIN_DONGLE = 7, IRDA_EP7211_IR = 8, IRDA_MCP2120_DONGLE = 9, IRDA_ACT200L_DONGLE = 10, IRDA_MA600_DONGLE = 11, IRDA_TOIM3232_DONGLE = 12, IRDA_EP7211_DONGLE = 13, } IRDA_DONGLE; /* Protocol types to be used for SOCK_DGRAM */ enum { IRDAPROTO_UNITDATA = 0, IRDAPROTO_ULTRA = 1, IRDAPROTO_MAX }; #define SOL_IRLMP 266 /* Same as SOL_IRDA for now */ #define SOL_IRTTP 266 /* Same as SOL_IRDA for now */ #define IRLMP_ENUMDEVICES 1 /* Return discovery log */ #define IRLMP_IAS_SET 2 /* Set an attribute in local IAS */ #define IRLMP_IAS_QUERY 3 /* Query remote IAS for attribute */ #define IRLMP_HINTS_SET 4 /* Set hint bits advertised */ #define IRLMP_QOS_SET 5 #define IRLMP_QOS_GET 6 #define IRLMP_MAX_SDU_SIZE 7 #define IRLMP_IAS_GET 8 /* Get an attribute from local IAS */ #define IRLMP_IAS_DEL 9 /* Remove attribute from local IAS */ #define IRLMP_HINT_MASK_SET 10 /* Set discovery filter */ #define IRLMP_WAITDEVICE 11 /* Wait for a new discovery */ #define IRTTP_MAX_SDU_SIZE IRLMP_MAX_SDU_SIZE /* Compatibility */ #define IAS_MAX_STRING 256 /* See IrLMP 1.1, 4.3.3.2 */ #define IAS_MAX_OCTET_STRING 1024 /* See IrLMP 1.1, 4.3.3.2 */ #define IAS_MAX_CLASSNAME 60 /* See IrLMP 1.1, 4.3.1 */ #define IAS_MAX_ATTRIBNAME 60 /* See IrLMP 1.1, 4.3.3.1