All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Nikolaus Schaller" <hns@goldelico.com>
To: Mark Brown <broonie@kernel.org>
Cc: Paul Cercueil <paul@crapouillou.net>,
	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, 1 Dec 2021 17:53:03 +0100	[thread overview]
Message-ID: <3174DA41-EB38-4C30-8752-0D9C894C74A7@goldelico.com> (raw)
In-Reply-To: <YaeQW/akoLE6SpEi@sirena.org.uk>

Hi Mark,


> Am 01.12.2021 um 16:10 schrieb Mark Brown <broonie@kernel.org>:
> 
> On Wed, Dec 01, 2021 at 03:33:24PM +0100, H. Nikolaus Schaller wrote:
>>> Am 01.12.2021 um 15:03 schrieb Paul Cercueil <paul@crapouillou.net>:
> 
>>> Please make it mandatory in DTS then, and use devm_regulator_get() in the driver.
> 
>> Well, I just wonder why the elegant devm_regulator_get_optional() exists at all
>> and seems to be used in ca. 80 places.
> 
> Frankly because half of them are broken usages like this since people
> seem determined to have the most fragile error handling they can :/

I see. I had made the mistake myself to not check for NULL pointer on
regulator_disable here...

> There are valid use cases for it, with things like SD cards where some
> supplies are genuinely optional and simply constrain what features are
> available if they're omitted from the design.  You also see some devices
> with the ability to replace internal regulators with external ones.
> 
>> And if it is not allowed, why some DTS should be forced to add not physically existing dummy-regulators.
> 
> Again, if the supply can be physically absent that is a sensible use
> case but that means completely absent, not just not software
> controllable.  We can represent fixed voltage regulators just fine.

The question may be how we can know for a more generic driver that there is always a regulator.
In the present case we know the schematics but it is just one example.

> 
>> AFAIR drivers should implement functionality defined by DTS but not the other way round: enforce DTS style.
>> BTW: there is no +5 mains dummy regulator defined in ci20.dts.
> 
> It wouldn't be the first time a DTS were incomplete, and I'm sure it
> won't be the last.
> 
>> What I fear is that if we always have to define the mains +5V (which is for example not
>> defined in ci20.dts), which rules stops us from asking to add a dummy-regulator from 110/230V to +5V as well.
> 
> It is good practice to specify the full tree of supplies all the way to
> the main supply rail of the board, this ensures that if we need the
> information for something we've got it (even if that thing is just that
> we've got to the root of the tree).  There's potential applications in
> battery supplied devices for managing very low power situations.

Indeed. So let's modify it as you have suggested.

BR and thanks,
Nikolaus


WARNING: multiple messages have this Message-ID (diff)
From: "H. Nikolaus Schaller" <hns@goldelico.com>
To: Mark Brown <broonie@kernel.org>
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,
	Paul Cercueil <paul@crapouillou.net>,
	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,
	"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, 1 Dec 2021 17:53:03 +0100	[thread overview]
Message-ID: <3174DA41-EB38-4C30-8752-0D9C894C74A7@goldelico.com> (raw)
In-Reply-To: <YaeQW/akoLE6SpEi@sirena.org.uk>

Hi Mark,


> Am 01.12.2021 um 16:10 schrieb Mark Brown <broonie@kernel.org>:
> 
> On Wed, Dec 01, 2021 at 03:33:24PM +0100, H. Nikolaus Schaller wrote:
>>> Am 01.12.2021 um 15:03 schrieb Paul Cercueil <paul@crapouillou.net>:
> 
>>> Please make it mandatory in DTS then, and use devm_regulator_get() in the driver.
> 
>> Well, I just wonder why the elegant devm_regulator_get_optional() exists at all
>> and seems to be used in ca. 80 places.
> 
> Frankly because half of them are broken usages like this since people
> seem determined to have the most fragile error handling they can :/

I see. I had made the mistake myself to not check for NULL pointer on
regulator_disable here...

> There are valid use cases for it, with things like SD cards where some
> supplies are genuinely optional and simply constrain what features are
> available if they're omitted from the design.  You also see some devices
> with the ability to replace internal regulators with external ones.
> 
>> And if it is not allowed, why some DTS should be forced to add not physically existing dummy-regulators.
> 
> Again, if the supply can be physically absent that is a sensible use
> case but that means completely absent, not just not software
> controllable.  We can represent fixed voltage regulators just fine.

The question may be how we can know for a more generic driver that there is always a regulator.
In the present case we know the schematics but it is just one example.

> 
>> AFAIR drivers should implement functionality defined by DTS but not the other way round: enforce DTS style.
>> BTW: there is no +5 mains dummy regulator defined in ci20.dts.
> 
> It wouldn't be the first time a DTS were incomplete, and I'm sure it
> won't be the last.
> 
>> What I fear is that if we always have to define the mains +5V (which is for example not
>> defined in ci20.dts), which rules stops us from asking to add a dummy-regulator from 110/230V to +5V as well.
> 
> It is good practice to specify the full tree of supplies all the way to
> the main supply rail of the board, this ensures that if we need the
> information for something we've got it (even if that thing is just that
> we've got to the root of the tree).  There's potential applications in
> battery supplied devices for managing very low power situations.

Indeed. So let's modify it as you have suggested.

BR and thanks,
Nikolaus


  reply	other threads:[~2021-12-01 16:53 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
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 [this message]
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=3174DA41-EB38-4C30-8752-0D9C894C74A7@goldelico.com \
    --to=hns@goldelico.com \
    --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=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=paul@crapouillou.net \
    --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.