Re: [PATCH v2 2/2] dt-bindings: net: bluetooth: Add device property nvm-postfix for QCA6174

From: Rocky Liao
Date: Tue Apr 09 2019 - 06:15:31 EST


On 2019-04-04 20:32, Marc Gonzalez wrote:
+robh

On 04/04/2019 11:08, Rocky Liao wrote:

This patchs patch adds an optional device property nvm-postfix to allow the
driver to load customized nvm file based on this property

While text /before/ is indeed called a "prefix", text /after/ is not a
"postfix",
but a "suffix".


Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt | 2 ++
1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt b/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt
index 824c0e2..70cda4b 100644
--- a/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt
+++ b/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt
@@ -16,6 +16,7 @@ Optional properties for compatible string qcom,qca6174-bt:

- enable-gpios: gpio specifier used to enable chip
- clocks: clock provided to the controller (SUSCLK_32KHZ)
+ - nvm-postfix: nvm file postfix to load customized nvm file

The device tree is supposed to describe hardware.

The name of which file to load can hardly be considered part of the HW.

Possible solutions:
1) derive the file name from the compatible string
2) pass the name as a module parameter
3) something else


@@ -39,6 +40,7 @@ serial@7570000 {

enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;
clocks = <&divclk4>;
+ nvm-postfix = "i2s";
};
};

If one provides the entire suffix, including the underscore, then you can
simplify the code:

snprintf(config.fwname, sizeof(config.fwname), "qca/nvm_%08x%s.bin",
soc_ver, suffix ? suffix : "");

Regards
.
Hi Marc,

The major purpose for that property is about the BT audio bus type, can it be considered as part of the HW? If yes maybe we can use a property name "audio-bus" to reflect that.

If not then I will adopt the solution 1 to add a new compatible string "{ .compatible = "qcom,qca6174-bt-i2s" }" and load specific nvm for this compatible string, please feel free to let me know if any other concerns.

--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project