From: Jani Nikula <jani.nikula@intel.com>
To: dri-devel@lists.freedesktop.org
Cc: Deepak M <m.deepak@intel.com>,
Daniel Vetter <daniel.vetter@intel.com>,
Gaurav K Singh <gaurav.k.singh@intel.com>
Subject: Re: [PATCH 1/2] drm: Add few more wrapper functions for drm panel
Date: Mon, 29 Feb 2016 14:12:43 +0200 [thread overview]
Message-ID: <87d1rfu344.fsf@intel.com> (raw)
In-Reply-To: <1456746355-31094-1-git-send-email-m.deepak@intel.com>
Cc: Thierry the drm panel maintainer.
On Mon, 29 Feb 2016, Deepak M <m.deepak@intel.com> wrote:
> Currently there are few pair of functions which
> are called during the panel enable/disable sequence.
> To improve the granularity, adding few more wrapper
> functions so that the functions are more specific
> on what they are doing.
>
> Cc: David Airlie <airlied@linux.ie>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Daniel Vetter <daniel.vetter@intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> Signed-off-by: Deepak M <m.deepak@intel.com>
> Signed-off-by: Gaurav K Singh <gaurav.k.singh@intel.com>
> ---
> include/drm/drm_panel.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 47 insertions(+)
>
> diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h
> index 13ff44b..c729f6d 100644
> --- a/include/drm/drm_panel.h
> +++ b/include/drm/drm_panel.h
> @@ -73,6 +73,12 @@ struct drm_panel_funcs {
> int (*get_modes)(struct drm_panel *panel);
> int (*get_timings)(struct drm_panel *panel, unsigned int num_timings,
> struct display_timing *timings);
> + int (*power_on)(struct drm_panel *panel);
> + int (*power_off)(struct drm_panel *panel);
> + int (*backlight_on)(struct drm_panel *panel);
> + int (*backlight_off)(struct drm_panel *panel);
Please read the kernel-doc comment above the struct, and justify the
need to add new ones. Please update the kernel-doc comment to reflect
the changes.
For example, the documentation for .prepare() says, "drivers can use
this to turn the panel on". What's the order of power_on and prepare
(and their counterparts)? What's the division of responsibilities?
Similarly, the documentation for .enable() says, "This will typically
enable the backlight". What's the order of backlight_on and prepare (and
their counterparts)? What's the division of responsibilities?
> + int (*get_info)(struct drm_panel *panel,
> + struct drm_connector *connector);
As I said in my earlier review, I don't think this is needed.
BR,
Jani.
> };
>
> struct drm_panel {
> @@ -117,6 +123,47 @@ static inline int drm_panel_enable(struct drm_panel *panel)
> return panel ? -ENOSYS : -EINVAL;
> }
>
> +static inline int drm_panel_power_on(struct drm_panel *panel)
> +{
> + if (panel && panel->funcs && panel->funcs->power_on)
> + return panel->funcs->power_on(panel);
> +
> + return panel ? -ENOSYS : -EINVAL;
> +}
> +
> +static inline int drm_panel_power_off(struct drm_panel *panel)
> +{
> + if (panel && panel->funcs && panel->funcs->power_off)
> + return panel->funcs->power_off(panel);
> +
> + return panel ? -ENOSYS : -EINVAL;
> +}
> +
> +static inline int drm_panel_backlight_on(struct drm_panel *panel)
> +{
> + if (panel && panel->funcs && panel->funcs->backlight_on)
> + return panel->funcs->backlight_on(panel);
> +
> + return panel ? -ENOSYS : -EINVAL;
> +}
> +
> +static inline int drm_panel_backlight_off(struct drm_panel *panel)
> +{
> + if (panel && panel->funcs && panel->funcs->backlight_off)
> + return panel->funcs->backlight_off(panel);
> +
> + return panel ? -ENOSYS : -EINVAL;
> +}
> +
> +static inline int drm_panel_get_info(struct drm_panel *panel,
> + struct drm_connector *connector)
> +{
> + if (connector && panel && panel->funcs && panel->funcs->get_info)
> + return panel->funcs->get_info(panel, connector);
> +
> + return panel ? -ENOSYS : -EINVAL;
> +}
> +
> static inline int drm_panel_get_modes(struct drm_panel *panel)
> {
> if (panel && panel->funcs && panel->funcs->get_modes)
--
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2016-02-29 12:13 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-29 11:45 [PATCH 1/2] drm: Add few more wrapper functions for drm panel Deepak M
2016-02-29 11:45 ` [PATCH 2/2] drm/i915: Add functions to execute the new sequences from VBT Deepak M
2016-02-29 12:12 ` Jani Nikula [this message]
2016-03-02 12:58 ` [PATCH 1/2] drm: Add few more wrapper functions for drm panel Deepak M
2016-03-02 15:25 ` Thierry Reding
-- strict thread matches above, loose matches on Subject: below --
2016-02-19 11:28 Deepak M
2016-02-19 13:53 ` Jani Nikula
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=87d1rfu344.fsf@intel.com \
--to=jani.nikula@intel.com \
--cc=daniel.vetter@intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=gaurav.k.singh@intel.com \
--cc=m.deepak@intel.com \
/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.