From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Linus Walleij <linus.walleij@linaro.org>,
Bartosz Golaszewski <bgolaszewski@baylibre.com>,
linux-gpio@vger.kernel.org,
Mika Westerberg <mika.westerberg@linux.intel.com>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Subject: [PATCH v2 00/24] pinctrl: intel: Move Lynxpoint to pin control umbrella
Date: Mon, 9 Dec 2019 15:09:02 +0200 [thread overview]
Message-ID: <20191209130926.86483-1-andriy.shevchenko@linux.intel.com> (raw)
Intel Lynxpoint GPIO is actually half way to the Chassis specification
that has been established starting from Intel Skylake. It has some pin control
properties we may utilize. To achieve this, move the driver under pin control
umbrella and do a bunch of clean ups.
The series has been tested on Broadwell Ultrabook where Lynxpoint GPIO
is exposed to the OS.
It has a dependency to patches in my review branch [1]. That dependency patch
is supposed to be submitted soon as a part of Baytrail clean up. In the
mentioned branch the patches are represented in the correct order.
[1]: https://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/intel.git/log/?h=review-andy
Changes v2:
- fixed ordering in Kconfig and Makefile (Mika)
- finished conversion to pin control
Andy Shevchenko (24):
pinctrl: lynxpoint: Move GPIO driver to pin controller folder
pinctrl: lynxpoint: Use raw_spinlock for locking
pinctrl: lynxpoint: Correct amount of pins
pinctrl: lynxpoint: Drop useless assignment
pinctrl: lynxpoint: Use %pR to print IO resource
pinctrl: lynxpoint: Use standard pattern for memory allocation
pinctrl: lynxpoint: Assume 2 bits for mode selector
pinctrl: lynxpoint: Relax GPIO request rules
pinctrl: lynxpoint: Keep pointer to struct device instead of its
container
pinctrl: lynxpoint: Switch to memory mapped IO accessors
pinctrl: lynxpoint: Convert unsigned to unsigned int
pinctrl: lynxpoint: Extract lp_gpio_acpi_use() for future use
pinctrl: lynxpoint: Move ->remove closer to ->probe()
pinctrl: lynxpoint: Move lp_irq_type() closer to IRQ related routines
pinctrl: lynxpoint: Move ownership check to IRQ chip
pinctrl: lynxpoint: Implement ->irq_ack() callback
pinctrl: lynxpoint: Implement intel_gpio_get_direction callback
pinctrl: lynxpoint: Add pin control data structures
pinctrl: lynxpoint: Reuse struct intel_pinctrl in the driver
pinctrl: lynxpoint: Add pin control operations
pinctrl: lynxpoint: Implement ->pin_dbg_show()
pinctrl: lynxpoint: Add GPIO <-> pin mapping ranges via callback
pinctrl: lynxpoint: Switch to pin control API
pinctrl: lynxpoint: Update summary in the driver
MAINTAINERS | 1 -
drivers/gpio/Kconfig | 8 -
drivers/gpio/Makefile | 1 -
drivers/gpio/gpio-lynxpoint.c | 471 -----------
drivers/pinctrl/intel/Kconfig | 13 +
drivers/pinctrl/intel/Makefile | 1 +
drivers/pinctrl/intel/pinctrl-lynxpoint.c | 975 ++++++++++++++++++++++
7 files changed, 989 insertions(+), 481 deletions(-)
delete mode 100644 drivers/gpio/gpio-lynxpoint.c
create mode 100644 drivers/pinctrl/intel/pinctrl-lynxpoint.c
--
2.24.0
next reply other threads:[~2019-12-09 13:09 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-09 13:09 Andy Shevchenko [this message]
2019-12-09 13:09 ` [PATCH v2 01/24] pinctrl: lynxpoint: Move GPIO driver to pin controller folder Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 02/24] pinctrl: lynxpoint: Use raw_spinlock for locking Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 03/24] pinctrl: lynxpoint: Correct amount of pins Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 04/24] pinctrl: lynxpoint: Drop useless assignment Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 05/24] pinctrl: lynxpoint: Use %pR to print IO resource Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 06/24] pinctrl: lynxpoint: Use standard pattern for memory allocation Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 07/24] pinctrl: lynxpoint: Assume 2 bits for mode selector Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 08/24] pinctrl: lynxpoint: Relax GPIO request rules Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 09/24] pinctrl: lynxpoint: Keep pointer to struct device instead of its container Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 10/24] pinctrl: lynxpoint: Switch to memory mapped IO accessors Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 11/24] pinctrl: lynxpoint: Convert unsigned to unsigned int Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 12/24] pinctrl: lynxpoint: Extract lp_gpio_acpi_use() for future use Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 13/24] pinctrl: lynxpoint: Move ->remove closer to ->probe() Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 14/24] pinctrl: lynxpoint: Move lp_irq_type() closer to IRQ related routines Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 15/24] pinctrl: lynxpoint: Move ownership check to IRQ chip Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 16/24] pinctrl: lynxpoint: Implement ->irq_ack() callback Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 17/24] pinctrl: lynxpoint: Implement intel_gpio_get_direction callback Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 18/24] pinctrl: lynxpoint: Add pin control data structures Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 19/24] pinctrl: lynxpoint: Reuse struct intel_pinctrl in the driver Andy Shevchenko
2019-12-10 5:26 ` kbuild test robot
2019-12-10 13:46 ` Andy Shevchenko
2019-12-10 13:47 ` Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 20/24] pinctrl: lynxpoint: Add pin control operations Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 21/24] pinctrl: lynxpoint: Implement ->pin_dbg_show() Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 22/24] pinctrl: lynxpoint: Add GPIO <-> pin mapping ranges via callback Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 23/24] pinctrl: lynxpoint: Switch to pin control API Andy Shevchenko
2019-12-09 13:09 ` [PATCH v2 24/24] pinctrl: lynxpoint: Update summary in the driver Andy Shevchenko
2019-12-11 13:19 ` [PATCH v2 00/24] pinctrl: intel: Move Lynxpoint to pin control umbrella Mika Westerberg
2019-12-13 13:36 ` Linus Walleij
2019-12-13 14:44 ` Andy Shevchenko
2019-12-16 10:19 ` 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=20191209130926.86483-1-andriy.shevchenko@linux.intel.com \
--to=andriy.shevchenko@linux.intel.com \
--cc=bgolaszewski@baylibre.com \
--cc=linus.walleij@linaro.org \
--cc=linux-gpio@vger.kernel.org \
--cc=mika.westerberg@linux.intel.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.