drivers/tty/ipwireless/setup_protocol.h

Source file repositories/reference/linux-study-clean/drivers/tty/ipwireless/setup_protocol.h

File Facts

System
Linux kernel
Corpus path
drivers/tty/ipwireless/setup_protocol.h
Extension
.h
Size
3303 bytes
Lines
110
Domain
Driver Families
Bucket
drivers/tty
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct tl_setup_get_version_qry {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_GET_VERSION_QRY */
} __attribute__ ((__packed__));

struct tl_setup_get_version_rsp {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_GET_VERSION_RSP */
	unsigned char version;		/* TL_SETUP_VERSION */
} __attribute__ ((__packed__));

struct tl_setup_config_msg {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_CONFIG_MSG */
	unsigned char port_no;
	unsigned char prio_data;
	unsigned char prio_ctrl;
} __attribute__ ((__packed__));

struct tl_setup_config_done_msg {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_CONFIG_DONE_MSG */
} __attribute__ ((__packed__));

/* Asynchronous messages */
struct tl_setup_open_msg {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_OPEN_MSG */
	unsigned char port_no;
} __attribute__ ((__packed__));

struct tl_setup_close_msg {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_CLOSE_MSG */
	unsigned char port_no;
} __attribute__ ((__packed__));

/* Driver type  - for use in tl_setup_info_msg.driver_type */
#define COMM_DRIVER     0
#define NDISWAN_DRIVER  1
#define NDISWAN_DRIVER_MAJOR_VERSION  2
#define NDISWAN_DRIVER_MINOR_VERSION  0

/*
 * It should not matter when this message comes over as we just store the
 * results and send the ACK.
 */
struct tl_setup_info_msg {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_INFO_MSG */
	unsigned char driver_type;
	unsigned char major_version;
	unsigned char minor_version;
} __attribute__ ((__packed__));

struct tl_setup_info_msgAck {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_INFO_MSG_ACK */
} __attribute__ ((__packed__));

struct TlSetupRebootMsgAck {
	unsigned char sig_no;		/* TL_SETUP_SIGNO_REBOOT_MSG_ACK */
} __attribute__ ((__packed__));

/* Define a union of all the msgs that the driver can receive from the card.*/
union ipw_setup_rx_msg {
	unsigned char sig_no;
	struct tl_setup_get_version_rsp version_rsp_msg;
	struct tl_setup_open_msg open_msg;
	struct tl_setup_close_msg close_msg;
	struct tl_setup_info_msg InfoMsg;
	struct tl_setup_info_msgAck info_msg_ack;
} __attribute__ ((__packed__));

#endif				/* _IPWIRELESS_CS_SETUP_PROTOCOL_H_ */

Annotation

Implementation Notes