diff options
Diffstat (limited to 'include/linux/wimax/i2400m.h')
-rw-r--r-- | include/linux/wimax/i2400m.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/include/linux/wimax/i2400m.h b/include/linux/wimax/i2400m.h index 686eeb2b9704..ad36e073a70c 100644 --- a/include/linux/wimax/i2400m.h +++ b/include/linux/wimax/i2400m.h | |||
@@ -207,6 +207,7 @@ enum i2400m_pt { | |||
207 | I2400M_PT_TRACE, /* For device debug */ | 207 | I2400M_PT_TRACE, /* For device debug */ |
208 | I2400M_PT_RESET_WARM, /* device reset */ | 208 | I2400M_PT_RESET_WARM, /* device reset */ |
209 | I2400M_PT_RESET_COLD, /* USB[transport] reset, like reconnect */ | 209 | I2400M_PT_RESET_COLD, /* USB[transport] reset, like reconnect */ |
210 | I2400M_PT_EDATA, /* Extended RX data */ | ||
210 | I2400M_PT_ILLEGAL | 211 | I2400M_PT_ILLEGAL |
211 | }; | 212 | }; |
212 | 213 | ||
@@ -221,6 +222,32 @@ struct i2400m_pl_data_hdr { | |||
221 | } __attribute__((packed)); | 222 | } __attribute__((packed)); |
222 | 223 | ||
223 | 224 | ||
225 | /* | ||
226 | * Payload for an extended data packet | ||
227 | * | ||
228 | * New in v1.4 | ||
229 | * | ||
230 | * @cs: the type of data in the packet, as defined per (802.16e | ||
231 | * T11.13.19.1). Currently only 2 (IPv4 packet) supported. | ||
232 | * | ||
233 | * This is prefixed to each and every INCOMING DATA packet. | ||
234 | */ | ||
235 | struct i2400m_pl_edata_hdr { | ||
236 | __le32 reorder; | ||
237 | __u8 cs; | ||
238 | __u8 reserved[11]; | ||
239 | } __attribute__((packed)); | ||
240 | |||
241 | enum i2400m_cs { | ||
242 | I2400M_CS_IPV4_0 = 0, | ||
243 | I2400M_CS_IPV4 = 2, | ||
244 | }; | ||
245 | |||
246 | enum i2400m_reorder { | ||
247 | I2400M_REORDER_NEEDED = 0x01, | ||
248 | }; | ||
249 | |||
250 | |||
224 | /* Misc constants */ | 251 | /* Misc constants */ |
225 | enum { | 252 | enum { |
226 | I2400M_PL_PAD = 16, /* Payload data size alignment */ | 253 | I2400M_PL_PAD = 16, /* Payload data size alignment */ |
@@ -382,6 +409,7 @@ enum i2400m_tlv { | |||
382 | I2400M_TLV_DEVICE_RESET_TYPE = 132, | 409 | I2400M_TLV_DEVICE_RESET_TYPE = 132, |
383 | I2400M_TLV_CONFIG_IDLE_PARAMETERS = 601, | 410 | I2400M_TLV_CONFIG_IDLE_PARAMETERS = 601, |
384 | I2400M_TLV_CONFIG_IDLE_TIMEOUT = 611, | 411 | I2400M_TLV_CONFIG_IDLE_TIMEOUT = 611, |
412 | I2400M_TLV_CONFIG_D2H_DATA_FORMAT = 614, | ||
385 | }; | 413 | }; |
386 | 414 | ||
387 | 415 | ||
@@ -518,5 +546,12 @@ struct i2400m_tlv_config_idle_timeout { | |||
518 | * 0 disabled */ | 546 | * 0 disabled */ |
519 | } __attribute__((packed)); | 547 | } __attribute__((packed)); |
520 | 548 | ||
549 | /* New in v1.4 -- for backward compat, will be removed */ | ||
550 | struct i2400m_tlv_config_d2h_data_format { | ||
551 | struct i2400m_tlv_hdr hdr; | ||
552 | __u8 format; /* 0 old format, 1 enhanced */ | ||
553 | __u8 reserved[3]; | ||
554 | } __attribute__((packed)); | ||
555 | |||
521 | 556 | ||
522 | #endif /* #ifndef __LINUX__WIMAX__I2400M_H__ */ | 557 | #endif /* #ifndef __LINUX__WIMAX__I2400M_H__ */ |