~ubuntu-branches/ubuntu/trusty/linux-armadaxp/trusty

« back to all changes in this revision

Viewing changes to include/net/bluetooth/hci.h

  • Committer: Package Import Robot
  • Author(s): Michael Casadevall, Bryan Wu, Dann Frazier, Michael Casadeall
  • Date: 2012-03-10 15:00:54 UTC
  • mfrom: (1.1.1)
  • Revision ID: package-import@ubuntu.com-20120310150054-flugb39zon8vvgwe
Tags: 3.2.0-1600.1
[ Bryan Wu ]
* UBUNTU: import debian/debian.env and debian.armadaxp

[ Dann Frazier ]
* ARM: Armada XP: remove trailing '/' in dirnames in mvRules.mk

[ Michael Casadeall ]
* tools: add some tools for Marvell Armada XP processor
* kernel: timer tick hacking from Marvell
* kernel: Sheeva Errata: add delay on Sheeva when powering down
* net: add Marvell NFP netfilter
* net: socket and skb modifications made by Marvell
* miscdevice: add minor IDs for some Marvell Armada drivers
* fs: introduce memory pool for splice()
* video: EDID detection updates from Marvell Armada XP patchset
* video: backlight: add Marvell Dove LCD backlight driver
* video: display: add THS8200 display driver
* video: framebuffer: add Marvell Dove and Armada XP processor onchip LCD controller driver
* usbtest: add Interrupt transfer testing by Marvell Armada XP code
* usb: ehci: add support for Marvell EHCI controler
* tty/serial: 8250: add support for Marvell Armada XP processor and DeviceTree work
* rtc: add support for Marvell Armada XP onchip RTC controller
* net: pppoe: add Marvell ethernet NFP hook in PPPoE networking driver
* mtd: nand: add support for Marvell Armada XP Nand Flash Controller
* mtd: maps: add Marvell Armada XP specific map driver
* mmc: add support for Marvell Armada XP MMC/SD host controller
* i2c: add support for Marvell Armada XP onchip i2c bus controller
* hwmon: add Kconfig option for Armada XP onchip thermal sensor driver
* dmaengine: add Net DMA support for splice and update Marvell XOR DMA engine driver
* ata: add support for Marvell Armada XP SATA controller and update some quirks
* ARM: add Marvell Armada XP machine to mach-types
* ARM: oprofile: add support for Marvell PJ4B core
* ARM: mm: more ARMv6 switches for Marvell Armada XP
* ARM: remove static declaration to allow compilation
* ARM: alignment access fault trick
* ARM: mm: skip some fault fixing when run on NONE SMP ARMv6 mode during early abort event
* ARM: mm: add Marvell Sheeva CPU Architecture for PJ4B
* ARM: introduce optimized copy operation for Marvell Armada XP
* ARM: SAUCE: hardware breakpoint trick for Marvell Armada XP
* ARM: big endian and little endian tricks for Marvell Armada XP
* ARM: SAUCE: Add Marvell Armada XP build rules to arch/arm/kernel/Makefile
* ARM: vfp: add special handling for Marvell Armada XP
* ARM: add support for Marvell U-Boot
* ARM: add mv_controller_num for ARM PCI drivers
* ARM: add support for local PMUs, general SMP tweaks and cache flushing
* ARM: add Marvell device identifies in glue-proc.h
* ARM: add IPC driver support for Marvell platforms
* ARM: add DMA mapping for Marvell platforms
* ARM: add Sheeva errata and PJ4B code for booting
* ARM: update Kconfig and Makefile to include Marvell Armada XP platforms
* ARM: Armada XP: import LSP from Marvell for Armada XP 3.2 kernel enablement

Show diffs side-by-side

added added

removed removed

Lines of Context:
211
211
#define LMP_EDR_3S_ESCO 0x80
212
212
 
213
213
#define LMP_EXT_INQ     0x01
 
214
#define LMP_SIMUL_LE_BR 0x02
214
215
#define LMP_SIMPLE_PAIR 0x08
215
216
#define LMP_NO_FLUSH    0x40
216
217
 
217
218
#define LMP_LSTO        0x01
218
219
#define LMP_INQ_TX_PWR  0x02
 
220
#define LMP_EXTFEATURES 0x80
 
221
 
 
222
/* Extended LMP features */
 
223
#define LMP_HOST_LE     0x02
219
224
 
220
225
/* Connection modes */
221
226
#define HCI_CM_ACTIVE   0x0000
254
259
#define HCI_LK_UNAUTH_COMBINATION       0x04
255
260
#define HCI_LK_AUTH_COMBINATION         0x05
256
261
#define HCI_LK_CHANGED_COMBINATION      0x06
 
262
/* The spec doesn't define types for SMP keys */
 
263
#define HCI_LK_SMP_LTK                  0x81
 
264
#define HCI_LK_SMP_IRK                  0x82
 
265
#define HCI_LK_SMP_CSRK                 0x83
257
266
 
258
267
/* -----  HCI Commands ---- */
259
268
#define HCI_OP_NOP                      0x0000
653
662
 
