All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Cercueil <paul@crapouillou.net>
To: "H. Nikolaus Schaller" <hns@goldelico.com>
Cc: Mark Brown <broonie@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Geert Uytterhoeven <geert+renesas@glider.be>,
	Kees Cook <keescook@chromium.org>,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	Miquel Raynal <miquel.raynal@bootlin.com>,
	David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>,
	Neil Armstrong <narmstrong@baylibre.com>,
	Robert Foss <robert.foss@linaro.org>,
	Laurent Pinchart <Laurent.pinchart@ideasonboard.com>,
	Jernej Skrabec <jernej.skrabec@gmail.com>,
	Harry Wentland <harry.wentland@amd.com>,
	Sam Ravnborg <sam@ravnborg.org>,
	Maxime Ripard <maxime@cerno.tech>,
	Hans Verkuil <hverkuil-cisco@xs4all.nl>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Paul Boddie <paul@boddie.org.uk>,
	devicetree@vger.kernel.org, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, letux-kernel@openphoenux.org,
	Jonas Karlman <jonas@kwiboo.se>,
	dri-devel@lists.freedesktop.org,
	Ezequiel Garcia <ezequiel@collabora.com>
Subject: Re: [PATCH v10 4/8] drm/ingenic: Add dw-hdmi driver for jz4780
Date: Wed, 01 Dec 2021 14:03:14 +0000	[thread overview]
Message-ID: <EDWF3R.CMVWMJL42OH9@crapouillou.net> (raw)
In-Reply-To: <46070A95-0FA9-43F9-A9A9-52A7B58B88F5@goldelico.com>

Hi Nikolaus, Mark,

