Message ID | 20190820011721.30136-3-laurent.pinchart@ideasonboard.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/omap: Replace custom display drivers with drm_bridge and drm_panel | expand |
On Tue, 20 Aug 2019 04:16:33 +0300 Laurent Pinchart <laurent.pinchart@ideasonboard.com> wrote: > drm_connector.c contains a map of connector types (DRM_MODE_CONNECTOR_*) > to name strings, but doesn't expose it. This leads to drivers having to > store a similar map. > > Add a new drm_get_connector_type_name() helper function that return a > name string for a connector type. > > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> > --- > drivers/gpu/drm/drm_connector.c | 15 +++++++++++++++ > include/drm/drm_connector.h | 1 + > 2 files changed, 16 insertions(+) > > diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c > index 4c766624b20d..3f93633a9ff2 100644 > --- a/drivers/gpu/drm/drm_connector.c > +++ b/drivers/gpu/drm/drm_connector.c > @@ -111,6 +111,21 @@ void drm_connector_ida_destroy(void) > ida_destroy(&drm_connector_enum_list[i].ida); > } > > +/** > + * drm_get_connector_type_name - return a string for connector type > + * @type: The connector type (DRM_MODE_CONNECTOR_*) > + * > + * Returns: the name of the connector type, or NULL if the type is not valid. > + */ > +const char *drm_get_connector_type_name(unsigned int type) > +{ > + if (type < ARRAY_SIZE(drm_connector_enum_list)) > + return drm_connector_enum_list[type].name; > + > + return NULL; > +} > +EXPORT_SYMBOL(drm_get_connector_type_name); > + > /** > * drm_connector_get_cmdline_mode - reads the user's cmdline mode > * @connector: connector to quwery > diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h > index 681cb590f952..b91e369cfb11 100644 > --- a/include/drm/drm_connector.h > +++ b/include/drm/drm_connector.h > @@ -1500,6 +1500,7 @@ drm_connector_is_unregistered(struct drm_connector *connector) > DRM_CONNECTOR_UNREGISTERED; > } > > +const char *drm_get_connector_type_name(unsigned int connector_type); > const char *drm_get_connector_status_name(enum drm_connector_status status); > const char *drm_get_subpixel_order_name(enum subpixel_order order); > const char *drm_get_dpms_name(int val);
diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c index 4c766624b20d..3f93633a9ff2 100644 --- a/drivers/gpu/drm/drm_connector.c +++ b/drivers/gpu/drm/drm_connector.c @@ -111,6 +111,21 @@ void drm_connector_ida_destroy(void) ida_destroy(&drm_connector_enum_list[i].ida); } +/** + * drm_get_connector_type_name - return a string for connector type + * @type: The connector type (DRM_MODE_CONNECTOR_*) + * + * Returns: the name of the connector type, or NULL if the type is not valid. + */ +const char *drm_get_connector_type_name(unsigned int type) +{ + if (type < ARRAY_SIZE(drm_connector_enum_list)) + return drm_connector_enum_list[type].name; + + return NULL; +} +EXPORT_SYMBOL(drm_get_connector_type_name); + /** * drm_connector_get_cmdline_mode - reads the user's cmdline mode * @connector: connector to quwery diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h index 681cb590f952..b91e369cfb11 100644 --- a/include/drm/drm_connector.h +++ b/include/drm/drm_connector.h @@ -1500,6 +1500,7 @@ drm_connector_is_unregistered(struct drm_connector *connector) DRM_CONNECTOR_UNREGISTERED; } +const char *drm_get_connector_type_name(unsigned int connector_type); const char *drm_get_connector_status_name(enum drm_connector_status status); const char *drm_get_subpixel_order_name(enum subpixel_order order); const char *drm_get_dpms_name(int val);
drm_connector.c contains a map of connector types (DRM_MODE_CONNECTOR_*) to name strings, but doesn't expose it. This leads to drivers having to store a similar map. Add a new drm_get_connector_type_name() helper function that return a name string for a connector type. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> --- drivers/gpu/drm/drm_connector.c | 15 +++++++++++++++ include/drm/drm_connector.h | 1 + 2 files changed, 16 insertions(+)