On 11/09/13 14:40, Mike Dunn wrote: > On 09/10/2013 10:21 AM, Thierry Reding wrote: >> Do you have a real setup that actually needs multiple GPIOs? Usually >> such a setup requires some kind of timing or other additional constraint >> which can't be represented by this simple binding. >> >> Looking at the Palm Treo code it seems like the reason why multiple >> GPIOs are needed is because one is to enable the backlight, while the >> other is in fact used to enable the LCD panel. > > > There are actually four GPIOs involved! (There is an embarrasingly horrible > hack in arch/arm/mach-pxa/palmtreo.c that handles the others.) One is almost > certainly simply backlight power. The other three are probably LCD related. When you say "power", do you mean the gpio enables a regulator to feed power to the backlight? If so, wouldn't that be a regulator, not gpio, from the bl driver's point of view? Generally speaking, this same problem appears in many places, but for some reason especially in display. I'm a bit hesitant in adding "free form" gpio/regulator support for drivers, as, as Thierry pointed out, there are often timing requirements, or sometimes the gpios are inverted, or sometimes the gpio is, in fact, a reset gpio, where you'll assert the gpio for a short moment only. I haven't seen new versions for the power sequences framework (without DT support), I think it could help us here a bit by simplifying how we present the sequences inside the driver. But we still need multiple drivers or the same driver supporting multiple devices. And I also think that the model where we have just one driver for, say, backlight may not be enough. There may be multiple hardware components, that used together will generate the backlight. And each component requires specific management. Tomi
Attachment:
signature.asc
Description: OpenPGP digital signature