[alsa-devel] [Patch v6 3/7] slimbus: qcom: Add Qualcomm Slimbus controller driver
Srinivas Kandagatla
srinivas.kandagatla at linaro.org
Mon Oct 16 11:28:17 CEST 2017
On 13/10/17 20:17, Rob Herring wrote:
> On Fri, Oct 06, 2017 at 05:51:32PM +0200, srinivas.kandagatla at linaro.org wrote:
>> From: Sagar Dharia <sdharia at codeaurora.org>
>>
>> This controller driver programs manager, interface, and framer
>> devices for Qualcomm's slimbus HW block.
>> Manager component currently implements logical address setting,
>> and messaging interface.
>> Interface device reports bus synchronization information, and framer
>> device clocks the bus from the time it's woken up, until clock-pause
>> is executed by the manager device.
>>
>> Signed-off-by: Sagar Dharia <sdharia at codeaurora.org>
>> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
>> ---
>> .../devicetree/bindings/slimbus/slim-qcom-ctrl.txt | 43 ++
>
> Version 6 and this is the first I see it? Where's the version history?
Its been a very long time (18 months) from v5-v6, I will try see if I
can pull up some version history from past few year patches :-) before i
send next version. If it helps review process.
>
> Please split to separate patch.
Will do that in next version.
>
>> drivers/slimbus/Kconfig | 9 +
>> drivers/slimbus/Makefile | 3 +
>> drivers/slimbus/slim-qcom-ctrl.c | 594 +++++++++++++++++++++
>> drivers/slimbus/slim-qcom.h | 63 +++
>> 5 files changed, 712 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/slimbus/slim-qcom-ctrl.txt
>> create mode 100644 drivers/slimbus/slim-qcom-ctrl.c
>> create mode 100644 drivers/slimbus/slim-qcom.h
>>
>> diff --git a/Documentation/devicetree/bindings/slimbus/slim-qcom-ctrl.txt b/Documentation/devicetree/bindings/slimbus/slim-qcom-ctrl.txt
>> new file mode 100644
>> index 0000000..081110d
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/slimbus/slim-qcom-ctrl.txt
>> @@ -0,0 +1,43 @@
>> +Qualcomm SLIMBUS controller
>> +This controller is used if applications processor driver controls slimbus
>> +master component.
>> +
>> +Required properties:
>> +
>> + - #address-cells - refer to Documentation/devicetree/bindings/slimbus/bus.txt
>> + - #size-cells - refer to Documentation/devicetree/bindings/slimbus/bus.txt
>> +
>> + - reg : Offset and length of the register region(s) for the device
>> + - reg-names : Register region name(s) referenced in reg above
>> + Required register resource entries are:
>> + "ctrl": Physical adderess of controller register blocks
>> + - compatible : should be "qcom,<SOC-NAME>-slim" for SOC specific compatible or
>> + "qcom,slim" if using generic qcom SLIM IP.
>
> No such thing as generic IP.Yep, i though I removed such instances, but it looks like there are
still in more places, I will rescan for them before sending next version.
>
> Fine as a fallback, but not by itself.
>
>> + - interrupts : Interrupt number used by this controller
>> + - clocks : Interface and core clocks used by this slimbus controller
>> + - clock-names : Required clock-name entries are:
>> + "iface_clk" : Interface clock for this controller
>> + "core_clk" : Interrupt for controller core's BAM
>
> _clk is redundant.
I agree, I will remove this suffixes in next version.
>
>> +
>> +
>> +Optional property:
>> + - reg entry for slew rate : If slew rate control register is provided, this
>> + entry should be used.
>> + - reg-name for slew rate: "slew"
>
> Pointless to have -name when there is only one.
>
I agree if it was just one.
Slew is optional resource, but as a whole there are 2 resources for the
controller, so we need -name as there are 2 resources.
>> +
>> +Example:
>> + slim at 28080000 {
>> + compatible = "qcom,slim";
>> + #address-cells = <4>;
>> + #size-cells = <0>;
>> + reg = <0x28080000 0x2000>, <0x80207C 4>;
>> + reg-names = "ctrl", "slew";
>> + interrupts = <0 33 0>;
>> + clocks = <&lcc SLIMBUS_SRC>, <&lcc AUDIO_SLIMBUS_CLK>;
>> + clock-names = "iface_clk", "core_clk";
>> +
>> + codec: wcd9310 at 1{
>> + compatible = "slim217,60";
>> + reg = <1 0>;
>
> This would not compile. You don't have 4 cells here.
Yep, the example needs fixing.. address cells are actually 2.
>
>> + };
>> + };
More information about the Alsa-devel
mailing list