On Wed, 2018-03-21 at 09:58 -0700, Stephen Boyd wrote: > From: Stephen Boyd <sboyd@xxxxxxxxxxxxxx> > > Some qcom platforms make some GPIOs or pins unavailable for use by > non-secure operating systems, and thus reading or writing the > registers > for those pins will cause access control issues. Add support for a DT > property to describe the set of GPIOs that are available for use so > that > higher level OSes are able to know what pins to avoid reading/writing. > Non-DT platforms can add support by directly updating the > chip->valid_mask. > Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx> > Signed-off-by: Stephen Boyd <swboyd@xxxxxxxxxxxx> Hmm... > + gpiochip->valid_mask = kcalloc(BITS_TO_LONGS(gpiochip- > >ngpio), > + sizeof(long), GFP_KERNEL); Just noticed that kcalloc is superfluous here. kmalloc_array() would be enough. > + if (!gpiochip->valid_mask) > + return -ENOMEM; > + > + /* Assume by default all GPIOs are valid */ > + bitmap_fill(gpiochip->valid_mask, gpiochip->ngpio); -- Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Intel Finland Oy -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html