-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'gpio-v3.19-2' of git://git.kernel.org/pub/scm/linux/kernel…
…/git/linusw/linux-gpio Pull take two of the GPIO updates: "Same stuff as last time, now with a fixup patch for the previous compile error plus I ran a few extra rounds of compile-testing. This is the bulk of GPIO changes for the v3.19 series: - A new API that allows setting more than one GPIO at the time. This is implemented for the new descriptor-based API only and makes it possible to e.g. toggle a clock and data line at the same time, if the hardware can do this with a single register write. Both consumers and drivers need new calls, and the core will fall back to driving individual lines where needed. Implemented for the MPC8xxx driver initially - Patched the mdio-mux-gpio and the serial mctrl driver that drives modems to use the new multiple-setting API to set several signals simultaneously - Get rid of the global GPIO descriptor array, and instead allocate descriptors dynamically for each GPIO on a certain GPIO chip. This moves us closer to getting rid of the limitation of using the global, static GPIO numberspace - New driver and device tree bindings for 74xx ICs - New driver and device tree bindings for the VF610 Vybrid - Support the RCAR r8a7793 and r8a7794 - Guidelines for GPIO device tree bindings trying to get things a bit more strict with the advent of combined device properties - Suspend/resume support for the MVEBU driver - A slew of minor fixes and improvements" * tag 'gpio-v3.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (33 commits) gpio: mcp23s08: fix up compilation error gpio: pl061: document gpio-ranges property for bindings file gpio: pl061: hook request if gpio-ranges avaiable gpio: mcp23s08: Add option to configure IRQ output polarity as active high gpio: fix deferred probe detection for legacy API serial: mctrl_gpio: use gpiod_set_array function mdio-mux-gpio: Use GPIO descriptor interface and new gpiod_set_array function gpio: remove const modifier from gpiod_get_direction() gpio: remove gpio_descs global array gpio: mxs: implement get_direction callback gpio: em: Use dynamic allocation of GPIOs gpio: Check if base is positive before calling gpio_is_valid() gpio: mcp23s08: Add simple IRQ support for SPI devices gpio: mcp23s08: request a shared interrupt gpio: mcp23s08: Do not free unrequested interrupt gpio: rcar: Add r8a7793 and r8a7794 support gpio-mpc8xxx: add mpc8xxx_gpio_set_multiple function gpiolib: allow simultaneous setting of multiple GPIO outputs gpio: mvebu: add suspend/resume support gpio: gpio-davinci: remove duplicate check on resource ..
- Loading branch information
Showing
42 changed files
with
1,165 additions
and
161 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
* 74XX MMIO GPIO driver | ||
|
||
Required properties: | ||
- compatible: Should contain one of the following: | ||
"ti,741g125": for 741G125 (1-bit Input), | ||
"ti,741g174": for 741G74 (1-bit Output), | ||
"ti,742g125": for 742G125 (2-bit Input), | ||
"ti,7474" : for 7474 (2-bit Output), | ||
"ti,74125" : for 74125 (4-bit Input), | ||
"ti,74175" : for 74175 (4-bit Output), | ||
"ti,74365" : for 74365 (6-bit Input), | ||
"ti,74174" : for 74174 (6-bit Output), | ||
"ti,74244" : for 74244 (8-bit Input), | ||
"ti,74273" : for 74273 (8-bit Output), | ||
"ti,741624" : for 741624 (16-bit Input), | ||
"ti,7416374": for 7416374 (16-bit Output). | ||
- reg: Physical base address and length where IC resides. | ||
- gpio-controller: Marks the device node as a gpio controller. | ||
- #gpio-cells: Should be two. The first cell is the pin number and | ||
the second cell is used to specify the GPIO polarity: | ||
0 = Active High, | ||
1 = Active Low. | ||
|
||
Example: | ||
ctrl: gpio@30008004 { | ||
compatible = "ti,74174"; | ||
reg = <0x30008004 0x1>; | ||
gpio-controller; | ||
#gpio-cells = <2>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
* Freescale VF610 PORT/GPIO module | ||
|
||
The Freescale PORT/GPIO modules are two adjacent modules providing GPIO | ||
functionality. Each pair serves 32 GPIOs. The VF610 has 5 instances of | ||
each, and each PORT module has its own interrupt. | ||
|
||
Required properties for GPIO node: | ||
- compatible : Should be "fsl,<soc>-gpio", currently "fsl,vf610-gpio" | ||
- reg : The first reg tuple represents the PORT module, the second tuple | ||
the GPIO module. | ||
- interrupts : Should be the port interrupt shared by all 32 pins. | ||
- gpio-controller : Marks the device node as a gpio controller. | ||
- #gpio-cells : Should be two. The first cell is the pin number and | ||
the second cell is used to specify the gpio polarity: | ||
0 = active high | ||
1 = active low | ||
- interrupt-controller: Marks the device node as an interrupt controller. | ||
- #interrupt-cells : Should be 2. The first cell is the GPIO number. | ||
The second cell bits[3:0] is used to specify trigger type and level flags: | ||
1 = low-to-high edge triggered. | ||
2 = high-to-low edge triggered. | ||
4 = active high level-sensitive. | ||
8 = active low level-sensitive. | ||
|
||
Note: Each GPIO port should have an alias correctly numbered in "aliases" | ||
node. | ||
|
||
Examples: | ||
|
||
aliases { | ||
gpio0 = &gpio1; | ||
gpio1 = &gpio2; | ||
}; | ||
|
||
gpio1: gpio@40049000 { | ||
compatible = "fsl,vf610-gpio"; | ||
reg = <0x40049000 0x1000 0x400ff000 0x40>; | ||
interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>; | ||
gpio-controller; | ||
#gpio-cells = <2>; | ||
interrupt-controller; | ||
#interrupt-cells = <2>; | ||
gpio-ranges = <&iomuxc 0 0 32>; | ||
}; | ||
|
||
gpio2: gpio@4004a000 { | ||
compatible = "fsl,vf610-gpio"; | ||
reg = <0x4004a000 0x1000 0x400ff040 0x40>; | ||
interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>; | ||
gpio-controller; | ||
#gpio-cells = <2>; | ||
interrupt-controller; | ||
#interrupt-cells = <2>; | ||
gpio-ranges = <&iomuxc 0 32 32>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.