Commit 26803bac authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'gpio-fixes-for-v5.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux

Pull gpio fixes from Bartosz Golaszewski:

 - grammar and formatting fixes in comments for gpio-ts4900

 - correct links in gpio-ts5500

 - fix a warning in doc generation for the core GPIO documentation

* tag 'gpio-fixes-for-v5.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
  gpio: ts5500: Fix Links to Technologic Systems web resources
  gpio: Properly document parent data union
  gpio: ts4900: Fix comment formatting and grammar
parents aa240ee7 24f71ae5
...@@ -47,8 +47,9 @@ static int ts4900_gpio_direction_input(struct gpio_chip *chip, ...@@ -47,8 +47,9 @@ static int ts4900_gpio_direction_input(struct gpio_chip *chip,
{ {
struct ts4900_gpio_priv *priv = gpiochip_get_data(chip); struct ts4900_gpio_priv *priv = gpiochip_get_data(chip);
/* Only clear the OE bit here, requires a RMW. Prevents potential issue /*
* with OE and data getting to the physical pin at different times. * Only clear the OE bit here, requires a RMW. Prevents a potential issue
* with OE and DAT getting to the physical pin at different times.
*/ */
return regmap_update_bits(priv->regmap, offset, TS4900_GPIO_OE, 0); return regmap_update_bits(priv->regmap, offset, TS4900_GPIO_OE, 0);
} }
...@@ -60,9 +61,10 @@ static int ts4900_gpio_direction_output(struct gpio_chip *chip, ...@@ -60,9 +61,10 @@ static int ts4900_gpio_direction_output(struct gpio_chip *chip,
unsigned int reg; unsigned int reg;
int ret; int ret;
/* If changing from an input to an output, we need to first set the /*
* proper data bit to what is requested and then set OE bit. This * If changing from an input to an output, we need to first set the
* prevents a glitch that can occur on the IO line * GPIO's DAT bit to what is requested and then set the OE bit. This
* prevents a glitch that can occur on the IO line.
*/ */
regmap_read(priv->regmap, offset, &reg); regmap_read(priv->regmap, offset, &reg);
if (!(reg & TS4900_GPIO_OE)) { if (!(reg & TS4900_GPIO_OE)) {
......
...@@ -11,11 +11,11 @@ ...@@ -11,11 +11,11 @@
* Actually, the following platforms have DIO support: * Actually, the following platforms have DIO support:
* *
* TS-5500: * TS-5500:
* Documentation: http://wiki.embeddedarm.com/wiki/TS-5500 * Documentation: https://docs.embeddedts.com/TS-5500
* Blocks: DIO1, DIO2 and LCD port. * Blocks: DIO1, DIO2 and LCD port.
* *
* TS-5600: * TS-5600:
* Documentation: http://wiki.embeddedarm.com/wiki/TS-5600 * Documentation: https://docs.embeddedts.com/TS-5600
* Blocks: LCD port (identical to TS-5500 LCD). * Blocks: LCD port (identical to TS-5500 LCD).
*/ */
......
...@@ -168,13 +168,16 @@ struct gpio_irq_chip { ...@@ -168,13 +168,16 @@ struct gpio_irq_chip {
/** /**
* @parent_handler_data: * @parent_handler_data:
*
* If @per_parent_data is false, @parent_handler_data is a single
* pointer used as the data associated with every parent interrupt.
*
* @parent_handler_data_array: * @parent_handler_data_array:
* *
* Data associated, and passed to, the handler for the parent * If @per_parent_data is true, @parent_handler_data_array is
* interrupt. Can either be a single pointer if @per_parent_data * an array of @num_parents pointers, and is used to associate
* is false, or an array of @num_parents pointers otherwise. If * different data for each parent. This cannot be NULL if
* @per_parent_data is true, @parent_handler_data_array cannot be * @per_parent_data is true.
* NULL.
*/ */
union { union {
void *parent_handler_data; void *parent_handler_data;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment