linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: thierry.reding@gmail.com (Thierry Reding)
To: linux-arm-kernel@lists.infradead.org
Subject: [Ksummit-2013-discuss] ARM topic: Is DT on ARM the solution, or is there something better?
Date: Tue, 22 Oct 2013 22:48:12 +0200	[thread overview]
Message-ID: <20131022204811.GD8037@mithrandir> (raw)
In-Reply-To: <52665314.2040904@imgtec.com>

On Tue, Oct 22, 2013 at 11:27:32AM +0100, James Hogan wrote:
> On 21/10/13 23:51, Guenter Roeck wrote:
> > In my opinion, not being able to describe behavior (or what people refer
> > to as "describe how the hardware is used") is a severe limitation of
> > devicetree usage in Linux. That is not a devicetree limitation per se,
> > though, it is simply a matter of choice (or, in some cases, the ability
> > of those arguing for new bindings to sell those bindings as "hardware
> > description").
> 
> I agree this is a real problem, and I think it hinders upstream
> submission, since platform data was permitted to describe behaviour as
> well as describe the hardware, and platform data is being replaced with
> DT which is only permitted to describe the hardware. How then should we
> specify the behaviour to the kernel?
> 
> I've already mentioned specific examples of this on the "Clock DT
> bindings" thread, and would be very interested if anybody has thoughts
> about it:
> http://lkml.kernel.org/r/520E1DF5.4030409 at imgtec.com

I've certainly run into similar problems. To be specific, one such
instance involved backlight devices. In a nutshell, Linux' backlight
subsystem by default enables a backlight when it is probed (well, the
subsystem doesn't do that, but pretty much every driver does). This
seems to have worked very well, but when you hook up a backlight with
something high-level such as DRM, the fact that you no longer control
when the backlight is turned on becomes a problem. DRM knows very
precisely when a backlight or panel should be turned on, because it's
tightly coupled with when the display controller starts sending data to
the display. If the backlight is turned on by default at some
unpredictable point during the boot process, you end up with a powered
backlight that shows you all sorts of artifacts while the display is
being initialized.

My first attempt at solving this was to add a backlight-boot-off
property to the device tree, which would make the device driver keep the
backlight turned off on boot by default so that the DRM driver would be
able to turn it on only after the display was properly initialized.

Obviously that doesn't represent the hardware but some random bit of
software policy. The bad thing about it is that there's no other place
to put this bit of information. I can't change the default behaviour of
the backlight driver either because it is generic and used by many other
boards. So what's the solution to that? Perhaps duplicate the driver
with only the boot on default changed? Or add a new compatible value
"pwm-backlight-disabled-on-boot"? Guess that won't be acceptable either
because it encodes behaviour. "pwm-backlight-v2" wouldn't encode any
behaviour...

Thierry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20131022/c67ec51a/attachment.sig>

  parent reply	other threads:[~2013-10-22 20:48 UTC|newest]

Thread overview: 171+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-20 21:26 ARM topic: Is DT on ARM the solution, or is there something better? Stephen Warren
2013-10-20 22:08 ` [Ksummit-2013-discuss] " Mark Brown
2013-10-20 22:21   ` Stephen Warren
2013-10-21  1:00     ` Nicolas Pitre
2013-10-21  9:15       ` Thierry Reding
2013-10-21 14:57         ` Maxime Bizon
2013-10-21 17:07         ` Richard Cochran
2013-10-21 20:24           ` Stephen Warren
2013-10-22  9:24           ` Thierry Reding
2013-10-23 17:30             ` Richard Cochran
2013-10-23 19:06               ` Thierry Reding
2013-10-22 17:22           ` Jason Gunthorpe
2013-10-21 20:29       ` Stephen Warren
2013-10-21 20:40         ` Nicolas Pitre
2013-10-22  9:39           ` Thierry Reding
2013-10-22 15:04             ` Matt Porter
2013-10-22 17:13               ` Jason Gunthorpe
2013-10-22 17:49                 ` Guenter Roeck
2013-10-23  8:06                 ` Richard Cochran
2013-10-23  9:49                   ` Thierry Reding
2013-10-23 17:16                     ` Richard Cochran
2013-10-23 17:25                       ` Matt Porter
2013-10-23 18:05                         ` Richard Cochran
2013-10-23 18:57                           ` Nicolas Pitre
2013-10-23 20:12                           ` Matt Porter
2013-10-23 17:55                       ` Nicolas Pitre
2013-10-23 18:13                         ` Richard Cochran
2013-10-23 20:35                           ` Thierry Reding
2013-10-23 17:29                   ` Jason Gunthorpe
2013-10-23 17:45                     ` Richard Cochran
2013-10-23 18:46                       ` Maxime Bizon
2013-10-23 18:51                         ` Richard Cochran
2013-10-23 19:12                           ` Maxime Bizon
2013-10-24  9:52                         ` Grant Likely
2013-10-24 11:33                           ` Maxime Bizon
2013-10-24 11:47                             ` David Woodhouse
2013-10-24 12:13                               ` Maxime Bizon
2013-10-24 12:22                                 ` David Woodhouse
2013-10-24 12:22                                 ` David Woodhouse
2013-10-24 13:05                                   ` Maxime Bizon
2013-10-24 13:14                                     ` David Woodhouse
2013-10-24 13:46                                       ` Maxime Bizon
2013-10-24 19:52                                         ` Matt Porter
2013-10-24 20:11                                       ` Matt Sealey
2013-10-25  9:00                                 ` Stephen Warren
2013-10-24 12:23                               ` Thierry Reding
2013-10-24 12:29                                 ` David Woodhouse
2013-10-24 13:00                                 ` Maxime Bizon
2013-10-24 13:10                                   ` David Woodhouse
2013-10-24 13:30                                     ` Maxime Bizon
2013-10-24 14:05                                       ` David Woodhouse
2013-10-24 14:19                                         ` Thierry Reding
2013-10-24 14:30                                           ` David Woodhouse
2013-10-24 14:38                                             ` Thierry Reding
2013-10-24 16:39                                             ` Nicolas Pitre
2013-10-24 16:45                                               ` David Woodhouse
2013-10-24 17:08                                                 ` Nicolas Pitre
2013-10-24 18:15                                                 ` jonsmirl at gmail.com
2013-10-24 14:32                                           ` Richard Cochran
2013-10-24 14:47                                             ` Thierry Reding
2013-10-24 15:37                                             ` Nicolas Pitre
2013-10-24 14:33                                           ` Maxime Bizon
2013-10-24 14:57                                             ` Thierry Reding
2013-10-24 16:27                                         ` Nicolas Pitre
2013-10-24 14:12                                     ` Thierry Reding
2013-10-24 14:22                                       ` David Woodhouse
2013-10-24 14:23                                         ` Thierry Reding
2013-10-24 14:38                                           ` David Woodhouse
2013-10-24 14:58                                             ` Thierry Reding
2013-10-24 19:58                                         ` Matt Porter
2013-10-24 23:54                                       ` Grant Likely
2013-10-25  8:52                             ` Stephen Warren
2013-10-25  9:16                               ` Thierry Reding
2013-10-23 17:47                     ` Richard Cochran
2013-10-23 17:58                       ` Nicolas Pitre
2013-10-23 18:02                       ` Jason Gunthorpe
2013-10-23 18:23                         ` Richard Cochran
2013-10-24  8:34                           ` Thierry Reding
2013-10-24 15:00                             ` Richard Cochran
2013-10-24 19:46                               ` Matt Porter
2013-10-23 18:01                     ` Guenter Roeck
2013-10-23 18:25                       ` Jason Gunthorpe
2013-10-23 18:30                         ` Richard Cochran
2013-10-23 18:54                           ` Jason Gunthorpe
2013-10-24  8:06                             ` Sascha Hauer
2013-10-24  8:17                               ` Thierry Reding
2013-10-24  8:52                                 ` Sascha Hauer
2013-10-23 23:29                           ` Ben Hutchings
2013-10-24  7:32                             ` Richard Cochran
2013-10-24  9:35                               ` Ben Hutchings
2013-10-24 12:02                         ` Andre Heider
2013-10-24  8:01                     ` Sascha Hauer
2013-10-24  8:11                       ` Thierry Reding
2013-10-22 17:42               ` Nicolas Pitre
2013-10-22 18:21                 ` Peter Maydell
2013-10-22 18:36                   ` Nicolas Pitre
2013-10-22 19:16                   ` Guenter Roeck
2013-10-22 20:12                 ` Thierry Reding
2013-10-22 20:41                   ` Nicolas Pitre
2013-10-22 21:39                     ` Jason Gunthorpe
2013-10-23  8:50                     ` Thierry Reding
2013-10-23  9:02                     ` Thierry Reding
2013-10-22 20:42                   ` Matt Porter
2013-10-23 10:04                     ` Thierry Reding
2013-10-23 11:48                       ` Peter Maydell
2013-10-23 16:29                       ` Matt Porter
2013-10-22  6:47       ` David Brown
2013-10-20 23:11 ` Russell King - ARM Linux
2013-10-20 23:44   ` [Ksummit-2013-discuss] " Guenter Roeck
2013-10-20 23:51     ` Russell King - ARM Linux
2013-10-21  0:13       ` Guenter Roeck
2013-10-21 20:05     ` Stephen Warren
2013-10-22  9:45       ` Thierry Reding
2013-10-21  8:32   ` Sascha Hauer
2013-10-21  8:48     ` Russell King - ARM Linux
2013-10-21  9:27       ` Sascha Hauer
     [not found]         ` < CAF6AEGtt_2sStiZCNBp9btxevWghSwLZZBdN6ir8eUpX1FXrCQ@mail.gmail.com>
     [not found]           ` < 20131024072811.GS30088@pengutronix.de>
     [not found]             ` < CAF6AEGuEho9Ms7ifTE-EmBoQ-=_AXgvGcJxi5qEC0vsZ+H9C+A@mail.gmail.com>
2013-10-21  9:57         ` Russell King - ARM Linux
2013-10-21 10:24           ` Thierry Reding
2013-10-21 10:30             ` Russell King - ARM Linux
2013-10-21 10:41               ` Thierry Reding
2013-10-22  9:19             ` [Ksummit-2013-discuss] " Mark Brown
2013-10-21 20:09           ` Stephen Warren
2013-10-21 23:18           ` Sascha Hauer
2013-10-24  1:14         ` Rob Clark
2013-10-24  7:28           ` Sascha Hauer
2013-10-24  9:00             ` Thierry Reding
2013-10-24  9:21               ` Sascha Hauer
2013-10-24 21:21             ` Rob Clark
2013-10-25  9:24               ` Thierry Reding
2013-11-18 12:45               ` Russell King - ARM Linux
2013-11-18 15:37                 ` Thierry Reding
2013-11-18 16:11                   ` Russell King - ARM Linux
2013-11-18 16:18                     ` Thierry Reding
2013-11-18 18:43                     ` Mark Brown
2013-11-19 13:54                 ` Grant Likely
2013-10-21 10:04       ` Thierry Reding
2013-10-21 10:57       ` [Ksummit-2013-discuss] " Laurent Pinchart
2013-10-21 10:00   ` Laurent Pinchart
2013-10-21 11:18   ` Sebastian Hesselbarth
2013-10-21  8:54 ` Thierry Reding
2013-10-21 20:19   ` Stephen Warren
2013-10-21 22:51     ` [Ksummit-2013-discuss] " Guenter Roeck
2013-10-22 10:27       ` James Hogan
2013-10-22 16:31         ` Jonathan Cameron
2013-10-22 16:49           ` Guenter Roeck
2013-10-22 20:35             ` Thierry Reding
2013-10-22 21:10               ` Guenter Roeck
2013-10-23  7:57                 ` Thierry Reding
2013-10-23 16:01                   ` Guenter Roeck
2013-10-23 21:07                     ` Thierry Reding
2013-10-24 15:18                       ` Guenter Roeck
2013-11-01 10:36                         ` Thierry Reding
2013-11-01 13:30                           ` Guenter Roeck
2013-10-22 20:48         ` Thierry Reding [this message]
2013-10-22 10:25     ` Thierry Reding
2013-10-22 21:44 ` Matt Sealey
2013-10-23 11:41   ` Peter Maydell
2013-10-23 23:02     ` [Ksummit-2013-discuss] " Rob Herring
2013-11-18 12:26 ` Thierry Reding
2013-11-18 13:40   ` Grant Likely
2013-11-18 13:57     ` Mark Brown
2013-11-18 15:29       ` Thierry Reding
2013-11-18 15:50         ` Mark Brown
2013-11-18 16:06           ` Thierry Reding
2013-11-18 17:16             ` Stephen Warren
2013-11-19  9:35               ` Thierry Reding
2013-11-19 17:27                 ` Stephen Warren
2013-11-20 13:29                   ` Thierry Reding
2013-11-18 18:35             ` Mark Brown
2013-11-19  9:11               ` Thierry Reding
2013-11-19 10:16                 ` Mark Brown

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=20131022204811.GD8037@mithrandir \
    --to=thierry.reding@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.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).