mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: William Breathitt Gray <william.gray@linaro.org>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	Bartosz Golaszewski <brgl@bgdev.pl>,
	linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,
	Mark Brown <broonie@kernel.org>,
	techsupport@winsystems.com, pdemetrotion@winsystems.com,
	quarium@gmail.com, jhentges@accesio.com, jay.dolan@accesio.com
Subject: Re: [PATCH v6 0/3] Migrate the PCIe-IDIO-24 and WS16C48 GPIO drivers to the regmap API
Date: Wed, 5 Apr 2023 19:11:16 +0300	[thread overview]
Message-ID: <ZC2dpCtxa/dlIcov@smile.fi.intel.com> (raw)
In-Reply-To: <cover.1680708357.git.william.gray@linaro.org>

On Wed, Apr 05, 2023 at 11:45:41AM -0400, William Breathitt Gray wrote:
> Changes in v6:
>  - Wrap lines to 80 characters rather than 100 for set_type_config()
>  - Remove regmap_config max_register lines as superfluous
>  - Enable use_raw_spinlock to prevent deadlocks when running -rt kernels
>  - Check regmap_update_bit() ret value before goto exit_unlock
>  - Rename exit_early label to the more descriptive exit_unlock
>  - Add sparse annotations for lock acquire/release in
>    ws16c48_handle_pre_irq() and ws16c48_handle_post_irq()
>  - Explicitly add 0 to WS16C48_ENAB in ws16c48_irq_init_hw() for sake of
>    symmetry to match the other WS16C48_ENAB operations 
> Changes in v5:
>  - Refactor for map parameter removal from handle_mask_sync()
>  - Cleanups and line wrappings to 100 characters rather than 80
>  - Adjust to change mutex/spinlock_t type locks to raw_spin_lock_t type
>  - Remove pex8311_intcsr table configurations as superfluous
>  - Adjust to set pex8311_intcsr_regmap_config reg_base to
>    PLX_PEX8311_PCI_LCS_INTCSR
>  - Rename PAGE_FIELD_PAGE_* defines to POL_PAGE, ENAB_PAGE, and
>    INT_ID_PAGE
> Changes in v4:
>  - Allocate idio24gpio before using it in idio_24_probe()
> Changes in v3:
>  - Drop map from set_type_config() parameter list; regmap can be passed
>    by irq_drv_data instead
>  - Adjust idio_24_set_type_config() for parameter list
>  - Add mutex to prevent clobbering the COS_ENABLE register when masking
>    IRQ and setting their type configuration
> Changes in v2:
>  - Simplify PCIe-IDIO-24 register offset defines to remove superfluous
>    arithmetic
>  - Check for NULL pointer after chip->irq_drv_data allocation
>  - Set gpio_regmap drvdata and use gpio_regmap_get_drvdata() to get the
>    regmap in idio_24_reg_map_xlate()
> 
> The regmap API supports IO port accessors so we can take advantage of
> regmap abstractions rather than handling access to the device registers
> directly in the driver.
> 
> A patch to pass irq_drv_data as a parameter for struct regmap_irq_chip
> set_type_config() is included. This is needed by the
> idio_24_set_type_config() and ws16c48_set_type_config() callbacks in
> order to update the type configuration on their respective devices.
> 
> This patchset depends on the "Drop map from handle_mask_sync()
> parameters" patchset [0].
> 
> [0] https://lore.kernel.org/all/cover.1679323449.git.william.gray@linaro.org/

Looks good to me now.
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

It might be that regmap locks are unnecessary, but as far as I understood
dropping them would require more intrusion into the regmap APIs along with
GPIO regmap implementation.

> William Breathitt Gray (3):
>   regmap: Pass irq_drv_data as a parameter for set_type_config()
>   gpio: pcie-idio-24: Migrate to the regmap API
>   gpio: ws16c48: Migrate to the regmap API
> 
>  drivers/base/regmap/regmap-irq.c |   8 +-
>  drivers/gpio/Kconfig             |   6 +
>  drivers/gpio/gpio-pcie-idio-24.c | 677 +++++++++++--------------------
>  drivers/gpio/gpio-ws16c48.c      | 552 +++++++++----------------
>  include/linux/regmap.h           |   6 +-
>  5 files changed, 447 insertions(+), 802 deletions(-)
> 
> 
> base-commit: 7b59bdbc3965ca8add53e084af394c13a2be22a8
> prerequisite-patch-id: cd19046150b7cff1be4ac7152198777aa960a3df
> prerequisite-patch-id: bd3e3830d9ce4f3876a77483364d7190b7fdffa7
> -- 
> 2.39.2
> 

-- 
With Best Regards,
Andy Shevchenko



  parent reply	other threads:[~2023-04-05 16:13 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-05 15:45 William Breathitt Gray
2023-04-05 15:45 ` [PATCH v6 1/3] regmap: Pass irq_drv_data as a parameter for set_type_config() William Breathitt Gray
2023-04-06 17:23   ` Mark Brown
2023-04-07 10:17     ` Bartosz Golaszewski
2023-04-07 11:39       ` William Breathitt Gray
2023-04-07 11:42         ` Mark Brown
2023-04-07 11:46         ` Bartosz Golaszewski
2023-04-05 15:45 ` [PATCH v6 2/3] gpio: pcie-idio-24: Migrate to the regmap API William Breathitt Gray
2023-04-05 15:45 ` [PATCH v6 3/3] gpio: ws16c48: " William Breathitt Gray
2023-04-05 16:11 ` Andy Shevchenko [this message]
2023-04-05 20:57 ` (subset) [PATCH v6 0/3] Migrate the PCIe-IDIO-24 and WS16C48 GPIO drivers " Mark Brown
2023-04-10 22:13 ` Linus Walleij

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=ZC2dpCtxa/dlIcov@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=brgl@bgdev.pl \
    --cc=broonie@kernel.org \
    --cc=jay.dolan@accesio.com \
    --cc=jhentges@accesio.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pdemetrotion@winsystems.com \
    --cc=quarium@gmail.com \
    --cc=techsupport@winsystems.com \
    --cc=william.gray@linaro.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

all inboxes | Powered by JetHome®