Le mer., déc. 1 2021 at 14:51:51 +0100, H. Nikolaus Schaller 
<hns@goldelico.com> a écrit :
> Hi,
> 
>>  Am 01.12.2021 um 14:39 schrieb Mark Brown <broonie@kernel.org>:
>> 
>>  On Wed, Dec 01, 2021 at 01:02:45PM +0000, Paul Cercueil wrote:
>>>  Le mar., nov. 30 2021 at 22:26:37 +0100, H. Nikolaus Schaller
>> 
>>>>  +	regulator = devm_regulator_get_optional(&pdev->dev, "hdmi-5v");
>>>>  +	if (IS_ERR(regulator)) {
>>>>  +		ret = PTR_ERR(regulator);
>> 
>>  Why is this using _optional()?  This should only be done when the 
>> supply
>>  can be physically absent
> 
> There can be +5V for HDMI but without a regulator that is visible to 
> or controllable
> by the driver.

There is always a power supply though. Either a controllable one 
(through e.g. a GPIO), or it's just connected to the mains +5V; the pin 
is never left floating. In the second case, in DTS the "hdmi-5v" would 
be connected to some 5v regulator, even if it's just a dummy VCC-5V 
regulator. So Mark has a point.

> So hdmi-5v can be simply missing in DTS in which case the driver does 
> not need to
> care about. The driver just can't turn it on or off.

Please make it mandatory in DTS then, and use devm_regulator_get() in 
the driver.

Cheers,
-Paul

>>  (in which case I'd expect to see special
>>  handling).
> 
> The special case is to not enable/disable the regulator if it does 
> not exist
> and assume that there is hardware providing it otherwise (the driver 
> can't know
> that except by using get_optional). This is done by the code below
> 
>>>>  +	if (IS_ERR(regulator)) {
> 
> ...
> 
>>  +	if (!regulator)
>>  +		return 0;
>> 
>>  +	ret = regulator_enable(regulator);
> 
> ...
> 
> BR and thanks,
> Nikolaus
> 
> 
> 
> 



WARNING: multiple messages have this Message-ID (diff)
From: Paul Cercueil <paul@crapouillou.net>
To: "H. Nikolaus Schaller" <hns@goldelico.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
	Paul Boddie <paul@boddie.org.uk>,
	Geert Uytterhoeven <geert+renesas@glider.be>,
	Neil Armstrong <narmstrong@baylibre.com>,
	David Airlie <airlied@linux.ie>,
	dri-devel@lists.freedesktop.org, linux-mips@vger.kernel.org,
	Laurent Pinchart <Laurent.pinchart@ideasonboard.com>,
	Miquel Raynal <miquel.raynal@bootlin.com>,
	Sam Ravnborg <sam@ravnborg.org>,
	Jernej Skrabec <jernej.skrabec@gmail.com>,
	devicetree@vger.kernel.org, Kees Cook <keescook@chromium.org>,
	Jonas Karlman <jonas@kwiboo.se>, Rob Herring <robh+dt@kernel.org>,
	Maxime Ripard <maxime@cerno.tech>,
	letux-kernel@openphoenux.org,
	Ezequiel Garcia <ezequiel@collabora.com>,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Robert Foss <robert.foss@linaro.org>,
	linux-kernel@vger.kernel.org, Mark Brown <broonie@kernel.org>,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	Hans Verkuil <hverkuil-cisco@xs4all.nl>
Subject: Re: [PATCH v10 4/8] drm/ingenic: Add dw-hdmi driver for jz4780
Date: Wed, 01 Dec 2021 14:03:14 +0000	[thread overview]
Message-ID: <EDWF3R.CMVWMJL42OH9@crapouillou.net> (raw)
In-Reply-To: <46070A95-0FA9-43F9-A9A9-52A7B58B88F5@goldelico.com>

Hi Nikolaus, Mark,

Le mer., déc. 1 2021 at 14:51:51 +0100, H. Nikolaus Schaller 
<hns@goldelico.com> a écrit :
> Hi,
> 
>>  Am 01.12.2021 um 14:39 schrieb Mark Brown <broonie@kernel.org>:
>> 
>>  On Wed, Dec 01, 2021 at 01:02:45PM +0000, Paul Cercueil wrote:
>>>  Le mar., nov. 30 2021 at 22:26:37 +0100, H. Nikolaus Schaller
>> 
>>>>  +	regulator = devm_regulator_get_optional(&pdev->dev, "hdmi-5v");
>>>>  +	if (IS_ERR(regulator)) {
>>>>  +		ret = PTR_ERR(regulator);
>> 
>>  Why is this using _optional()?  This should only be done when the 
>> supply
>>  can be physically absent
> 
> There can be +5V for HDMI but without a regulator that is visible to 
> or controllable
> by the driver.

There is always a power supply though. Either a controllable one 
(through e.g. a GPIO), or it's just connected to the mains +5V; the pin 
is never left floating. In the second case, in DTS the "hdmi-5v" would 
be connected to some 5v regulator, even if it's just a dummy VCC-5V 
regulator. So Mark has a point.

> So hdmi-5v can be simply missing in DTS in which case the driver does 
> not need to
> care about. The driver just can't turn it on or off.

Please make it mandatory in DTS then, and use devm_regulator_get() in 
the driver.

Cheers,
-Paul

>>  (in which case I'd expect to see special
>>  handling).
> 
> The special case is to not enable/disable the regulator if it does 
> not exist
> and assume that there is hardware providing it otherwise (the driver 
> can't know
> that except by using get_optional). This is done by the code below
> 
>>>>  +	if (IS_ERR(regulator)) {
> 
> ...
> 
>>  +	if (!regulator)
>>  +		return 0;
>> 
>>  +	ret = regulator_enable(regulator);
> 
> ...
> 
> BR and thanks,
> Nikolaus
> 
> 
> 
> 



  reply	other threads:[~2021-12-01 14:03 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-30 21:26 [PATCH v10 0/8] MIPS: JZ4780 and CI20 HDMI H. Nikolaus Schaller
2021-11-30 21:26 ` H. Nikolaus Schaller
2021-11-30 21:26 ` [PATCH v10 1/8] drm/ingenic: prepare ingenic drm for later addition of JZ4780 H. Nikolaus Schaller
2021-11-30 21:26   ` H. Nikolaus Schaller
2021-11-30 21:26 ` [PATCH v10 2/8] drm/ingenic: Add support for JZ4780 and HDMI output H. Nikolaus Schaller
2021-11-30 21:26   ` H. Nikolaus Schaller
2021-11-30 21:26 ` [PATCH v10 3/8] dt-bindings: display: Add ingenic,jz4780-dw-hdmi DT Schema H. Nikolaus Schaller
2021-11-30 21:26   ` [PATCH v10 3/8] dt-bindings: display: Add ingenic, jz4780-dw-hdmi " H. Nikolaus Schaller
2021-11-30 21:26 ` [PATCH v10 4/8] drm/ingenic: Add dw-hdmi driver for jz4780 H. Nikolaus Schaller
2021-11-30 21:26   ` H. Nikolaus Schaller
2021-12-01 13:02   ` Paul Cercueil
2021-12-01 13:02     ` Paul Cercueil
2021-12-01 13:18     ` H. Nikolaus Schaller
2021-12-01 13:18       ` H. Nikolaus Schaller
2021-12-01 13:39     ` Mark Brown
2021-12-01 13:39       ` Mark Brown
2021-12-01 13:51       ` H. Nikolaus Schaller
2021-12-01 13:51         ` H. Nikolaus Schaller
2021-12-01 14:03         ` Paul Cercueil [this message]
2021-12-01 14:03           ` Paul Cercueil
2021-12-01 14:33           ` H. Nikolaus Schaller
2021-12-01 14:33             ` H. Nikolaus Schaller
2021-12-01 15:10             ` Mark Brown
2021-12-01 15:10               ` Mark Brown
2021-12-01 16:53               ` H. Nikolaus Schaller
2021-12-01 16:53                 ` H. Nikolaus Schaller
2021-12-01 17:02                 ` Mark Brown
2021-12-01 17:02                   ` Mark Brown
2021-11-30 21:26 ` [PATCH v10 5/8] MIPS: DTS: jz4780: Account for Synopsys HDMI driver and LCD controllers H. Nikolaus Schaller
2021-11-30 21:26   ` H. Nikolaus Schaller
2021-11-30 21:26 ` [PATCH v10 6/8] MIPS: DTS: CI20: Add DT nodes for HDMI setup H. Nikolaus Schaller
2021-11-30 21:26   ` H. Nikolaus Schaller
2021-11-30 21:26 ` [PATCH v10 7/8] MIPS: defconfig: CI20: configure for DRM_DW_HDMI_JZ4780 H. Nikolaus Schaller
2021-11-30 21:26   ` H. Nikolaus Schaller
2021-11-30 21:26 ` [PATCH v10 8/8] [RFC] MIPS: DTS: Ingenic: adjust register size to available registers H. Nikolaus Schaller
2021-11-30 21:26   ` H. Nikolaus Schaller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=EDWF3R.CMVWMJL42OH9@crapouillou.net \
    --to=paul@crapouillou.net \
    --cc=Laurent.pinchart@ideasonboard.com \
    --cc=airlied@linux.ie \
    --cc=broonie@kernel.org \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=ebiederm@xmission.com \
    --cc=ezequiel@collabora.com \
    --cc=geert+renesas@glider.be \
    --cc=harry.wentland@amd.com \
    --cc=hns@goldelico.com \
    --cc=hverkuil-cisco@xs4all.nl \
    --cc=jernej.skrabec@gmail.com \
    --cc=jonas@kwiboo.se \
    --cc=keescook@chromium.org \
    --cc=letux-kernel@openphoenux.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=maxime@cerno.tech \
    --cc=miquel.raynal@bootlin.com \
    --cc=narmstrong@baylibre.com \
    --cc=paul@boddie.org.uk \
    --cc=robert.foss@linaro.org \
    --cc=robh+dt@kernel.org \
    --cc=sam@ravnborg.org \
    --cc=tsbogend@alpha.franken.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.