mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Pavel Machek <pavel@ucw.cz>
To: Marek Behun <kabel@blackhole.sk>
Cc: Dan Murphy <dmurphy@ti.com>,
	ultracoolguy@tutanota.com,
	Linux Leds <linux-leds@vger.kernel.org>,
	Linux Kernel <linux-kernel@vger.kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	devicetree@vger.kernel.org
Subject: Re: [PATCH] leds: lm3697: Fix out-of-bound access
Date: Tue, 6 Oct 2020 19:26:10 +0200	[thread overview]
Message-ID: <20201006172610.GA1836@duo.ucw.cz> (raw)
In-Reply-To: <20201006164101.2c3fa0d7@blackhole.sk>

[-- Attachment #1: Type: text/plain, Size: 2256 bytes --]

Hi!

> > >> By the way I just realized that the DT binding in this driver seems
> > >> incorrect to me.
> > >>
> > >> The controller logically supports 3 LED strings, each having
> > >> configurable control bank.  
> > 
> > There are two control banks. You can connect the HVLED outputs to either 
> > control bank A or B there is no individual control of the LED strings.
> > 
> > 
> > >> But the DT binding supports 2 DT nodes, one for each control bank
> > >> (identified by the `reg` property) and then `led-sources` says which
> > >> string should be controlled by given bank.
> > >>
> > >> But taking in mind that DT should describe how devices are connected to
> > >> each other, I think the child nodes in the binding should instead
> > >> describe the 3 supported LED strings...  
> > 
> > The outputs in this case are virtual outputs which are the banks (A and B).
> > 
> > Since the device is bank controlled the actual current sinks are not 
> > defined thus making the the banks the actual outputs.
> > 
> > This is why the 'reg' property defines the control bank either A or B 
> > and the led-sources indicates the strings associated with the control bank.

> Dan, I looked at the datasheet, I understand this.
> 
> Nonetheless, device tree should describe how devices are connected to
> each other. The chip has 3 pins for 3 LED strings.

Well, device tree is not a device schematics...

> If this controller should be able to support 3 LED strings via 3
> outputs, the device tree binding nodes should, in my opinion, describe
> each pin connected string. The nodes should maybe even be called
> 'led-string@N' where N is from [0, 1, 2].
> 
> The fact that the device is bank controlled and there are only two
> banks (and it is configurable by which bank each LED string is
> controlled) is more relevant to the driver, not as much to device tree
> binding.

Seems to me like two independend LEDs, and I'd describe it as
such. The fact that it goes over 3 wires is just a implementation
detail. Lets keep it simple...

Best regards,
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

  parent reply	other threads:[~2020-10-06 17:26 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-03 13:02 ultracoolguy
2020-10-03 13:56 ` Pavel Machek
2020-10-03 14:43   ` ultracoolguy
2020-10-05 12:13 ` Marek Behun
2020-10-05 13:50   ` Pavel Machek
2020-10-05 13:57   ` ultracoolguy
2020-10-05 14:33     ` Dan Murphy
2020-10-05 14:37       ` Dan Murphy
2020-10-05 14:38       ` ultracoolguy
2020-10-05 14:41         ` Dan Murphy
2020-10-05 15:35           ` ultracoolguy
2020-10-05 16:05             ` Pavel Machek
2020-10-05 16:48             ` Alexander Dahl
2020-10-05 17:14               ` ultracoolguy
2020-10-05 17:32                 ` Pavel Machek
2020-10-05 18:29                   ` ultracoolguy
2020-10-05 18:31                     ` ultracoolguy
2020-10-05 18:39                       ` Pavel Machek
2020-10-05 18:48                         ` ultracoolguy
2020-10-06  7:33                   ` Marek Behun
2020-10-06 11:59                     ` ultracoolguy
2020-10-06 12:21                       ` Dan Murphy
2020-10-06 14:41                         ` Marek Behun
2020-10-06 14:57                           ` Dan Murphy
2020-10-06 15:14                             ` Marek Behun
2020-10-06 17:26                           ` Pavel Machek [this message]
2020-10-05 15:59       ` Pavel Machek

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=20201006172610.GA1836@duo.ucw.cz \
    --to=pavel@ucw.cz \
    --cc=devicetree@vger.kernel.org \
    --cc=dmurphy@ti.com \
    --cc=kabel@blackhole.sk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=ultracoolguy@tutanota.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®