From: Sandor Yu <redacted>
On the imx7d-sdb board, there is one output pin of the 74x164 that
controls all peripherals power supply (PERI_3V).
This pin should be at high voltage level when the 74x164 is probed,
otherwise the modules dependent on PERI_3V3 will not be powered.
Add a new optional property called 'registers-default' that allows
describing the default output value for each shift register.
Signed-off-by: Sandor Yu <redacted>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
Changes since v2:
-Add Sandor's Signed-off-by tag.
drivers/gpio/gpio-74x164.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpio/gpio-74x164.c b/drivers/gpio/gpio-74x164.c
index 05637d585152..a11637518774 100644
--- a/drivers/gpio/gpio-74x164.c
+++ b/drivers/gpio/gpio-74x164.c
@@ -141,6 +141,9 @@ static int gen_74x164_probe(struct spi_device *spi)
chip->registers = nregs;
chip->gpio_chip.ngpio = GEN_74X164_NUMBER_GPIOS * chip->registers;
+ device_property_read_u8_array(&spi->dev, "registers-default",
+ chip->buffer, chip->registers);
+
chip->gpio_chip.can_sleep = true;
chip->gpio_chip.parent = &spi->dev;
chip->gpio_chip.owner = THIS_MODULE;
--
2.17.1