Re: [PATCH 2/4] dt-bindings: media: Add bindings for raspberrypi,rp1-cfe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 19/03/2024 07:46, Tomi Valkeinen wrote:
>>> +  reg:
>>> +    items:
>>> +      - description: CSI-2 registers
>>> +      - description: D-PHY registers
>>> +      - description: MIPI CFG (a simple top-level mux) registers
>>> +      - description: FE registers
>>> +
>>> +  interrupts:
>>> +    maxItems: 1
>>> +
>>> +  clocks:
>>> +    maxItems: 1
>>> +
>>> +  port:
>>> +    $ref: /schemas/graph.yaml#/$defs/port-base
>>> +    additionalProperties: false
>>> +    description: CSI-2 RX Port
>>
>> Only one port, so there is nothing to output to?
> 
> The CFE has DMA, so it writes to memory. But no other outputs.

You still might have some sort of pipeline, e.g. some post processing
block. But if this is end block, then I guess it's fine.

> 
>>> +
>>> +    properties:
>>> +      endpoint:
>>> +        $ref: video-interfaces.yaml#
>>> +        unevaluatedProperties: false
>>> +
>>> +        properties:
>>> +          data-lanes:
>>> +            minItems: 1
>>> +            maxItems: 4
>>> +
>>> +          clock-lanes:
>>> +            maxItems: 1
>>> +
>>> +          clock-noncontinuous: true
>>
>> Drop
> 
> Hmm, I saw this used in multiple other bindings, and thought it means 
> the property is allowed and copied it here.
> 
> If that's not the case, does this mean all the properties from 
> video-interfaces.yaml are allowed (even invalid ones, like pclk-sample)?

Yes, that's the meaning of unevaluatedProperties you have a bit above.

> 
>>> +
>>> +        required:
>>> +          - clock-lanes
>>> +          - data-lanes
>>> +
>>> +required:
>>> +  - compatible
>>> +  - reg
>>> +  - interrupts
>>> +  - clocks
>>> +
>>> +additionalProperties: false
>>> +
>>> +examples:
>>> +  - |
>>> +    #include <dt-bindings/clock/rp1.h>
>>> +    #include <dt-bindings/interrupt-controller/irq.h>
>>> +    #include <dt-bindings/mfd/rp1.h>
>>> +
>>> +    rpi1 {
>>
>> soc
> 
> That should actually be "rp1", not "rpi1". rp1 is the co-processor on 
> which the cfe is located, so it doesn't reside in the soc itself. But 

Where is the co-processor located?

> perhaps that's not relevant, and "soc" is just a generic container that 
> should always be used?

Does not have to be soc, but rp1 is not generic.

Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation




Best regards,
Krzysztof





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux