1syntax = "proto3";
2
3package blueberry.facade.hci;
4
5import "google/protobuf/empty.proto";
6import "blueberry/facade/common.proto";
7
8service ControllerFacade {
9  rpc GetMacAddress(google.protobuf.Empty) returns (blueberry.facade.BluetoothAddress) {}
10  rpc WriteLocalName(NameMsg) returns (google.protobuf.Empty) {}
11  rpc GetLocalName(google.protobuf.Empty) returns (NameMsg) {}
12  rpc IsSupportedCommand(OpCodeMsg) returns (SupportedMsg) {}
13  rpc GetLeNumberOfSupportedAdvertisingSets(google.protobuf.Empty) returns (SingleValueMsg) {}
14  rpc SupportsSimplePairing(google.protobuf.Empty) returns (SupportedMsg) {}
15  rpc SupportsSecureConnections(google.protobuf.Empty) returns (SupportedMsg) {}
16  rpc SupportsSimultaneousLeBrEdr(google.protobuf.Empty) returns (SupportedMsg) {}
17  rpc SupportsInterlacedInquiryScan(google.protobuf.Empty) returns (SupportedMsg) {}
18  rpc SupportsRssiWithInquiryResults(google.protobuf.Empty) returns (SupportedMsg) {}
19  rpc SupportsExtendedInquiryResponse(google.protobuf.Empty) returns (SupportedMsg) {}
20  rpc SupportsRoleSwitch(google.protobuf.Empty) returns (SupportedMsg) {}
21  rpc Supports3SlotPackets(google.protobuf.Empty) returns (SupportedMsg) {}
22  rpc Supports5SlotPackets(google.protobuf.Empty) returns (SupportedMsg) {}
23  rpc SupportsClassic2mPhy(google.protobuf.Empty) returns (SupportedMsg) {}
24  rpc SupportsClassic3mPhy(google.protobuf.Empty) returns (SupportedMsg) {}
25  rpc Supports3SlotEdrPackets(google.protobuf.Empty) returns (SupportedMsg) {}
26  rpc Supports5SlotEdrPackets(google.protobuf.Empty) returns (SupportedMsg) {}
27  rpc SupportsSco(google.protobuf.Empty) returns (SupportedMsg) {}
28  rpc SupportsHv2Packets(google.protobuf.Empty) returns (SupportedMsg) {}
29  rpc SupportsHv3Packets(google.protobuf.Empty) returns (SupportedMsg) {}
30  rpc SupportsEv3Packets(google.protobuf.Empty) returns (SupportedMsg) {}
31  rpc SupportsEv4Packets(google.protobuf.Empty) returns (SupportedMsg) {}
32  rpc SupportsEv5Packets(google.protobuf.Empty) returns (SupportedMsg) {}
33  rpc SupportsEsco2mPhy(google.protobuf.Empty) returns (SupportedMsg) {}
34  rpc SupportsEsco3mPhy(google.protobuf.Empty) returns (SupportedMsg) {}
35  rpc Supports3SlotEscoEdrPackets(google.protobuf.Empty) returns (SupportedMsg) {}
36  rpc SupportsHoldMode(google.protobuf.Empty) returns (SupportedMsg) {}
37  rpc SupportsSniffMode(google.protobuf.Empty) returns (SupportedMsg) {}
38  rpc SupportsParkMode(google.protobuf.Empty) returns (SupportedMsg) {}
39  rpc SupportsNonFlushablePb(google.protobuf.Empty) returns (SupportedMsg) {}
40  rpc SupportsSniffSubrating(google.protobuf.Empty) returns (SupportedMsg) {}
41  rpc SupportsEncryptionPause(google.protobuf.Empty) returns (SupportedMsg) {}
42  rpc SupportsBle(google.protobuf.Empty) returns (SupportedMsg) {}
43  rpc SupportsBleEncryption(google.protobuf.Empty) returns (SupportedMsg) {}
44  rpc SupportsBleConnectionParametersRequest(google.protobuf.Empty) returns (SupportedMsg) {}
45  rpc SupportsBleExtendedReject(google.protobuf.Empty) returns (SupportedMsg) {}
46  rpc SupportsBlePeripheralInitiatedFeaturesExchange(google.protobuf.Empty) returns (SupportedMsg) {}
47  rpc SupportsBlePing(google.protobuf.Empty) returns (SupportedMsg) {}
48  rpc SupportsBleDataPacketLengthExtension(google.protobuf.Empty) returns (SupportedMsg) {}
49  rpc SupportsBlePrivacy(google.protobuf.Empty) returns (SupportedMsg) {}
50  rpc SupportsBleExtendedScannerFilterPolicies(google.protobuf.Empty) returns (SupportedMsg) {}
51  rpc SupportsBle2mPhy(google.protobuf.Empty) returns (SupportedMsg) {}
52  rpc SupportsBleStableModulationIndexTx(google.protobuf.Empty) returns (SupportedMsg) {}
53  rpc SupportsBleStableModulationIndexRx(google.protobuf.Empty) returns (SupportedMsg) {}
54  rpc SupportsBleCodedPhy(google.protobuf.Empty) returns (SupportedMsg) {}
55  rpc SupportsBleExtendedAdvertising(google.protobuf.Empty) returns (SupportedMsg) {}
56  rpc SupportsBlePeriodicAdvertising(google.protobuf.Empty) returns (SupportedMsg) {}
57  rpc SupportsBleChannelSelectionAlgorithm2(google.protobuf.Empty) returns (SupportedMsg) {}
58  rpc SupportsBlePowerClass1(google.protobuf.Empty) returns (SupportedMsg) {}
59  rpc SupportsBleMinimumUsedChannels(google.protobuf.Empty) returns (SupportedMsg) {}
60  rpc SupportsBleConnectionCteRequest(google.protobuf.Empty) returns (SupportedMsg) {}
61  rpc SupportsBleConnectionCteResponse(google.protobuf.Empty) returns (SupportedMsg) {}
62  rpc SupportsBleConnectionlessCteTransmitter(google.protobuf.Empty) returns (SupportedMsg) {}
63  rpc SupportsBleConnectionlessCteReceiver(google.protobuf.Empty) returns (SupportedMsg) {}
64  rpc SupportsBleAntennaSwitchingDuringCteTx(google.protobuf.Empty) returns (SupportedMsg) {}
65  rpc SupportsBleAntennaSwitchingDuringCteRx(google.protobuf.Empty) returns (SupportedMsg) {}
66  rpc SupportsBleReceivingConstantToneExtensions(google.protobuf.Empty) returns (SupportedMsg) {}
67  rpc SupportsBlePeriodicAdvertisingSyncTransferSender(google.protobuf.Empty) returns (SupportedMsg) {}
68  rpc SupportsBlePeriodicAdvertisingSyncTransferRecipient(google.protobuf.Empty) returns (SupportedMsg) {}
69  rpc SupportsBleSleepClockAccuracyUpdates(google.protobuf.Empty) returns (SupportedMsg) {}
70  rpc SupportsBleRemotePublicKeyValidation(google.protobuf.Empty) returns (SupportedMsg) {}
71  rpc SupportsBleConnectedIsochronousStreamCentral(google.protobuf.Empty) returns (SupportedMsg) {}
72  rpc SupportsBleConnectedIsochronousStreamPeripheral(google.protobuf.Empty) returns (SupportedMsg) {}
73  rpc SupportsBleIsochronousBroadcaster(google.protobuf.Empty) returns (SupportedMsg) {}
74  rpc SupportsBleSynchronizedReceiver(google.protobuf.Empty) returns (SupportedMsg) {}
75  rpc SupportsBleIsochronousChannelsHostSupport(google.protobuf.Empty) returns (SupportedMsg) {}
76  rpc SupportsBlePowerControlRequest(google.protobuf.Empty) returns (SupportedMsg) {}
77  rpc SupportsBlePowerChangeIndication(google.protobuf.Empty) returns (SupportedMsg) {}
78  rpc SupportsBlePathLossMonitoring(google.protobuf.Empty) returns (SupportedMsg) {}
79  rpc SupportsBlePeriodicAdvertisingAdi(google.protobuf.Empty) returns (SupportedMsg) {}
80}
81
82message NameMsg {
83  bytes name = 1;
84}
85
86message OpCodeMsg {
87  uint32 op_code = 1;
88}
89
90message SupportedMsg {
91  bool supported = 1;
92}
93
94message SingleValueMsg {
95  uint64 value = 1;
96}