mirror of
https://github.com/torvalds/linux.git
synced 2024-12-26 21:02:19 +00:00
03d9fbc397
The Meson8m2 SoC is a variant of Meson8 with some updates from Meson8b (such as the Gigabit capable DesignWare MAC). It is mostly pin compatible with Meson8, only 10 (existing) CBUS pins get an additional function (four of these are Ethernet RXD2, RXD3, TXD2 and TXD3 which are required when the board uses an RGMII PHY). The AOBUS pins seem to be identical on Meson8 and Meson8m2. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Reviewed-by: Rob Herring <robh@kernel.org> Reviewed-by: Kevin Hilman <khilman@baylibre.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
81 lines
2.5 KiB
Plaintext
81 lines
2.5 KiB
Plaintext
== Amlogic Meson pinmux controller ==
|
|
|
|
Required properties for the root node:
|
|
- compatible: one of "amlogic,meson8-cbus-pinctrl"
|
|
"amlogic,meson8b-cbus-pinctrl"
|
|
"amlogic,meson8m2-cbus-pinctrl"
|
|
"amlogic,meson8-aobus-pinctrl"
|
|
"amlogic,meson8b-aobus-pinctrl"
|
|
"amlogic,meson8m2-aobus-pinctrl"
|
|
"amlogic,meson-gxbb-periphs-pinctrl"
|
|
"amlogic,meson-gxbb-aobus-pinctrl"
|
|
"amlogic,meson-gxl-periphs-pinctrl"
|
|
"amlogic,meson-gxl-aobus-pinctrl"
|
|
"amlogic,meson-axg-periphs-pinctrl"
|
|
"amlogic,meson-axg-aobus-pinctrl"
|
|
- reg: address and size of registers controlling irq functionality
|
|
|
|
=== GPIO sub-nodes ===
|
|
|
|
The GPIO bank for the controller is represented as a sub-node and it acts as a
|
|
GPIO controller.
|
|
|
|
Required properties for sub-nodes are:
|
|
- reg: should contain address and size for mux, pull-enable, pull and
|
|
gpio register sets
|
|
- reg-names: an array of strings describing the "reg" entries. Must
|
|
contain "mux", "pull" and "gpio". "pull-enable" is optional and
|
|
when it is missing the "pull" registers are used instead
|
|
- gpio-controller: identifies the node as a gpio controller
|
|
- #gpio-cells: must be 2
|
|
|
|
=== Other sub-nodes ===
|
|
|
|
Child nodes without the "gpio-controller" represent some desired
|
|
configuration for a pin or a group. Those nodes can be pinmux nodes or
|
|
configuration nodes.
|
|
|
|
Required properties for pinmux nodes are:
|
|
- groups: a list of pinmux groups. The list of all available groups
|
|
depends on the SoC and can be found in driver sources.
|
|
- function: the name of a function to activate for the specified set
|
|
of groups. The list of all available functions depends on the SoC
|
|
and can be found in driver sources.
|
|
|
|
Required properties for configuration nodes:
|
|
- pins: a list of pin names
|
|
|
|
Configuration nodes support the generic properties "bias-disable",
|
|
"bias-pull-up" and "bias-pull-down", described in file
|
|
pinctrl-bindings.txt
|
|
|
|
=== Example ===
|
|
|
|
pinctrl: pinctrl@c1109880 {
|
|
compatible = "amlogic,meson8-cbus-pinctrl";
|
|
reg = <0xc1109880 0x10>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
ranges;
|
|
|
|
gpio: banks@c11080b0 {
|
|
reg = <0xc11080b0 0x28>,
|
|
<0xc11080e8 0x18>,
|
|
<0xc1108120 0x18>,
|
|
<0xc1108030 0x30>;
|
|
reg-names = "mux", "pull", "pull-enable", "gpio";
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
};
|
|
|
|
nand {
|
|
mux {
|
|
groups = "nand_io", "nand_io_ce0", "nand_io_ce1",
|
|
"nand_io_rb0", "nand_ale", "nand_cle",
|
|
"nand_wen_clk", "nand_ren_clk", "nand_dqs",
|
|
"nand_ce2", "nand_ce3";
|
|
function = "nand";
|
|
};
|
|
};
|
|
};
|