On 19/03/2023 15:59, Bryan O'Donoghue wrote: > On 19/03/2023 11:58, Krzysztof Kozlowski wrote: >>> + >>> +maintainers: >>> + - Bryan O'Donoghue<bryan.odonoghue@xxxxxxxxxx> >>> + >>> +description: | >>> + Qualcomm PMIC Virtual Type-C Port Manager Driver >>> + A virtual device which manages Qualcomm PMIC provided Type-C port and >>> + Power Delivery in one place. >> OK, so it looks like bindings for driver, so a no-go. Unless there is >> such device as "manager", this does not look like hardware description. >> >>> + >>> +properties: >>> + compatible: >>> + const: qcom,pmic-virt-tcpm >>> + >>> + connector: >>> + type: object >>> + $ref: /schemas/connector/usb-connector.yaml# >>> + unevaluatedProperties: false >>> + >>> + port: >>> + $ref: /schemas/graph.yaml#/properties/port >>> + description: >>> + Contains a port which consumes data-role switching messages. >>> + >>> + qcom,pmic-typec: >>> + $ref: /schemas/types.yaml#/definitions/phandle >>> + description: >>> + A phandle to the typec port hardware driver. >>> + >>> + qcom,pmic-pdphy: >>> + $ref: /schemas/types.yaml#/definitions/phandle >> Having typec and phy as phandles - not children - also suggests this is >> some software construct, not hardware description. > > So probably I didn't interpret Rob's comment correctly here. He proposed to merge it with other node: "probably merged with one of the nodes these phandles point to." "Why can't most of this binding be part of" I don't see how you implemented his comments. Actually, nothing improved here in this regard - you still have these phandles. > > For a pure software device - a virtual device - there should be no dts > representation at all - not even at the firmware{}, chosen{}, rpm{} By software we interpret here HLOS, so Linux. Firmware is FW, thus not software in that context. rpm{} is some firmware on some processor. You wrote here bindings/nodes for a Linux driver. > level, it wouldn't be possible/acceptable to have a tcpm {} with a > compat pointing to the two phandles I have here ? What is tcpm? Linux driver? Then not. You cannot have device nodes for a Linux driver. Best regards, Krzysztof