On Thu, 28 Mar 2019 17:02:15 +1300 Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx> wrote: > When the gpio-addr-flash.c driver was merged with physmap-core.c the > code to store the current gpio_values was lost. This meant that once a > gpio was asserted it was never de-asserted. Fix this by storing the > current offset in gpio_values like the old driver used to. > > Fixes: commit ba32ce95cbd9 ("mtd: maps: Merge gpio-addr-flash.c into physmap-core.c") You miss Cc: <stable@xxxxxxxxxxxxxxx> > Signed-off-by: Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx> Reviewed-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> > --- > drivers/mtd/maps/physmap-core.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/mtd/maps/physmap-core.c b/drivers/mtd/maps/physmap-core.c > index d9a3e4bebe5d..21b556afc305 100644 > --- a/drivers/mtd/maps/physmap-core.c > +++ b/drivers/mtd/maps/physmap-core.c > @@ -132,6 +132,8 @@ static void physmap_set_addr_gpios(struct physmap_flash_info *info, > > gpiod_set_value(info->gpios->desc[i], !!(BIT(i) & ofs)); > } > + > + info->gpio_values = ofs; > } > > #define win_mask(order) (BIT(order) - 1)