654
663
#define HCI_OP_READ_INQ_RSP_TX_POWER    0x0c58
655
664
 
 
665
#define HCI_OP_WRITE_LE_HOST_SUPPORTED  0x0c6d
 
666
struct hci_cp_write_le_host_supported {
 
667
        __u8 le;
 
668
        __u8 simul;
 
669
} __packed;
 
670
 
656
671
#define HCI_OP_READ_LOCAL_VERSION       0x1001
657
672
struct hci_rp_read_local_version {
658
673
        __u8     status;
676
691
} __packed;
677
692
 
678
693
#define HCI_OP_READ_LOCAL_EXT_FEATURES  0x1004
 
694
struct hci_cp_read_local_ext_features {
 
695
        __u8     page;
 
696
} __packed;
679
697
struct hci_rp_read_local_ext_features {
680
698
        __u8     status;
681
699
        __u8     page;
698
716
        bdaddr_t bdaddr;
699
717
} __packed;
700
718
 
 
719
#define HCI_OP_WRITE_PAGE_SCAN_ACTIVITY 0x0c1c
 
720
struct hci_cp_write_page_scan_activity {
 
721
        __le16   interval;
 
722
        __le16   window;
 
723
} __packed;
 
724
 
 
725
#define HCI_OP_WRITE_PAGE_SCAN_TYPE     0x0c47
 
726
        #define PAGE_SCAN_TYPE_STANDARD         0x00
 
727
        #define PAGE_SCAN_TYPE_INTERLACED       0x01
 
728
 
701
729
#define HCI_OP_LE_SET_EVENT_MASK        0x2001
702
730
struct hci_cp_le_set_event_mask {
703
731
        __u8     mask[8];
710
738
        __u8     le_max_pkt;
711
739
} __packed;
712
740
 
 
741
#define HCI_OP_LE_SET_SCAN_ENABLE       0x200c
 
742
struct hci_cp_le_set_scan_enable {
 
743
        __u8     enable;
 
744
        __u8     filter_dup;
 
745
} __packed;
 
746
 
713
747
#define HCI_OP_LE_CREATE_CONN           0x200d
714
748
struct hci_cp_le_create_conn {
715
749
        __le16   scan_interval;
739
773
        __le16   max_ce_len;
740
774
} __packed;
741
775
 
 
776
#define HCI_OP_LE_START_ENC             0x2019
 
777
struct hci_cp_le_start_enc {
 
778
        __le16  handle;
 
779
        __u8    rand[8];
 
780
        __le16  ediv;
 
781
        __u8    ltk[16];
 
782
} __packed;
 
783
 
 
784
#define HCI_OP_LE_LTK_REPLY             0x201a
 
785
struct hci_cp_le_ltk_reply {
 
786
        __le16  handle;
 
787
        __u8    ltk[16];
 
788
} __packed;
 
789
struct hci_rp_le_ltk_reply {
 
790
        __u8    status;
 
791
        __le16  handle;
 
792
} __packed;
 
793
 
 
794
#define HCI_OP_LE_LTK_NEG_REPLY         0x201b
 
795
struct hci_cp_le_ltk_neg_reply {
 
796
        __le16  handle;
 
797
} __packed;
 
798
struct hci_rp_le_ltk_neg_reply {
 
799
        __u8    status;
 
800
        __le16  handle;
 
801
} __packed;
 
802
 
742
803
/* ---- HCI Events ---- */
743
804
#define HCI_EV_INQUIRY_COMPLETE         0x01
744
805
 
1029
1090
        __u8     clk_accurancy;
1030
1091
} __packed;
1031
1092
 
 
1093
#define HCI_EV_LE_LTK_REQ               0x05
 
1094
struct hci_ev_le_ltk_req {
 
1095
        __le16  handle;
 
1096
        __u8    random[8];
 
1097
        __le16  ediv;
 
1098
} __packed;
 
1099
 
 
1100
/* Advertising report event types */
 
1101
#define ADV_IND         0x00
 
1102
#define ADV_DIRECT_IND  0x01
 
1103
#define ADV_SCAN_IND    0x02
 
1104
#define ADV_NONCONN_IND 0x03
 
1105
#define ADV_SCAN_RSP    0x04
 
1106
 
 
1107
#define ADDR_LE_DEV_PUBLIC      0x00
 
1108
#define ADDR_LE_DEV_RANDOM      0x01
 
1109
 
 
1110
#define HCI_EV_LE_ADVERTISING_REPORT    0x02
 
1111
struct hci_ev_le_advertising_info {
 
1112
        __u8     evt_type;
 
1113
        __u8     bdaddr_type;
 
1114
        bdaddr_t bdaddr;
 
1115
        __u8     length;
 
1116
        __u8     data[0];
 
1117
} __packed;
 
1118
 
1032
1119
/* Internal events generated by Bluetooth stack */
1033
1120
#define HCI_EV_STACK_INTERNAL   0xfd
1034
1121
struct hci_ev_stack_internal {