dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
From: Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
To: Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Mikko Perttunen
	<mperttunen-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH v2 17/27] drm/tegra: Add Tegra114 HDMI support
Date: Mon, 14 Oct 2013 12:10:21 -0600	[thread overview]
Message-ID: <525C338D.50801@wwwdotorg.org> (raw)
In-Reply-To: <20131012114122.GF22284@mithrandir>

On 10/12/2013 05:41 AM, Thierry Reding wrote:
> On Fri, Oct 11, 2013 at 04:19:19PM -0600, Stephen Warren wrote:
>> On 10/07/2013 02:34 AM, Thierry Reding wrote:
>>> From: Mikko Perttunen <mperttunen-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
>>> 
>>> Tegra114 TMDS configuration requires a new peak_current field
>>> and the driver current override bit has changed position.
>> 
>>> diff --git a/drivers/gpu/drm/tegra/hdmi.c
>>> b/drivers/gpu/drm/tegra/hdmi.c
>> 
>>> static const struct tmds_config tegra2_tmds_config[] = { @@
>>> -223,6 +224,85 @@ static const struct tmds_config
>>> tegra3_tmds_config[] = {
>> 
>> Not related to this patch, but those should have been named 
>> tegra20_tmds_config[] and tegra30_tmds_config[].
>> 
>>> static void tegra_hdmi_setup_tmds(struct tegra_hdmi *hdmi,
>> 
>>> -	value = tmds->drive_current | DRIVE_CURRENT_FUSE_OVERRIDE; -
>>> tegra_hdmi_writel(hdmi, value,
>>> HDMI_NV_PDISP_SOR_LANE_DRIVE_CURRENT); +	if
>>> (of_device_is_compatible(np, "nvidia,tegra114-hdmi")) {
>> 
>> Let's not check this at run-time. Instead, host1x_drm_subdevs[]'s
>> .data field should be used to contain either flags or a pointer
>> to a configuration structure, either of which can be directly
>> consulted to determine the properties of the HW in a
>> feature-oriented/semantic way.
>> 
>> drivers/gpio/gpio-tegra.c's 
>> tegra20_gpio_config/tegra30_gpio_config/tegra_gpio_of_match
>> provide a good example of this.
>> 
>> This means that if Tegra124 is identical to Tegra114, yet a
>> hypothetical Tegra999 is different, you don't have to keep
>> adjusting these if conditions throughout the code; they can
>> simply refer to the same feature bit forever.
> 
> Okay, I'll see what I can come up with. It's unfortunately not as
> simple as the GPIO driver's parameterization, and who knows what
> other differences will be introduced in some later versions of this
> block.
> 
> What I mean is that at some point it becomes questionable whether
> it makes sense to parameterize at all if you have to encode the
> register offset and bit position within that register for a large
> number of bits.

Well, I wasn't advocating that we shouldn't have an if statement at
all. Simply that the if statement shouldn't be doing string compares
of specific HW. Either of the following would be fine:

if (hdmi->soc_data->some_feature_flag)
   // just represents some code; doesn't have to be a function call
   do_something();
else;
  do_something_else();

or:

do_something(hdmi->soc_data->some_feature_value);

  reply	other threads:[~2013-10-14 18:10 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-07  8:34 [PATCH v2 00/27] drm/tegra: Repatriation and DSI support Thierry Reding
     [not found] ` <1381134884-5816-1-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-07  8:34   ` [PATCH v2 01/27] drm/tegra: Remove unused fields Thierry Reding
2013-10-07  8:34   ` [PATCH v2 02/27] drm/tegra: Cleanup tegra_dc structure Thierry Reding
2013-10-07  8:34   ` [PATCH v2 03/27] drm/tegra: Rename host1x_drm structure to tegra_drm Thierry Reding
2013-10-07  8:34   ` [PATCH v2 04/27] drm/tegra: Rename host1x_drm_file to tegra_drm_file Thierry Reding
2013-10-07  8:34   ` [PATCH v2 05/27] drm/tegra: Rename host1x_drm_context to tegra_drm_context Thierry Reding
2013-10-07  8:34   ` [PATCH v2 06/27] gpu: host1x: Cleanup includes Thierry Reding
     [not found]     ` <1381134884-5816-7-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-08  5:59       ` Terje Bergström
     [not found]         ` <52539F5E.1060005-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-08  9:45           ` Thierry Reding
2013-10-07  8:34   ` [PATCH v2 07/27] gpu: host1x: Do not discard .remove() Thierry Reding
2013-10-07  8:34   ` [PATCH v2 08/27] drm/tegra: gr2d: Miscellaneous cleanups Thierry Reding
     [not found]     ` <1381134884-5816-9-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-07 11:34       ` Erik Faye-Lund
     [not found]         ` <CABPQNSbkS40_jyGz14s08+x3e+-pxnfy90V7pzAOfiqUF2ma2g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-07 12:14           ` Thierry Reding
     [not found]             ` <20131007121452.GA8324-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-07 12:52               ` Terje Bergström
     [not found]                 ` <5252AE8C.9090609-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-07 13:05                   ` Erik Faye-Lund
     [not found]                     ` <CABPQNSa59hBU__yjQMZsdEghpSwH1ayJYiD6HrBrhABicgzxuA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-08  5:36                       ` Terje Bergström
2013-10-07 13:13                   ` Thierry Reding
2013-10-07 12:53               ` Erik Faye-Lund
     [not found]                 ` <CABPQNSb52HmS-2T=MUXteMFc1tndHdvtUnZqsVsPKjP1Dy6Esw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-07 13:02                   ` Erik Faye-Lund
     [not found]                     ` <CABPQNSZGyuS3wAvJ8fFj=LMXxFJz9x_sKqEWW7QbiqC1gneLKw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-10-08  5:48                       ` Terje Bergström
     [not found]                         ` <52539CC0.3020901-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-08 11:11                           ` Erik Faye-Lund
2013-10-07  8:34   ` [PATCH v2 09/27] drm/tegra: gem: " Thierry Reding
2013-10-07  8:34   ` [PATCH v2 10/27] gpu: host1x: Make host1x header file public Thierry Reding
2013-10-07  8:34   ` [PATCH v2 11/27] drm/tegra: Introduce tegra_drm_client structure Thierry Reding
2013-10-07  8:34   ` [PATCH v2 12/27] gpu: host1x: Expose syncpt and channel functionality Thierry Reding
2013-10-07  8:34   ` [PATCH v2 13/27] drm/tegra: Move subdevice infrastructure to host1x Thierry Reding
     [not found]     ` <1381134884-5816-14-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-08  6:25       ` Terje Bergström
     [not found]         ` <5253A563.1060409-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-08  9:52           ` Thierry Reding
2013-11-04 10:20       ` Daniel Vetter
     [not found]         ` <20131104102054.GD4167-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2013-11-04 11:06           ` Thierry Reding
     [not found]             ` <20131104110655.GN27445-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-11-04 16:08               ` Daniel Vetter
2013-10-07  8:34   ` [PATCH v2 14/27] drm/tegra: Move driver to DRM tree Thierry Reding
     [not found]     ` <1381134884-5816-15-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-11 22:11       ` Stephen Warren
     [not found]         ` <52587797.7000402-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-12 11:16           ` Thierry Reding
2013-10-07  8:34   ` [PATCH v2 15/27] gpu: host1x: Add support for Tegra114 Thierry Reding
     [not found]     ` <1381134884-5816-16-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-11 22:13       ` Stephen Warren
     [not found]         ` <525877F3.9070004-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-12 11:24           ` Thierry Reding
2013-10-14  5:30             ` Terje Bergström
     [not found]               ` <525B8174.4000907-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-15  8:05                 ` Thierry Reding
2013-10-14 18:07             ` Stephen Warren
     [not found]               ` <525C32E5.2020406-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-15  8:03                 ` Thierry Reding
2013-10-07  8:34   ` [PATCH v2 16/27] drm/tegra: Add Tegra114 display controller support Thierry Reding
     [not found]     ` <1381134884-5816-17-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-11 22:14       ` Stephen Warren
     [not found]         ` <52587843.9070806-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-12 11:32           ` Thierry Reding
2013-10-14 18:05             ` Stephen Warren
     [not found]               ` <525C325E.2090700-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-15  8:06                 ` Thierry Reding
2013-10-07  8:34   ` [PATCH v2 17/27] drm/tegra: Add Tegra114 HDMI support Thierry Reding
     [not found]     ` <1381134884-5816-18-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-11 22:19       ` Stephen Warren
     [not found]         ` <52587967.6050806-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-11 22:22           ` Stephen Warren
     [not found]             ` <52587A16.7050200-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-12 11:35               ` Thierry Reding
2013-10-12 11:41           ` Thierry Reding
2013-10-14 18:10             ` Stephen Warren [this message]
     [not found]               ` <525C338D.50801-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-15  8:13                 ` Thierry Reding
     [not found]                   ` <20131015081318.GG7856-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-15 15:17                     ` Stephen Warren
2013-10-07  8:34   ` [PATCH v2 18/27] drm/tegra: hdmi: Detect DVI-only displays Thierry Reding
2013-10-07  8:34   ` [PATCH v2 19/27] host1x: hdmi: Enable VDD earlier for hotplug/DDC Thierry Reding
2013-10-07  8:34   ` [PATCH v2 20/27] drm/tegra: hdmi: Rename tegra{2,3} to tegra{20,30} Thierry Reding
2013-10-07  8:34   ` [PATCH v2 21/27] drm: Add panel support Thierry Reding
2013-10-07  8:34   ` [PATCH v2 22/27] drm/panel: Add simple " Thierry Reding
     [not found]     ` <1381134884-5816-23-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-11 22:33       ` Stephen Warren
     [not found]         ` <52587CBD.8010304-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-14 14:10           ` Thierry Reding
2013-10-07  8:34   ` [PATCH v2 23/27] drm/tegra: Implement " Thierry Reding
2013-10-07  8:34   ` [PATCH v2 24/27] drm/tegra: Start connectors with correct DPMS mode Thierry Reding
2013-10-07  8:34   ` [PATCH v2 25/27] gpu: host1x: Add MIPI pad calibration support Thierry Reding
     [not found]     ` <1381134884-5816-26-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-11 22:37       ` Stephen Warren
     [not found]         ` <52587DAF.9080003-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-14 13:44           ` Thierry Reding
2013-10-07  8:34   ` [PATCH v2 26/27] drm/tegra: Add DSI support Thierry Reding
     [not found]     ` <1381134884-5816-27-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-11 22:43       ` Stephen Warren
     [not found]         ` <52587F17.7060104-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-14 13:55           ` Thierry Reding
     [not found]             ` <20131014135548.GB16302-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-14 18:16               ` Stephen Warren
     [not found]                 ` <525C3510.60802-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-15  8:33                   ` Thierry Reding
     [not found]                     ` <20131015083342.GH7856-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-15 17:21                       ` Stephen Warren
     [not found]                         ` <525D7983.6010001-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-16  8:40                           ` Thierry Reding
     [not found]                             ` <20131016084031.GB21963-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-16 16:58                               ` Stephen Warren
2013-10-07  8:34   ` [PATCH v2 27/27] drm/tegra: Add Tegra114 gr2d support Thierry Reding
     [not found]     ` <1381134884-5816-28-git-send-email-treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-11 22:43       ` Stephen Warren
     [not found]         ` <52587F2D.9070007-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-14  5:58           ` Terje Bergström
     [not found]             ` <525B880A.7090802-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-14 14:00               ` Thierry Reding
     [not found]                 ` <20131014140010.GC16302-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-14 18:14                   ` Stephen Warren
     [not found]                     ` <525C3497.6010700-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-15  5:51                       ` Terje Bergström
     [not found]                         ` <525CD7F3.10907-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2013-10-15 15:12                           ` Stephen Warren
2013-10-15  8:37                       ` Thierry Reding
     [not found]                         ` <20131015083731.GI7856-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-15 15:19                           ` Stephen Warren
     [not found]                             ` <525D5CF6.3020600-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-10-16  8:48                               ` Thierry Reding
     [not found]                                 ` <20131016084804.GC21963-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2013-10-16 12:05                                   ` Terje Bergström
2013-10-16 17:00                                   ` Stephen Warren
2013-10-14 18:13               ` Stephen Warren

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=525C338D.50801@wwwdotorg.org \
    --to=swarren-3lzwwm7+weoh9zmkesr00q@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mperttunen-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).