Commit Graph

1012 Commits

Author SHA1 Message Date
Miao-chen Chou
de48279160 doc: Add errors.txt to describe errors of D-Bus method returns 2021-10-04 15:44:55 -07:00
Dagan Martinez
7d0fc7e7f0 doc/gatt-api: Add 'X-notify/X-indicate`
Update docs to reflect the addition of the `X-notify` and `X-indicate`
characteristic flags, which allow a GATT server to restrict CCC write
permissions.
2021-10-01 10:58:56 -07:00
Luiz Augusto von Dentz
1abf1400fa gatt-api: Add MTU property to GattCharacteristic1
This adds MTU properyt to GattCharacteristic1 which can be used in
order to determine how much data can be read/write using non-long
procedures which sometimes is the only thing the remote device
supports.

Fixes: https://github.com/bluez/bluez/issues/199
2021-09-28 15:42:46 -07:00
Luiz Augusto von Dentz
756fbd5ebd doc/tester-config: Enable KASAN
This patch adds CONFIG_KASAN=y in tester config.
2021-09-27 15:27:51 -07:00
Luiz Augusto von Dentz
2df3bba5b7 doc/tester-config: Enable Android Extension
This patch adds Android Extension in tester config.
2021-09-27 15:27:51 -07:00
Tedd Ho-Jeong An
f2db5c7afd doc/tester-config: Enable Microsoft Extension
This patch adds Microsoft Extension in tester config.
2021-09-27 15:27:51 -07:00
Inga Stotland
1dc1106895 doc/mesh-api: Add ExportKeys call
Add description for a new method:
ExportKeys() on org.bluez.mesh.Management1 interface.

This method is used by the authorized application to export information
about network keys, application keys and device keys present in the local
key database.
2021-09-27 13:22:39 -07:00
Archie Pusaka
9ee79f67be doc: Inclusive language update
Update the docs to reflect the changes for the other inclusive
language updates.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
2021-09-21 10:51:54 +02:00
Luiz Augusto von Dentz
a5616cfec0 adapter-api: Add ExperimentalFeatures property
This adds ExperimentalFeatures property which indicates what
experimental features are currently enabled.
2021-09-08 14:12:15 -07:00
Tedd Ho-Jeong An
c944e5f194 doc: Add a doc for Intel hardware variants
This patch adds a document for Intel hardware variants currently
supported by the kernel and its firmware list.
2021-08-06 14:47:30 -07:00
Yun-Hao Chung
a337097749 doc: add admin policy file storage description
This adds storage description of admin policy file in
doc/settings-storage.txt
2021-08-04 15:01:33 -07:00
Yun-Hao Chung
b7a401feaf doc: add description of admin policy
This adds admin-policy-api.txt.

Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
2021-08-04 15:01:33 -07:00
David Lechner
b3451a205f doc/advmon-api: Clarify Patterns property
The Patterns property description was not as clear as it could be. This
expands the text a bit, replaces the C enum value 0x01 with the D-Bus
property string value "or_patterns" and improves the grammar in a few
places.
2021-06-24 13:11:27 -07:00
Tedd Ho-Jeong An
f5cc75fc54 tools/mgmt-tester: Enable High-Speed(HS) test cases
This patch enables the BT High-Speed(HS) test cases by enabling the HS
in the kernel config.
2021-06-23 11:51:10 -07:00
Marcel Holtmann
2c405706e1 doc: Add initial draft of security bugs handling document 2021-06-15 22:12:16 +02:00
Marcel Holtmann
de948fc8ce Revert "doc/mgmt-api - Add a new error code for HCI status 0x3e"
This reverts commit 9ad67264d9.
2021-06-13 21:53:35 +02:00
Yu Liu
9ad67264d9 doc/mgmt-api - Add a new error code for HCI status 0x3e
We want to retry the pairing when HCI status 0x3e (Connection failed to
established/Synchronization timeout) is returned from the controller.
This is to add a new MGMT error code so that we can catch this 0x3e
failure and issue a retry in the user space.

Reviewed-by: Abhishek Pandit-Subedi <abhishekpandit@chromium.org>
2021-05-05 14:59:18 -07:00
Tedd Ho-Jeong An
b66f406e1e monitor: Convert manpage to rst format
This patch adds support to convert reStructuredText formatted btmon
manpage to manpage with rst2man tool.
2021-05-04 16:49:01 -07:00
Yu Liu
e291f4f9fe doc/mgmt-api - Return connection direction in Device Connected Event
When an MGMT_EV_DEVICE_CONNECTED event is reported back to the user
space we will set the flags to tell if the established connection is
outbound or not. This is useful for the user space to log better metrics
and error messages.

Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
Reviewed-by: Alain Michaud <alainm@chromium.org>
2021-04-02 16:03:45 -07:00
Daniel Winkler
03987faa52 doc/mgmt-api: Update documentation for scan_rsp param flag
This patch adds the new scannable flag to the Add Extended Advertising
Parameters MGMT API documentation.

Reviewed-by: Alain Michaud <alainm@chromium.org>
Reviewed-by: Sonny Sasaka <sonnysasaka@chromium.org>
2021-03-22 13:16:50 -07:00
Daniel Winkler
2af9ef2fa0 doc/advertising-api: Add adv SupportedFeatures to doc
Add supported features to advertising dbus api.

Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
2021-03-17 11:30:27 -07:00
Inga Stotland
400e738bf0 doc/mesh-api: Add notion of Device UUID compliance
Add requirement that the value of Device UUID supplied in
CreateNetwork/Join/Import methods should be compliant with
RFC 4122.
2021-02-16 11:51:00 -08:00
Archie Pusaka
370ed5395a doc/advmon-api: Introduce sampling period property
The sampling period is used to align with the new MGMT opcode which
also have sampling period.
2021-01-15 11:54:52 -08:00
Archie Pusaka
65231892cd doc/mgmt-api: Add opcode for adding advertisement monitor with RSSI
This is to leverage the filtering by RSSI feature on those controllers
which supports advertisement packet filtering. To avoid changing the
existing API and breaking it, a new opcode is required.

Reviewed-by: Manish Mandlik <mmandlik@chromium.org>
Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
Reviewed-by: Yun-Hao Chung <howardchung@google.com>
2020-12-21 19:02:22 +01:00
Tedd Ho-Jeong An
98f5da02ce doc: Fix qemu unable to mount root fs for test-runner
This patch fixes the kernel panic while loading the kernel image built
with the current config for test-runner.

 Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
 CPU: 0 PID: 1 Comm: swapper Not tainted 5.10.0-rc2-702835-ged93facee36e #6
 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.13.0-1ubuntu1 04/01/2014
 Call Trace:
  panic+0xee/0x27c
  mount_block_root+0x315/0x324
  ? rest_init+0x7a/0x7a
  prepare_namespace+0x128/0x157
  ? rest_init+0x7a/0x7a
  kernel_init+0x5/0xf6
  ret_from_fork+0x22/0x30
 Kernel Offset: 0x2a200000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbf)
2020-12-08 11:01:15 -08:00
Sonny Sasaka
0ba3339c5c doc: Add Battery Provider API doc
This patch add the documentation of the Battery Provider which lets
external clients feed battery information to BlueZ if they are able to
decode battery reporting via any profile. BlueZ UI clients can then use
the org.bluez.Battery1 API as a single source of battery information
coming from many different profiles.

Reviewed-by: Miao-chen Chou <mcchou@chromium.org>
2020-11-30 16:16:28 -08:00
Michael Nosthoff
3314bf2d7b doc/adapter-api: Add InProgess error to StartDiscovery 2020-11-09 13:53:59 -08:00
Luiz Augusto von Dentz
16ebd94563 doc: Add tester.config
This adds tester.config which can be used as a reference to create
kernel images to be run with test-runner.
2020-11-03 15:09:43 -08:00
Manish Mandlik
058ef5a662 adv_monitor: Implement RSSI filtering and content matching
This implements the following logic for background scanning.
- Implement RSSI tracking based on high/low RSSI thresholds and timers.
- Create an entry point in adapter to start the matching of Adv based
on all monitors and invoke the RSSI tracking for Adv reporting.
2020-11-02 09:53:25 -08:00
Daniel Winkler
838cafe4f0 doc/mgmt-api: Update controller capabilities MGMT command in mgmt-api
This patch changes Read Security Info MGMT to be called Read Controller
Capabilities Command
2020-10-29 17:42:43 -07:00
Daniel Winkler
b089938028 doc/mgmt-api: Add new Advertising MGMT interfaces to mgmt-api
This patch adds the following to mgmt-api:
- Add Extended Advertising Parameters Command
- Add Extended Advertising Data Command
2020-10-29 17:42:38 -07:00
Daniel Winkler
66abcfb3e7 doc/advertising-api: update API with new interface
This updates the advertising documentation to include the following
features:

LE Advertising Manager:
- New SupportedCapabilities property

LE Advertisement:
- New min/max interval properties
- New tx power property
2020-10-29 17:42:26 -07:00
Abhishek Pandit-Subedi
81bcf6a61b doc: Add Suspend and Resume events
Add Controller Suspend Event and Controller Resume Event to identify
suspend or resume of the Bluetooth stack has occurred.

Also update Device Disconnected Event to indicate a new disconnect
reason: "Connection terminated by local host for suspend"
2020-09-17 10:04:23 -07:00
Joseph Hwang
80fcbda6d5 doc/gatt-api: Add new error for StartNotify
When a device is disconnecting, StartNotify is not allowed. This adds a
new error type to the doc.
2020-09-16 23:17:17 -07:00
Miao-chen Chou
afa8bbffcc doc: Update Advertisement Monitor API description
This modifies the following description to Advertisement Monitor API.
- Add org.bluez.Error.Failed to RegisterMonitor() method.
- Add more description about the usage of RegisterMonitor() and
UnregisterMonitor() methods.
- Add description about the ranges for the fields in property
RSSIThresholdsAndTimers.
2020-09-14 12:45:34 -07:00
Archie Pusaka
4b3f858713 doc/media-api: Add Press/Hold/Release methods for MediaPlayer1
This allows us to send any passthrough command. The button can also
be held for an extended amount of time.

Reviewed-by: Michael Sun <michaelfsun@chromium.org>
2020-09-04 15:34:37 -07:00
Inga Stotland
879ea56829 doc/mesh-api: Add "options" dictionary to Send/Publish
This modifies Send, DevKeySend and Publish methods
on mesh.Node interface to include additional argument "options".
This new argument is a dictionary that currently has only one
new key word defined for Send() and DevKeySend():
    "ForceSegmented" - to force small payloads to be sent as
    		      one-segment messages

In case of Publish(), and additional keyword is defined
     "Vendor" -  16-bit Company ID as defined by the Bluetooth SIG

Other key words may be defined in future to accommodate evolving
requirements of Mesh Profile specification.

Also, the addition of "options" dictionary to Publish allows to
eliminate VendorPublish() method (taken care by "Vendor" keyword).
2020-08-26 08:46:52 -07:00
Abhishek Pandit-Subedi
fb08822bc0 doc/device-api: Add WakeAllowed
Add documentation for WakeAllowed, which allows a device to wake the
system from suspend.
2020-07-07 10:46:50 -07:00
Inga Stotland
807886eb57 doc/mesh-api: Add dictionary to model properties
This changes the signature of "Models" and "VendorModels" properties
on org.bluez.mesh.Element1 interface to contain a dictionary with
model options.

Models: signature change "aq" -> "a(qa{sv})"
VendorModels: signature change "a(qq)" -> "a(qqa{sv})"

Currently, the defined keywords for the options dictionary are
"Publish" - indicates whether the model supports publication mechanism.
            If not present, publication is enabled.
"Subscribe" - indicates whether the model supports subscription mechanism.
            If not present, subscriptions are enabled.

The dictionary allowed to be empty.
2020-07-01 12:06:06 -07:00
Michał Lowas-Rzechonek
c341002952 mesh: Replace BeaconFlags with just IvUpdate
To import nodes, applications need just IvIndex and IvUpdate. KeyRefresh
phase in under provisioner's control, so we don't need to expose it.

Moreover, BeaconFlags property dealt just with the primary net key, and
each subnet key is refreshed separately.
2020-06-18 08:34:14 -07:00
Alain Michaud
5ad9a639cb main: Add configurable le autoconnect timeout value
This patch adds support for a configurable le autoconnect timer.
2020-06-17 21:39:04 -07:00
Michał Lowas-Rzechonek
4527a8ad82 mesh: Rename IVUpdate import flag to IvUpdate
Name change for consistency with "IvIndex" property.
2020-06-16 10:39:22 -07:00
Marcel Holtmann
8eb993e983 doc: Fix minor typo 2020-06-12 21:49:12 +02:00
Miao-chen Chou
79bd5951a8 doc: Describe the new Advertisement Monitor support
This describes the following commands and event.
- Read Advertisement Monitor Features command
- Add Advertisement Patterns Monitor command
- Remove Advertisement Monitor command
- Advertisement Monitor Added event
- Advertisement Monitor Removed event
Note that the content of a monitor can differ based on its type. For now we
introduce only pattern-based monitor, so you may find that unlike the
command of removing monitor(s), the Add command is tied to a specific type.
2020-06-10 20:01:15 +02:00
Inga Stotland
7bcb1086ab mesh: Add "node is busy" check for Leave() & Attach()
This introduces the following behavior change for those methods
on Network interface that specify node token as an input parameter

Leave() method:
If Leave method is called for a node that is being processed as a result
of a Create, Import, Join or Attach method calls in progress, node removal
is not allowed and org.bluez.mesh.Error.Busy error is returned.

Attach() method:
If Attach method is called for a node that is being processed as a result
of a Create, Import or Join method calls in progress, node attachment
is not allowed and org.bluez.mesh.Error.Busy error is returned.
2020-06-10 10:27:17 -07:00
Inga Stotland
e5179f9fe5 mesh: Make "Busy" and "InProgress" to be distinct errors
This separates "Busy" and "InProgress" error codes:
MESH_ERROR_IN_PROGRESS maps to org.bluez.mesh.Error.InProgress
MESH_ERROR_BUSY maps to org.bluez.mesh.Error.Busy

Minor API change:
UpdateAppKey() returns "InProgress" error instead of "Busy"
2020-06-10 10:27:17 -07:00
Marcel Holtmann
9ba75301d0 doc: Fix typo for Set Device Class command description 2020-06-10 19:21:57 +02:00
Marcel Holtmann
8a467cab33 doc: Add commands and event for handling device flags 2020-06-10 19:20:16 +02:00
Marcel Holtmann
fadc0fa6e8 doc: Add the event for default configuration changes 2020-06-10 16:11:18 +02:00
Marcel Holtmann
b3ec488a40 doc: Mention mgmt version 1.18 changes 2020-06-10 11:02:02 +02:00