Thread (1 message) 1 message, 1 author, 2012-03-30

[PATCH v5 04/16] pwm: Add table-based lookup for static mappings

From: Mark Brown <hidden>
Date: 2012-03-30 10:18:00
Also in: linux-devicetree, linux-tegra

On Fri, Mar 30, 2012 at 07:06:41AM +0200, Thierry Reding wrote:
* Mark Brown wrote:
quoted
The clock and regulator APIs namespace the consumers by struct device -
might this not be sensible here?  pwm_get() does already take the device
as an argument.  It'd feel safer, and for example there's plenty of
phones out there with two backlit displays...
That's actually how this is supposed to work. "pwm-backlight" in the above
case is matched against the name of the struct device that you pass in to
pwm_get(). The only difference, at least as far as I can tell, to the clock
and regulator APIs is that a second name is not listed explicitly in the
lookup table.
Both clock and regulator APIs map (source) -> (dev, name).  This only
has a mapping (source) -> (dev).
So compared with the clock and regulator APIs it doesn't make too much sense
to pass both the struct device and the name to pwm_get() because it will
match the device name against the consumer name in the lookup table first and
only use the passed name if no match was found.
This is different to what the clock and regulator APIs do - they look up
the name in the context of the struct device.  This is because...
In case you have two backlight devices I would expect the following to work:
	static struct pwm_lookup board_pwm_lookup[] = {
		PWM_LOOKUP("tegra-pwm", 0, "pwm-backlight.0"),
		PWM_LOOKUP("tegra-pwm", 1, "pwm-backlight.1"),
	};
...if a single device uses more than one PWM then the above scheme won't
work - unless I'm missing something?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120330/eceb80cf/attachment.sig>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help