From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Subject: Re: [PATCHv5][ 5/8] staging: imx-drm: parallel display: add regulator support. Date: Thu, 5 Dec 2013 21:55:31 +0100 Message-ID: <201312052155.31894.marex@denx.de> References: <1386268092-21719-1-git-send-email-denis@eukrea.com> <1386268092-21719-5-git-send-email-denis@eukrea.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <1386268092-21719-5-git-send-email-denis@eukrea.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: driverdev-devel-bounces@linuxdriverproject.org Sender: driverdev-devel-bounces@linuxdriverproject.org To: Denis Carikli Cc: devel@driverdev.osuosl.org, Mark Rutland , driverdev-devel@linuxdriverproject.org, Eric =?iso-8859-1?q?B=E9nard?= , Pawel Moll , Stephen Warren , David Airlie , Greg Kroah-Hartman , Ian Campbell , Rob Herring , devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, Sascha Hauer , Shawn Guo , Dan Carpenter , linux-arm-kernel@lists.infradead.org List-Id: devicetree@vger.kernel.org On Thursday, December 05, 2013 at 07:28:09 PM, Denis Carikli wrote: > Cc: Dan Carpenter > Cc: Rob Herring > Cc: Pawel Moll > Cc: Mark Rutland > Cc: Stephen Warren > Cc: Ian Campbell > Cc: devicetree@vger.kernel.org > Cc: Greg Kroah-Hartman > Cc: driverdev-devel@linuxdriverproject.org > Cc: David Airlie > Cc: dri-devel@lists.freedesktop.org > Cc: Sascha Hauer > Cc: Shawn Guo > Cc: linux-arm-kernel@lists.infradead.org > Cc: Eric B=E9nard > Signed-off-by: Denis Carikli > --- > ChangeLog v3->v5: > - Code clenaup. > = > ChangeLog v2->v3: > - Added some interested people in the Cc list. > - the lcd-supply is now called display-supply (not all display are LCD). > - The code and documentation was updated accordingly. > - regulator_is_enabled now guard the regulator enables/disables because > regulator_disable does not check the regulator state. > --- > .../bindings/staging/imx-drm/fsl-imx-drm.txt | 1 + > drivers/staging/imx-drm/parallel-display.c | 22 > ++++++++++++++++++++ 2 files changed, 23 insertions(+) > = > diff --git > a/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt > b/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt index > 2d24425..4dd7ce5 100644 > --- a/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt > +++ b/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt > @@ -28,6 +28,7 @@ Required properties: > - compatible: Should be "fsl,imx-parallel-display" > - crtc: the crtc this display is connected to, see below > Optional properties: > +- display-supply : phandle to the regulator device tree node if needed. > - interface_pix_fmt: How this display is connected to the > crtc. Currently supported types: "rgb24", "rgb565", "bgr666", "rgb666" > - edid: verbatim EDID data block describing attached display. > diff --git a/drivers/staging/imx-drm/parallel-display.c > b/drivers/staging/imx-drm/parallel-display.c index 65d0c18..61c0aeb 100644 > --- a/drivers/staging/imx-drm/parallel-display.c > +++ b/drivers/staging/imx-drm/parallel-display.c > @@ -22,6 +22,7 @@ > #include > #include > #include > +#include > #include > = > #include "imx-drm.h" > @@ -35,6 +36,7 @@ struct imx_parallel_display { > struct drm_encoder encoder; > struct imx_drm_encoder *imx_drm_encoder; > struct device *dev; > + struct regulator *disp_reg; > void *edid; > int edid_len; > u32 interface_pix_fmt; > @@ -141,6 +143,13 @@ static void imx_pd_encoder_prepare(struct drm_encoder > *encoder) { > struct imx_parallel_display *imxpd =3D enc_to_imxpd(encoder); > = > + if (!IS_ERR(imxpd->disp_reg) && > + !regulator_is_enabled(imxpd->disp_reg)) { > + if (regulator_enable(imxpd->disp_reg)) > + dev_err(imxpd->dev, > + "Failed to enable regulator.\n"); I wonder, is this linebreak needed for this function call ? [...]