mbox series

[0/2] Add interconnect driver for SDX75

Message ID 1693889975-19122-1-git-send-email-quic_rohiagar@quicinc.com
Headers show
Series Add interconnect driver for SDX75 | expand

Message

Rohit Agarwal Sept. 5, 2023, 4:59 a.m. UTC
Hi,

This series adds interconnect driver support for SDX75 platform.

Thanks,
Rohit.

Rohit Agarwal (2):
  dt-bindings: interconnect: Add compatibles for SDX75
  interconnect: qcom: Add SDX75 interconnect provider driver

 .../bindings/interconnect/qcom,sdx75-rpmh.yaml     |  100 ++
 drivers/interconnect/qcom/Kconfig                  |    9 +
 drivers/interconnect/qcom/Makefile                 |    2 +
 drivers/interconnect/qcom/sdx75.c                  | 1134 ++++++++++++++++++++
 drivers/interconnect/qcom/sdx75.h                  |   97 ++
 include/dt-bindings/interconnect/qcom,sdx75.h      |  102 ++
 6 files changed, 1444 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdx75-rpmh.yaml
 create mode 100644 drivers/interconnect/qcom/sdx75.c
 create mode 100644 drivers/interconnect/qcom/sdx75.h
 create mode 100644 include/dt-bindings/interconnect/qcom,sdx75.h

Comments

Rohit Agarwal Sept. 5, 2023, 7:14 a.m. UTC | #1
On 9/5/2023 12:29 PM, Krzysztof Kozlowski wrote:
> On 05/09/2023 06:59, Rohit Agarwal wrote:
>> Add dt-bindings compatibles and interconnect IDs for
>> Qualcomm SDX75 platform.
>>
>> Signed-off-by: Rohit Agarwal <quic_rohiagar@quicinc.com>
>> ---
>>   .../bindings/interconnect/qcom,sdx75-rpmh.yaml     | 100 ++++++++++++++++++++
>>   include/dt-bindings/interconnect/qcom,sdx75.h      | 102 +++++++++++++++++++++
>>   2 files changed, 202 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdx75-rpmh.yaml
>>   create mode 100644 include/dt-bindings/interconnect/qcom,sdx75.h
>>
>> diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sdx75-rpmh.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sdx75-rpmh.yaml
>> new file mode 100644
>> index 0000000..f2dc87c
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/interconnect/qcom,sdx75-rpmh.yaml
>> @@ -0,0 +1,100 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/interconnect/qcom,sdx75-rpmh.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Qualcomm RPMh Network-On-Chip Interconnect on SDX75
>> +
>> +maintainers:
>> +  - Georgi Djakov <djakov@kernel.org>
> I don't think Georgi maintains this device. It's maintainer of device,
> not the subsystem.
Ok, Will update the maintainer.
>
>> +
>> +description:
>> +  RPMh interconnect providers support system bandwidth requirements through
>> +  RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
>> +  able to communicate with the BCM through the Resource State Coordinator (RSC)
>> +  associated with each execution environment. Provider nodes must point to at
>> +  least one RPMh device child node pertaining to their RSC and each provider
>> +  can map to multiple RPMh resources.
>> +
>> +properties:
>> +  compatible:
>> +    enum:
>> +      - qcom,sdx75-clk-virt
>> +      - qcom,sdx75-dc-noc
>> +      - qcom,sdx75-gem-noc
>> +      - qcom,sdx75-mc-virt
>> +      - qcom,sdx75-pcie-anoc
>> +      - qcom,sdx75-system-noc
>> +
>> +  '#interconnect-cells': true'
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  clocks:
>> +    maxItems: 1
>> +
>> +allOf:
>> +  - $ref: qcom,rpmh-common.yaml#
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            enum:
>> +              - qcom,sdx75-clk-virt
>> +              - qcom,sdx75-mc-virt
>> +    then:
>> +      properties:
>> +        reg: false
>> +    else:
>> +      required:
>> +        - reg
>> +
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            enum:
>> +              - qcom,sdx75-clk-virt
>> +    then:
>> +      properties:
>> +        clocks:
>> +          items:
>> +            - description: RPMH CC QPIC Clock
>> +
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            enum:
>> +              - qcom,sdx75-clk-virt
> This if: clause should be merged with the one earlier.
Ok, understood.
>> +    then:
>> +      required:
>> +        - clocks
>> +    else:
>> +      properties:
>> +        clocks: false
>> +
>> +required:
>> +  - compatible
> Please keep the order like in example-schema, so required: goes before
> allOf.
Sure, will update this.

Thanks,
Rohit.
>> +
>> +unevaluatedProperties: false
> Best regards,
> Krzysztof
>