From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Mika Kahola <mika.kahola@intel.com>
Cc: daniel.vetter@ffwll.ch, intel-gfx@lists.freedesktop.org,
dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v4 02/11] drm: Read DP downstream port capabilities
Date: Thu, 9 Jun 2016 10:52:09 +0300 [thread overview]
Message-ID: <20160609075209.GX4329@intel.com> (raw)
In-Reply-To: <1465219753-3737-3-git-send-email-mika.kahola@intel.com>
On Mon, Jun 06, 2016 at 04:29:04PM +0300, Mika Kahola wrote:
> Read DisplayPort downstream port capabilities. Depending on
> the DP port the capabilities are defined in length of 1 byte
> or 4 bytes depending if the detailed capability information is
> available.
>
> Signed-off-by: Mika Kahola <mika.kahola@intel.com>
> ---
> drivers/gpu/drm/drm_dp_helper.c | 27 +++++++++++++++++++++++++++
> include/drm/drm_dp_helper.h | 3 +++
> 2 files changed, 30 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_dp_helper.c b/drivers/gpu/drm/drm_dp_helper.c
> index eeaf5a7..c4149fd 100644
> --- a/drivers/gpu/drm/drm_dp_helper.c
> +++ b/drivers/gpu/drm/drm_dp_helper.c
> @@ -438,6 +438,33 @@ int drm_dp_link_configure(struct drm_dp_aux *aux, struct drm_dp_link *link)
> }
> EXPORT_SYMBOL(drm_dp_link_configure);
>
> +/**
> + * drm_dp_downstream_port_cap() - read downstream port capabilities
> + * @dpcd: DisplayPort configuration data
> + * @port_cap: port capabilities
> + *
> + * returns size of the port capabilites
> + */
> +int drm_dp_downstream_port_cap(struct drm_dp_aux *aux,
> + const u8 dpcd[DP_RECEIVER_CAP_SIZE],
> + u8 port_cap[4])
> +{
> + int size;
> + bool detailed_cap_info = dpcd[DP_DOWNSTREAMPORT_PRESENT] &
> + DP_DETAILED_CAP_INFO_AVAILABLE;
> +
> + if (detailed_cap_info) {
> + size = 4;
> + drm_dp_dpcd_read(aux, DP_DOWNSTREAM_PORT_0, port_cap, size);
> + } else {
> + size = 1;
> + drm_dp_dpcd_read(aux, DP_DOWNSTREAM_PORT_0, &port_cap[0], size);
> + }
Could avoid a bit of duplicatetion. Eg.:
if (dpcd[DP_DOWNSTREAMPORT_PRESENT] & DP_DETAILED_CAP_INFO_AVAILABLE)
size = 4;
else
size = 1;
return drm_dp_dpcd_read(...);
Though perhaps we should just read out the entire 4/16 bytes to get the
caps for all the ports?
> +
> + return size;
> +}
> +EXPORT_SYMBOL(drm_dp_downstream_port_cap);
> +
> /*
> * I2C-over-AUX implementation
> */
> diff --git a/include/drm/drm_dp_helper.h b/include/drm/drm_dp_helper.h
> index e384c7f..db8d3d47 100644
> --- a/include/drm/drm_dp_helper.h
> +++ b/include/drm/drm_dp_helper.h
> @@ -806,6 +806,9 @@ int drm_dp_link_probe(struct drm_dp_aux *aux, struct drm_dp_link *link);
> int drm_dp_link_power_up(struct drm_dp_aux *aux, struct drm_dp_link *link);
> int drm_dp_link_power_down(struct drm_dp_aux *aux, struct drm_dp_link *link);
> int drm_dp_link_configure(struct drm_dp_aux *aux, struct drm_dp_link *link);
> +int drm_dp_downstream_port_cap(struct drm_dp_aux *aux,
> + const u8 dpcd[DP_RECEIVER_CAP_SIZE],
> + u8 port_cap[4]);
>
> int drm_dp_aux_register(struct drm_dp_aux *aux);
> void drm_dp_aux_unregister(struct drm_dp_aux *aux);
> --
> 1.9.1
--
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2016-06-09 7:52 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-06 13:29 [PATCH v4 00/11] drm/i915: DP branch devices Mika Kahola
2016-06-06 13:29 ` [PATCH v4 01/11] drm: Add missing DP downstream port types Mika Kahola
2016-06-06 13:29 ` [PATCH v4 02/11] drm: Read DP downstream port capabilities Mika Kahola
2016-06-06 16:00 ` kbuild test robot
2016-06-09 7:52 ` Ville Syrjälä [this message]
2016-06-06 13:29 ` [PATCH v4 03/11] drm: Helper to read DP branch device type Mika Kahola
2016-06-09 7:57 ` Ville Syrjälä
2016-06-06 13:29 ` [PATCH v4 04/11] drm: Helper to read max clock rate Mika Kahola
2016-06-09 7:59 ` Ville Syrjälä
2016-06-06 13:29 ` [PATCH v4 05/11] drm: Helper to read max bits per component Mika Kahola
2016-06-09 8:02 ` Ville Syrjälä
2016-06-09 10:08 ` Mika Kahola
2016-06-06 13:29 ` [PATCH v4 06/11] drm: Read DP branch device id Mika Kahola
2016-06-06 17:55 ` kbuild test robot
2016-06-06 13:29 ` [PATCH v4 07/11] drm: Read DP branch device HW revision Mika Kahola
2016-06-06 13:29 ` [PATCH v4 08/11] drm: Read DP branch device SW revision Mika Kahola
2016-06-06 13:29 ` [PATCH v4 09/11] drm/i915: Check pixel rate for DP to VGA dongle Mika Kahola
2016-06-09 8:14 ` Ville Syrjälä
2016-06-09 8:27 ` Kahola, Mika
2016-06-06 13:29 ` [PATCH v4 10/11] drm/i915: Update bits per component for display info Mika Kahola
2016-06-06 13:29 ` [PATCH v4 11/11] drm/i915: Add DP branch device info on debugfs Mika Kahola
2016-06-06 14:03 ` ✗ Ro.CI.BAT: warning for drm/i915: DP branch devices (rev4) 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=20160609075209.GX4329@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=daniel.vetter@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=mika.kahola@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.