forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'pinctrl-v4.5-1' of git://git.kernel.org/pub/scm/linux/kern…
…el/git/linusw/linux-pinctrl Pull pin control updates from Linus Walleij: "This is the bulk of pin control patches for the v4.5 series. Notably I have a patch to driver core from Stephen Boyd in the pull request, this has been ACKed by Greg so it should be OK. The internal API needed some tweaking to allow modular Qualcomm pin controllers. There is a bit of development history in here but it should all add up nicely and has boiled in linux-next. For example I merged in v4.4-rc5 to get rid of some nasty merge conflicts. Summary: - New drivers: - PXA2xx pin controller support - Broadcom NSP pin controller support - New subdrivers: - Samsung EXYNOS5410 support - Qualcomm MSM8996 support - Qualcomm PM8994 support - Qualcomm PM8994 MPP support - Allwinner sunxi H3 support - Allwinner sunxi A80 support - Rockchip RK3228 support - Rename the Cygnus pinctrl driver to "iproc" as it is more generic than was originally thought. - A bunch of Lantiq/Xway updates especially from the OpenWRT people. - Several refactorings for the Super-H SH PFC pin controllers. Adding SCIF_CLK support. - Several fixes to the Atlas 7 driver. - Various fixes all over the place" * tag 'pinctrl-v4.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (91 commits) pinctrl: mediatek: Modify pinctrl bindings for mt2701 Revert "pinctrl: qcom: make PMIC drivers bool" pinctrl: qcom: Use platform_irq_count() instead of of_irq_count() driver-core: platform: Add platform_irq_count() pinctrl: lantiq: 2 pins have the wrong mux list pinctrl: qcom: make PMIC drivers bool pinctrl: nsp-gpio: forever loop in nsp_gpio_get_strength() pinctrl: mediatek: convert to arch_initcall pinctrl: bcm2835: Fix memory leak in error path pinctrl: mediatek: add missing of_node_put pinctrl: rockchip: add missing of_node_put pinctrl: sh-pfc: add missing of_node_put pinctrl: sirf: add missing of_node_put pinctrl-tegra: add missing of_node_put pinctrl: sunxi: Add A80 special pin controller pinctrl: bcm/cygnys/iproc: fixup rebase issue pinctrl: fixup problematic flag MAINTAINERS: Add co-maintainer for Renesas Pin Controllers pinctrl: sh-pfc: r8a7791: add EtherAVB pin groups pinctrl: sh-pfc: r8a7795: Add SATA support ...
- Loading branch information
Showing
73 changed files
with
9,052 additions
and
766 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
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
80 changes: 80 additions & 0 deletions
80
Documentation/devicetree/bindings/pinctrl/brcm,nsp-gpio.txt
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,80 @@ | ||
Broadcom Northstar plus (NSP) GPIO/PINCONF Controller | ||
|
||
Required properties: | ||
- compatible: | ||
Must be "brcm,nsp-gpio-a" | ||
|
||
- reg: | ||
Should contain the register physical address and length for each of | ||
GPIO base, IO control registers | ||
|
||
- #gpio-cells: | ||
Must be two. The first cell is the GPIO pin number (within the | ||
controller's pin space) and the second cell is used for the following: | ||
bit[0]: polarity (0 for active high and 1 for active low) | ||
|
||
- gpio-controller: | ||
Specifies that the node is a GPIO controller | ||
|
||
- ngpios: | ||
Number of gpios supported (58x25 supports 32 and 58x23 supports 24) | ||
|
||
Optional properties: | ||
- interrupts: | ||
Interrupt ID | ||
|
||
- interrupt-controller: | ||
Specifies that the node is an interrupt controller | ||
|
||
- gpio-ranges: | ||
Specifies the mapping between gpio controller and pin-controllers pins. | ||
This requires 4 fields in cells defined as - | ||
1. Phandle of pin-controller. | ||
2. GPIO base pin offset. | ||
3 Pin-control base pin offset. | ||
4. number of gpio pins which are linearly mapped from pin base. | ||
|
||
Supported generic PINCONF properties in child nodes: | ||
- pins: | ||
The list of pins (within the controller's own pin space) that properties | ||
in the node apply to. Pin names are "gpio-<pin>" | ||
|
||
- bias-disable: | ||
Disable pin bias | ||
|
||
- bias-pull-up: | ||
Enable internal pull up resistor | ||
|
||
- bias-pull-down: | ||
Enable internal pull down resistor | ||
|
||
- drive-strength: | ||
Valid drive strength values include 2, 4, 6, 8, 10, 12, 14, 16 (mA) | ||
|
||
Example: | ||
|
||
gpioa: gpio@18000020 { | ||
compatible = "brcm,nsp-gpio-a"; | ||
reg = <0x18000020 0x100>, | ||
<0x1803f1c4 0x1c>; | ||
#gpio-cells = <2>; | ||
gpio-controller; | ||
ngpios = <32>; | ||
gpio-ranges = <&pinctrl 0 0 31>; | ||
interrupt-controller; | ||
interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; | ||
|
||
/* Hog a few default settings */ | ||
pinctrl-names = "default"; | ||
pinctrl-0 = <&led>; | ||
led: led { | ||
pins = "gpio-1"; | ||
bias-pull-up; | ||
}; | ||
|
||
pwr: pwr { | ||
gpio-hog; | ||
gpios = <3 1>; | ||
output-high; | ||
}; | ||
}; |
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.