On Tue, Apr 19, 2016 at 2:18 PM, <patrice.chotard@xxxxxx> wrote: > From: Patrice Chotard <patrice.chotard@xxxxxx> > > Configures all GPIOs as output, in order to minimize power > consumption when GPIOs are unused. > > Signed-off-by: Amelie DELAUNAY <amelie.delaunay@xxxxxx> > Signed-off-by: Patrice Chotard <patrice.chotard@xxxxxx> Not only do you set them all to outout but also: > + /* To minimize power consumption, configure unused GPIOs as outputs */ > + for (i = 0; i < stmpe_gpio->chip.ngpio; i++) > + stmpe_gpio_direction_output(&stmpe_gpio->chip, i, 0); You are driving them all low. Now GPIO is general purpose: what if they are connected to a line with a pull-up resistor? That is not saving power, instead consuming more than if you were setting them all to 1. I am afraid this is wrong. What you need is to be able to define in the DT (or similar) a set of initial values for the GPIO lines, and set them to 0 for this design. Such bindings have been discussed but no conclusion or merged patch has emerged. Please help out in driving a standard for this! Yours, Linus Walleij -- 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