All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
To: Andrzej Pietrasiewicz
	<andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
Cc: "Y.C. Chen" <yc_chen-SAlXDmAnmOAqDJ6do+/SaQ@public.gmane.org>,
	"Heiko Stübner" <heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org>,
	"Sam Ravnborg" <sam-uyr5N9Q2VtJg9hUCZPvPmw@public.gmane.org>,
	"Neil Armstrong"
	<narmstrong-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>,
	"Maxime Ripard"
	<maxime.ripard-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org>,
	"Joonas Lahtinen"
	<joonas.lahtinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
	"Liviu Dudau" <liviu.dudau-5wv7dgnIgG8@public.gmane.org>,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
	"Douglas Anderson"
	<dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
	"Andrzej Hajda" <a.hajda-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>,
	"Thierry Reding"
	<thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	"Laurent Pinchart"
	<Laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>,
	"Benjamin Gaignard"
	<benjamin.gaignard-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	kernel-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org,
	"Fabio Estevam"
	<festevam-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	"David (ChunMing) Zhou"
	<David1.Zhou-5C7GfCeVMHo@public.gmane.org>,
	"Joonyoung Shim"
	<jy0922.shim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>,
	"Vincent Abriou" <vincent.abriou-qxv4g6HH51o@public.gmane.org>,
	"Rob Clark" <robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	"Krzysztof Kozlowski"
	<krzk-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	"Jonathan Hunter"
	<jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH v4 01/23] drm: Include ddc adapter pointer in struct drm_connector
Date: Thu, 11 Jul 2019 15:00:17 +0300	[thread overview]
Message-ID: <20190711120017.GU5942__4977.01970614202$1562871353$gmane$org@intel.com> (raw)
In-Reply-To: <5957ae96ee20eed5cfcb8a9619e2f61d71fe227e.1562843413.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>

