diff options
author | John W. Linville <linville@tuxdriver.com> | 2010-07-27 11:59:19 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-07-27 11:59:19 -0400 |
commit | 800f65bba8d2030b3fef62850e203f9f176625a8 (patch) | |
tree | 6507c4fe7a0826c253b4afb29375ab306a0fd9c8 /drivers/net/wireless/ipw2x00 | |
parent | 06b3cda0c12986f5bba578b918b188d731c4e191 (diff) | |
parent | b3190df628617c7a4f188a9465aeabe1f5761933 (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6
Conflicts:
drivers/net/wireless/iwlwifi/iwl-commands.h
Diffstat (limited to 'drivers/net/wireless/ipw2x00')
-rw-r--r-- | drivers/net/wireless/ipw2x00/ipw2100.c | 4 | ||||
-rw-r--r-- | drivers/net/wireless/ipw2x00/ipw2100.h | 16 | ||||
-rw-r--r-- | drivers/net/wireless/ipw2x00/ipw2200.h | 122 | ||||
-rw-r--r-- | drivers/net/wireless/ipw2x00/libipw.h | 62 |
4 files changed, 102 insertions, 102 deletions
diff --git a/drivers/net/wireless/ipw2x00/ipw2100.c b/drivers/net/wireless/ipw2x00/ipw2100.c index 5165db9b1b32..5bbff4c5a489 100644 --- a/drivers/net/wireless/ipw2x00/ipw2100.c +++ b/drivers/net/wireless/ipw2x00/ipw2100.c | |||
@@ -5229,7 +5229,7 @@ struct security_info_params { | |||
5229 | u8 auth_mode; | 5229 | u8 auth_mode; |
5230 | u8 replay_counters_number; | 5230 | u8 replay_counters_number; |
5231 | u8 unicast_using_group; | 5231 | u8 unicast_using_group; |
5232 | } __attribute__ ((packed)); | 5232 | } __packed; |
5233 | 5233 | ||
5234 | static int ipw2100_set_security_information(struct ipw2100_priv *priv, | 5234 | static int ipw2100_set_security_information(struct ipw2100_priv *priv, |
5235 | int auth_mode, | 5235 | int auth_mode, |
@@ -8471,7 +8471,7 @@ struct ipw2100_fw_header { | |||
8471 | short mode; | 8471 | short mode; |
8472 | unsigned int fw_size; | 8472 | unsigned int fw_size; |
8473 | unsigned int uc_size; | 8473 | unsigned int uc_size; |
8474 | } __attribute__ ((packed)); | 8474 | } __packed; |
8475 | 8475 | ||
8476 | static int ipw2100_mod_firmware_load(struct ipw2100_fw *fw) | 8476 | static int ipw2100_mod_firmware_load(struct ipw2100_fw *fw) |
8477 | { | 8477 | { |
diff --git a/drivers/net/wireless/ipw2x00/ipw2100.h b/drivers/net/wireless/ipw2x00/ipw2100.h index 1eab0d698f4d..838002b4881e 100644 --- a/drivers/net/wireless/ipw2x00/ipw2100.h +++ b/drivers/net/wireless/ipw2x00/ipw2100.h | |||
@@ -164,7 +164,7 @@ struct bd_status { | |||
164 | } fields; | 164 | } fields; |
165 | u8 field; | 165 | u8 field; |
166 | } info; | 166 | } info; |
167 | } __attribute__ ((packed)); | 167 | } __packed; |
168 | 168 | ||
169 | struct ipw2100_bd { | 169 | struct ipw2100_bd { |
170 | u32 host_addr; | 170 | u32 host_addr; |
@@ -174,7 +174,7 @@ struct ipw2100_bd { | |||
174 | * 1st TBD) */ | 174 | * 1st TBD) */ |
175 | u8 num_fragments; | 175 | u8 num_fragments; |
176 | u8 reserved[6]; | 176 | u8 reserved[6]; |
177 | } __attribute__ ((packed)); | 177 | } __packed; |
178 | 178 | ||
179 | #define IPW_BD_QUEUE_LENGTH(n) (1<<n) | 179 | #define IPW_BD_QUEUE_LENGTH(n) (1<<n) |
180 | #define IPW_BD_ALIGNMENT(L) (L*sizeof(struct ipw2100_bd)) | 180 | #define IPW_BD_ALIGNMENT(L) (L*sizeof(struct ipw2100_bd)) |
@@ -232,7 +232,7 @@ struct ipw2100_status { | |||
232 | #define IPW_STATUS_FLAG_WEP_ENCRYPTED (1<<1) | 232 | #define IPW_STATUS_FLAG_WEP_ENCRYPTED (1<<1) |
233 | #define IPW_STATUS_FLAG_CRC_ERROR (1<<2) | 233 | #define IPW_STATUS_FLAG_CRC_ERROR (1<<2) |
234 | u8 rssi; | 234 | u8 rssi; |
235 | } __attribute__ ((packed)); | 235 | } __packed; |
236 | 236 | ||
237 | struct ipw2100_status_queue { | 237 | struct ipw2100_status_queue { |
238 | /* driver (virtual) pointer to queue */ | 238 | /* driver (virtual) pointer to queue */ |
@@ -293,7 +293,7 @@ struct ipw2100_cmd_header { | |||
293 | u32 reserved1[3]; | 293 | u32 reserved1[3]; |
294 | u32 *ordinal1_ptr; | 294 | u32 *ordinal1_ptr; |
295 | u32 *ordinal2_ptr; | 295 | u32 *ordinal2_ptr; |
296 | } __attribute__ ((packed)); | 296 | } __packed; |
297 | 297 | ||
298 | struct ipw2100_data_header { | 298 | struct ipw2100_data_header { |
299 | u32 host_command_reg; | 299 | u32 host_command_reg; |
@@ -307,7 +307,7 @@ struct ipw2100_data_header { | |||
307 | u8 src_addr[ETH_ALEN]; | 307 | u8 src_addr[ETH_ALEN]; |
308 | u8 dst_addr[ETH_ALEN]; | 308 | u8 dst_addr[ETH_ALEN]; |
309 | u16 fragment_size; | 309 | u16 fragment_size; |
310 | } __attribute__ ((packed)); | 310 | } __packed; |
311 | 311 | ||
312 | /* Host command data structure */ | 312 | /* Host command data structure */ |
313 | struct host_command { | 313 | struct host_command { |
@@ -316,7 +316,7 @@ struct host_command { | |||
316 | u32 host_command_sequence; // UNIQUE COMMAND NUMBER (ID) | 316 | u32 host_command_sequence; // UNIQUE COMMAND NUMBER (ID) |
317 | u32 host_command_length; // LENGTH | 317 | u32 host_command_length; // LENGTH |
318 | u32 host_command_parameters[HOST_COMMAND_PARAMS_REG_LEN]; // COMMAND PARAMETERS | 318 | u32 host_command_parameters[HOST_COMMAND_PARAMS_REG_LEN]; // COMMAND PARAMETERS |
319 | } __attribute__ ((packed)); | 319 | } __packed; |
320 | 320 | ||
321 | typedef enum { | 321 | typedef enum { |
322 | POWER_ON_RESET, | 322 | POWER_ON_RESET, |
@@ -382,7 +382,7 @@ struct ipw2100_notification { | |||
382 | u32 hnhdr_size; /* size in bytes of data | 382 | u32 hnhdr_size; /* size in bytes of data |
383 | or number of entries, if table. | 383 | or number of entries, if table. |
384 | Does NOT include header */ | 384 | Does NOT include header */ |
385 | } __attribute__ ((packed)); | 385 | } __packed; |
386 | 386 | ||
387 | #define MAX_KEY_SIZE 16 | 387 | #define MAX_KEY_SIZE 16 |
388 | #define MAX_KEYS 8 | 388 | #define MAX_KEYS 8 |
@@ -814,7 +814,7 @@ struct ipw2100_rx { | |||
814 | struct ipw2100_notification notification; | 814 | struct ipw2100_notification notification; |
815 | struct ipw2100_cmd_header command; | 815 | struct ipw2100_cmd_header command; |
816 | } rx_data; | 816 | } rx_data; |
817 | } __attribute__ ((packed)); | 817 | } __packed; |
818 | 818 | ||
819 | /* Bit 0-7 are for 802.11b tx rates - . Bit 5-7 are reserved */ | 819 | /* Bit 0-7 are for 802.11b tx rates - . Bit 5-7 are reserved */ |
820 | #define TX_RATE_1_MBIT 0x0001 | 820 | #define TX_RATE_1_MBIT 0x0001 |
diff --git a/drivers/net/wireless/ipw2x00/ipw2200.h b/drivers/net/wireless/ipw2x00/ipw2200.h index bf0eeb2e873a..d7d049c7a4fa 100644 --- a/drivers/net/wireless/ipw2x00/ipw2200.h +++ b/drivers/net/wireless/ipw2x00/ipw2200.h | |||
@@ -388,7 +388,7 @@ struct clx2_queue { | |||
388 | dma_addr_t dma_addr; /**< physical addr for BD's */ | 388 | dma_addr_t dma_addr; /**< physical addr for BD's */ |
389 | int low_mark; /**< low watermark, resume queue if free space more than this */ | 389 | int low_mark; /**< low watermark, resume queue if free space more than this */ |
390 | int high_mark; /**< high watermark, stop queue if free space less than this */ | 390 | int high_mark; /**< high watermark, stop queue if free space less than this */ |
391 | } __attribute__ ((packed)); /* XXX */ | 391 | } __packed; /* XXX */ |
392 | 392 | ||
393 | struct machdr32 { | 393 | struct machdr32 { |
394 | __le16 frame_ctl; | 394 | __le16 frame_ctl; |
@@ -399,7 +399,7 @@ struct machdr32 { | |||
399 | __le16 seq_ctrl; // more endians! | 399 | __le16 seq_ctrl; // more endians! |
400 | u8 addr4[MACADRR_BYTE_LEN]; | 400 | u8 addr4[MACADRR_BYTE_LEN]; |
401 | __le16 qos_ctrl; | 401 | __le16 qos_ctrl; |
402 | } __attribute__ ((packed)); | 402 | } __packed; |
403 | 403 | ||
404 | struct machdr30 { | 404 | struct machdr30 { |
405 | __le16 frame_ctl; | 405 | __le16 frame_ctl; |
@@ -409,7 +409,7 @@ struct machdr30 { | |||
409 | u8 addr3[MACADRR_BYTE_LEN]; | 409 | u8 addr3[MACADRR_BYTE_LEN]; |
410 | __le16 seq_ctrl; // more endians! | 410 | __le16 seq_ctrl; // more endians! |
411 | u8 addr4[MACADRR_BYTE_LEN]; | 411 | u8 addr4[MACADRR_BYTE_LEN]; |
412 | } __attribute__ ((packed)); | 412 | } __packed; |
413 | 413 | ||
414 | struct machdr26 { | 414 | struct machdr26 { |
415 | __le16 frame_ctl; | 415 | __le16 frame_ctl; |
@@ -419,7 +419,7 @@ struct machdr26 { | |||
419 | u8 addr3[MACADRR_BYTE_LEN]; | 419 | u8 addr3[MACADRR_BYTE_LEN]; |
420 | __le16 seq_ctrl; // more endians! | 420 | __le16 seq_ctrl; // more endians! |
421 | __le16 qos_ctrl; | 421 | __le16 qos_ctrl; |
422 | } __attribute__ ((packed)); | 422 | } __packed; |
423 | 423 | ||
424 | struct machdr24 { | 424 | struct machdr24 { |
425 | __le16 frame_ctl; | 425 | __le16 frame_ctl; |
@@ -428,20 +428,20 @@ struct machdr24 { | |||
428 | u8 addr2[MACADRR_BYTE_LEN]; | 428 | u8 addr2[MACADRR_BYTE_LEN]; |
429 | u8 addr3[MACADRR_BYTE_LEN]; | 429 | u8 addr3[MACADRR_BYTE_LEN]; |
430 | __le16 seq_ctrl; // more endians! | 430 | __le16 seq_ctrl; // more endians! |
431 | } __attribute__ ((packed)); | 431 | } __packed; |
432 | 432 | ||
433 | // TX TFD with 32 byte MAC Header | 433 | // TX TFD with 32 byte MAC Header |
434 | struct tx_tfd_32 { | 434 | struct tx_tfd_32 { |
435 | struct machdr32 mchdr; // 32 | 435 | struct machdr32 mchdr; // 32 |
436 | __le32 uivplaceholder[2]; // 8 | 436 | __le32 uivplaceholder[2]; // 8 |
437 | } __attribute__ ((packed)); | 437 | } __packed; |
438 | 438 | ||
439 | // TX TFD with 30 byte MAC Header | 439 | // TX TFD with 30 byte MAC Header |
440 | struct tx_tfd_30 { | 440 | struct tx_tfd_30 { |
441 | struct machdr30 mchdr; // 30 | 441 | struct machdr30 mchdr; // 30 |
442 | u8 reserved[2]; // 2 | 442 | u8 reserved[2]; // 2 |
443 | __le32 uivplaceholder[2]; // 8 | 443 | __le32 uivplaceholder[2]; // 8 |
444 | } __attribute__ ((packed)); | 444 | } __packed; |
445 | 445 | ||
446 | // tx tfd with 26 byte mac header | 446 | // tx tfd with 26 byte mac header |
447 | struct tx_tfd_26 { | 447 | struct tx_tfd_26 { |
@@ -449,14 +449,14 @@ struct tx_tfd_26 { | |||
449 | u8 reserved1[2]; // 2 | 449 | u8 reserved1[2]; // 2 |
450 | __le32 uivplaceholder[2]; // 8 | 450 | __le32 uivplaceholder[2]; // 8 |
451 | u8 reserved2[4]; // 4 | 451 | u8 reserved2[4]; // 4 |
452 | } __attribute__ ((packed)); | 452 | } __packed; |
453 | 453 | ||
454 | // tx tfd with 24 byte mac header | 454 | // tx tfd with 24 byte mac header |
455 | struct tx_tfd_24 { | 455 | struct tx_tfd_24 { |
456 | struct machdr24 mchdr; // 24 | 456 | struct machdr24 mchdr; // 24 |
457 | __le32 uivplaceholder[2]; // 8 | 457 | __le32 uivplaceholder[2]; // 8 |
458 | u8 reserved[8]; // 8 | 458 | u8 reserved[8]; // 8 |
459 | } __attribute__ ((packed)); | 459 | } __packed; |
460 | 460 | ||
461 | #define DCT_WEP_KEY_FIELD_LENGTH 16 | 461 | #define DCT_WEP_KEY_FIELD_LENGTH 16 |
462 | 462 | ||
@@ -465,7 +465,7 @@ struct tfd_command { | |||
465 | u8 length; | 465 | u8 length; |
466 | __le16 reserved; | 466 | __le16 reserved; |
467 | u8 payload[0]; | 467 | u8 payload[0]; |
468 | } __attribute__ ((packed)); | 468 | } __packed; |
469 | 469 | ||
470 | struct tfd_data { | 470 | struct tfd_data { |
471 | /* Header */ | 471 | /* Header */ |
@@ -504,14 +504,14 @@ struct tfd_data { | |||
504 | __le32 num_chunks; | 504 | __le32 num_chunks; |
505 | __le32 chunk_ptr[NUM_TFD_CHUNKS]; | 505 | __le32 chunk_ptr[NUM_TFD_CHUNKS]; |
506 | __le16 chunk_len[NUM_TFD_CHUNKS]; | 506 | __le16 chunk_len[NUM_TFD_CHUNKS]; |
507 | } __attribute__ ((packed)); | 507 | } __packed; |
508 | 508 | ||
509 | struct txrx_control_flags { | 509 | struct txrx_control_flags { |
510 | u8 message_type; | 510 | u8 message_type; |
511 | u8 rx_seq_num; | 511 | u8 rx_seq_num; |
512 | u8 control_bits; | 512 | u8 control_bits; |
513 | u8 reserved; | 513 | u8 reserved; |
514 | } __attribute__ ((packed)); | 514 | } __packed; |
515 | 515 | ||
516 | #define TFD_SIZE 128 | 516 | #define TFD_SIZE 128 |
517 | #define TFD_CMD_IMMEDIATE_PAYLOAD_LENGTH (TFD_SIZE - sizeof(struct txrx_control_flags)) | 517 | #define TFD_CMD_IMMEDIATE_PAYLOAD_LENGTH (TFD_SIZE - sizeof(struct txrx_control_flags)) |
@@ -523,7 +523,7 @@ struct tfd_frame { | |||
523 | struct tfd_command cmd; | 523 | struct tfd_command cmd; |
524 | u8 raw[TFD_CMD_IMMEDIATE_PAYLOAD_LENGTH]; | 524 | u8 raw[TFD_CMD_IMMEDIATE_PAYLOAD_LENGTH]; |
525 | } u; | 525 | } u; |
526 | } __attribute__ ((packed)); | 526 | } __packed; |
527 | 527 | ||
528 | typedef void destructor_func(const void *); | 528 | typedef void destructor_func(const void *); |
529 | 529 | ||
@@ -559,7 +559,7 @@ struct rate_histogram { | |||
559 | __le32 b[SUP_RATE_11B_MAX_NUM_CHANNELS]; | 559 | __le32 b[SUP_RATE_11B_MAX_NUM_CHANNELS]; |
560 | __le32 g[SUP_RATE_11G_MAX_NUM_CHANNELS]; | 560 | __le32 g[SUP_RATE_11G_MAX_NUM_CHANNELS]; |
561 | } failed; | 561 | } failed; |
562 | } __attribute__ ((packed)); | 562 | } __packed; |
563 | 563 | ||
564 | /* statistics command response */ | 564 | /* statistics command response */ |
565 | struct ipw_cmd_stats { | 565 | struct ipw_cmd_stats { |
@@ -586,13 +586,13 @@ struct ipw_cmd_stats { | |||
586 | __le16 rx_autodetec_no_ofdm; | 586 | __le16 rx_autodetec_no_ofdm; |
587 | __le16 rx_autodetec_no_barker; | 587 | __le16 rx_autodetec_no_barker; |
588 | __le16 reserved; | 588 | __le16 reserved; |
589 | } __attribute__ ((packed)); | 589 | } __packed; |
590 | 590 | ||
591 | struct notif_channel_result { | 591 | struct notif_channel_result { |
592 | u8 channel_num; | 592 | u8 channel_num; |
593 | struct ipw_cmd_stats stats; | 593 | struct ipw_cmd_stats stats; |
594 | u8 uReserved; | 594 | u8 uReserved; |
595 | } __attribute__ ((packed)); | 595 | } __packed; |
596 | 596 | ||
597 | #define SCAN_COMPLETED_STATUS_COMPLETE 1 | 597 | #define SCAN_COMPLETED_STATUS_COMPLETE 1 |
598 | #define SCAN_COMPLETED_STATUS_ABORTED 2 | 598 | #define SCAN_COMPLETED_STATUS_ABORTED 2 |
@@ -602,24 +602,24 @@ struct notif_scan_complete { | |||
602 | u8 num_channels; | 602 | u8 num_channels; |
603 | u8 status; | 603 | u8 status; |
604 | u8 reserved; | 604 | u8 reserved; |
605 | } __attribute__ ((packed)); | 605 | } __packed; |
606 | 606 | ||
607 | struct notif_frag_length { | 607 | struct notif_frag_length { |
608 | __le16 frag_length; | 608 | __le16 frag_length; |
609 | __le16 reserved; | 609 | __le16 reserved; |
610 | } __attribute__ ((packed)); | 610 | } __packed; |
611 | 611 | ||
612 | struct notif_beacon_state { | 612 | struct notif_beacon_state { |
613 | __le32 state; | 613 | __le32 state; |
614 | __le32 number; | 614 | __le32 number; |
615 | } __attribute__ ((packed)); | 615 | } __packed; |
616 | 616 | ||
617 | struct notif_tgi_tx_key { | 617 | struct notif_tgi_tx_key { |
618 | u8 key_state; | 618 | u8 key_state; |
619 | u8 security_type; | 619 | u8 security_type; |
620 | u8 station_index; | 620 | u8 station_index; |
621 | u8 reserved; | 621 | u8 reserved; |
622 | } __attribute__ ((packed)); | 622 | } __packed; |
623 | 623 | ||
624 | #define SILENCE_OVER_THRESH (1) | 624 | #define SILENCE_OVER_THRESH (1) |
625 | #define SILENCE_UNDER_THRESH (2) | 625 | #define SILENCE_UNDER_THRESH (2) |
@@ -631,25 +631,25 @@ struct notif_link_deterioration { | |||
631 | struct rate_histogram histogram; | 631 | struct rate_histogram histogram; |
632 | u8 silence_notification_type; /* SILENCE_OVER/UNDER_THRESH */ | 632 | u8 silence_notification_type; /* SILENCE_OVER/UNDER_THRESH */ |
633 | __le16 silence_count; | 633 | __le16 silence_count; |
634 | } __attribute__ ((packed)); | 634 | } __packed; |
635 | 635 | ||
636 | struct notif_association { | 636 | struct notif_association { |
637 | u8 state; | 637 | u8 state; |
638 | } __attribute__ ((packed)); | 638 | } __packed; |
639 | 639 | ||
640 | struct notif_authenticate { | 640 | struct notif_authenticate { |
641 | u8 state; | 641 | u8 state; |
642 | struct machdr24 addr; | 642 | struct machdr24 addr; |
643 | __le16 status; | 643 | __le16 status; |
644 | } __attribute__ ((packed)); | 644 | } __packed; |
645 | 645 | ||
646 | struct notif_calibration { | 646 | struct notif_calibration { |
647 | u8 data[104]; | 647 | u8 data[104]; |
648 | } __attribute__ ((packed)); | 648 | } __packed; |
649 | 649 | ||
650 | struct notif_noise { | 650 | struct notif_noise { |
651 | __le32 value; | 651 | __le32 value; |
652 | } __attribute__ ((packed)); | 652 | } __packed; |
653 | 653 | ||
654 | struct ipw_rx_notification { | 654 | struct ipw_rx_notification { |
655 | u8 reserved[8]; | 655 | u8 reserved[8]; |
@@ -669,7 +669,7 @@ struct ipw_rx_notification { | |||
669 | struct notif_noise noise; | 669 | struct notif_noise noise; |
670 | u8 raw[0]; | 670 | u8 raw[0]; |
671 | } u; | 671 | } u; |
672 | } __attribute__ ((packed)); | 672 | } __packed; |
673 | 673 | ||
674 | struct ipw_rx_frame { | 674 | struct ipw_rx_frame { |
675 | __le32 reserved1; | 675 | __le32 reserved1; |
@@ -692,14 +692,14 @@ struct ipw_rx_frame { | |||
692 | u8 rtscts_seen; // 0x1 RTS seen ; 0x2 CTS seen | 692 | u8 rtscts_seen; // 0x1 RTS seen ; 0x2 CTS seen |
693 | __le16 length; | 693 | __le16 length; |
694 | u8 data[0]; | 694 | u8 data[0]; |
695 | } __attribute__ ((packed)); | 695 | } __packed; |
696 | 696 | ||
697 | struct ipw_rx_header { | 697 | struct ipw_rx_header { |
698 | u8 message_type; | 698 | u8 message_type; |
699 | u8 rx_seq_num; | 699 | u8 rx_seq_num; |
700 | u8 control_bits; | 700 | u8 control_bits; |
701 | u8 reserved; | 701 | u8 reserved; |
702 | } __attribute__ ((packed)); | 702 | } __packed; |
703 | 703 | ||
704 | struct ipw_rx_packet { | 704 | struct ipw_rx_packet { |
705 | struct ipw_rx_header header; | 705 | struct ipw_rx_header header; |
@@ -707,7 +707,7 @@ struct ipw_rx_packet { | |||
707 | struct ipw_rx_frame frame; | 707 | struct ipw_rx_frame frame; |
708 | struct ipw_rx_notification notification; | 708 | struct ipw_rx_notification notification; |
709 | } u; | 709 | } u; |
710 | } __attribute__ ((packed)); | 710 | } __packed; |
711 | 711 | ||
712 | #define IPW_RX_NOTIFICATION_SIZE sizeof(struct ipw_rx_header) + 12 | 712 | #define IPW_RX_NOTIFICATION_SIZE sizeof(struct ipw_rx_header) + 12 |
713 | #define IPW_RX_FRAME_SIZE (unsigned int)(sizeof(struct ipw_rx_header) + \ | 713 | #define IPW_RX_FRAME_SIZE (unsigned int)(sizeof(struct ipw_rx_header) + \ |
@@ -717,7 +717,7 @@ struct ipw_rx_mem_buffer { | |||
717 | dma_addr_t dma_addr; | 717 | dma_addr_t dma_addr; |
718 | struct sk_buff *skb; | 718 | struct sk_buff *skb; |
719 | struct list_head list; | 719 | struct list_head list; |
720 | }; /* Not transferred over network, so not __attribute__ ((packed)) */ | 720 | }; /* Not transferred over network, so not __packed */ |
721 | 721 | ||
722 | struct ipw_rx_queue { | 722 | struct ipw_rx_queue { |
723 | struct ipw_rx_mem_buffer pool[RX_QUEUE_SIZE + RX_FREE_BUFFERS]; | 723 | struct ipw_rx_mem_buffer pool[RX_QUEUE_SIZE + RX_FREE_BUFFERS]; |
@@ -730,7 +730,7 @@ struct ipw_rx_queue { | |||
730 | struct list_head rx_free; /* Own an SKBs */ | 730 | struct list_head rx_free; /* Own an SKBs */ |
731 | struct list_head rx_used; /* No SKB allocated */ | 731 | struct list_head rx_used; /* No SKB allocated */ |
732 | spinlock_t lock; | 732 | spinlock_t lock; |
733 | }; /* Not transferred over network, so not __attribute__ ((packed)) */ | 733 | }; /* Not transferred over network, so not __packed */ |
734 | 734 | ||
735 | struct alive_command_responce { | 735 | struct alive_command_responce { |
736 | u8 alive_command; | 736 | u8 alive_command; |
@@ -745,21 +745,21 @@ struct alive_command_responce { | |||
745 | __le16 reserved4; | 745 | __le16 reserved4; |
746 | u8 time_stamp[5]; /* month, day, year, hours, minutes */ | 746 | u8 time_stamp[5]; /* month, day, year, hours, minutes */ |
747 | u8 ucode_valid; | 747 | u8 ucode_valid; |
748 | } __attribute__ ((packed)); | 748 | } __packed; |
749 | 749 | ||
750 | #define IPW_MAX_RATES 12 | 750 | #define IPW_MAX_RATES 12 |
751 | 751 | ||
752 | struct ipw_rates { | 752 | struct ipw_rates { |
753 | u8 num_rates; | 753 | u8 num_rates; |
754 | u8 rates[IPW_MAX_RATES]; | 754 | u8 rates[IPW_MAX_RATES]; |
755 | } __attribute__ ((packed)); | 755 | } __packed; |
756 | 756 | ||
757 | struct command_block { | 757 | struct command_block { |
758 | unsigned int control; | 758 | unsigned int control; |
759 | u32 source_addr; | 759 | u32 source_addr; |
760 | u32 dest_addr; | 760 | u32 dest_addr; |
761 | unsigned int status; | 761 | unsigned int status; |
762 | } __attribute__ ((packed)); | 762 | } __packed; |
763 | 763 | ||
764 | #define CB_NUMBER_OF_ELEMENTS_SMALL 64 | 764 | #define CB_NUMBER_OF_ELEMENTS_SMALL 64 |
765 | struct fw_image_desc { | 765 | struct fw_image_desc { |
@@ -792,7 +792,7 @@ struct ipw_sys_config { | |||
792 | u8 accept_all_mgmt_frames; | 792 | u8 accept_all_mgmt_frames; |
793 | u8 pass_noise_stats_to_host; | 793 | u8 pass_noise_stats_to_host; |
794 | u8 reserved3; | 794 | u8 reserved3; |
795 | } __attribute__ ((packed)); | 795 | } __packed; |
796 | 796 | ||
797 | struct ipw_multicast_addr { | 797 | struct ipw_multicast_addr { |
798 | u8 num_of_multicast_addresses; | 798 | u8 num_of_multicast_addresses; |
@@ -801,7 +801,7 @@ struct ipw_multicast_addr { | |||
801 | u8 mac2[6]; | 801 | u8 mac2[6]; |
802 | u8 mac3[6]; | 802 | u8 mac3[6]; |
803 | u8 mac4[6]; | 803 | u8 mac4[6]; |
804 | } __attribute__ ((packed)); | 804 | } __packed; |
805 | 805 | ||
806 | #define DCW_WEP_KEY_INDEX_MASK 0x03 /* bits [0:1] */ | 806 | #define DCW_WEP_KEY_INDEX_MASK 0x03 /* bits [0:1] */ |
807 | #define DCW_WEP_KEY_SEC_TYPE_MASK 0x30 /* bits [4:5] */ | 807 | #define DCW_WEP_KEY_SEC_TYPE_MASK 0x30 /* bits [4:5] */ |
@@ -822,7 +822,7 @@ struct ipw_wep_key { | |||
822 | u8 key_index; | 822 | u8 key_index; |
823 | u8 key_size; | 823 | u8 key_size; |
824 | u8 key[16]; | 824 | u8 key[16]; |
825 | } __attribute__ ((packed)); | 825 | } __packed; |
826 | 826 | ||
827 | struct ipw_tgi_tx_key { | 827 | struct ipw_tgi_tx_key { |
828 | u8 key_id; | 828 | u8 key_id; |
@@ -831,7 +831,7 @@ struct ipw_tgi_tx_key { | |||
831 | u8 flags; | 831 | u8 flags; |
832 | u8 key[16]; | 832 | u8 key[16]; |
833 | __le32 tx_counter[2]; | 833 | __le32 tx_counter[2]; |
834 | } __attribute__ ((packed)); | 834 | } __packed; |
835 | 835 | ||
836 | #define IPW_SCAN_CHANNELS 54 | 836 | #define IPW_SCAN_CHANNELS 54 |
837 | 837 | ||
@@ -840,7 +840,7 @@ struct ipw_scan_request { | |||
840 | __le16 dwell_time; | 840 | __le16 dwell_time; |
841 | u8 channels_list[IPW_SCAN_CHANNELS]; | 841 | u8 channels_list[IPW_SCAN_CHANNELS]; |
842 | u8 channels_reserved[3]; | 842 | u8 channels_reserved[3]; |
843 | } __attribute__ ((packed)); | 843 | } __packed; |
844 | 844 | ||
845 | enum { | 845 | enum { |
846 | IPW_SCAN_PASSIVE_TILL_FIRST_BEACON_SCAN = 0, | 846 | IPW_SCAN_PASSIVE_TILL_FIRST_BEACON_SCAN = 0, |
@@ -857,7 +857,7 @@ struct ipw_scan_request_ext { | |||
857 | u8 scan_type[IPW_SCAN_CHANNELS / 2]; | 857 | u8 scan_type[IPW_SCAN_CHANNELS / 2]; |
858 | u8 reserved; | 858 | u8 reserved; |
859 | __le16 dwell_time[IPW_SCAN_TYPES]; | 859 | __le16 dwell_time[IPW_SCAN_TYPES]; |
860 | } __attribute__ ((packed)); | 860 | } __packed; |
861 | 861 | ||
862 | static inline u8 ipw_get_scan_type(struct ipw_scan_request_ext *scan, u8 index) | 862 | static inline u8 ipw_get_scan_type(struct ipw_scan_request_ext *scan, u8 index) |
863 | { | 863 | { |
@@ -902,7 +902,7 @@ struct ipw_associate { | |||
902 | u8 smr; | 902 | u8 smr; |
903 | u8 reserved1; | 903 | u8 reserved1; |
904 | __le16 reserved2; | 904 | __le16 reserved2; |
905 | } __attribute__ ((packed)); | 905 | } __packed; |
906 | 906 | ||
907 | struct ipw_supported_rates { | 907 | struct ipw_supported_rates { |
908 | u8 ieee_mode; | 908 | u8 ieee_mode; |
@@ -910,36 +910,36 @@ struct ipw_supported_rates { | |||
910 | u8 purpose; | 910 | u8 purpose; |
911 | u8 reserved; | 911 | u8 reserved; |
912 | u8 supported_rates[IPW_MAX_RATES]; | 912 | u8 supported_rates[IPW_MAX_RATES]; |
913 | } __attribute__ ((packed)); | 913 | } __packed; |
914 | 914 | ||
915 | struct ipw_rts_threshold { | 915 | struct ipw_rts_threshold { |
916 | __le16 rts_threshold; | 916 | __le16 rts_threshold; |
917 | __le16 reserved; | 917 | __le16 reserved; |
918 | } __attribute__ ((packed)); | 918 | } __packed; |
919 | 919 | ||
920 | struct ipw_frag_threshold { | 920 | struct ipw_frag_threshold { |
921 | __le16 frag_threshold; | 921 | __le16 frag_threshold; |
922 | __le16 reserved; | 922 | __le16 reserved; |
923 | } __attribute__ ((packed)); | 923 | } __packed; |
924 | 924 | ||
925 | struct ipw_retry_limit { | 925 | struct ipw_retry_limit { |
926 | u8 short_retry_limit; | 926 | u8 short_retry_limit; |
927 | u8 long_retry_limit; | 927 | u8 long_retry_limit; |
928 | __le16 reserved; | 928 | __le16 reserved; |
929 | } __attribute__ ((packed)); | 929 | } __packed; |
930 | 930 | ||
931 | struct ipw_dino_config { | 931 | struct ipw_dino_config { |
932 | __le32 dino_config_addr; | 932 | __le32 dino_config_addr; |
933 | __le16 dino_config_size; | 933 | __le16 dino_config_size; |
934 | u8 dino_response; | 934 | u8 dino_response; |
935 | u8 reserved; | 935 | u8 reserved; |
936 | } __attribute__ ((packed)); | 936 | } __packed; |
937 | 937 | ||
938 | struct ipw_aironet_info { | 938 | struct ipw_aironet_info { |
939 | u8 id; | 939 | u8 id; |
940 | u8 length; | 940 | u8 length; |
941 | __le16 reserved; | 941 | __le16 reserved; |
942 | } __attribute__ ((packed)); | 942 | } __packed; |
943 | 943 | ||
944 | struct ipw_rx_key { | 944 | struct ipw_rx_key { |
945 | u8 station_index; | 945 | u8 station_index; |
@@ -950,25 +950,25 @@ struct ipw_rx_key { | |||
950 | u8 station_address[6]; | 950 | u8 station_address[6]; |
951 | u8 key_index; | 951 | u8 key_index; |
952 | u8 reserved; | 952 | u8 reserved; |
953 | } __attribute__ ((packed)); | 953 | } __packed; |
954 | 954 | ||
955 | struct ipw_country_channel_info { | 955 | struct ipw_country_channel_info { |
956 | u8 first_channel; | 956 | u8 first_channel; |
957 | u8 no_channels; | 957 | u8 no_channels; |
958 | s8 max_tx_power; | 958 | s8 max_tx_power; |
959 | } __attribute__ ((packed)); | 959 | } __packed; |
960 | 960 | ||
961 | struct ipw_country_info { | 961 | struct ipw_country_info { |
962 | u8 id; | 962 | u8 id; |
963 | u8 length; | 963 | u8 length; |
964 | u8 country_str[3]; | 964 | u8 country_str[3]; |
965 | struct ipw_country_channel_info groups[7]; | 965 | struct ipw_country_channel_info groups[7]; |
966 | } __attribute__ ((packed)); | 966 | } __packed; |
967 | 967 | ||
968 | struct ipw_channel_tx_power { | 968 | struct ipw_channel_tx_power { |
969 | u8 channel_number; | 969 | u8 channel_number; |
970 | s8 tx_power; | 970 | s8 tx_power; |
971 | } __attribute__ ((packed)); | 971 | } __packed; |
972 | 972 | ||
973 | #define SCAN_ASSOCIATED_INTERVAL (HZ) | 973 | #define SCAN_ASSOCIATED_INTERVAL (HZ) |
974 | #define SCAN_INTERVAL (HZ / 10) | 974 | #define SCAN_INTERVAL (HZ / 10) |
@@ -979,18 +979,18 @@ struct ipw_tx_power { | |||
979 | u8 num_channels; | 979 | u8 num_channels; |
980 | u8 ieee_mode; | 980 | u8 ieee_mode; |
981 | struct ipw_channel_tx_power channels_tx_power[MAX_A_CHANNELS]; | 981 | struct ipw_channel_tx_power channels_tx_power[MAX_A_CHANNELS]; |
982 | } __attribute__ ((packed)); | 982 | } __packed; |
983 | 983 | ||
984 | struct ipw_rsn_capabilities { | 984 | struct ipw_rsn_capabilities { |
985 | u8 id; | 985 | u8 id; |
986 | u8 length; | 986 | u8 length; |
987 | __le16 version; | 987 | __le16 version; |
988 | } __attribute__ ((packed)); | 988 | } __packed; |
989 | 989 | ||
990 | struct ipw_sensitivity_calib { | 990 | struct ipw_sensitivity_calib { |
991 | __le16 beacon_rssi_raw; | 991 | __le16 beacon_rssi_raw; |
992 | __le16 reserved; | 992 | __le16 reserved; |
993 | } __attribute__ ((packed)); | 993 | } __packed; |
994 | 994 | ||
995 | /** | 995 | /** |
996 | * Host command structure. | 996 | * Host command structure. |
@@ -1019,7 +1019,7 @@ struct ipw_cmd { /* XXX */ | |||
1019 | * nParams=(len+3)/4+status_len | 1019 | * nParams=(len+3)/4+status_len |
1020 | */ | 1020 | */ |
1021 | u32 param[0]; | 1021 | u32 param[0]; |
1022 | } __attribute__ ((packed)); | 1022 | } __packed; |
1023 | 1023 | ||
1024 | #define STATUS_HCMD_ACTIVE (1<<0) /**< host command in progress */ | 1024 | #define STATUS_HCMD_ACTIVE (1<<0) /**< host command in progress */ |
1025 | 1025 | ||
@@ -1114,7 +1114,7 @@ struct ipw_event { /* XXX */ | |||
1114 | u32 event; | 1114 | u32 event; |
1115 | u32 time; | 1115 | u32 time; |
1116 | u32 data; | 1116 | u32 data; |
1117 | } __attribute__ ((packed)); | 1117 | } __packed; |
1118 | 1118 | ||
1119 | struct ipw_fw_error { /* XXX */ | 1119 | struct ipw_fw_error { /* XXX */ |
1120 | unsigned long jiffies; | 1120 | unsigned long jiffies; |
@@ -1125,7 +1125,7 @@ struct ipw_fw_error { /* XXX */ | |||
1125 | struct ipw_error_elem *elem; | 1125 | struct ipw_error_elem *elem; |
1126 | struct ipw_event *log; | 1126 | struct ipw_event *log; |
1127 | u8 payload[0]; | 1127 | u8 payload[0]; |
1128 | } __attribute__ ((packed)); | 1128 | } __packed; |
1129 | 1129 | ||
1130 | #ifdef CONFIG_IPW2200_PROMISCUOUS | 1130 | #ifdef CONFIG_IPW2200_PROMISCUOUS |
1131 | 1131 | ||
@@ -1170,7 +1170,7 @@ struct ipw_rt_hdr { | |||
1170 | s8 rt_dbmnoise; | 1170 | s8 rt_dbmnoise; |
1171 | u8 rt_antenna; /* antenna number */ | 1171 | u8 rt_antenna; /* antenna number */ |
1172 | u8 payload[0]; /* payload... */ | 1172 | u8 payload[0]; /* payload... */ |
1173 | } __attribute__ ((packed)); | 1173 | } __packed; |
1174 | #endif | 1174 | #endif |
1175 | 1175 | ||
1176 | struct ipw_priv { | 1176 | struct ipw_priv { |
@@ -1957,7 +1957,7 @@ enum { | |||
1957 | struct ipw_fixed_rate { | 1957 | struct ipw_fixed_rate { |
1958 | __le16 tx_rates; | 1958 | __le16 tx_rates; |
1959 | __le16 reserved; | 1959 | __le16 reserved; |
1960 | } __attribute__ ((packed)); | 1960 | } __packed; |
1961 | 1961 | ||
1962 | #define IPW_INDIRECT_ADDR_MASK (~0x3ul) | 1962 | #define IPW_INDIRECT_ADDR_MASK (~0x3ul) |
1963 | 1963 | ||
@@ -1966,14 +1966,14 @@ struct host_cmd { | |||
1966 | u8 len; | 1966 | u8 len; |
1967 | u16 reserved; | 1967 | u16 reserved; |
1968 | u32 *param; | 1968 | u32 *param; |
1969 | } __attribute__ ((packed)); /* XXX */ | 1969 | } __packed; /* XXX */ |
1970 | 1970 | ||
1971 | struct cmdlog_host_cmd { | 1971 | struct cmdlog_host_cmd { |
1972 | u8 cmd; | 1972 | u8 cmd; |
1973 | u8 len; | 1973 | u8 len; |
1974 | __le16 reserved; | 1974 | __le16 reserved; |
1975 | char param[124]; | 1975 | char param[124]; |
1976 | } __attribute__ ((packed)); | 1976 | } __packed; |
1977 | 1977 | ||
1978 | struct ipw_cmd_log { | 1978 | struct ipw_cmd_log { |
1979 | unsigned long jiffies; | 1979 | unsigned long jiffies; |
diff --git a/drivers/net/wireless/ipw2x00/libipw.h b/drivers/net/wireless/ipw2x00/libipw.h index 7b9539a1b54a..70f5586d96bd 100644 --- a/drivers/net/wireless/ipw2x00/libipw.h +++ b/drivers/net/wireless/ipw2x00/libipw.h | |||
@@ -154,7 +154,7 @@ struct libipw_snap_hdr { | |||
154 | u8 ctrl; /* always 0x03 */ | 154 | u8 ctrl; /* always 0x03 */ |
155 | u8 oui[P80211_OUI_LEN]; /* organizational universal id */ | 155 | u8 oui[P80211_OUI_LEN]; /* organizational universal id */ |
156 | 156 | ||
157 | } __attribute__ ((packed)); | 157 | } __packed; |
158 | 158 | ||
159 | #define SNAP_SIZE sizeof(struct libipw_snap_hdr) | 159 | #define SNAP_SIZE sizeof(struct libipw_snap_hdr) |
160 | 160 | ||
@@ -323,7 +323,7 @@ struct libipw_security { | |||
323 | u8 keys[WEP_KEYS][SCM_KEY_LEN]; | 323 | u8 keys[WEP_KEYS][SCM_KEY_LEN]; |
324 | u8 level; | 324 | u8 level; |
325 | u16 flags; | 325 | u16 flags; |
326 | } __attribute__ ((packed)); | 326 | } __packed; |
327 | 327 | ||
328 | /* | 328 | /* |
329 | 329 | ||
@@ -347,7 +347,7 @@ struct libipw_hdr_1addr { | |||
347 | __le16 duration_id; | 347 | __le16 duration_id; |
348 | u8 addr1[ETH_ALEN]; | 348 | u8 addr1[ETH_ALEN]; |
349 | u8 payload[0]; | 349 | u8 payload[0]; |
350 | } __attribute__ ((packed)); | 350 | } __packed; |
351 | 351 | ||
352 | struct libipw_hdr_2addr { | 352 | struct libipw_hdr_2addr { |
353 | __le16 frame_ctl; | 353 | __le16 frame_ctl; |
@@ -355,7 +355,7 @@ struct libipw_hdr_2addr { | |||
355 | u8 addr1[ETH_ALEN]; | 355 | u8 addr1[ETH_ALEN]; |
356 | u8 addr2[ETH_ALEN]; | 356 | u8 addr2[ETH_ALEN]; |
357 | u8 payload[0]; | 357 | u8 payload[0]; |
358 | } __attribute__ ((packed)); | 358 | } __packed; |
359 | 359 | ||
360 | struct libipw_hdr_3addr { | 360 | struct libipw_hdr_3addr { |
361 | __le16 frame_ctl; | 361 | __le16 frame_ctl; |
@@ -365,7 +365,7 @@ struct libipw_hdr_3addr { | |||
365 | u8 addr3[ETH_ALEN]; | 365 | u8 addr3[ETH_ALEN]; |
366 | __le16 seq_ctl; | 366 | __le16 seq_ctl; |
367 | u8 payload[0]; | 367 | u8 payload[0]; |
368 | } __attribute__ ((packed)); | 368 | } __packed; |
369 | 369 | ||
370 | struct libipw_hdr_4addr { | 370 | struct libipw_hdr_4addr { |
371 | __le16 frame_ctl; | 371 | __le16 frame_ctl; |
@@ -376,7 +376,7 @@ struct libipw_hdr_4addr { | |||
376 | __le16 seq_ctl; | 376 | __le16 seq_ctl; |
377 | u8 addr4[ETH_ALEN]; | 377 | u8 addr4[ETH_ALEN]; |
378 | u8 payload[0]; | 378 | u8 payload[0]; |
379 | } __attribute__ ((packed)); | 379 | } __packed; |
380 | 380 | ||
381 | struct libipw_hdr_3addrqos { | 381 | struct libipw_hdr_3addrqos { |
382 | __le16 frame_ctl; | 382 | __le16 frame_ctl; |
@@ -387,13 +387,13 @@ struct libipw_hdr_3addrqos { | |||
387 | __le16 seq_ctl; | 387 | __le16 seq_ctl; |
388 | u8 payload[0]; | 388 | u8 payload[0]; |
389 | __le16 qos_ctl; | 389 | __le16 qos_ctl; |
390 | } __attribute__ ((packed)); | 390 | } __packed; |
391 | 391 | ||
392 | struct libipw_info_element { | 392 | struct libipw_info_element { |
393 | u8 id; | 393 | u8 id; |
394 | u8 len; | 394 | u8 len; |
395 | u8 data[0]; | 395 | u8 data[0]; |
396 | } __attribute__ ((packed)); | 396 | } __packed; |
397 | 397 | ||
398 | /* | 398 | /* |
399 | * These are the data types that can make up management packets | 399 | * These are the data types that can make up management packets |
@@ -406,7 +406,7 @@ struct libipw_info_element { | |||
406 | u16 listen_interval; | 406 | u16 listen_interval; |
407 | struct { | 407 | struct { |
408 | u16 association_id:14, reserved:2; | 408 | u16 association_id:14, reserved:2; |
409 | } __attribute__ ((packed)); | 409 | } __packed; |
410 | u32 time_stamp[2]; | 410 | u32 time_stamp[2]; |
411 | u16 reason; | 411 | u16 reason; |
412 | u16 status; | 412 | u16 status; |
@@ -419,7 +419,7 @@ struct libipw_auth { | |||
419 | __le16 status; | 419 | __le16 status; |
420 | /* challenge */ | 420 | /* challenge */ |
421 | struct libipw_info_element info_element[0]; | 421 | struct libipw_info_element info_element[0]; |
422 | } __attribute__ ((packed)); | 422 | } __packed; |
423 | 423 | ||
424 | struct libipw_channel_switch { | 424 | struct libipw_channel_switch { |
425 | u8 id; | 425 | u8 id; |
@@ -427,7 +427,7 @@ struct libipw_channel_switch { | |||
427 | u8 mode; | 427 | u8 mode; |
428 | u8 channel; | 428 | u8 channel; |
429 | u8 count; | 429 | u8 count; |
430 | } __attribute__ ((packed)); | 430 | } __packed; |
431 | 431 | ||
432 | struct libipw_action { | 432 | struct libipw_action { |
433 | struct libipw_hdr_3addr header; | 433 | struct libipw_hdr_3addr header; |
@@ -441,12 +441,12 @@ struct libipw_action { | |||
441 | struct libipw_channel_switch channel_switch; | 441 | struct libipw_channel_switch channel_switch; |
442 | 442 | ||
443 | } format; | 443 | } format; |
444 | } __attribute__ ((packed)); | 444 | } __packed; |
445 | 445 | ||
446 | struct libipw_disassoc { | 446 | struct libipw_disassoc { |
447 | struct libipw_hdr_3addr header; | 447 | struct libipw_hdr_3addr header; |
448 | __le16 reason; | 448 | __le16 reason; |
449 | } __attribute__ ((packed)); | 449 | } __packed; |
450 | 450 | ||
451 | /* Alias deauth for disassoc */ | 451 | /* Alias deauth for disassoc */ |
452 | #define libipw_deauth libipw_disassoc | 452 | #define libipw_deauth libipw_disassoc |
@@ -455,7 +455,7 @@ struct libipw_probe_request { | |||
455 | struct libipw_hdr_3addr header; | 455 | struct libipw_hdr_3addr header; |
456 | /* SSID, supported rates */ | 456 | /* SSID, supported rates */ |
457 | struct libipw_info_element info_element[0]; | 457 | struct libipw_info_element info_element[0]; |
458 | } __attribute__ ((packed)); | 458 | } __packed; |
459 | 459 | ||
460 | struct libipw_probe_response { | 460 | struct libipw_probe_response { |
461 | struct libipw_hdr_3addr header; | 461 | struct libipw_hdr_3addr header; |
@@ -465,7 +465,7 @@ struct libipw_probe_response { | |||
465 | /* SSID, supported rates, FH params, DS params, | 465 | /* SSID, supported rates, FH params, DS params, |
466 | * CF params, IBSS params, TIM (if beacon), RSN */ | 466 | * CF params, IBSS params, TIM (if beacon), RSN */ |
467 | struct libipw_info_element info_element[0]; | 467 | struct libipw_info_element info_element[0]; |
468 | } __attribute__ ((packed)); | 468 | } __packed; |
469 | 469 | ||
470 | /* Alias beacon for probe_response */ | 470 | /* Alias beacon for probe_response */ |
471 | #define libipw_beacon libipw_probe_response | 471 | #define libipw_beacon libipw_probe_response |
@@ -476,7 +476,7 @@ struct libipw_assoc_request { | |||
476 | __le16 listen_interval; | 476 | __le16 listen_interval; |
477 | /* SSID, supported rates, RSN */ | 477 | /* SSID, supported rates, RSN */ |
478 | struct libipw_info_element info_element[0]; | 478 | struct libipw_info_element info_element[0]; |
479 | } __attribute__ ((packed)); | 479 | } __packed; |
480 | 480 | ||
481 | struct libipw_reassoc_request { | 481 | struct libipw_reassoc_request { |
482 | struct libipw_hdr_3addr header; | 482 | struct libipw_hdr_3addr header; |
@@ -484,7 +484,7 @@ struct libipw_reassoc_request { | |||
484 | __le16 listen_interval; | 484 | __le16 listen_interval; |
485 | u8 current_ap[ETH_ALEN]; | 485 | u8 current_ap[ETH_ALEN]; |
486 | struct libipw_info_element info_element[0]; | 486 | struct libipw_info_element info_element[0]; |
487 | } __attribute__ ((packed)); | 487 | } __packed; |
488 | 488 | ||
489 | struct libipw_assoc_response { | 489 | struct libipw_assoc_response { |
490 | struct libipw_hdr_3addr header; | 490 | struct libipw_hdr_3addr header; |
@@ -493,7 +493,7 @@ struct libipw_assoc_response { | |||
493 | __le16 aid; | 493 | __le16 aid; |
494 | /* supported rates */ | 494 | /* supported rates */ |
495 | struct libipw_info_element info_element[0]; | 495 | struct libipw_info_element info_element[0]; |
496 | } __attribute__ ((packed)); | 496 | } __packed; |
497 | 497 | ||
498 | struct libipw_txb { | 498 | struct libipw_txb { |
499 | u8 nr_frags; | 499 | u8 nr_frags; |
@@ -555,19 +555,19 @@ struct libipw_qos_information_element { | |||
555 | u8 qui_subtype; | 555 | u8 qui_subtype; |
556 | u8 version; | 556 | u8 version; |
557 | u8 ac_info; | 557 | u8 ac_info; |
558 | } __attribute__ ((packed)); | 558 | } __packed; |
559 | 559 | ||
560 | struct libipw_qos_ac_parameter { | 560 | struct libipw_qos_ac_parameter { |
561 | u8 aci_aifsn; | 561 | u8 aci_aifsn; |
562 | u8 ecw_min_max; | 562 | u8 ecw_min_max; |
563 | __le16 tx_op_limit; | 563 | __le16 tx_op_limit; |
564 | } __attribute__ ((packed)); | 564 | } __packed; |
565 | 565 | ||
566 | struct libipw_qos_parameter_info { | 566 | struct libipw_qos_parameter_info { |
567 | struct libipw_qos_information_element info_element; | 567 | struct libipw_qos_information_element info_element; |
568 | u8 reserved; | 568 | u8 reserved; |
569 | struct libipw_qos_ac_parameter ac_params_record[QOS_QUEUE_NUM]; | 569 | struct libipw_qos_ac_parameter ac_params_record[QOS_QUEUE_NUM]; |
570 | } __attribute__ ((packed)); | 570 | } __packed; |
571 | 571 | ||
572 | struct libipw_qos_parameters { | 572 | struct libipw_qos_parameters { |
573 | __le16 cw_min[QOS_QUEUE_NUM]; | 573 | __le16 cw_min[QOS_QUEUE_NUM]; |
@@ -575,7 +575,7 @@ struct libipw_qos_parameters { | |||
575 | u8 aifs[QOS_QUEUE_NUM]; | 575 | u8 aifs[QOS_QUEUE_NUM]; |
576 | u8 flag[QOS_QUEUE_NUM]; | 576 | u8 flag[QOS_QUEUE_NUM]; |
577 | __le16 tx_op_limit[QOS_QUEUE_NUM]; | 577 | __le16 tx_op_limit[QOS_QUEUE_NUM]; |
578 | } __attribute__ ((packed)); | 578 | } __packed; |
579 | 579 | ||
580 | struct libipw_qos_data { | 580 | struct libipw_qos_data { |
581 | struct libipw_qos_parameters parameters; | 581 | struct libipw_qos_parameters parameters; |
@@ -588,7 +588,7 @@ struct libipw_qos_data { | |||
588 | struct libipw_tim_parameters { | 588 | struct libipw_tim_parameters { |
589 | u8 tim_count; | 589 | u8 tim_count; |
590 | u8 tim_period; | 590 | u8 tim_period; |
591 | } __attribute__ ((packed)); | 591 | } __packed; |
592 | 592 | ||
593 | /*******************************************************/ | 593 | /*******************************************************/ |
594 | 594 | ||
@@ -606,7 +606,7 @@ struct libipw_basic_report { | |||
606 | __le64 start_time; | 606 | __le64 start_time; |
607 | __le16 duration; | 607 | __le16 duration; |
608 | u8 map; | 608 | u8 map; |
609 | } __attribute__ ((packed)); | 609 | } __packed; |
610 | 610 | ||
611 | enum { /* libipw_measurement_request.mode */ | 611 | enum { /* libipw_measurement_request.mode */ |
612 | /* Bit 0 is reserved */ | 612 | /* Bit 0 is reserved */ |
@@ -627,7 +627,7 @@ struct libipw_measurement_params { | |||
627 | u8 channel; | 627 | u8 channel; |
628 | __le64 start_time; | 628 | __le64 start_time; |
629 | __le16 duration; | 629 | __le16 duration; |
630 | } __attribute__ ((packed)); | 630 | } __packed; |
631 | 631 | ||
632 | struct libipw_measurement_request { | 632 | struct libipw_measurement_request { |
633 | struct libipw_info_element ie; | 633 | struct libipw_info_element ie; |
@@ -635,7 +635,7 @@ struct libipw_measurement_request { | |||
635 | u8 mode; | 635 | u8 mode; |
636 | u8 type; | 636 | u8 type; |
637 | struct libipw_measurement_params params[0]; | 637 | struct libipw_measurement_params params[0]; |
638 | } __attribute__ ((packed)); | 638 | } __packed; |
639 | 639 | ||
640 | struct libipw_measurement_report { | 640 | struct libipw_measurement_report { |
641 | struct libipw_info_element ie; | 641 | struct libipw_info_element ie; |
@@ -645,17 +645,17 @@ struct libipw_measurement_report { | |||
645 | union { | 645 | union { |
646 | struct libipw_basic_report basic[0]; | 646 | struct libipw_basic_report basic[0]; |
647 | } u; | 647 | } u; |
648 | } __attribute__ ((packed)); | 648 | } __packed; |
649 | 649 | ||
650 | struct libipw_tpc_report { | 650 | struct libipw_tpc_report { |
651 | u8 transmit_power; | 651 | u8 transmit_power; |
652 | u8 link_margin; | 652 | u8 link_margin; |
653 | } __attribute__ ((packed)); | 653 | } __packed; |
654 | 654 | ||
655 | struct libipw_channel_map { | 655 | struct libipw_channel_map { |
656 | u8 channel; | 656 | u8 channel; |
657 | u8 map; | 657 | u8 map; |
658 | } __attribute__ ((packed)); | 658 | } __packed; |
659 | 659 | ||
660 | struct libipw_ibss_dfs { | 660 | struct libipw_ibss_dfs { |
661 | struct libipw_info_element ie; | 661 | struct libipw_info_element ie; |
@@ -668,14 +668,14 @@ struct libipw_csa { | |||
668 | u8 mode; | 668 | u8 mode; |
669 | u8 channel; | 669 | u8 channel; |
670 | u8 count; | 670 | u8 count; |
671 | } __attribute__ ((packed)); | 671 | } __packed; |
672 | 672 | ||
673 | struct libipw_quiet { | 673 | struct libipw_quiet { |
674 | u8 count; | 674 | u8 count; |
675 | u8 period; | 675 | u8 period; |
676 | u8 duration; | 676 | u8 duration; |
677 | u8 offset; | 677 | u8 offset; |
678 | } __attribute__ ((packed)); | 678 | } __packed; |
679 | 679 | ||
680 | struct libipw_network { | 680 | struct libipw_network { |
681 | /* These entries are used to identify a unique network */ | 681 | /* These entries are used to identify a unique network */ |