Hi,

Adding Linus W to Cc, would be good to get some comments on this.

* Drew Fustini <[email protected]> [200508 09:58]:
> Add gpio-line-names properties to the gpio controller nodes.
> BeagleBone boards have P8 and P9 headers [0] which expose many the
> AM3358 SoC balls to stacking expansion boards called "capes", or to
> other external connections like jumper wires to a breadboard.
> 
> Many of the P8/P9 header pins can muxed to a gpio line.  The
> gpio-line-names describe which P8/P9 pin that line goes to and the
> default mux for that P8/P9 pin.  Some lines are not routed to the
> P8/P9 headers, but instead are dedicated to some functionality such as
> status LEDs.  The line name will indicate this.  Some line names are
> left empty as the corresponding AM3358 balls are not connected.
> 
> The goal is to make it easier for a user viewing the output of gpioinfo
> to determine which P8/P9 pin is connected to a line.  The output of
> gpioinfo on a BeagleBone Black will now look like this:
> 
> gpiochip0 - 32 lines:
>       line   0:   "ethernet"       unused   input  active-high
>       line   1:   "ethernet"       unused   input  active-high
>       line   2: "P9_22 spi0_sclk" unused input active-high
>       line   3: "P9_21 spi0_d0" unused input active-high
>       line   4: "P9_18 spi0_d1" unused input active-high
>       line   5: "P9_17 spi0_cs0" unused input active-high
>       line   6:    "sd card"         "cd"   input   active-low [used]
>       line   7: "P9_42A ecappwm0" unused input active-high
>       line   8: "P8_35 hdmi"       unused   input  active-high
>       line   9: "P8_33 hdmi"       unused   input  active-high
>       line  10: "P8_31 hdmi"       unused   input  active-high
>       line  11: "P8_32 hdmi"       unused   input  active-high
>       line  12: "P9_20 i2c2_sda" unused input active-high
>       line  13: "P9_19 i2c2_scl" unused input active-high
>       line  14: "P9_26 uart1_rxd" unused input active-high
>       line  15: "P9_24 uart1_txd" unused input active-high
>       line  16:   "ethernet"       unused   input  active-high
>       line  17:   "ethernet"       unused   input  active-high
>       line  18:        "usb"       unused   input  active-high
>       line  19:       "hdmi"       unused   input  active-high
>       line  20: "P9_41B gpio" unused input active-high
>       line  21:   "ethernet"       unused   input  active-high
>       line  22: "P8_19 ehrpwm2a" unused input active-high
>       line  23: "P8_13 ehrpwm2b" unused input active-high
>       line  24:      unnamed       unused   input  active-high
>       line  25:      unnamed       unused   input  active-high
>       line  26: "P8_14 gpio"       unused   input  active-high
>       line  27: "P8_17 gpio"       unused   input  active-high
>       line  28:   "ethernet"       unused   input  active-high
>       line  29:   "ethernet"       unused   input  active-high
>       line  30: "P9_11 uart4_rxd" unused input active-high
>       line  31: "P9_13 uart4_txd" unused input active-high
> gpiochip1 - 32 lines:
>       line   0: "P8_25 emmc"       unused   input  active-high
>       line   1:       "emmc"       unused   input  active-high
>       line   2:  "P8_5 emmc"       unused   input  active-high
>       line   3:  "P8_6 emmc"       unused   input  active-high
>       line   4: "P8_23 emmc"       unused   input  active-high
>       line   5: "P8_22 emmc"       unused   input  active-high
>       line   6:  "P8_3 emmc"       unused   input  active-high
>       line   7:  "P8_4 emmc"       unused   input  active-high
>       line   8:      unnamed       unused   input  active-high
>       line   9:      unnamed       unused   input  active-high
>       line  10:      unnamed       unused   input  active-high
>       line  11:      unnamed       unused   input  active-high
>       line  12: "P8_12 gpio"       unused   input  active-high
>       line  13: "P8_11 gpio"       unused   input  active-high
>       line  14: "P8_16 gpio"       unused   input  active-high
>       line  15: "P8_15 gpio"       unused   input  active-high
>       line  16: "P9_15A gpio" unused input active-high
>       line  17: "P9_23 gpio"       unused   input  active-high
>       line  18: "P9_14 ehrpwm1a" unused input active-high
>       line  19: "P9_16 ehrpwm1b" unused input active-high
>       line  20:       "emmc"       unused   input  active-high
>       line  21:   "usr0 led" "beaglebone:green:heart" output active-high 
> [used]
>       line  22:   "usr1 led" "beaglebone:green:mmc0" output active-high [used]
>       line  23:   "usr2 led" "beaglebone:green:usr2" output active-high [used]
>       line  24:   "usr3 led" "beaglebone:green:usr3" output active-high [used]
>       line  25:       "hdmi"  "interrupt"   input  active-high [used]
>       line  26:        "usb"       unused   input  active-high
>       line  27: "hdmi audio"     "enable"  output  active-high [used]
>       line  28: "P9_12 gpio"       unused   input  active-high
>       line  29: "P8_26 gpio"       unused   input  active-high
>       line  30: "P8_21 emmc"       unused   input  active-high
>       line  31: "P8_20 emmc"       unused   input  active-high
> gpiochip2 - 32 lines:
>       line   0: "P9_15B gpio" unused input active-high
>       line   1: "P8_18 gpio"       unused   input  active-high
>       line   2:  "P8_7 gpio"       unused   input  active-high
>       line   3:  "P8_8 gpio"       unused   input  active-high
>       line   4: "P8_10 gpio"       unused   input  active-high
>       line   5:  "P8_9 gpio"       unused   input  active-high
>       line   6: "P8_45 hdmi"       unused   input  active-high
>       line   7: "P8_46 hdmi"       unused   input  active-high
>       line   8: "P8_43 hdmi"       unused   input  active-high
>       line   9: "P8_44 hdmi"       unused   input  active-high
>       line  10: "P8_41 hdmi"       unused   input  active-high
>       line  11: "P8_42 hdmi"       unused   input  active-high
>       line  12: "P8_39 hdmi"       unused   input  active-high
>       line  13: "P8_40 hdmi"       unused   input  active-high
>       line  14: "P8_37 hdmi"       unused   input  active-high
>       line  15: "P8_38 hdmi"       unused   input  active-high
>       line  16: "P8_36 hdmi"       unused   input  active-high
>       line  17: "P8_34 hdmi"       unused   input  active-high
>       line  18:   "ethernet"       unused   input  active-high
>       line  19:   "ethernet"       unused   input  active-high
>       line  20:   "ethernet"       unused   input  active-high
>       line  21:   "ethernet"       unused   input  active-high
>       line  22: "P8_27 hdmi"       unused   input  active-high
>       line  23: "P8_29 hdmi"       unused   input  active-high
>       line  24: "P8_28 hdmi"       unused   input  active-high
>       line  25: "P8_30 hdmi"       unused   input  active-high
>       line  26:       "emmc"       unused   input  active-high
>       line  27:       "emmc"       unused   input  active-high
>       line  28:       "emmc"       unused   input  active-high
>       line  29:       "emmc"       unused   input  active-high
>       line  30:       "emmc"       unused   input  active-high
>       line  31:       "emmc"       unused   input  active-high
> gpiochip3 - 32 lines:
>       line   0:   "ethernet"       unused   input  active-high
>       line   1:   "ethernet"       unused   input  active-high
>       line   2:   "ethernet"       unused   input  active-high
>       line   3:   "ethernet"       unused   input  active-high
>       line   4:   "ethernet"       unused   input  active-high
>       line   5:       "i2c0"       unused   input  active-high
>       line   6:       "i2c0"       unused   input  active-high
>       line   7:        "emu"       unused   input  active-high
>       line   8:        "emu"       unused   input  active-high
>       line   9:   "ethernet"       unused   input  active-high
>       line  10:   "ethernet"       unused   input  active-high
>       line  11:      unnamed       unused   input  active-high
>       line  12:      unnamed       unused   input  active-high
>       line  13:        "usb"       unused   input  active-high
>       line  14: "P9_31 spi1_sclk" unused input active-high
>       line  15: "P9_29 spi1_d0" unused input active-high
>       line  16: "P9_30 spi1_d1" unused input active-high
>       line  17: "P9_28 spi1_cs0" unused input active-high
>       line  18: "P9_42B ecappwm0" unused input active-high
>       line  19: "P9_27 gpio"       unused   input  active-high
>       line  20: "P9_41A gpio" unused input active-high
>       line  21: "P9_25 gpio"       unused   input  active-high
>       line  22:      unnamed       unused   input  active-high
>       line  23:      unnamed       unused   input  active-high
>       line  24:      unnamed       unused   input  active-high
>       line  25:      unnamed       unused   input  active-high
>       line  26:      unnamed       unused   input  active-high
>       line  27:      unnamed       unused   input  active-high
>       line  28:      unnamed       unused   input  active-high
>       line  29:      unnamed       unused   input  active-high
>       line  30:      unnamed       unused   input  active-high
>       line  31:      unnamed       unused   input  active-high
> 
> [0] https://beagleboard.org/Support/bone101
> [1] https://beagleboard.org/capes
> 
> Reviewed-by: Jason Kridner <[email protected]>
> Reviewed-by: Robert Nelson <[email protected]>
> Signed-off-by: Drew Fustini <[email protected]>
> ---
>  arch/arm/boot/dts/am335x-bone-common.dtsi | 144 ++++++++++++++++++++++
>  1 file changed, 144 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/am335x-bone-common.dtsi 
> b/arch/arm/boot/dts/am335x-bone-common.dtsi
> index 6c9187bc0f17..defdf68edb58 100644
> --- a/arch/arm/boot/dts/am335x-bone-common.dtsi
> +++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
> @@ -397,3 +397,147 @@
>       clocks = <&clk_32768_ck>, <&clk_24mhz_clkctrl 
> AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>;
>       clock-names = "ext-clk", "int-clk";
>  };
> +
> +&gpio0 {
> +     gpio-line-names =
> +             "ethernet",
> +             "ethernet",
> +             "P9_22 spi0_sclk",
> +             "P9_21 spi0_d0",
> +             "P9_18 spi0_d1",
> +             "P9_17 spi0_cs0",
> +             "sd card",
> +             "P9_42A ecappwm0",
> +             "P8_35 hdmi",
> +             "P8_33 hdmi",
> +             "P8_31 hdmi",
> +             "P8_32 hdmi",
> +             "P9_20 i2c2_sda",
> +             "P9_19 i2c2_scl",
> +             "P9_26 uart1_rxd",
> +             "P9_24 uart1_txd",
> +             "ethernet",
> +             "ethernet",
> +             "usb",
> +             "hdmi",
> +             "P9_41B gpio",
> +             "ethernet",
> +             "P8_19 ehrpwm2a",
> +             "P8_13 ehrpwm2b",
> +             "",
> +             "",
> +             "P8_14 gpio",
> +             "P8_17 gpio",
> +             "ethernet",
> +             "ethernet",
> +             "P9_11 uart4_rxd",
> +             "P9_13 uart4_txd";
> +};
> +
> +&gpio1 {
> +     gpio-line-names =
> +             "P8_25 emmc",
> +             "emmc",
> +             "P8_5 emmc",
> +             "P8_6 emmc",
> +             "P8_23 emmc",
> +             "P8_22 emmc",
> +             "P8_3 emmc",
> +             "P8_4 emmc",
> +             "",
> +             "",
> +             "",
> +             "",
> +             "P8_12 gpio",
> +             "P8_11 gpio",
> +             "P8_16 gpio",
> +             "P8_15 gpio",
> +             "P9_15A gpio",
> +             "P9_23 gpio",
> +             "P9_14 ehrpwm1a",
> +             "P9_16 ehrpwm1b",
> +             "emmc",
> +             "usr0 led",
> +             "usr1 led",
> +             "usr2 led",
> +             "usr3 led",
> +             "hdmi",
> +             "usb",
> +             "hdmi audio",
> +             "P9_12 gpio",
> +             "P8_26 gpio",
> +             "P8_21 emmc",
> +             "P8_20 emmc";
> +};
> +
> +&gpio2 {
> +     gpio-line-names =
> +             "P9_15B gpio",
> +             "P8_18 gpio",
> +             "P8_7 gpio",
> +             "P8_8 gpio",
> +             "P8_10 gpio",
> +             "P8_9 gpio",
> +             "P8_45 hdmi",
> +             "P8_46 hdmi",
> +             "P8_43 hdmi",
> +             "P8_44 hdmi",
> +             "P8_41 hdmi",
> +             "P8_42 hdmi",
> +             "P8_39 hdmi",
> +             "P8_40 hdmi",
> +             "P8_37 hdmi",
> +             "P8_38 hdmi",
> +             "P8_36 hdmi",
> +             "P8_34 hdmi",
> +             "ethernet",
> +             "ethernet",
> +             "ethernet",
> +             "ethernet",
> +             "P8_27 hdmi",
> +             "P8_29 hdmi",
> +             "P8_28 hdmi",
> +             "P8_30 hdmi",
> +             "emmc",
> +             "emmc",
> +             "emmc",
> +             "emmc",
> +             "emmc",
> +             "emmc";
> +};
> +
> +&gpio3 {
> +     gpio-line-names =
> +             "ethernet",
> +             "ethernet",
> +             "ethernet",
> +             "ethernet",
> +             "ethernet",
> +             "i2c0",
> +             "i2c0",
> +             "emu",
> +             "emu",
> +             "ethernet",
> +             "ethernet",
> +             "",
> +             "",
> +             "usb",
> +             "P9_31 spi1_sclk",
> +             "P9_29 spi1_d0",
> +             "P9_30 spi1_d1",
> +             "P9_28 spi1_cs0",
> +             "P9_42B ecappwm0",
> +             "P9_27 gpio",
> +             "P9_41A gpio",
> +             "P9_25 gpio",
> +             "",
> +             "",
> +             "",
> +             "",
> +             "",
> +             "",
> +             "",
> +             "",
> +             "",
> +             "";
> +};
> -- 
> 2.20.1
> 

Reply via email to