* [PATCH v4 0/2] drm: add DisplayPort connector
@ 2020-11-30 11:29 Tomi Valkeinen
2020-11-30 11:29 ` [PATCH v4 1/2] dt-bindings: dp-connector: add binding for " Tomi Valkeinen
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Tomi Valkeinen @ 2020-11-30 11:29 UTC (permalink / raw)
To: dri-devel, devicetree
Cc: Nikhil Devshatwar, Laurent Pinchart, ville.syrjala,
Andrzej Hajda, Neil Armstrong, Jonas Karlman, Jernej Skrabec,
Daniel Vetter, Swapnil Kashinath Jakhade, Sekhar Nori,
Tomi Valkeinen
Hi,
This series adds the DT bindings and a driver for DisplayPort connector.
Minor changes since v3:
- Added Laurent's reviewed-bys
- Added $ref to graph schema
- Use 'ret' instead of 'r'
- Add the missing period
Tomi
Tomi Valkeinen (2):
dt-bindings: dp-connector: add binding for DisplayPort connector
drm/bridge: display-connector: add DP support
.../display/connector/dp-connector.yaml | 56 +++++++++++++++++++
drivers/gpu/drm/bridge/display-connector.c | 46 ++++++++++++++-
2 files changed, 100 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/display/connector/dp-connector.yaml
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v4 1/2] dt-bindings: dp-connector: add binding for DisplayPort connector
2020-11-30 11:29 [PATCH v4 0/2] drm: add DisplayPort connector Tomi Valkeinen
@ 2020-11-30 11:29 ` Tomi Valkeinen
2020-12-01 2:09 ` Rob Herring
2020-11-30 11:29 ` [PATCH v4 2/2] drm/bridge: display-connector: add DP support Tomi Valkeinen
2020-12-03 11:52 ` [PATCH v4 0/2] drm: add DisplayPort connector Tomi Valkeinen
2 siblings, 1 reply; 7+ messages in thread
From: Tomi Valkeinen @ 2020-11-30 11:29 UTC (permalink / raw)
To: dri-devel, devicetree
Cc: Nikhil Devshatwar, Laurent Pinchart, ville.syrjala,
Andrzej Hajda, Neil Armstrong, Jonas Karlman, Jernej Skrabec,
Daniel Vetter, Swapnil Kashinath Jakhade, Sekhar Nori,
Tomi Valkeinen, Laurent Pinchart
Add binding for DisplayPort connector. A few notes:
* Similar to hdmi-connector, it has hpd-gpios as an optional property,
as the HPD could also be handled by, e.g., the DP bridge.
* dp-pwr-supply, which provides 3.3V on DP_PWR pin, is optional, as it
is not strictly required: standard DP cables do not even have the pin
connected.
* Connector type. Full size and mini connectors are identical except for
the connector size and form, so I believe there is no functional need
for this property. But similar to 'label' property, it might be used
to present information about the connector to the userspace.
* No eDP. There's really no "eDP connector", as it's always a custom
made connection between the DP and the DP panel, although the eDP spec
does offer a few suggested pin setups. So possibly there is no need for
edp-connector binding, but even if there is, I don't want to guess what
it could look like, and could it be part of the dp-connector binding.
* No DP++. I'm not familiar with DP++. DP++ might need an i2c bus added
to the bindings.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
.../display/connector/dp-connector.yaml | 56 +++++++++++++++++++
1 file changed, 56 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/connector/dp-connector.yaml
diff --git a/Documentation/devicetree/bindings/display/connector/dp-connector.yaml b/Documentation/devicetree/bindings/display/connector/dp-connector.yaml
new file mode 100644
index 000000000000..1c17d60e7760
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/connector/dp-connector.yaml
@@ -0,0 +1,56 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/connector/dp-connector.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: DisplayPort Connector
+
+maintainers:
+ - Tomi Valkeinen <tomi.valkeinen@ti.com>
+
+properties:
+ compatible:
+ const: dp-connector
+
+ label: true
+
+ type:
+ enum:
+ - full-size
+ - mini
+
+ hpd-gpios:
+ description: A GPIO line connected to HPD
+ maxItems: 1
+
+ dp-pwr-supply:
+ description: Power supply for the DP_PWR pin
+ maxItems: 1
+
+ port:
+ $ref: /schemas/graph.yaml#/properties/port
+ description: Connection to controller providing DP signals
+
+required:
+ - compatible
+ - type
+ - port
+
+additionalProperties: false
+
+examples:
+ - |
+ connector {
+ compatible = "dp-connector";
+ label = "dp0";
+ type = "full-size";
+
+ port {
+ dp_connector_in: endpoint {
+ remote-endpoint = <&dp_out>;
+ };
+ };
+ };
+
+...
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v4 2/2] drm/bridge: display-connector: add DP support
2020-11-30 11:29 [PATCH v4 0/2] drm: add DisplayPort connector Tomi Valkeinen
2020-11-30 11:29 ` [PATCH v4 1/2] dt-bindings: dp-connector: add binding for " Tomi Valkeinen
@ 2020-11-30 11:29 ` Tomi Valkeinen
2020-12-03 11:52 ` [PATCH v4 0/2] drm: add DisplayPort connector Tomi Valkeinen
2 siblings, 0 replies; 7+ messages in thread
From: Tomi Valkeinen @ 2020-11-30 11:29 UTC (permalink / raw)
To: dri-devel, devicetree
Cc: Nikhil Devshatwar, Laurent Pinchart, ville.syrjala,
Andrzej Hajda, Neil Armstrong, Jonas Karlman, Jernej Skrabec,
Daniel Vetter, Swapnil Kashinath Jakhade, Sekhar Nori,
Tomi Valkeinen, Laurent Pinchart
Add DP support to display-connector driver. The driver will support HPD
via a GPIO and DP PWR.
DP PWR will be enabled at probe, which is not optimal, but I'm not sure
what would be a good place to enable and disable DP PWR. Perhaps
attach/detach, but I don't know if enabling HW is something that attach
is supposed to do.
In any case, I don't think there's much difference in power consumption
between the version in this patch and enabling the regulator later: if
the driver probes, supposedly it will attach very soon afterwards, and
we need to enable the DP PWR as soon as possible.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
drivers/gpu/drm/bridge/display-connector.c | 46 +++++++++++++++++++++-
1 file changed, 44 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/bridge/display-connector.c b/drivers/gpu/drm/bridge/display-connector.c
index 4d278573cdb9..05eb759da6fc 100644
--- a/drivers/gpu/drm/bridge/display-connector.c
+++ b/drivers/gpu/drm/bridge/display-connector.c
@@ -11,6 +11,7 @@
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/platform_device.h>
+#include <linux/regulator/consumer.h>
#include <drm/drm_bridge.h>
#include <drm/drm_edid.h>
@@ -20,6 +21,8 @@ struct display_connector {
struct gpio_desc *hpd_gpio;
int hpd_irq;
+
+ struct regulator *dp_pwr;
};
static inline struct display_connector *
@@ -172,11 +175,12 @@ static int display_connector_probe(struct platform_device *pdev)
of_property_read_string(pdev->dev.of_node, "label", &label);
/*
- * Get the HPD GPIO for DVI and HDMI connectors. If the GPIO can provide
+ * Get the HPD GPIO for DVI, HDMI and DP connectors. If the GPIO can provide
* edge interrupts, register an interrupt handler.
*/
if (type == DRM_MODE_CONNECTOR_DVII ||
- type == DRM_MODE_CONNECTOR_HDMIA) {
+ type == DRM_MODE_CONNECTOR_HDMIA ||
+ type == DRM_MODE_CONNECTOR_DisplayPort) {
conn->hpd_gpio = devm_gpiod_get_optional(&pdev->dev, "hpd",
GPIOD_IN);
if (IS_ERR(conn->hpd_gpio)) {
@@ -223,6 +227,38 @@ static int display_connector_probe(struct platform_device *pdev)
}
}
+ /* Get the DP PWR for DP connector. */
+ if (type == DRM_MODE_CONNECTOR_DisplayPort) {
+ int ret;
+
+ conn->dp_pwr = devm_regulator_get_optional(&pdev->dev, "dp-pwr");
+
+ if (IS_ERR(conn->dp_pwr)) {
+ ret = PTR_ERR(conn->dp_pwr);
+
+ switch (ret) {
+ case -ENODEV:
+ conn->dp_pwr = NULL;
+ break;
+
+ case -EPROBE_DEFER:
+ return -EPROBE_DEFER;
+
+ default:
+ dev_err(&pdev->dev, "failed to get DP PWR regulator: %d\n", ret);
+ return ret;
+ }
+ }
+
+ if (conn->dp_pwr) {
+ ret = regulator_enable(conn->dp_pwr);
+ if (ret) {
+ dev_err(&pdev->dev, "failed to enable DP PWR regulator: %d\n", ret);
+ return ret;
+ }
+ }
+ }
+
conn->bridge.funcs = &display_connector_bridge_funcs;
conn->bridge.of_node = pdev->dev.of_node;
@@ -251,6 +287,9 @@ static int display_connector_remove(struct platform_device *pdev)
{
struct display_connector *conn = platform_get_drvdata(pdev);
+ if (conn->dp_pwr)
+ regulator_disable(conn->dp_pwr);
+
drm_bridge_remove(&conn->bridge);
if (!IS_ERR(conn->bridge.ddc))
@@ -275,6 +314,9 @@ static const struct of_device_id display_connector_match[] = {
}, {
.compatible = "vga-connector",
.data = (void *)DRM_MODE_CONNECTOR_VGA,
+ }, {
+ .compatible = "dp-connector",
+ .data = (void *)DRM_MODE_CONNECTOR_DisplayPort,
},
{},
};
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v4 1/2] dt-bindings: dp-connector: add binding for DisplayPort connector
2020-11-30 11:29 ` [PATCH v4 1/2] dt-bindings: dp-connector: add binding for " Tomi Valkeinen
@ 2020-12-01 2:09 ` Rob Herring
0 siblings, 0 replies; 7+ messages in thread
From: Rob Herring @ 2020-12-01 2:09 UTC (permalink / raw)
To: Tomi Valkeinen
Cc: Jernej Skrabec, devicetree, Nikhil Devshatwar, dri-devel,
Neil Armstrong, Andrzej Hajda, Jonas Karlman,
Swapnil Kashinath Jakhade, Sekhar Nori, Laurent Pinchart
On Mon, 30 Nov 2020 13:29:18 +0200, Tomi Valkeinen wrote:
> Add binding for DisplayPort connector. A few notes:
>
> * Similar to hdmi-connector, it has hpd-gpios as an optional property,
> as the HPD could also be handled by, e.g., the DP bridge.
>
> * dp-pwr-supply, which provides 3.3V on DP_PWR pin, is optional, as it
> is not strictly required: standard DP cables do not even have the pin
> connected.
>
> * Connector type. Full size and mini connectors are identical except for
> the connector size and form, so I believe there is no functional need
> for this property. But similar to 'label' property, it might be used
> to present information about the connector to the userspace.
>
> * No eDP. There's really no "eDP connector", as it's always a custom
> made connection between the DP and the DP panel, although the eDP spec
> does offer a few suggested pin setups. So possibly there is no need for
> edp-connector binding, but even if there is, I don't want to guess what
> it could look like, and could it be part of the dp-connector binding.
>
> * No DP++. I'm not familiar with DP++. DP++ might need an i2c bus added
> to the bindings.
>
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
> .../display/connector/dp-connector.yaml | 56 +++++++++++++++++++
> 1 file changed, 56 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/connector/dp-connector.yaml
>
Reviewed-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v4 0/2] drm: add DisplayPort connector
2020-11-30 11:29 [PATCH v4 0/2] drm: add DisplayPort connector Tomi Valkeinen
2020-11-30 11:29 ` [PATCH v4 1/2] dt-bindings: dp-connector: add binding for " Tomi Valkeinen
2020-11-30 11:29 ` [PATCH v4 2/2] drm/bridge: display-connector: add DP support Tomi Valkeinen
@ 2020-12-03 11:52 ` Tomi Valkeinen
2020-12-03 21:24 ` Sam Ravnborg
2 siblings, 1 reply; 7+ messages in thread
From: Tomi Valkeinen @ 2020-12-03 11:52 UTC (permalink / raw)
To: dri-devel, devicetree, Andrzej Hajda, Neil Armstrong
Cc: Nikhil Devshatwar, Laurent Pinchart, ville.syrjala,
Jonas Karlman, Jernej Skrabec, Daniel Vetter,
Swapnil Kashinath Jakhade, Sekhar Nori
Hi DRM Bridge maintainers,
On 30/11/2020 13:29, Tomi Valkeinen wrote:
> Hi,
>
> This series adds the DT bindings and a driver for DisplayPort connector.
>
> Minor changes since v3:
> - Added Laurent's reviewed-bys
> - Added $ref to graph schema
> - Use 'ret' instead of 'r'
> - Add the missing period
>
> Tomi
>
> Tomi Valkeinen (2):
> dt-bindings: dp-connector: add binding for DisplayPort connector
> drm/bridge: display-connector: add DP support
>
> .../display/connector/dp-connector.yaml | 56 +++++++++++++++++++
> drivers/gpu/drm/bridge/display-connector.c | 46 ++++++++++++++-
> 2 files changed, 100 insertions(+), 2 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/display/connector/dp-connector.yaml
>
Is it ok for me to push this to drm-misc-next, or does one of the bridge maintainers want to handle
that?
Tomi
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v4 0/2] drm: add DisplayPort connector
2020-12-03 11:52 ` [PATCH v4 0/2] drm: add DisplayPort connector Tomi Valkeinen
@ 2020-12-03 21:24 ` Sam Ravnborg
2020-12-08 9:14 ` Tomi Valkeinen
0 siblings, 1 reply; 7+ messages in thread
From: Sam Ravnborg @ 2020-12-03 21:24 UTC (permalink / raw)
To: Tomi Valkeinen
Cc: dri-devel, devicetree, Andrzej Hajda, Neil Armstrong,
Jernej Skrabec, Jonas Karlman, Sekhar Nori, Laurent Pinchart,
Swapnil Kashinath Jakhade, Nikhil Devshatwar
Hi Tomi,
On Thu, Dec 03, 2020 at 01:52:21PM +0200, Tomi Valkeinen wrote:
> Hi DRM Bridge maintainers,
>
> On 30/11/2020 13:29, Tomi Valkeinen wrote:
> > Hi,
> >
> > This series adds the DT bindings and a driver for DisplayPort connector.
> >
> > Minor changes since v3:
> > - Added Laurent's reviewed-bys
> > - Added $ref to graph schema
> > - Use 'ret' instead of 'r'
> > - Add the missing period
> >
> > Tomi
> >
> > Tomi Valkeinen (2):
> > dt-bindings: dp-connector: add binding for DisplayPort connector
> > drm/bridge: display-connector: add DP support
> >
> > .../display/connector/dp-connector.yaml | 56 +++++++++++++++++++
> > drivers/gpu/drm/bridge/display-connector.c | 46 ++++++++++++++-
> > 2 files changed, 100 insertions(+), 2 deletions(-)
> > create mode 100644 Documentation/devicetree/bindings/display/connector/dp-connector.yaml
> >
>
> Is it ok for me to push this to drm-misc-next, or does one of the bridge maintainers want to handle
> that?
IMO apply them to drm-misc-next.
But I am not bridge maintainer so...
Sam
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v4 0/2] drm: add DisplayPort connector
2020-12-03 21:24 ` Sam Ravnborg
@ 2020-12-08 9:14 ` Tomi Valkeinen
0 siblings, 0 replies; 7+ messages in thread
From: Tomi Valkeinen @ 2020-12-08 9:14 UTC (permalink / raw)
To: Sam Ravnborg
Cc: dri-devel, devicetree, Andrzej Hajda, Neil Armstrong,
Jernej Skrabec, Jonas Karlman, Sekhar Nori, Laurent Pinchart,
Swapnil Kashinath Jakhade, Nikhil Devshatwar
On 03/12/2020 23:24, Sam Ravnborg wrote:
> Hi Tomi,
> On Thu, Dec 03, 2020 at 01:52:21PM +0200, Tomi Valkeinen wrote:
>> Hi DRM Bridge maintainers,
>>
>> On 30/11/2020 13:29, Tomi Valkeinen wrote:
>>> Hi,
>>>
>>> This series adds the DT bindings and a driver for DisplayPort connector.
>>>
>>> Minor changes since v3:
>>> - Added Laurent's reviewed-bys
>>> - Added $ref to graph schema
>>> - Use 'ret' instead of 'r'
>>> - Add the missing period
>>>
>>> Tomi
>>>
>>> Tomi Valkeinen (2):
>>> dt-bindings: dp-connector: add binding for DisplayPort connector
>>> drm/bridge: display-connector: add DP support
>>>
>>> .../display/connector/dp-connector.yaml | 56 +++++++++++++++++++
>>> drivers/gpu/drm/bridge/display-connector.c | 46 ++++++++++++++-
>>> 2 files changed, 100 insertions(+), 2 deletions(-)
>>> create mode 100644 Documentation/devicetree/bindings/display/connector/dp-connector.yaml
>>>
>>
>> Is it ok for me to push this to drm-misc-next, or does one of the bridge maintainers want to handle
>> that?
>
> IMO apply them to drm-misc-next.
> But I am not bridge maintainer so...
There has been no comments, so pushing today.
Tomi
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2020-12-08 9:16 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-30 11:29 [PATCH v4 0/2] drm: add DisplayPort connector Tomi Valkeinen
2020-11-30 11:29 ` [PATCH v4 1/2] dt-bindings: dp-connector: add binding for " Tomi Valkeinen
2020-12-01 2:09 ` Rob Herring
2020-11-30 11:29 ` [PATCH v4 2/2] drm/bridge: display-connector: add DP support Tomi Valkeinen
2020-12-03 11:52 ` [PATCH v4 0/2] drm: add DisplayPort connector Tomi Valkeinen
2020-12-03 21:24 ` Sam Ravnborg
2020-12-08 9:14 ` Tomi Valkeinen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).