root/drivers/staging/gdm724x/hci_packet.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 /* Copyright (c) 2012 GCT Semiconductor, Inc. All rights reserved. */
   3 
   4 #ifndef _HCI_PACKET_H_
   5 #define _HCI_PACKET_H_
   6 
   7 #define HCI_HEADER_SIZE 4
   8 
   9 /*
  10  * The NIC type definition:
  11  * For backward compatibility, lower 16 bits used as they were.
  12  * Lower 16 bit: NIC_TYPE values
  13  * Uppoer 16 bit: NIC_TYPE Flags
  14  */
  15 #define NIC_TYPE_NIC0           0x00000010
  16 #define NIC_TYPE_NIC1           0x00000011
  17 #define NIC_TYPE_NIC2           0x00000012
  18 #define NIC_TYPE_NIC3           0x00000013
  19 #define NIC_TYPE_ARP            0x00000100
  20 #define NIC_TYPE_ICMPV6         0x00000200
  21 #define NIC_TYPE_MASK           0x0000FFFF
  22 #define NIC_TYPE_F_IPV4         0x00010000
  23 #define NIC_TYPE_F_IPV6         0x00020000
  24 #define NIC_TYPE_F_DHCP         0x00040000
  25 #define NIC_TYPE_F_NDP          0x00080000
  26 #define NIC_TYPE_F_VLAN         0x00100000
  27 
  28 struct hci_packet {
  29         __dev16 cmd_evt;
  30         __dev16 len;
  31         u8 data[0];
  32 } __packed;
  33 
  34 struct tlv {
  35         u8 type;
  36         u8 len;
  37         u8 *data[1];
  38 } __packed;
  39 
  40 struct sdu_header {
  41         __dev16 cmd_evt;
  42         __dev16 len;
  43         __dev32 dft_eps_id;
  44         __dev32 bearer_ID;
  45         __dev32 nic_type;
  46 } __packed;
  47 
  48 struct sdu {
  49         __dev16 cmd_evt;
  50         __dev16 len;
  51         __dev32 dft_eps_ID;
  52         __dev32 bearer_ID;
  53         __dev32 nic_type;
  54         u8 data[0];
  55 } __packed;
  56 
  57 struct multi_sdu {
  58         __dev16 cmd_evt;
  59         __dev16 len;
  60         __dev16 num_packet;
  61         __dev16 reserved;
  62         u8 data[0];
  63 } __packed;
  64 
  65 struct hci_pdn_table_ind {
  66         __dev16 cmd_evt;
  67         __dev16 len;
  68         u8 activate;
  69         __dev32 dft_eps_id;
  70         __dev32 nic_type;
  71         u8 pdn_type;
  72         u8 ipv4_addr[4];
  73         u8 ipv6_intf_id[8];
  74 } __packed;
  75 
  76 struct hci_connect_ind {
  77         __dev16 cmd_evt;
  78         __dev16 len;
  79         __dev32 connect;
  80 } __packed;
  81 
  82 #endif /* _HCI_PACKET_H_ */

/* [<][>][^][v][top][bottom][index][help] */