the pinctrl driver to have two different pinctrl devices for each bus on the
 Amlogic Meson8 / Meson8b SoCs.
 These are the missing patches for documentation and DT that weren't pulled into
 mainline with the driver changes.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJW/CNQAAoJELyGR0S84or41vAQAK8XlPjtq7lz3g0MUpzJiqu2
 0gVrHRTpv0Go4AnotKr3DwgCfHcFKFo5/0Dng4Sf87nb96nd3ntwVwD0ZDEfkfHN
 EK8vGhA10dmZrwplE2Lt44o48qAcEizbpGxvRoLLUcjO7TRZupR705FwdQTloO9T
 aHfs5svIdWyGtyXHz3MJPaONW22ie3GidsV7eSTA8h2ne11ymO7lISfyUB77FGc5
 +Rsz4bvRQohQdQ69Wtw4Yw1+wRtBApm+Fen+klgHLqKh8YtiLTTsKF77xbiPn7+c
 9aSiuWAKwGHJH8tJpI3ShxmOV1Zqb8QrLaaTkKgq2YdZ9FiLh61PWy5yqbnEWBR9
 9fCSQoatTr1zztGYJ9Kb/olLvPNKJ5Yfedz6tQXX5pXVwQ3ClPaYyf/ljcmzYcH1
 Y7ONB2+LDFdMv8WtfcjdpwTBVg7xpW8s40ElJL0/hF9PnkzAy1fo78cxPhjIENp2
 t2xK2ILmE9+ieedriACpyOPMWlsXptsAgnfWThFxOPsxfjIPdbSgTR9cUbpIjtfE
 Om5AnH53A/dHTKI8rUUHcJC8IOBo03LXyiUKyu/JfN0f5BbbmtvbO1OCoErHhsIO
 c7Zo2O6UOdShdf/J8LP/xlx/YA3K2WEbbR1EwTrTgMHGwEUj/QkVArxAiD16PTAu
 nbVbGGaKfAGnBzUSkKXc
 =6xQq
 -----END PGP SIGNATURE-----

Merge tag 'meson8-dt-fix' of https://github.com/carlocaione/linux-meson into fixes

With http://www.spinics.net/lists/devicetree/msg116771.html we split / refactor
the pinctrl driver to have two different pinctrl devices for each bus on the
Amlogic Meson8 / Meson8b SoCs.
These are the missing patches for documentation and DT that weren't pulled into
mainline with the driver changes.

* tag 'meson8-dt-fix' of https://github.com/carlocaione/linux-meson:
  documentation: Fix pinctrl documentation for Meson8 / Meson8b
  ARM: dts: amlogic: Split pinctrl device for Meson8 / Meson8b
This commit is contained in:
Kevin Hilman 2016-04-08 16:03:46 -07:00
commit 309fdeb557
3 changed files with 49 additions and 58 deletions

View File

@ -1,13 +1,16 @@
== Amlogic Meson pinmux controller == == Amlogic Meson pinmux controller ==
Required properties for the root node: Required properties for the root node:
- compatible: "amlogic,meson8-pinctrl" or "amlogic,meson8b-pinctrl" - compatible: one of "amlogic,meson8-cbus-pinctrl"
"amlogic,meson8b-cbus-pinctrl"
"amlogic,meson8-aobus-pinctrl"
"amlogic,meson8b-aobus-pinctrl"
- reg: address and size of registers controlling irq functionality - reg: address and size of registers controlling irq functionality
=== GPIO sub-nodes === === GPIO sub-nodes ===
The 2 power domains of the controller (regular and always-on) are The GPIO bank for the controller is represented as a sub-node and it acts as a
represented as sub-nodes and each of them acts as a GPIO controller. GPIO controller.
Required properties for sub-nodes are: Required properties for sub-nodes are:
- reg: should contain address and size for mux, pull-enable, pull and - reg: should contain address and size for mux, pull-enable, pull and
@ -18,10 +21,6 @@ Required properties for sub-nodes are:
- gpio-controller: identifies the node as a gpio controller - gpio-controller: identifies the node as a gpio controller
- #gpio-cells: must be 2 - #gpio-cells: must be 2
Valid sub-node names are:
- "banks" for the regular domain
- "ao-bank" for the always-on domain
=== Other sub-nodes === === Other sub-nodes ===
Child nodes without the "gpio-controller" represent some desired Child nodes without the "gpio-controller" represent some desired
@ -45,7 +44,7 @@ pinctrl-bindings.txt
=== Example === === Example ===
pinctrl: pinctrl@c1109880 { pinctrl: pinctrl@c1109880 {
compatible = "amlogic,meson8-pinctrl"; compatible = "amlogic,meson8-cbus-pinctrl";
reg = <0xc1109880 0x10>; reg = <0xc1109880 0x10>;
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
@ -61,15 +60,6 @@ pinctrl-bindings.txt
#gpio-cells = <2>; #gpio-cells = <2>;
}; };
gpio_ao: ao-bank@c1108030 {
reg = <0xc8100014 0x4>,
<0xc810002c 0x4>,
<0xc8100024 0x8>;
reg-names = "mux", "pull", "gpio";
gpio-controller;
#gpio-cells = <2>;
};
nand { nand {
mux { mux {
groups = "nand_io", "nand_io_ce0", "nand_io_ce1", groups = "nand_io", "nand_io_ce0", "nand_io_ce1",
@ -79,18 +69,4 @@ pinctrl-bindings.txt
function = "nand"; function = "nand";
}; };
}; };
uart_ao_a {
mux {
groups = "uart_tx_ao_a", "uart_rx_ao_a",
"uart_cts_ao_a", "uart_rts_ao_a";
function = "uart_ao";
};
conf {
pins = "GPIOAO_0", "GPIOAO_1",
"GPIOAO_2", "GPIOAO_3";
bias-disable;
};
};
}; };

