public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Bartosz Golaszewski <brgl@bgdev.pl>
Cc: Kent Gibson <warthog618@gmail.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Shuah Khan <shuah@kernel.org>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Viresh Kumar <viresh.kumar@linaro.org>,
	"open list:GPIO SUBSYSTEM" <linux-gpio@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	linux-kselftest@vger.kernel.org
Subject: Re: [PATCH v12 4/7] gpio: sim: new testing module
Date: Mon, 6 Dec 2021 15:32:30 +0200	[thread overview]
Message-ID: <Ya4Q7s9sbk2UHNA3@smile.fi.intel.com> (raw)
In-Reply-To: <CAMRc=MegnF-VZswJym7np4sBMyFf0=gqeFGdKS0xytnmQOhUpw@mail.gmail.com>

On Mon, Dec 06, 2021 at 10:48:00AM +0100, Bartosz Golaszewski wrote:
> On Fri, Dec 3, 2021 at 9:08 PM Andy Shevchenko
> <andriy.shevchenko@linux.intel.com> wrote:
> > On Fri, Dec 03, 2021 at 02:30:00PM +0100, Bartosz Golaszewski wrote:

...

> > > +#include <linux/gpio/driver.h>
> > > +#include <linux/gpio/machine.h>
> >
> > I would rather move this group below to emphasize that this is closer to GPIO
> > then to other APIs.
> >
> > > +#include <linux/sysfs.h>
> > > +
> >
> > ...here.
> >
> 
> With the number of headers in this file, I'd stick with alphabetical order.

I understand that and agree, but my point is orthogonal to this. The idea is to
emphasize that "hey. this driver has tough relations with the GPIO subsystem".
This is the way, for example, IIO does and I like it.

> > > +#include "gpiolib.h"

...

> > > +static int gpio_sim_apply_pull(struct gpio_sim_chip *chip,
> > > +                            unsigned int offset, int value)
> >
> > I would use up to 100 here...
> >
> > > +     if (test_bit(FLAG_REQUESTED, &desc->flags) &&
> > > +         !test_bit(FLAG_IS_OUT, &desc->flags)) {
> >
> > ...here and so on.
> >
> > But it's up to you.
> >
> 
> Nah, the lines are broken just fine. Let's not overuse the limit.

Yes, but I would consider to join back those which are up to ~83 characters
(I already pointed out at least to one example like this).

...

> > > +     if (sysfs_streq(buf, "pull-down"))
> > > +             pull = 0;
> > > +     else if (sysfs_streq(buf, "pull-up"))
> > > +             pull = 1;
> > > +     else
> > > +             return -EINVAL;
> >
> > sysfs_match_string() and use the very same string array in the above function
> > to print them?

I suppose you agree on this?

...

> > > +     /* Default to input mode. */
> > > +     bitmap_fill(chip->direction_map, num_lines);
> >
> > More accurate is to use bitmap_set(). If we ever debug this it also helpful.
> 
> I'm not sure what you mean, this sets all bits to 1.

Nope, it may set _more_ than all bits. That's why bitmap_set() is more
accurate, because it will do exact setting.

...

> > > +     if (strcmp(trimmed, "input") == 0)
> > > +             dir = GPIOD_IN;
> > > +     else if (strcmp(trimmed, "output-high") == 0)
> > > +             dir = GPIOD_OUT_HIGH;
> > > +     else if (strcmp(trimmed, "output-low") == 0)
> > > +             dir = GPIOD_OUT_LOW;
> > > +     else
> > > +             dir = -EINVAL;
> >
> > Same idea, i.e. static string array and use it above and here with help
> > of match_string().
> 
> It would be great but GPIOD_IN etc. are bit flags and not sequence enums.

Ah, okay, it will make rather sparse array.

-- 
With Best Regards,
Andy Shevchenko



  reply	other threads:[~2021-12-06 13:33 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-03 13:29 [PATCH v12 0/7] gpio-sim: configfs-based GPIO simulator Bartosz Golaszewski
2021-12-03 13:29 ` [PATCH v12 1/7] gpiolib: provide gpiod_remove_hogs() Bartosz Golaszewski
2021-12-03 13:29 ` [PATCH v12 2/7] gpiolib: allow to specify the firmware node in struct gpio_chip Bartosz Golaszewski
2021-12-03 13:29 ` [PATCH v12 3/7] gpiolib: of: make fwnode take precedence " Bartosz Golaszewski
2021-12-03 18:51   ` Andy Shevchenko
2021-12-03 18:56     ` Andy Shevchenko
2021-12-03 19:02       ` Andy Shevchenko
2021-12-03 19:28         ` Bartosz Golaszewski
2021-12-03 20:09           ` Andy Shevchenko
2021-12-06  8:41             ` Bartosz Golaszewski
2021-12-06 13:33               ` Andy Shevchenko
2021-12-06 13:40                 ` Bartosz Golaszewski
2021-12-06 13:48                   ` Andy Shevchenko
2021-12-06 13:52                     ` Andy Shevchenko
2021-12-06 13:54   ` Andy Shevchenko
2021-12-06 14:03     ` Bartosz Golaszewski
2021-12-06 14:36       ` Andy Shevchenko
2021-12-06 14:08     ` Andy Shevchenko
2021-12-03 13:30 ` [PATCH v12 4/7] gpio: sim: new testing module Bartosz Golaszewski
2021-12-03 20:07   ` Andy Shevchenko
2021-12-06  9:48     ` Bartosz Golaszewski
2021-12-06 13:32       ` Andy Shevchenko [this message]
2021-12-06 15:38         ` Bartosz Golaszewski
2021-12-06 17:00           ` Andy Shevchenko
2021-12-03 13:30 ` [PATCH v12 5/7] selftests: gpio: provide a helper for reading chip info Bartosz Golaszewski
2021-12-03 13:30 ` [PATCH v12 6/7] selftests: gpio: add a helper for reading GPIO line names Bartosz Golaszewski
2021-12-03 13:30 ` [PATCH v12 7/7] selftests: gpio: add test cases for gpio-sim Bartosz Golaszewski
2021-12-03 20:10 ` [PATCH v12 0/7] gpio-sim: configfs-based GPIO simulator 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=Ya4Q7s9sbk2UHNA3@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=brgl@bgdev.pl \
    --cc=geert@linux-m68k.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=shuah@kernel.org \
    --cc=viresh.kumar@linaro.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox