Re: [RFR 2/2] drm/panel: Add simple panel support

Tomi Valkeinen
2013-10-17T11:35:49Z

[-- Attachment #1: Type: text/plain, Size: 1731 bytes --]

On 17/10/13 14:02, Laurent Pinchart wrote:

>> Okay, so if I understand correctly, translating those bindings to panel
>> nodes would look somewhat like this:
>>
>> dc: display-controller {
>> ports {
>> port@0 {
>> remote-endpoint = <&panel>;
>> };
>> };
>> };
>>
>> panel: panel {
>> ports {
>> port@0 {
>> remote-endpoint = <&dc>;
>> };
>> };
>> };
>>
>> The above leaves out any of the other, non-relevant properties. Does
>> that sound about right?
>
> Yes it does.

It does?

Shouldn't it be something like:

panel {
ports {
port@0 {
endpoint@0 {
remote = <&dc>;
};
};
};
};

And simplified:

panel {
port {
endpoint@0 {
remote = <&dc>;
};
};
};

You do need a node for the endpoint, a remote-endpoint property is not
enough.

> Please note that, when a device has as single port, the ports node can be
> omitted, and the port doesn't need to be numbered. You would then end up with
>
> dc: display-controller {
> port {
> remote-endpoint = <&panel>;
> };
> };
>
> panel: panel {
> port {
> remote-endpoint = <&dc>;
> };
> };
>
> I don't think there's a way to simplify it further.

I'm not sure if there's a specific need for the port or endpoint nodes
in cases like the above. Even if we have common properties describing
the endpoint, I guess they could just be in the parent node.

panel {
remote = <&dc>;
common-video-property = <asd>;
};

The above would imply one port and one endpoint. Would that work? If we
had a function like parse_endpoint(node), we could just point it to
either a real endpoint node, or to the device's node.

Tomi

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 901 bytes --]