[v5,2/3] dt-bindings: net: bluetooth: Add qualcomm-bluetooth

Message ID 20180320032331.29865-3-thierry.escande@linaro.org
State New
Headers show
Series
  • Bluetooth: hci_qca: Add serdev support
Related show

Commit Message

Thierry Escande March 20, 2018, 3:23 a.m.
Add binding document for serial bluetooth chips using Qualcomm protocol.

Signed-off-by: Thierry Escande <thierry.escande@linaro.org>

---

v5:
- Rename 'bt-disable-n' gpio as 'enable'

v4:
- Move bt-disable-n-gpios to required properties section
- Add clocks and pinctrl-0 as required properties

v3: no change
v2: no change

 .../devicetree/bindings/net/qualcomm-bluetooth.txt | 34 ++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt

-- 
2.14.1

--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Marcel Holtmann March 20, 2018, 3:58 p.m. | #1
Hi Thierry,

> Add binding document for serial bluetooth chips using Qualcomm protocol.

> 

> Signed-off-by: Thierry Escande <thierry.escande@linaro.org>

> ---

> 

> v5:

> - Rename 'bt-disable-n' gpio as 'enable'

> 

> v4:

> - Move bt-disable-n-gpios to required properties section

> - Add clocks and pinctrl-0 as required properties

> 

> v3: no change

> v2: no change

> 

> .../devicetree/bindings/net/qualcomm-bluetooth.txt | 34 ++++++++++++++++++++++

> 1 file changed, 34 insertions(+)

> create mode 100644 Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt

> 

> diff --git a/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt b/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt

> new file mode 100644

> index 000000000000..bbc2973634b2

> --- /dev/null

> +++ b/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt

> @@ -0,0 +1,34 @@

> +Qualcomm Bluetooth Chips

> +---------------------

> +

> +This documents the binding structure and common properties for serial

> +attached Qualcomm devices.

> +

> +Serial attached Qualcomm devices shall be a child node of the host UART

> +device the slave device is attached to.

> +

> +Required properties:

> + - compatible: should contain one of the following:

> +   * "qcom,qca6174-bt"

> + - enable-gpios: gpio specifier used to enable chip

> + - pinctrl-0: pin phandle for bt_en gpio

> + - clocks: clock phandle for SUSCLK_32KHZ


if I compare this with broadcom-bluetooth.txt or ti-bluetooth.txt then besides compatible, everything else is optional. The nokia-bluetooth.txt has everything required, but that is also a really specific platform.

Can we be less restrictive for a QCA general purpose chip?

> +

> +Example:

> +

> +serial@7570000 {

> +	pinctrl-names = "default", "sleep";

> +	pinctrl-0 = <&blsp1_uart1_default>;

> +	pinctrl-1 = <&blsp1_uart1_sleep>;

> +

> +	bluetooth {

> +		compatible = "qcom,qca6174-bt";

> +

> +		enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;

> +

> +		pinctrl-names = "default";

> +		pinctrl-0 = <&bt_en_pin_a>;


This one I do not understand and you might want to shed some light into why this is done that way.

> +

> +		clocks = <&divclk4>;


No clock-names?

Regards

Marcel

--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Thierry Escande March 26, 2018, 4:45 p.m. | #2
Hi Marcel,

On 20/03/2018 16:58, Marcel Holtmann wrote:
> Hi Thierry,

> 

>> Add binding document for serial bluetooth chips using Qualcomm protocol.

>>

>> Signed-off-by: Thierry Escande <thierry.escande@linaro.org>

>> ---

>>

>> v5:

>> - Rename 'bt-disable-n' gpio as 'enable'

>>

>> v4:

>> - Move bt-disable-n-gpios to required properties section

>> - Add clocks and pinctrl-0 as required properties

>>

>> v3: no change

>> v2: no change

>>

>> .../devicetree/bindings/net/qualcomm-bluetooth.txt | 34 ++++++++++++++++++++++

>> 1 file changed, 34 insertions(+)

>> create mode 100644 Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt

>>

>> diff --git a/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt b/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt

>> new file mode 100644

>> index 000000000000..bbc2973634b2

>> --- /dev/null

>> +++ b/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt

>> @@ -0,0 +1,34 @@

>> +Qualcomm Bluetooth Chips

>> +---------------------

>> +

>> +This documents the binding structure and common properties for serial

>> +attached Qualcomm devices.

>> +

>> +Serial attached Qualcomm devices shall be a child node of the host UART

>> +device the slave device is attached to.

>> +

>> +Required properties:

>> + - compatible: should contain one of the following:

>> +   * "qcom,qca6174-bt"

>> + - enable-gpios: gpio specifier used to enable chip

>> + - pinctrl-0: pin phandle for bt_en gpio

>> + - clocks: clock phandle for SUSCLK_32KHZ

> 

> if I compare this with broadcom-bluetooth.txt or ti-bluetooth.txt then besides compatible, everything else is optional. The nokia-bluetooth.txt has everything required, but that is also a really specific platform.

> 

> Can we be less restrictive for a QCA general purpose chip?

Ok. To me, at least the enable gpio seems required.

> 

>> +

>> +Example:

>> +

>> +serial@7570000 {

>> +	pinctrl-names = "default", "sleep";

>> +	pinctrl-0 = <&blsp1_uart1_default>;

>> +	pinctrl-1 = <&blsp1_uart1_sleep>;

>> +

>> +	bluetooth {

>> +		compatible = "qcom,qca6174-bt";

>> +

>> +		enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;

>> +

>> +		pinctrl-names = "default";

>> +		pinctrl-0 = <&bt_en_pin_a>;

> 

> This one I do not understand and you might want to shed some light into why this is done that way.

Sure. It reclaims this gpio pin for this device. Will add it to the 
documentation.

> 

>> +

>> +		clocks = <&divclk4>;

> 

> No clock-names?

No need for a name as there is only one clk obtained by passing a NULL 
id to devm_gpiod_get().

Regards,
Thierry

> 

> Regards

> 

> Marcel

> 

--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt b/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt
new file mode 100644
index 000000000000..bbc2973634b2
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt
@@ -0,0 +1,34 @@ 
+Qualcomm Bluetooth Chips
+---------------------
+
+This documents the binding structure and common properties for serial
+attached Qualcomm devices.
+
+Serial attached Qualcomm devices shall be a child node of the host UART
+device the slave device is attached to.
+
+Required properties:
+ - compatible: should contain one of the following:
+   * "qcom,qca6174-bt"
+ - enable-gpios: gpio specifier used to enable chip
+ - pinctrl-0: pin phandle for bt_en gpio
+ - clocks: clock phandle for SUSCLK_32KHZ
+
+Example:
+
+serial@7570000 {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&blsp1_uart1_default>;
+	pinctrl-1 = <&blsp1_uart1_sleep>;
+
+	bluetooth {
+		compatible = "qcom,qca6174-bt";
+
+		enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&bt_en_pin_a>;
+
+		clocks = <&divclk4>;
+	};
+};