[PATCH RFC 1/2] gpio: Add a block GPIO API to gpiolib
From: Jean-Christophe PLAGNIOL-VILLARD <hidden>
Date: 2012-09-29 20:09:34
Also in:
lkml
From: Jean-Christophe PLAGNIOL-VILLARD <hidden>
Date: 2012-09-29 20:09:34
Also in:
lkml
On 20:32 Fri 28 Sep , Roland Stigge wrote:
Hi, On 28/09/12 18:01, Jean-Christophe PLAGNIOL-VILLARD wrote:quoted
quoted
Maybe like this, for some struct block *? block = set_block_prepare(gc, pins, values, size); if (block) { set_block(gc, block); ... set_block_unprepare(gc, block); } Would mean that all supported drivers would need to implement those 3 new functions... Need to be careful about not introducing bloat...the prepare is gpiolib specific, it will be a helper to conver a gpio list to a gpio block list I was thinking more block = gpio_block_prepare(pins, size); gpio_block_set_value(pin0, val); gpio_block_set_value(pin1, val); gpio_block_set_value(pin2, val); gpio_block_set(block); andfor get gpio_block_get(block) val = gpio_block_get_value(block, pin0); val = gpio_block_get_value(block, pin1); for the gpio driver ti's transparentProblem here is that it's only an intermediate format since hardware often needs special preparation of the data. But will evaluate what makes most sense.
the key point here is to avoid to manipualte data each time we call gpio_block_set hardware specific will have to be handle at driver level Best Regards, J.