lkml.org 
[lkml]   [2015]   [Jul]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [Question] How to implement GPIO driver for sparse hw numbers?
From
Hi Linus,


2015-07-15 7:04 GMT+09:00 Linus Walleij <linus.walleij@linaro.org>:
> On Fri, Jun 19, 2015 at 5:27 AM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>
>> In my understanding, the GPIO driver framework requires that
>> the hw numbers should be contiguous within each GPIO chip.
>
> Yes but noone says that .request() to the driver has to succeed
> on every GPIO so just cover all GPIOs from 0 to 307 with
> your GPIO chip and then implement your "holes" in the GPIO
> range from 0 to 307 by letting .request() fail.

Thanks,
At first I also thought about it, but finally I did not adopt it.

Having holes in the GPIO range is not handy because:

[1] When we map a gpio range into a pin range,
we must divide "gpio-ranges" property into many lines
gpio-ranges = <phandle 0 x 8
phandle 10 (x+8) 8
phandle 20 (x+16) 8
phandle 30 (x+24) 8
...

[2] implementation of .set_multiple() gets more complicated




--
Best Regards
Masahiro Yamada


\
 
 \ /
  Last update: 2015-07-16 06:21    [W:6.591 / U:0.372 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site