All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Bartosz Golaszewski <brgl@bgdev.pl>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	Kent Gibson <warthog618@gmail.com>,
	linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,
	Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Subject: Re: [PATCH] gpio: sim: don't fiddle with GPIOLIB private members
Date: Mon, 4 Sep 2023 11:58:52 +0300	[thread overview]
Message-ID: <ZPWcTMPiu4MSq+F7@smile.fi.intel.com> (raw)
In-Reply-To: <CAMRc=Mekf9Rek3_G2ttQY+yBvWM3+P4RAWVOQH99eajn38F+og@mail.gmail.com>

On Sat, Sep 02, 2023 at 04:40:05PM +0200, Bartosz Golaszewski wrote:
> On Fri, Sep 1, 2023 at 11:10 PM Andy Shevchenko
> <andriy.shevchenko@linux.intel.com> wrote:
> > On Fri, Sep 01, 2023 at 08:32:40PM +0200, Bartosz Golaszewski wrote:

...

> > > -static void gpio_sim_free(struct gpio_chip *gc, unsigned int offset)
> >
> > Why is this?
> 
> Dunno, some git shenanigans?

Time to use --patience then?

...

> > > -     /* Used by sysfs and configfs callbacks. */
> > > -     dev_set_drvdata(&gc->gpiodev->dev, chip);
> > > +     /* Used by sysfs callbacks. */
> > > +     dev_set_drvdata(swnode->dev, chip);
> >
> > dev pointer of firmware node is solely for dev links. Is it the case here?
> > Seems to me you luckily abuse it.
> 
> I don't think so. If anything we have a helper in the form of
> get_dev_from_fwnode() but it takes reference to the device while we
> don't need it - we know it'll be there because we created it.
> 
> This information (struct device of the GPIO device) can also be
> retrieved by iterating over the device children of the top platform
> device and comparing their fwnodes against the one we got passed down
> from probe() but it's just so many extra steps.
> 
> Or we can have a getter in gpio/driver.h for that but I don't want to
> expose another interface is we can simply use the fwnode.

dev pointer in the fwnode strictly speaking is optional. No-one, except
its solely user, should rely on it (its presence and lifetime).

-- 
With Best Regards,
Andy Shevchenko



  reply	other threads:[~2023-09-04  8:59 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-01 18:32 [PATCH] gpio: sim: don't fiddle with GPIOLIB private members Bartosz Golaszewski
2023-09-01 21:10 ` Andy Shevchenko
2023-09-02 14:40   ` Bartosz Golaszewski
2023-09-04  8:58     ` Andy Shevchenko [this message]
2023-09-04  9:22       ` Bartosz Golaszewski
2023-09-04  9:40         ` Andy Shevchenko
2023-09-04  9:47           ` Bartosz Golaszewski
2023-09-04 10:05             ` Andy Shevchenko
2023-09-04 10:12               ` Bartosz Golaszewski
2023-09-04 10:29                 ` Andy Shevchenko
2024-02-21  1:46                   ` Saravana Kannan
2024-02-21  9:34                     ` Bartosz Golaszewski
2024-02-21 12:59                     ` Andy Shevchenko
2024-02-23  1:01                       ` Saravana Kannan
2024-02-23 14:54                         ` Andy Shevchenko

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=ZPWcTMPiu4MSq+F7@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=bartosz.golaszewski@linaro.org \
    --cc=brgl@bgdev.pl \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=warthog618@gmail.com \
    /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.