/* * Samsung's S3C64xx SoC series common device tree source * - pin control-related definitions * * Copyright (c) 2013 Tomasz Figa * * Samsung's S3C64xx SoCs pin banks, pin-mux and pin-config options 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. */ #define PIN_PULL_NONE 0 #define PIN_PULL_DOWN 1 #define PIN_PULL_UP 2 &pinctrl0 { /* * Pin banks */ gpa: gpa { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpb: gpb { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpc: gpc { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpd: gpd { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpe: gpe { gpio-controller; #gpio-cells = <2>; }; gpf: gpf { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpg: gpg { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gph: gph { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpi: gpi { gpio-controller; #gpio-cells = <2>; }; gpj: gpj { gpio-controller; #gpio-cells = <2>; }; gpk: gpk { gpio-controller; #gpio-cells = <2>; }; gpl: gpl { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpm: gpm { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpn: gpn { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpo: gpo { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpp: gpp { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; gpq: gpq { gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; }; /* * Pin groups */ uart0_data: uart0-data { samsung,pins = "gpa-0", "gpa-1"; samsung,pin-function = <2>; samsung,pin-pud = ; }; uart0_fctl: uart0-fctl { samsung,pins = "gpa-2", "gpa-3"; samsung,pin-function = <2>; samsung,pin-pud = ; }; uart1_data: uart1-data { samsung,pins = "gpa-4", "gpa-5"; samsung,pin-function = <2>; samsung,pin-pud = ; }; uart1_fctl: uart1-fctl { samsung,pins = "gpa-6", "gpa-7"; samsung,pin-function = <2>; samsung,pin-pud = ; }; uart2_data: uart2-data { samsung,pins = "gpb-0", "gpb-1"; samsung,pin-function = <2>; samsung,pin-pud = ; }; uart3_data: uart3-data { samsung,pins = "gpb-2", "gpb-3"; samsung,pin-function = <2>; samsung,pin-pud = ; }; ext_dma_0: ext-dma-0 { samsung,pins = "gpb-0", "gpb-1"; samsung,pin-function = <3>; samsung,pin-pud = ; }; ext_dma_1: ext-dma-1 { samsung,pins = "gpb-2", "gpb-3"; samsung,pin-function = <4>; samsung,pin-pud = ; }; irda_data_0: irda-data-0 { samsung,pins = "gpb-0", "gpb-1"; samsung,pin-function = <4>; samsung,pin-pud = ; }; irda_data_1: irda-data-1 { samsung,pins = "gpb-2", "gpb-3"; samsung,pin-function = <3>; samsung,pin-pud = ; }; irda_sdbw: irda-sdbw { samsung,pins = "gpb-4"; samsung,pin-function = <2>; samsung,pin-pud = ; }; i2c0_bus: i2c0-bus { samsung,pins = "gpb-5", "gpb-6"; samsung,pin-function = <2>; samsung,pin-pud = ; }; i2c1_bus: i2c1-bus { /* S3C6410-only */ samsung,pins = "gpb-2", "gpb-3"; samsung,pin-function = <6>; samsung,pin-pud = ; }; spi0_bus: spi0-bus { samsung,pins = "gpc-0", "gpc-1", "gpc-2"; samsung,pin-function = <2>; samsung,pin-pud = ; }; spi0_cs: spi0-cs { samsung,pins = "gpc-3"; samsung,pin-function = <2>; samsung,pin-pud = ; }; spi1_bus: spi1-bus { samsung,pins = "gpc-4", "gpc-5", "gpc-6"; samsung,pin-function = <2>; samsung,pin-pud = ; }; spi1_cs: spi1-cs { samsung,pins = "gpc-7"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd0_cmd: sd0-cmd { samsung,pins = "gpg-1"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd0_clk: sd0-clk { samsung,pins = "gpg-0"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd0_bus1: sd0-bus1 { samsung,pins = "gpg-2"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd0_bus4: sd0-bus4 { samsung,pins = "gpg-2", "gpg-3", "gpg-4", "gpg-5"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd0_cd: sd0-cd { samsung,pins = "gpg-6"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd1_cmd: sd1-cmd { samsung,pins = "gph-1"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd1_clk: sd1-clk { samsung,pins = "gph-0"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd1_bus1: sd1-bus1 { samsung,pins = "gph-2"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd1_bus4: sd1-bus4 { samsung,pins = "gph-2", "gph-3", "gph-4", "gph-5"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd1_bus8: sd1-bus8 { samsung,pins = "gph-2", "gph-3", "gph-4", "gph-5", "gph-6", "gph-7", "gph-8", "gph-9"; samsung,pin-function = <2>; samsung,pin-pud = ; }; sd1_cd: sd1-cd { samsung,pins = "gpg-6"; samsung,pin-function = <3>; samsung,pin-pud = ; }; sd2_cmd: sd2-cmd { samsung,pins = "gpc-4"; samsung,pin-function = <3>; samsung,pin-pud = ; }; sd2_clk: sd2-clk { samsung,pins = "gpc-5"; samsung,pin-function = <3>; samsung,pin-pud = ; }; sd2_bus1: sd2-bus1 { samsung,pins = "gph-6"; samsung,pin-function = <3>; samsung,pin-pud = ; }; sd2_bus4: sd2-bus4 { samsung,pins = "gph-6", "gph-7", "gph-8", "gph-9"; samsung,pin-function = <3>; samsung,pin-pud = ; }; i2s0_bus: i2s0-bus { samsung,pins = "gpd-0", "gpd-2", "gpd-3", "gpd-4"; samsung,pin-function = <3>; samsung,pin-pud = ; }; i2s0_cdclk: i2s0-cdclk { samsung,pins = "gpd-1"; samsung,pin-function = <3>; samsung,pin-pud = ; }; i2s1_bus: i2s1-bus { samsung,pins = "gpe-0", "gpe-2", "gpe-3", "gpe-4"; samsung,pin-function = <3>; samsung,pin-pud = ; }; i2s1_cdclk: i2s1-cdclk { samsung,pins = "gpe-1"; samsung,pin-function = <3>; samsung,pin-pud = ; }; i2s2_bus: i2s2-bus { /* S3C6410-only */ samsung,pins = "gpc-4", "gpc-5", "gpc-6", "gph-6", "gph-8", "gph-9"; samsung,pin-function = <5>; samsung,pin-pud = ; }; i2s2_cdclk: i2s2-cdclk { /* S3C6410-only */ samsung,pins = "gph-7"; samsung,pin-function = <5>; samsung,pin-pud = ; }; pcm0_bus: pcm0-bus { samsung,pins = "gpd-0", "gpd-2", "gpd-3", "gpd-4"; samsung,pin-function = <2>; samsung,pin-pud = ; }; pcm0_extclk: pcm0-extclk { samsung,pins = "gpd-1"; samsung,pin-function = <2>; samsung,pin-pud = ; }; pcm1_bus: pcm1-bus { samsung,pins = "gpe-0", "gpe-2", "gpe-3", "gpe-4"; samsung,pin-function = <2>; samsung,pin-pud = ; }; pcm1_extclk: pcm1-extclk { samsung,pins = "gpe-1"; samsung,pin-function = <2>; samsung,pin-pud = ; }; ac97_bus_0: ac97-bus-0 { samsung,pins = "gpd-0", "gpd-1", "gpd-2", "gpd-3", "gpd-4"; samsung,pin-function = <4>; samsung,pin-pud = ; }; ac97_bus_1: ac97-bus-1 { samsung,pins = "gpe-0", "gpe-1", "gpe-2", "gpe-3", "gpe-4"; samsung,pin-function = <4>; samsung,pin-pud = ; }; cam_port: cam-port { samsung,pins = "gpf-0", "gpf-1", "gpf-2", "gpf-4", "gpf-5", "gpf-6", "gpf-7", "gpf-8", "gpf-9", "gpf-10", "gpf-11", "gpf-12"; samsung,pin-function = <2>; samsung,pin-pud = ; }; cam_rst: cam-rst { samsung,pins = "gpf-3"; samsung,pin-function = <2>; samsung,pin-pud = ; }; cam_field: cam-field { /* S3C6410-only */ samsung,pins = "gpb-4"; samsung,pin-function = <3>; samsung,pin-pud = ; }; pwm_extclk: pwm-extclk { samsung,pins = "gpf-13"; samsung,pin-function = <2>; samsung,pin-pud = ; }; pwm0_out: pwm0-out { samsung,pins = "gpf-14"; samsung,pin-function = <2>; samsung,pin-pud = ; }; pwm1_out: pwm1-out { samsung,pins = "gpf-15"; samsung,pin-function = <2>; samsung,pin-pud = ; }; clkout0: clkout-0 { samsung,pins = "gpf-14"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_col0_0: keypad-col0-0 { samsung,pins = "gph-0"; samsung,pin-function = <4>; samsung,pin-pud = ; }; keypad_col1_0: keypad-col1-0 { samsung,pins = "gph-1"; samsung,pin-function = <4>; samsung,pin-pud = ; }; keypad_col2_0: keypad-col2-0 { samsung,pins = "gph-2"; samsung,pin-function = <4>; samsung,pin-pud = ; }; keypad_col3_0: keypad-col3-0 { samsung,pins = "gph-3"; samsung,pin-function = <4>; samsung,pin-pud = ; }; keypad_col4_0: keypad-col4-0 { samsung,pins = "gph-4"; samsung,pin-function = <4>; samsung,pin-pud = ; }; keypad_col5_0: keypad-col5-0 { samsung,pins = "gph-5"; samsung,pin-function = <4>; samsung,pin-pud = ; }; keypad_col6_0: keypad-col6-0 { samsung,pins = "gph-6"; samsung,pin-function = <4>; samsung,pin-pud = ; }; keypad_col7_0: keypad-col7-0 { samsung,pins = "gph-7"; samsung,pin-function = <4>; samsung,pin-pud = ; }; keypad_col0_1: keypad-col0-1 { samsung,pins = "gpl-0"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_col1_1: keypad-col1-1 { samsung,pins = "gpl-1"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_col2_1: keypad-col2-1 { samsung,pins = "gpl-2"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_col3_1: keypad-col3-1 { samsung,pins = "gpl-3"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_col4_1: keypad-col4-1 { samsung,pins = "gpl-4"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_col5_1: keypad-col5-1 { samsung,pins = "gpl-5"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_col6_1: keypad-col6-1 { samsung,pins = "gpl-6"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_col7_1: keypad-col7-1 { samsung,pins = "gpl-7"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row0_0: keypad-row0-0 { samsung,pins = "gpk-8"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row1_0: keypad-row1-0 { samsung,pins = "gpk-9"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row2_0: keypad-row2-0 { samsung,pins = "gpk-10"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row3_0: keypad-row3-0 { samsung,pins = "gpk-11"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row4_0: keypad-row4-0 { samsung,pins = "gpk-12"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row5_0: keypad-row5-0 { samsung,pins = "gpk-13"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row6_0: keypad-row6-0 { samsung,pins = "gpk-14"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row7_0: keypad-row7-0 { samsung,pins = "gpk-15"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row0_1: keypad-row0-1 { samsung,pins = "gpn-0"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row1_1: keypad-row1-1 { samsung,pins = "gpn-1"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row2_1: keypad-row2-1 { samsung,pins = "gpn-2"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row3_1: keypad-row3-1 { samsung,pins = "gpn-3"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row4_1: keypad-row4-1 { samsung,pins = "gpn-4"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row5_1: keypad-row5-1 { samsung,pins = "gpn-5"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row6_1: keypad-row6-1 { samsung,pins = "gpn-6"; samsung,pin-function = <3>; samsung,pin-pud = ; }; keypad_row7_1: keypad-row7-1 { samsung,pins = "gpn-7"; samsung,pin-function = <3>; samsung,pin-pud = ; }; lcd_ctrl: lcd-ctrl { samsung,pins = "gpj-8", "gpj-9", "gpj-10", "gpj-11"; samsung,pin-function = <2>; samsung,pin-pud = ; }; lcd_data16: lcd-data-width16 { samsung,pins = "gpi-3", "gpi-4", "gpi-5", "gpi-6", "gpi-7", "gpi-10", "gpi-11", "gpi-12", "gpi-13", "gpi-14", "gpi-15", "gpj-3", "gpj-4", "gpj-5", "gpj-6", "gpj-7"; samsung,pin-function = <2>; samsung,pin-pud = ; }; lcd_data18: lcd-data-width18 { samsung,pins = "gpi-2", "gpi-3", "gpi-4", "gpi-5", "gpi-6", "gpi-7", "gpi-10", "gpi-11", "gpi-12", "gpi-13", "gpi-14", "gpi-15", "gpj-2", "gpj-3", "gpj-4", "gpj-5", "gpj-6", "gpj-7"; samsung,pin-function = <2>; samsung,pin-pud = ; }; lcd_data24: lcd-data-width24 { samsung,pins = "gpi-0", "gpi-1", "gpi-2", "gpi-3", "gpi-4", "gpi-5", "gpi-6", "gpi-7", "gpi-8", "gpi-9", "gpi-10", "gpi-11", "gpi-12", "gpi-13", "gpi-14", "gpi-15", "gpj-0", "gpj-1", "gpj-2", "gpj-3", "gpj-4", "gpj-5", "gpj-6", "gpj-7"; samsung,pin-function = <2>; samsung,pin-pud = ; }; hsi_bus: hsi-bus { samsung,pins = "gpk-0", "gpk-1", "gpk-2", "gpk-3", "gpk-4", "gpk-5", "gpk-6", "gpk-7"; samsung,pin-function = <3>; samsung,pin-pud = ; }; };