From mboxrd@z Thu Jan 1 00:00:00 1970 From: Denis Carikli Subject: [PATCHv7][ 1/2] backlight: gpio_backlight: Use a default state enum. Date: Thu, 5 Dec 2013 18:55:08 +0100 Message-ID: <1386266109-16071-1-git-send-email-denis@eukrea.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Richard Purdie , Jingoo Han Cc: Denis Carikli , Laurent Pinchart , Rob Herring , Pawel Moll , Mark Rutland , Stephen Warren , Ian Campbell , devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Sascha Hauer , linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, =?UTF-8?q?Lothar=20Wa=C3=9Fmann?= , Jean-Christophe Plagniol-Villard , Thierry Reding , =?UTF-8?q?Eric=20B=C3=A9nard?= List-Id: devicetree@vger.kernel.org That enum adds a "keep" state which permits to tell the driver trough its platform data not to touch the hardware during the probe. Cc: Richard Purdie Cc: Jingoo Han Cc: Laurent Pinchart Cc: Rob Herring Cc: Pawel Moll Cc: Mark Rutland Cc: Stephen Warren Cc: Ian Campbell Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: Sascha Hauer Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Cc: Lothar Wa=C3=9Fmann Cc: Jean-Christophe Plagniol-Villard Cc: Thierry Reding Cc: Eric B=C3=A9nard Signed-off-by: Denis Carikli --- ChangeLog v5->v6: - New patch. --- drivers/video/backlight/gpio_backlight.c | 7 +++++-- include/linux/platform_data/gpio_backlight.h | 6 ++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/video/backlight/gpio_backlight.c b/drivers/video/b= acklight/gpio_backlight.c index 81fb127..6ddeba9 100644 --- a/drivers/video/backlight/gpio_backlight.c +++ b/drivers/video/backlight/gpio_backlight.c @@ -23,6 +23,7 @@ struct gpio_backlight { =20 int gpio; int active; + enum gpio_backlight_default_state def_value; }; =20 static int gpio_backlight_update_status(struct backlight_device *bl) @@ -103,8 +104,10 @@ static int gpio_backlight_probe(struct platform_de= vice *pdev) return PTR_ERR(bl); } =20 - bl->props.brightness =3D pdata->def_value; - backlight_update_status(bl); + if (pdata->def_value !=3D BACKLIGHT_GPIO_DEFSTATE_KEEP) { + bl->props.brightness =3D pdata->def_value; + backlight_update_status(bl); + } =20 platform_set_drvdata(pdev, bl); return 0; diff --git a/include/linux/platform_data/gpio_backlight.h b/include/lin= ux/platform_data/gpio_backlight.h index 5ae0d9c..3b437b3 100644 --- a/include/linux/platform_data/gpio_backlight.h +++ b/include/linux/platform_data/gpio_backlight.h @@ -10,6 +10,12 @@ =20 struct device; =20 +enum gpio_backlight_default_state { + BACKLIGHT_GPIO_DEFSTATE_OFF, + BACKLIGHT_GPIO_DEFSTATE_ON, + BACKLIGHT_GPIO_DEFSTATE_KEEP, +}; + struct gpio_backlight_platform_data { struct device *fbdev; int gpio; --=20 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe devicetree" i= n the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html