From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sam Ravnborg Subject: Re: [PATCH v5 02/24] drm: Add drm_connector_init() variant with ddc Date: Fri, 26 Jul 2019 08:35:09 +0200 Message-ID: <20190726063509.GA6443@ravnborg.org> References: <53f5ded2971235e5b63c9a3ed4ed8bccf10c78f2.1563960855.git.andrzej.p@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <53f5ded2971235e5b63c9a3ed4ed8bccf10c78f2.1563960855.git.andrzej.p-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+glpam-linux-mediatek=m.gmane.org-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org To: Andrzej Pietrasiewicz Cc: "Y.C. Chen" , Heiko =?iso-8859-1?Q?St=FCbner?= , Neil Armstrong , David Airlie , Ramalingam C , Joonas Lahtinen , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Douglas Anderson , Andrzej Hajda , Thierry Reding , Laurent Pinchart , Benjamin Gaignard , kernel-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org, Fabio Estevam , Ville =?iso-8859-1?Q?Syrj=E4l=E4?= , "David (ChunMing) Zhou" , linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Joonyoung Shim , linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, Vincent Abriou , Rob Clark , Krzyszt List-Id: linux-mediatek@lists.infradead.org Hi Andrzej. On Wed, Jul 24, 2019 at 03:59:24PM +0200, Andrzej Pietrasiewicz wrote: > Allow passing ddc adapter pointer to the init function. Even if > drm_connector_init() sometime in the future decides to e.g. memset() all > connector fields to zeros, the newly added function ensures that at its > completion the ddc member of connector is correctly set. > > Signed-off-by: Andrzej Pietrasiewicz > --- > drivers/gpu/drm/drm_connector.c | 19 +++++++++++++++++++ > include/drm/drm_connector.h | 5 +++++ > 2 files changed, 24 insertions(+) > > diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c > index 068d4b05f1be..06fbfc44fb48 100644 > --- a/drivers/gpu/drm/drm_connector.c > +++ b/drivers/gpu/drm/drm_connector.c > @@ -296,6 +296,25 @@ int drm_connector_init(struct drm_device *dev, > } > EXPORT_SYMBOL(drm_connector_init); > > +int drm_connector_init_with_ddc(struct drm_device *dev, > + struct drm_connector *connector, > + const struct drm_connector_funcs *funcs, > + int connector_type, > + struct i2c_adapter *ddc) > +{ This is good, with this helper there is no longer any confusion about ordering. drm_connector_init_with_ddc() is part of the public interface for drm_connector and needs kernel-doc documentation. Sam > + int ret; > + > + ret = drm_connector_init(dev, connector, funcs, connector_type); > + if (ret) > + return ret; > + > + /* provide ddc symlink in sysfs */ > + connector->ddc = ddc; > + > + return ret; > +} > +EXPORT_SYMBOL(drm_connector_init_with_ddc); > + > /** > * drm_connector_attach_edid_property - attach edid property. > * @connector: the connector > diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h > index 33a6fff85fdb..937fda9c1374 100644 > --- a/include/drm/drm_connector.h > +++ b/include/drm/drm_connector.h > @@ -1410,6 +1410,11 @@ int drm_connector_init(struct drm_device *dev, > struct drm_connector *connector, > const struct drm_connector_funcs *funcs, > int connector_type); > +int drm_connector_init_with_ddc(struct drm_device *dev, > + struct drm_connector *connector, > + const struct drm_connector_funcs *funcs, > + int connector_type, > + struct i2c_adapter *ddc); > void drm_connector_attach_edid_property(struct drm_connector *connector); > int drm_connector_register(struct drm_connector *connector); > void drm_connector_unregister(struct drm_connector *connector); > -- > 2.17.1