linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Maxime Ripard <mripard@kernel.org>
To: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Chen-Yu Tsai <wens@csie.org>,
	Jernej Skrabec <jernej.skrabec@siol.net>,
	Thierry Reding <thierry.reding@gmail.com>,
	Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	linux-pwm@vger.kernel.org,
	devicetree <devicetree@vger.kernel.org>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	linux-sunxi <linux-sunxi@googlegroups.com>,
	Philipp Zabel <p.zabel@pengutronix.de>
Subject: Re: [PATCH 2/6] pwm: sun4i: Add a quirk for reset line
Date: Mon, 29 Jul 2019 18:37:15 +0200	[thread overview]
Message-ID: <20190729163715.vtv7lkrywewomxga@flea.home> (raw)
In-Reply-To: <20190729071218.bukw7vxilqy523k3@pengutronix.de>

[-- Attachment #1: Type: text/plain, Size: 2093 bytes --]

On Mon, Jul 29, 2019 at 09:12:18AM +0200, Uwe Kleine-König wrote:
> Hello,
>
> On Mon, Jul 29, 2019 at 02:43:23PM +0800, Chen-Yu Tsai wrote:
> > On Mon, Jul 29, 2019 at 2:36 PM Uwe Kleine-König
> > <u.kleine-koenig@pengutronix.de> wrote:
> > > On Fri, Jul 26, 2019 at 08:40:41PM +0200, Jernej Skrabec wrote:
> > > > @@ -371,6 +374,14 @@ static int sun4i_pwm_probe(struct platform_device *pdev)
> > > >       if (IS_ERR(pwm->clk))
> > > >               return PTR_ERR(pwm->clk);
> > > >
> > > > +     if (pwm->data->has_reset) {
> > > > +             pwm->rst = devm_reset_control_get(&pdev->dev, NULL);
> > > > +             if (IS_ERR(pwm->rst))
> > > > +                     return PTR_ERR(pwm->rst);
> > > > +
> > > > +             reset_control_deassert(pwm->rst);
> > > > +     }
> > > > +
> > >
> > > I wonder why there is a need to track if a given chip needs a reset
> > > line. I'd just use devm_reset_control_get_optional() and drop the
> > > .has_reset member in struct sun4i_pwm_data.
> >
> > Because it's not optional for this platform, i.e. it won't work if
> > the reset control (or clk, in the next patch) is somehow missing from
> > the device tree.
>
> If the device tree is wrong it is considered ok that the driver doesn't
> behave correctly. So this is not a problem you need (or should) care
> about.

To some extent that's true, but if we can make the life easier for
everyone by reporting an error and bailing out instead of silently
ignoring that, continuing to probe and just ending up with a
completely broken system for no apparent reason, then why not just do
that?

I mean, all it takes is three lines of code.

It's no different than just calling clk_get, and testing the return
code to see if it's there or not. I wouldn't call that check when you
depend on a clock "validating the DT". It's just making sure that all
the resources needed for you to operate properly are there, which is a
pretty common thing to do.

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

  parent reply	other threads:[~2019-07-29 16:37 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-26 18:40 [PATCH 0/6] pwm: sun4i: Add support for Allwinner H6 Jernej Skrabec
2019-07-26 18:40 ` [PATCH 1/6] dt-bindings: pwm: allwinner: Add H6 PWM description Jernej Skrabec
2019-07-27 10:42   ` Maxime Ripard
2019-07-26 18:40 ` [PATCH 2/6] pwm: sun4i: Add a quirk for reset line Jernej Skrabec
2019-07-27 10:42   ` Maxime Ripard
2019-07-29  6:36   ` Uwe Kleine-König
2019-07-29  6:43     ` Chen-Yu Tsai
2019-07-29  7:12       ` Uwe Kleine-König
2019-07-29 10:18         ` Philipp Zabel
2019-07-29 16:37         ` Maxime Ripard [this message]
2019-07-29 18:20           ` Uwe Kleine-König
2019-07-26 18:40 ` [PATCH 3/6] pwm: sun4i: Add a quirk for bus clock Jernej Skrabec
2019-07-27 10:46   ` Maxime Ripard
2019-07-27 14:15     ` Jernej Škrabec
2019-07-27 14:27     ` Chen-Yu Tsai
2019-07-29  6:38   ` Uwe Kleine-König
2019-07-29 15:48     ` Jernej Škrabec
2019-07-29 16:14       ` Uwe Kleine-König
2019-07-29 16:45         ` Maxime Ripard
2019-07-29 19:04           ` Uwe Kleine-König
2019-07-26 18:40 ` [PATCH 4/6] pwm: sun4i: Add support for H6 PWM Jernej Skrabec
2019-07-29  6:40   ` Uwe Kleine-König
2019-07-29 15:55     ` Jernej Škrabec
2019-07-29 16:07       ` Uwe Kleine-König
2019-07-29 16:09         ` [linux-sunxi] " Chen-Yu Tsai
2019-07-29 16:24           ` Uwe Kleine-König
2019-07-29 16:40             ` Jernej Škrabec
2019-07-29 18:40               ` Uwe Kleine-König
2019-07-29 18:46                 ` Jernej Škrabec
2019-07-29 18:51                   ` Uwe Kleine-König
2019-07-29 22:04                     ` Jernej Škrabec
2019-07-30  8:09                       ` Uwe Kleine-König
2019-07-30  8:32                         ` Chen-Yu Tsai
2019-07-30 17:06                         ` Maxime Ripard
2019-07-31  6:52                           ` Uwe Kleine-König
2019-08-12  9:56                             ` Maxime Ripard
2019-08-12 10:47                               ` Uwe Kleine-König
2019-08-12 10:51                                 ` Jernej Škrabec
2019-07-26 18:40 ` [PATCH 5/6] pwm: sun4i: Add support to output source clock directly Jernej Skrabec
2019-07-27 10:50   ` Maxime Ripard
2019-07-27 14:28     ` Jernej Škrabec
2019-07-27 14:54       ` [linux-sunxi] " Chen-Yu Tsai
2019-07-29  7:06   ` Uwe Kleine-König
2019-07-29 16:16     ` Jernej Škrabec
2019-07-29 16:29       ` Uwe Kleine-König
2019-07-26 18:40 ` [PATCH 6/6] arm64: dts: allwinner: h6: Add PWM node Jernej Skrabec
2019-07-27 10:51   ` Maxime Ripard

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=20190729163715.vtv7lkrywewomxga@flea.home \
    --to=mripard@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=jernej.skrabec@siol.net \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pwm@vger.kernel.org \
    --cc=linux-sunxi@googlegroups.com \
    --cc=mark.rutland@arm.com \
    --cc=p.zabel@pengutronix.de \
    --cc=robh+dt@kernel.org \
    --cc=thierry.reding@gmail.com \
    --cc=u.kleine-koenig@pengutronix.de \
    --cc=wens@csie.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).