View File

@ -91,8 +91,8 @@
clock-frequency = <141666666>; clock-frequency = <141666666>;
}; };
pinctrl: pinctrl@c1109880 { pinctrl_cbus: pinctrl@c1109880 {
compatible = "amlogic,meson8-pinctrl"; compatible = "amlogic,meson8-cbus-pinctrl";
reg = <0xc1109880 0x10>; reg = <0xc1109880 0x10>;
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
@ -108,29 +108,6 @@
#gpio-cells = <2>; #gpio-cells = <2>;
}; };
gpio_ao: ao-bank@c1108030 {
reg = <0xc8100014 0x4>,
<0xc810002c 0x4>,
<0xc8100024 0x8>;
reg-names = "mux", "pull", "gpio";
gpio-controller;
#gpio-cells = <2>;
};
uart_ao_a_pins: uart_ao_a {
mux {
groups = "uart_tx_ao_a", "uart_rx_ao_a";
function = "uart_ao";
};
};
i2c_ao_pins: i2c_mst_ao {
mux {
groups = "i2c_mst_sck_ao", "i2c_mst_sda_ao";
function = "i2c_mst_ao";
};
};
spi_nor_pins: nor { spi_nor_pins: nor {
mux { mux {
groups = "nor_d", "nor_q", "nor_c", "nor_cs"; groups = "nor_d", "nor_q", "nor_c", "nor_cs";
@ -157,4 +134,34 @@
}; };
}; };
pinctrl_aobus: pinctrl@c8100084 {
compatible = "amlogic,meson8-aobus-pinctrl";
reg = <0xc8100084 0xc>;
#address-cells = <1>;
#size-cells = <1>;
ranges;
gpio_ao: ao-bank@c1108030 {
reg = <0xc8100014 0x4>,
<0xc810002c 0x4>,
<0xc8100024 0x8>;
reg-names = "mux", "pull", "gpio";
gpio-controller;
#gpio-cells = <2>;
};
uart_ao_a_pins: uart_ao_a {
mux {
groups = "uart_tx_ao_a", "uart_rx_ao_a";
function = "uart_ao";
};
};
i2c_ao_pins: i2c_mst_ao {
mux {
groups = "i2c_mst_sck_ao", "i2c_mst_sda_ao";
function = "i2c_mst_ao";
};
};
};
}; /* end of / */ }; /* end of / */

View File

@ -155,8 +155,8 @@
reg = <0xc1108000 0x4>, <0xc1104000 0x460>; reg = <0xc1108000 0x4>, <0xc1104000 0x460>;
}; };
pinctrl: pinctrl@c1109880 { pinctrl_cbus: pinctrl@c1109880 {
compatible = "amlogic,meson8b-pinctrl"; compatible = "amlogic,meson8b-cbus-pinctrl";
reg = <0xc1109880 0x10>; reg = <0xc1109880 0x10>;
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
@ -171,6 +171,14 @@
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
}; };
};
pinctrl_aobus: pinctrl@c8100084 {
compatible = "amlogic,meson8b-aobus-pinctrl";
reg = <0xc8100084 0xc>;
#address-cells = <1>;
#size-cells = <1>;
ranges;
gpio_ao: ao-bank@c1108030 { gpio_ao: ao-bank@c1108030 {
reg = <0xc8100014 0x4>, reg = <0xc8100014 0x4>,