Merge branch 'gpio-irqchip-rework' of /home/linus/linux-gpio into devel
This commit is contained in:
59
Documentation/devicetree/bindings/gpio/gpio-max3191x.txt
Normal file
59
Documentation/devicetree/bindings/gpio/gpio-max3191x.txt
Normal file
@@ -0,0 +1,59 @@
|
||||
GPIO driver for Maxim MAX3191x industrial serializer
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be one of:
|
||||
"maxim,max31910"
|
||||
"maxim,max31911"
|
||||
"maxim,max31912"
|
||||
"maxim,max31913"
|
||||
"maxim,max31953"
|
||||
"maxim,max31963"
|
||||
- reg: Chip select number.
|
||||
- gpio-controller: Marks the device node as a GPIO controller.
|
||||
- #gpio-cells: Should be two. For consumer use see gpio.txt.
|
||||
|
||||
Optional properties:
|
||||
- #daisy-chained-devices:
|
||||
Number of chips in the daisy-chain (default is 1).
|
||||
- maxim,modesel-gpios: GPIO pins to configure modesel of each chip.
|
||||
The number of GPIOs must equal "#daisy-chained-devices"
|
||||
(if each chip is driven by a separate pin) or 1
|
||||
(if all chips are wired to the same pin).
|
||||
- maxim,fault-gpios: GPIO pins to read fault of each chip.
|
||||
The number of GPIOs must equal "#daisy-chained-devices"
|
||||
or 1.
|
||||
- maxim,db0-gpios: GPIO pins to configure debounce of each chip.
|
||||
The number of GPIOs must equal "#daisy-chained-devices"
|
||||
or 1.
|
||||
- maxim,db1-gpios: GPIO pins to configure debounce of each chip.
|
||||
The number of GPIOs must equal "maxim,db0-gpios".
|
||||
- maxim,modesel-8bit: Boolean whether the modesel pin of the chips is
|
||||
pulled high (8-bit mode). Use this if the modesel pin
|
||||
is hardwired and consequently "maxim,modesel-gpios"
|
||||
cannot be specified. By default if neither this nor
|
||||
"maxim,modesel-gpios" is given, the driver assumes
|
||||
that modesel is pulled low (16-bit mode).
|
||||
- maxim,ignore-undervoltage:
|
||||
Boolean whether to ignore undervoltage alarms signaled
|
||||
by the "maxim,fault-gpios" or by the status byte
|
||||
(in 16-bit mode). Use this if the chips are powered
|
||||
through 5VOUT instead of VCC24V, in which case they
|
||||
will constantly signal undervoltage.
|
||||
|
||||
For other required and optional properties of SPI slave nodes please refer to
|
||||
../spi/spi-bus.txt.
|
||||
|
||||
Example:
|
||||
gpio@0 {
|
||||
compatible = "maxim,max31913";
|
||||
reg = <0>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
|
||||
maxim,modesel-gpios = <&gpio2 23>;
|
||||
maxim,fault-gpios = <&gpio2 24 GPIO_ACTIVE_LOW>;
|
||||
maxim,db0-gpios = <&gpio2 25>;
|
||||
maxim,db1-gpios = <&gpio2 26>;
|
||||
|
||||
spi-max-frequency = <25000000>;
|
||||
};
|
52
Documentation/devicetree/bindings/gpio/gpio-uniphier.txt
Normal file
52
Documentation/devicetree/bindings/gpio/gpio-uniphier.txt
Normal file
@@ -0,0 +1,52 @@
|
||||
UniPhier GPIO controller
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "socionext,uniphier-gpio".
|
||||
- reg: Specifies offset and length of the register set for the device.
|
||||
- gpio-controller: Marks the device node as a GPIO controller.
|
||||
- #gpio-cells: Should be 2. The first cell is the pin number and the second
|
||||
cell is used to specify optional parameters.
|
||||
- interrupt-parent: Specifies the parent interrupt controller.
|
||||
- interrupt-controller: Marks the device node as an interrupt controller.
|
||||
- #interrupt-cells: Should be 2. The first cell defines the interrupt number.
|
||||
The second cell bits[3:0] is used to specify trigger type as follows:
|
||||
1 = low-to-high edge triggered
|
||||
2 = high-to-low edge triggered
|
||||
4 = active high level-sensitive
|
||||
8 = active low level-sensitive
|
||||
Valid combinations are 1, 2, 3, 4, 8.
|
||||
- ngpios: Specifies the number of GPIO lines.
|
||||
- gpio-ranges: Mapping to pin controller pins (as described in gpio.txt)
|
||||
- socionext,interrupt-ranges: Specifies an interrupt number mapping between
|
||||
this GPIO controller and its interrupt parent, in the form of arbitrary
|
||||
number of <child-interrupt-base parent-interrupt-base length> triplets.
|
||||
|
||||
Optional properties:
|
||||
- gpio-ranges-group-names: Used for named gpio ranges (as described in gpio.txt)
|
||||
|
||||
Example:
|
||||
gpio: gpio@55000000 {
|
||||
compatible = "socionext,uniphier-gpio";
|
||||
reg = <0x55000000 0x200>;
|
||||
interrupt-parent = <&aidet>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
gpio-ranges = <&pinctrl 0 0 0>;
|
||||
gpio-ranges-group-names = "gpio_range";
|
||||
ngpios = <248>;
|
||||
socionext,interrupt-ranges = <0 48 16>, <16 154 5>, <21 217 3>;
|
||||
};
|
||||
|
||||
Consumer Example:
|
||||
|
||||
sdhci0_pwrseq {
|
||||
compatible = "mmc-pwrseq-emmc";
|
||||
reset-gpios = <&gpio UNIPHIER_GPIO_PORT(29, 4) GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
Please note UNIPHIER_GPIO_PORT(29, 4) represents PORT294 in the SoC document.
|
||||
Unfortunately, only the one's place is octal in the port numbering. (That is,
|
||||
PORT 8, 9, 18, 19, 28, 29, ... are missing.) UNIPHIER_GPIO_PORT() is a helper
|
||||
macro to calculate 29 * 8 + 4.
|
@@ -14,6 +14,7 @@ Required Properties:
|
||||
- "renesas,gpio-r8a7794": for R8A7794 (R-Car E2) compatible GPIO controller.
|
||||
- "renesas,gpio-r8a7795": for R8A7795 (R-Car H3) compatible GPIO controller.
|
||||
- "renesas,gpio-r8a7796": for R8A7796 (R-Car M3-W) compatible GPIO controller.
|
||||
- "renesas,gpio-r8a77970": for R8A77970 (R-Car V3M) compatible GPIO controller.
|
||||
- "renesas,rcar-gen1-gpio": for a generic R-Car Gen1 GPIO controller.
|
||||
- "renesas,rcar-gen2-gpio": for a generic R-Car Gen2 or RZ/G1 GPIO controller.
|
||||
- "renesas,rcar-gen3-gpio": for a generic R-Car Gen3 GPIO controller.
|
||||
|
@@ -29,6 +29,7 @@ controller.
|
||||
- interrupts : The interrupt to the parent controller raised when GPIOs
|
||||
generate the interrupts.
|
||||
- snps,nr-gpios : The number of pins in the port, a single cell.
|
||||
- resets : Reset line for the controller.
|
||||
|
||||
Example:
|
||||
|
||||
|
Reference in New Issue
Block a user