[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191118110335.v6.3.I18b06235e381accea1c73aa2f9db358645d9f201@changeid>
Date: Mon, 18 Nov 2019 11:21:22 -0800
From: Abhishek Pandit-Subedi <abhishekpandit@...omium.org>
To: Marcel Holtmann <marcel@...tmann.org>,
Johan Hedberg <johan.hedberg@...il.com>,
Rob Herring <robh+dt@...nel.org>
Cc: linux-bluetooth@...r.kernel.org, dianders@...omium.org,
Abhishek Pandit-Subedi <abhishekpandit@...omium.org>,
devicetree@...r.kernel.org,
"David S. Miller" <davem@...emloft.net>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, Ondrej Jirman <megous@...ous.com>,
Mark Rutland <mark.rutland@....com>,
Chen-Yu Tsai <wens@...e.org>
Subject: [PATCH v6 3/4] dt-bindings: net: broadcom-bluetooth: Add pcm config
Add documentation for pcm parameters.
Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@...omium.org>
---
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None
.../bindings/net/broadcom-bluetooth.txt | 16 ++++++++++
include/dt-bindings/bluetooth/brcm.h | 32 +++++++++++++++++++
2 files changed, 48 insertions(+)
create mode 100644 include/dt-bindings/bluetooth/brcm.h
diff --git a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt
index c749dc297624..8561e4684378 100644
--- a/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt
+++ b/Documentation/devicetree/bindings/net/broadcom-bluetooth.txt
@@ -29,10 +29,20 @@ Optional properties:
- "lpo": external low power 32.768 kHz clock
- vbat-supply: phandle to regulator supply for VBAT
- vddio-supply: phandle to regulator supply for VDDIO
+ - brcm,bt-sco-routing: PCM, Transport, Codec, I2S
+ - brcm,bt-pcm-interface-rate: 128KBps, 256KBps, 512KBps, 1024KBps, 2048KBps
+ - brcm,bt-pcm-frame-type: short, long
+ - brcm,bt-pcm-sync-mode: slave, master
+ - brcm,bt-pcm-clock-mode: slave, master
+See include/dt-bindings/bluetooth/brcm.h for SCO/PCM parameters. The default
+value for all these values are 0 (except for brcm,bt-sco-routing which requires
+a value) if you choose to leave it out.
Example:
+#include <dt-bindings/bluetooth/brcm.h>
+
&uart2 {
pinctrl-names = "default";
pinctrl-0 = <&uart2_pins>;
@@ -40,5 +50,11 @@ Example:
bluetooth {
compatible = "brcm,bcm43438-bt";
max-speed = <921600>;
+
+ brcm,bt-sco-routing = <BRCM_SCO_ROUTING_TRANSPORT>;
+ brcm,bt-pcm-interface-rate = <BRCM_PCM_IF_RATE_512KBPS>;
+ brcm,bt-pcm-frame-type = <BRCM_PCM_FRAME_TYPE_SHORT>;
+ brcm,bt-pcm-sync-mode = <BRCM_PCM_SYNC_MODE_MASTER>;
+ brcm,bt-pcm-clock-mode = <BRCM_PCM_CLOCK_MODE_MASTER>;
};
};
diff --git a/include/dt-bindings/bluetooth/brcm.h b/include/dt-bindings/bluetooth/brcm.h
new file mode 100644
index 000000000000..8b86f90d7dd2
--- /dev/null
+++ b/include/dt-bindings/bluetooth/brcm.h
@@ -0,0 +1,32 @@
+/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
+/*
+ * This header provides constants for Broadcom bluetooth dt-bindings.
+ */
+#ifndef _DT_BINDINGS_BLUETOOTH_BRCM_H
+#define _DT_BINDINGS_BLUETOOTH_BRCM_H
+
+#define BRCM_BT_SCO_ROUTING_PCM 0
+#define BRCM_BT_SCO_ROUTING_TRANSPORT 1
+#define BRCM_BT_SCO_ROUTING_CODEC 2
+#define BRCM_BT_SCO_ROUTING_I2S 3
+
+/* Default is 128KBPs */
+#define BRCM_BT_PCM_INTERFACE_RATE_128KBPS 0
+#define BRCM_BT_PCM_INTERFACE_RATE_256KBPS 1
+#define BRCM_BT_PCM_INTERFACE_RATE_512KBPS 2
+#define BRCM_BT_PCM_INTERFACE_RATE_1024KBPS 3
+#define BRCM_BT_PCM_INTERFACE_RATE_2048KBPS 4
+
+/* Default should be short */
+#define BRCM_BT_PCM_FRAME_TYPE_SHORT 0
+#define BRCM_BT_PCM_FRAME_TYPE_LONG 1
+
+/* Default should be master */
+#define BRCM_BT_PCM_SYNC_MODE_SLAVE 0
+#define BRCM_BT_PCM_SYNC_MODE_MASTER 1
+
+/* Default should be master */
+#define BRCM_BT_PCM_CLOCK_MODE_SLAVE 0
+#define BRCM_BT_PCM_CLOCK_MODE_MASTER 1
+
+#endif /* _DT_BINDINGS_BLUETOOTH_BRCM_H */
--
2.24.0.432.g9d3f5f5b63-goog
Powered by blists - more mailing lists