aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Vokáč <[email protected]>2018-10-08 12:57:36 +0200
committerBartlomiej Zolnierkiewicz <[email protected]>2018-10-08 12:57:36 +0200
commit7d1b8d7a858024bd6a1dca206646fbcab5785220 (patch)
treed55486adb10ea1ca2c9dfd66a937dab4954284d7
parentaae3394ef0ef90cf00a21133357448385f13a5d4 (diff)
video: ssd1307fb: Use gpiod_set_value_cansleep() for reset
The reset signal can be produced by GPIO expander that can sleep. In that case the probe function fails. Allow using GPIO expanders for the reset signal by using the non-atomic gpiod_set_value_cansleep() function. Signed-off-by: Michal Vokáč <[email protected]> Reviewed-by: Fabio Estevam <[email protected]> Cc: Shawn Guo <[email protected]> Cc: Rob Herring <[email protected]> Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]>
-rw-r--r--drivers/video/fbdev/ssd1307fb.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/video/fbdev/ssd1307fb.c b/drivers/video/fbdev/ssd1307fb.c
index 6439231f2db2..4061a20cfe24 100644
--- a/drivers/video/fbdev/ssd1307fb.c
+++ b/drivers/video/fbdev/ssd1307fb.c
@@ -667,9 +667,9 @@ static int ssd1307fb_probe(struct i2c_client *client,
if (par->reset) {
/* Reset the screen */
- gpiod_set_value(par->reset, 0);
+ gpiod_set_value_cansleep(par->reset, 0);
udelay(4);
- gpiod_set_value(par->reset, 1);
+ gpiod_set_value_cansleep(par->reset, 1);
udelay(4);
}