@@ -0,0 +1,605 @@
+/*
+ * Samsung's Exynos4210 SoC pinctrl banks device tree source
+ *
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd.
+ * http://www.samsung.com
+ *
+ * Samsung's Exynos4210 SoC pin banks are listed as device tree nodes
+ * in this file.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+/ {
+ pinctrl at 11400000 {
+ gpa0: pin-bank at 0 {
+ gpio-controller;
+ samsung,pctl-offset = <0x000>;
+ samsung,pin-bank = "gpa0";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x00>;
+ };
+
+ gpa1: pin-bank at 1 {
+ gpio-controller;
+ samsung,pctl-offset = <0x020>;
+ samsung,pin-bank = "gpa1";
+ samsung,pin-count = <6>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x04>;
+ };
+
+ gpb: pin-bank at 2 {
+ gpio-controller;
+ samsung,pctl-offset = <0x040>;
+ samsung,pin-bank = "gpb";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x08>;
+ };
+
+ gpc0: pin-bank at 3 {
+ gpio-controller;
+ samsung,pctl-offset = <0x060>;
+ samsung,pin-bank = "gpc0";
+ samsung,pin-count = <5>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x0C>;
+ };
+
+ gpc1: pin-bank at 4 {
+ gpio-controller;
+ samsung,pctl-offset = <0x080>;
+ samsung,pin-bank = "gpc1";
+ samsung,pin-count = <5>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x10>;
+ };
+
+ gpd0: pin-bank at 5 {
+ gpio-controller;
+ samsung,pctl-offset = <0x0A0>;
+ samsung,pin-bank = "gpd0";
+ samsung,pin-count = <4>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x14>;
+ };
+
+ gpd1: pin-bank at 6 {
+ gpio-controller;
+ samsung,pctl-offset = <0x0C0>;
+ samsung,pin-bank = "gpd1";
+ samsung,pin-count = <4>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x18>;
+ };
+
+ gpe0: pin-bank at 7 {
+ gpio-controller;
+ samsung,pctl-offset = <0x0E0>;
+ samsung,pin-bank = "gpe0";
+ samsung,pin-count = <4>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x1C>;
+ };
+
+ gpe1: pin-bank at 8 {
+ gpio-controller;
+ samsung,pctl-offset = <0x100>;
+ samsung,pin-bank = "gpe1";
+ samsung,pin-count = <4>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x20>;
+ };
+
+ gpe2: pin-bank at 9 {
+ gpio-controller;
+ samsung,pctl-offset = <0x120>;
+ samsung,pin-bank = "gpe2";
+ samsung,pin-count = <4>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x24>;
+ };
+
+ gpe3: pin-bank at 10 {
+ gpio-controller;
+ samsung,pctl-offset = <0x140>;
+ samsung,pin-bank = "gpe3";
+ samsung,pin-count = <4>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x28>;
+ };
+
+ gpe4: pin-bank at 11 {
+ gpio-controller;
+ samsung,pctl-offset = <0x160>;
+ samsung,pin-bank = "gpe4";
+ samsung,pin-count = <4>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x2C>;
+ };
+
+ gpf0: pin-bank at 12 {
+ gpio-controller;
+ samsung,pctl-offset = <0x180>;
+ samsung,pin-bank = "gpf0";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x30>;
+ };
+
+ gpf1: pin-bank at 13 {
+ gpio-controller;
+ samsung,pctl-offset = <0x1A0>;
+ samsung,pin-bank = "gpf1";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x34>;
+ };
+
+ gpf2: pin-bank at 14 {
+ gpio-controller;
+ samsung,pctl-offset = <0x1C0>;
+ samsung,pin-bank = "gpf2";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x38>;
+ };
+
+ gpf3: pin-bank at 15 {
+ gpio-controller;
+ samsung,pctl-offset = <0x1E0>;
+ samsung,pin-bank = "gpf3";
+ samsung,pin-count = <6>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x3C>;
+ };
+ };
+
+ pinctrl at 11000000 {
+ gpj0: pin-bank at 0 {
+ gpio-controller;
+ samsung,pctl-offset = <0x000>;
+ samsung,pin-bank = "gpj0";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x00>;
+ };
+
+ gpj1: pin-bank at 1 {
+ gpio-controller;
+ samsung,pctl-offset = <0x020>;
+ samsung,pin-bank = "gpj1";
+ samsung,pin-count = <5>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x04>;
+ };
+
+ gpk0: pin-bank at 2 {
+ gpio-controller;
+ samsung,pctl-offset = <0x040>;
+ samsung,pin-bank = "gpk0";
+ samsung,pin-count = <7>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x08>;
+ };
+
+ gpk1: pin-bank at 3 {
+ gpio-controller;
+ samsung,pctl-offset = <0x060>;
+ samsung,pin-bank = "gpk1";
+ samsung,pin-count = <7>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x0C>;
+ };
+
+ gpk2: pin-bank at 4 {
+ gpio-controller;
+ samsung,pctl-offset = <0x080>;
+ samsung,pin-bank = "gpk2";
+ samsung,pin-count = <7>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x10>;
+ };
+
+ gpk3: pin-bank at 5 {
+ gpio-controller;
+ samsung,pctl-offset = <0x0A0>;
+ samsung,pin-bank = "gpk3";
+ samsung,pin-count = <7>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x14>;
+ };
+
+ gpl0: pin-bank at 6 {
+ gpio-controller;
+ samsung,pctl-offset = <0x0C0>;
+ samsung,pin-bank = "gpl0";
+ samsung,pin-count = <7>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x18>;
+ };
+
+ gpl1: pin-bank at 7 {
+ gpio-controller;
+ samsung,pctl-offset = <0x0E0>;
+ samsung,pin-bank = "gpl1";
+ samsung,pin-count = <2>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x1C>;
+ };
+
+ gpl2: pin-bank at 8 {
+ gpio-controller;
+ samsung,pctl-offset = <0x100>;
+ samsung,pin-bank = "gpl2";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x20>;
+ };
+
+ gpm0: pin-bank at 9 {
+ gpio-controller;
+ samsung,pctl-offset = <0x260>;
+ samsung,pin-bank = "gpm0";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x24>;
+ };
+
+ gpm1: pin-bank at 10 {
+ gpio-controller;
+ samsung,pctl-offset = <0x280>;
+ samsung,pin-bank = "gpm1";
+ samsung,pin-count = <7>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x28>;
+ };
+
+ gpm2: pin-bank at 11 {
+ gpio-controller;
+ samsung,pctl-offset = <0x2A0>;
+ samsung,pin-bank = "gpm2";
+ samsung,pin-count = <5>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x2C>;
+ };
+
+ gpm3: pin-bank at 12 {
+ gpio-controller;
+ samsung,pctl-offset = <0x2C0>;
+ samsung,pin-bank = "gpm3";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x30>;
+ };
+
+ gpm4: pin-bank at 13 {
+ gpio-controller;
+ samsung,pctl-offset = <0x2E0>;
+ samsung,pin-bank = "gpm4";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+
+ interrupt-controller;
+ samsung,eint-offset = <0x34>;
+ };
+
+ gpy0: pin-bank at 14 {
+ gpio-controller;
+ samsung,pctl-offset = <0x120>;
+ samsung,pin-bank = "gpy0";
+ samsung,pin-count = <6>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+ };
+
+ gpy1: pin-bank at 15 {
+ gpio-controller;
+ samsung,pctl-offset = <0x140>;
+ samsung,pin-bank = "gpy1";
+ samsung,pin-count = <4>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+ };
+
+ gpy2: pin-bank at 16 {
+ gpio-controller;
+ samsung,pctl-offset = <0x160>;
+ samsung,pin-bank = "gpy2";
+ samsung,pin-count = <6>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+ };
+
+ gpy3: pin-bank at 17 {
+ gpio-controller;
+ samsung,pctl-offset = <0x180>;
+ samsung,pin-bank = "gpy3";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+ };
+
+ gpy4: pin-bank at 18 {
+ gpio-controller;
+ samsung,pctl-offset = <0x1A0>;
+ samsung,pin-bank = "gpy4";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+ };
+
+ gpy5: pin-bank at 19{
+ gpio-controller;
+ samsung,pctl-offset = <0x1C0>;
+ samsung,pin-bank = "gpy5";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+ };
+
+ gpy6: pin-bank at 20 {
+ gpio-controller;
+ samsung,pctl-offset = <0x1E0>;
+ samsung,pin-bank = "gpy6";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ samsung,conpdn-width = <2>;
+ samsung,pudpdn-width = <2>;
+ };
+
+ gpx0: pin-bank at 21 {
+ gpio-controller;
+ samsung,pctl-offset = <0xC00>;
+ samsung,pin-bank = "gpx0";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ };
+
+ gpx1: pin-bank at 22 {
+ gpio-controller;
+ samsung,pctl-offset = <0xC20>;
+ samsung,pin-bank = "gpx1";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ };
+
+ gpx2: pin-bank at 23 {
+ gpio-controller;
+ samsung,pctl-offset = <0xC40>;
+ samsung,pin-bank = "gpx2";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ };
+
+ gpx3: pin-bank at 24 {
+ gpio-controller;
+ samsung,pctl-offset = <0xC60>;
+ samsung,pin-bank = "gpx3";
+ samsung,pin-count = <8>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ };
+ };
+
+ pinctrl at 03860000 {
+ gpz: pin-bank at 0 {
+ gpio-controller;
+ samsung,pctl-offset = <0x000>;
+ samsung,pin-bank = "gpz";
+ samsung,pin-count = <7>;
+ samsung,func-width = <4>;
+ samsung,pud-width = <2>;
+ samsung,drv-width = <2>;
+ };
+ };
+};