]> www.infradead.org Git - linux.git/commitdiff
ARM: dts: am33xx-l4: add gpio-ranges
authorDrew Fustini <drew@beagleboard.org>
Wed, 10 Jun 2020 11:02:58 +0000 (13:02 +0200)
committerTony Lindgren <tony@atomide.com>
Mon, 29 Jun 2020 18:24:26 +0000 (11:24 -0700)
Add gpio-ranges properties to the gpio controller nodes.

These gpio-ranges were created based on "Table 9-10. CONTROL_MODULE
REGISTERS" in the  "AM335x Technical Reference Manual" [0] and "Table
4-2. Pin Attributes" in the "AM335x Sitara Processor datasheet" [1].
A csv file with this data is available for reference [2].

These mappings are valid for all SoC's that are using am33xx-l4.dtsi.
In addition, the only TI AM33xx parts that actually exist are [0]:
AM3351, AM3352, AM3354, AM3356, AM3357, AM3358, AM3359

These gpio-ranges properties should be added as they describe the
relationship between a gpio line and pin control register that exists
in the hardware.  For example, GPMC_A0 pin has mode 7 which is labeled
gpio1_16. conf_gpmc_a0 register is at offset 840h which makes it pin 16.

[0] https://www.ti.com/lit/ug/spruh73q/spruh73q.pdf
[1] http://www.ti.com/lit/ds/symlink/am3358.pdf
[2] https://gist.github.com/pdp7/6ffaddc8867973c1c3e8612cfaf72020
[3] http://www.ti.com/processors/sitara-arm/am335x-cortex-a8/overview.html

Signed-off-by: Drew Fustini <drew@beagleboard.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/boot/dts/am33xx-l4.dtsi

index 7ff11d6bf0f2be0d98a481376a702721617142ba..2c1ec066caebb826bbd9b5742cac4f75b1742fc3 100644 (file)
 
                        gpio0: gpio@0 {
                                compatible = "ti,omap4-gpio";
+                               gpio-ranges =   <&am33xx_pinmux  0  82 8>,
+                                               <&am33xx_pinmux  8  52 4>,
+                                               <&am33xx_pinmux 12  94 4>,
+                                               <&am33xx_pinmux 16  71 2>,
+                                               <&am33xx_pinmux 18 135 1>,
+                                               <&am33xx_pinmux 19 108 2>,
+                                               <&am33xx_pinmux 21  73 1>,
+                                               <&am33xx_pinmux 22   8 2>,
+                                               <&am33xx_pinmux 26  10 2>,
+                                               <&am33xx_pinmux 28  74 1>,
+                                               <&am33xx_pinmux 29  81 1>,
+                                               <&am33xx_pinmux 30  28 2>;
                                gpio-controller;
                                #gpio-cells = <2>;
                                interrupt-controller;
 
                        gpio1: gpio@0 {
                                compatible = "ti,omap4-gpio";
+                               gpio-ranges =   <&am33xx_pinmux  0  0  8>,
+                                               <&am33xx_pinmux  8 90  4>,
+                                               <&am33xx_pinmux 12 12 16>,
+                                               <&am33xx_pinmux 28 30  4>;
                                gpio-controller;
                                #gpio-cells = <2>;
                                interrupt-controller;
 
                        gpio2: gpio@0 {
                                compatible = "ti,omap4-gpio";
+                                gpio-ranges =  <&am33xx_pinmux  0 34 18>,
+                                               <&am33xx_pinmux 18 77  4>,
+                                               <&am33xx_pinmux 22 56 10>;
                                gpio-controller;
                                #gpio-cells = <2>;
                                interrupt-controller;
 
                        gpio3: gpio@0 {
                                compatible = "ti,omap4-gpio";
+                               gpio-ranges =   <&am33xx_pinmux  0  66 5>,
+                                               <&am33xx_pinmux  5  98 2>,
+                                               <&am33xx_pinmux  7  75 2>,
+                                               <&am33xx_pinmux 13 141 1>,
+                                               <&am33xx_pinmux 14 100 8>;
                                gpio-controller;
                                #gpio-cells = <2>;
                                interrupt-controller;