Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 397d59f3 authored by Thomas Petazzoni's avatar Thomas Petazzoni Committed by Jason Cooper
Browse files

arm: mvebu: add DT information for GPIO banks on Armada 370 and XP



The gpioX aliases are needed so that the driver can use
of_alias_get_id() to get a 0-based number of the GPIO bank, which we
then use to compute the base GPIO of the bank being probed. This is
similar to what gpio-mxs.c is doing.

Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Gregory Clement <gregory.clement@free-electrons.com>
Acked-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
parent 93a59cf3
Loading
Loading
Loading
Loading
+39 −0
Original line number Diff line number Diff line
@@ -21,6 +21,12 @@
	model = "Marvell Armada 370 family SoC";
	compatible = "marvell,armada370", "marvell,armada-370-xp";

	aliases {
		gpio0 = &gpio0;
		gpio1 = &gpio1;
		gpio2 = &gpio2;
	};

	mpic: interrupt-controller@d0020000 {
	      reg = <0xd0020a00 0x1d0>,
		    <0xd0021870 0x58>;
@@ -36,5 +42,38 @@
			compatible = "marvell,mv88f6710-pinctrl";
			reg = <0xd0018000 0x38>;
	        };

		gpio0: gpio@d0018100 {
			compatible = "marvell,orion-gpio";
			reg = <0xd0018100 0x40>;
			ngpios = <32>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <82>, <83>, <84>, <85>;
		};

		gpio1: gpio@d0018140 {
			compatible = "marvell,orion-gpio";
			reg = <0xd0018140 0x40>;
			ngpios = <32>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <87>, <88>, <89>, <90>;
		};

		gpio2: gpio@d0018180 {
			compatible = "marvell,orion-gpio";
			reg = <0xd0018180 0x40>;
			ngpios = <2>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <91>;
		};
	};
};
+29 −0
Original line number Diff line number Diff line
@@ -19,10 +19,39 @@
	model = "Marvell Armada XP MV78230 SoC";
	compatible = "marvell,armadaxp-mv78230", "marvell,armadaxp", "marvell,armada-370-xp";

	aliases {
		gpio0 = &gpio0;
		gpio1 = &gpio1;
	};

	soc {
		pinctrl {
			compatible = "marvell,mv78230-pinctrl";
			reg = <0xd0018000 0x38>;
		};

		gpio0: gpio@d0018100 {
			compatible = "marvell,armadaxp-gpio";
			reg = <0xd0018100 0x40>,
			    <0xd0018800 0x30>;
			ngpios = <32>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <16>, <17>, <18>, <19>;
		};

		gpio1: gpio@d0018140 {
			compatible = "marvell,armadaxp-gpio";
			reg = <0xd0018140 0x40>,
			    <0xd0018840 0x30>;
			ngpios = <17>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <20>, <21>, <22>;
		};
	};
};
+42 −0
Original line number Diff line number Diff line
@@ -19,10 +19,52 @@
	model = "Marvell Armada XP MV78260 SoC";
	compatible = "marvell,armadaxp-mv78260", "marvell,armadaxp", "marvell,armada-370-xp";

	aliases {
		gpio0 = &gpio0;
		gpio1 = &gpio1;
		gpio2 = &gpio2;
	};

	soc {
		pinctrl {
			compatible = "marvell,mv78260-pinctrl";
			reg = <0xd0018000 0x38>;
		};

		gpio0: gpio@d0018100 {
			compatible = "marvell,armadaxp-gpio";
			reg = <0xd0018100 0x40>,
			    <0xd0018800 0x30>;
			ngpios = <32>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <16>, <17>, <18>, <19>;
		};

		gpio1: gpio@d0018140 {
			compatible = "marvell,armadaxp-gpio";
			reg = <0xd0018140 0x40>,
			    <0xd0018840 0x30>;
			ngpios = <32>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <20>, <21>, <22>, <23>;
		};

		gpio2: gpio@d0018180 {
			compatible = "marvell,armadaxp-gpio";
			reg = <0xd0018180 0x40>,
			    <0xd0018870 0x30>;
			ngpios = <3>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <24>;
		};
	};
};
+42 −0
Original line number Diff line number Diff line
@@ -19,10 +19,52 @@
	model = "Marvell Armada XP MV78460 SoC";
	compatible = "marvell,armadaxp-mv78460", "marvell,armadaxp", "marvell,armada-370-xp";

	aliases {
		gpio0 = &gpio0;
		gpio1 = &gpio1;
		gpio2 = &gpio2;
	};

	soc {
		pinctrl {
			compatible = "marvell,mv78460-pinctrl";
			reg = <0xd0018000 0x38>;
		};

		gpio0: gpio@d0018100 {
			compatible = "marvell,armadaxp-gpio";
			reg = <0xd0018100 0x40>,
			    <0xd0018800 0x30>;
			ngpios = <32>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <16>, <17>, <18>, <19>;
		};

		gpio1: gpio@d0018140 {
			compatible = "marvell,armadaxp-gpio";
			reg = <0xd0018140 0x40>,
			    <0xd0018840 0x30>;
			ngpios = <32>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <20>, <21>, <22>, <23>;
		};

		gpio2: gpio@d0018180 {
			compatible = "marvell,armadaxp-gpio";
			reg = <0xd0018180 0x40>,
			    <0xd0018870 0x30>;
			ngpios = <3>;
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupts-cells = <2>;
			interrupts = <24>;
		};
	};
 };