On Thu, Jul 11, 2019 at 01:26:28PM +0200, Andrzej Pietrasiewicz wrote:
> Add generic code which creates symbolic links in sysfs, pointing to ddc
> interface used by a particular video output. For example:
> 
> ls -l /sys/class/drm/card0-HDMI-A-1/ddc
> lrwxrwxrwx 1 root root 0 Jun 24 10:42 /sys/class/drm/card0-HDMI-A-1/ddc \
> 	-> ../../../../soc/13880000.i2c/i2c-2
> 
> This makes it easy for user to associate a display with its ddc adapter
> and use e.g. ddcutil to control the chosen monitor.
> 
> This patch adds an i2c_adapter pointer to struct drm_connector. Particular
> drivers can then use it instead of using their own private instance. If a
> connector contains a ddc, then create a symbolic link in sysfs.
> 
> Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
> ---
>  drivers/gpu/drm/drm_sysfs.c |  7 +++++++
>  include/drm/drm_connector.h | 11 +++++++++++
>  2 files changed, 18 insertions(+)
> 
> diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c
> index ad10810bc972..26d359b39785 100644
> --- a/drivers/gpu/drm/drm_sysfs.c
> +++ b/drivers/gpu/drm/drm_sysfs.c
> @@ -294,6 +294,9 @@ int drm_sysfs_connector_add(struct drm_connector *connector)
>  	/* Let userspace know we have a new connector */
>  	drm_sysfs_hotplug_event(dev);
>  
> +	if (connector->ddc)
> +		return sysfs_create_link(&connector->kdev->kobj,
> +				 &connector->ddc->dev.kobj, "ddc");
>  	return 0;
>  }
>  
> @@ -301,6 +304,10 @@ void drm_sysfs_connector_remove(struct drm_connector *connector)
>  {
>  	if (!connector->kdev)
>  		return;
> +
> +	if (connector->ddc)
> +		sysfs_remove_link(&connector->kdev->kobj, "ddc");
> +
>  	DRM_DEBUG("removing \"%s\" from sysfs\n",
>  		  connector->name);
>  
> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
> index ca745d9feaf5..1ad3d1d54ba7 100644
> --- a/include/drm/drm_connector.h
> +++ b/include/drm/drm_connector.h
> @@ -23,6 +23,7 @@
>  #ifndef __DRM_CONNECTOR_H__
>  #define __DRM_CONNECTOR_H__
>  
> +#include <linux/i2c.h>

struct i2c_adapter;
would suffice.

>  #include <linux/list.h>
>  #include <linux/llist.h>
>  #include <linux/ctype.h>
> @@ -1308,6 +1309,16 @@ struct drm_connector {
>  	 * [0]: progressive, [1]: interlaced
>  	 */
>  	int audio_latency[2];
> +
> +	/**
> +	 * @ddc: associated ddc adapter.
> +	 * A connector usually has its associated ddc adapter. If a driver uses
> +	 * this field, then an appropriate symbolic link is created in connector
> +	 * sysfs directory to make it easy for the user to tell which i2c
> +	 * adapter is for a particular display.
> +	 */
> +	struct i2c_adapter *ddc;
> +
>  	/**
>  	 * @null_edid_counter: track sinks that give us all zeros for the EDID.
>  	 * Needed to workaround some HW bugs where we get all 0s
> -- 
> 2.17.1

-- 
Ville Syrjälä
Intel
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

  parent reply	other threads:[~2019-07-11 12:00 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-11 11:26 [PATCH v4 00/23] Associate ddc adapters with connectors Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 01/23] drm: Include ddc adapter pointer in struct drm_connector Andrzej Pietrasiewicz
2019-07-11 12:00   ` Ville Syrjälä
     [not found]   ` <5957ae96ee20eed5cfcb8a9619e2f61d71fe227e.1562843413.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2019-07-11 12:00     ` Ville Syrjälä [this message]
2019-07-11 12:00   ` Ville Syrjälä
2019-07-11 11:26 ` [PATCH v4 02/23] drm/exynos: Provide ddc symlink in connector's sysfs Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 03/23] drm: rockchip: Provide ddc symlink in rk3066_hdmi sysfs directory Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 06/23] drm/sun4i: hdmi: Provide ddc symlink in sun4i hdmi connector " Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 07/23] drm/mediatek: Provide ddc symlink in " Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 08/23] drm/tegra: Provide ddc symlink in output " Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 09/23] drm/imx: imx-ldb: Provide ddc symlink in connector's sysfs Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 10/23] drm/imx: imx-tve: " Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 11/23] drm/vc4: Provide ddc symlink in connector sysfs directory Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 12/23] drm: zte: Provide ddc symlink in hdmi " Andrzej Pietrasiewicz
2019-07-23  5:58   ` Shawn Guo
2019-07-11 11:26 ` [PATCH v4 13/23] drm: zte: Provide ddc symlink in vga " Andrzej Pietrasiewicz
     [not found]   ` <9cdd2fc46dbcb6b596786e5a12b7176c77a38d78.1562843413.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2019-07-23  5:58     ` Shawn Guo
2019-07-11 11:26 ` [PATCH v4 14/23] drm/tilcdc: Provide ddc symlink in " Andrzej Pietrasiewicz
     [not found]   ` <d1d415022c598fb7acd033f0f322dd67250adaa9.1562843413.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2019-07-23  9:05     ` Sam Ravnborg
2019-07-23  9:05       ` Sam Ravnborg
2019-07-23 12:44       ` Andrzej Pietrasiewicz
2019-07-23 12:44         ` Andrzej Pietrasiewicz
2019-07-23 12:44         ` Andrzej Pietrasiewicz
     [not found]         ` <3ad60be5-49cf-4017-4b74-53a2d6272deb-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2019-07-23 15:19           ` Sam Ravnborg
2019-07-23 15:19             ` Sam Ravnborg
2019-07-23 15:19             ` Sam Ravnborg
2019-07-24  8:01         ` Thomas Zimmermann
2019-07-24  8:01           ` Thomas Zimmermann
2019-07-24  8:01           ` Thomas Zimmermann
2019-07-24  8:51           ` Andrzej Pietrasiewicz
2019-07-24  8:51             ` Andrzej Pietrasiewicz
2019-07-24  8:51             ` Andrzej Pietrasiewicz
     [not found]           ` <acfd895d-ab59-0190-e25c-1827bd8d214b-l3A5Bk7waGM@public.gmane.org>
2019-07-31 19:39             ` Ezequiel Garcia
2019-07-31 19:39               ` Ezequiel Garcia
2019-07-31 19:39               ` Ezequiel Garcia
2019-07-11 11:26 ` [PATCH v4 19/23] drm/bridge: dw-hdmi: " Andrzej Pietrasiewicz
     [not found]   ` <ec88a18feffa37eceb947bb83a6f9f51fb575566.1562843413.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2019-07-30 12:17     ` Neil Armstrong
     [not found]       ` <449b11e6-2386-4e5b-26f7-eb6046911f24-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2019-07-30 17:30         ` Sam Ravnborg
     [not found]           ` <20190730173007.GA28537-uyr5N9Q2VtJg9hUCZPvPmw@public.gmane.org>
2019-07-31  7:32             ` Neil Armstrong
2019-07-11 11:26 ` [PATCH v4 21/23] drm/amdgpu: " Andrzej Pietrasiewicz
2019-07-11 11:26 ` [PATCH v4 22/23] drm/radeon: " Andrzej Pietrasiewicz
     [not found] ` <cover.1562843413.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2019-07-11 11:26   ` [PATCH v4 04/23] drm: rockchip: Provide ddc symlink in inno_hdmi " Andrzej Pietrasiewicz
2019-07-11 11:26   ` [PATCH v4 05/23] drm/msm/hdmi: Provide ddc symlink in hdmi connector " Andrzej Pietrasiewicz
2019-07-11 11:26   ` [PATCH v4 15/23] drm: sti: " Andrzej Pietrasiewicz
     [not found]     ` <86afdc0bca6939901870176dcf55f279f7b10a08.1562843413.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2019-07-12  7:42       ` Benjamin Gaignard
2019-07-11 11:26   ` [PATCH v4 16/23] drm/mgag200: Provide ddc symlink in " Andrzej Pietrasiewicz
2019-07-11 17:26     ` Thomas Zimmermann
2019-07-23  9:07     ` Sam Ravnborg
2019-07-23  9:07       ` Sam Ravnborg
2019-07-23  9:07       ` Sam Ravnborg
2019-07-11 11:26   ` [PATCH v4 17/23] drm/ast: " Andrzej Pietrasiewicz
2019-07-11 17:27     ` Thomas Zimmermann
2019-07-23  9:09     ` Sam Ravnborg
2019-07-23  9:09       ` Sam Ravnborg
2019-07-11 11:26   ` [PATCH v4 18/23] drm/bridge: dumb-vga-dac: " Andrzej Pietrasiewicz
2019-07-30 12:15     ` Neil Armstrong
2019-07-11 11:26   ` [PATCH v4 20/23] drm/bridge: ti-tfp410: " Andrzej Pietrasiewicz
2019-07-30 12:25     ` Neil Armstrong
2019-07-11 11:26   ` [PATCH v4 23/23] drm/i915: Provide ddc symlink in hdmi " Andrzej Pietrasiewicz
     [not found]     ` <1d9bb3d65127a5093d6e9f9cc62a5c7c7502f61d.1562843413.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>
2019-07-11 11:59       ` Ville Syrjälä
2019-07-11 11:59     ` Ville Syrjälä
2019-07-11 11:59     ` Ville Syrjälä
2019-07-11 13:21       ` Daniel Vetter
2019-07-11 17:56 ` ✓ Fi.CI.BAT: success for Associate ddc adapters with connectors Patchwork
2019-07-12 17:48 ` ✓ Fi.CI.IGT: " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='20190711120017.GU5942__4977.01970614202$1562871353$gmane$org@intel.com' \
    --to=ville.syrjala-vuqaysv1563yd54fqh9/ca@public.gmane.org \
    --cc=David1.Zhou-5C7GfCeVMHo@public.gmane.org \
    --cc=Laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org \
    --cc=a.hajda-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \
    --cc=andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org \
    --cc=benjamin.gaignard-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
    --cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=festevam-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org \
    --cc=jonathanh-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=joonas.lahtinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
    --cc=jy0922.shim-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \
    --cc=kernel-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org \
    --cc=krzk-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=liviu.dudau-5wv7dgnIgG8@public.gmane.org \
    --cc=maxime.ripard-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org \
    --cc=narmstrong-rdvid1DuHRBWk0Htik3J/w@public.gmane.org \
    --cc=robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=sam-uyr5N9Q2VtJg9hUCZPvPmw@public.gmane.org \
    --cc=thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=vincent.abriou-qxv4g6HH51o@public.gmane.org \
    --cc=yc_chen-SAlXDmAnmOAqDJ6do+/SaQ@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.