1 Qualcomm MSM8998 TLMM block
3 This binding describes the Top Level Mode Multiplexer block found in the
9 Definition: must be "qcom,msm8998-pinctrl"
13 Value type: <prop-encoded-array>
14 Definition: the base address and size of the TLMM register space.
18 Value type: <prop-encoded-array>
19 Definition: should specify the TLMM summary IRQ.
21 - interrupt-controller:
24 Definition: identifies this node as an interrupt controller
29 Definition: must be 2. Specifying the pin number and flags, as defined
30 in <dt-bindings/interrupt-controller/irq.h>
35 Definition: identifies this node as a gpio controller
40 Definition: must be 2. Specifying the pin number and flags, as defined
41 in <dt-bindings/gpio/gpio.h>
43 Please refer to ../gpio/gpio.txt and ../interrupt-controller/interrupts.txt for
44 a general description of GPIO and interrupt bindings.
46 Please refer to pinctrl-bindings.txt in this directory for details of the
47 common pinctrl bindings used by client devices, including the meaning of the
48 phrase "pin configuration node".
50 The pin configuration nodes act as a container for an arbitrary number of
51 subnodes. Each of these subnodes represents some desired configuration for a
52 pin, a group, or a list of pins or groups. This configuration can include the
53 mux function to select on those pin(s)/group(s), and various pin configuration
54 parameters, such as pull-up, drive strength, etc.
57 PIN CONFIGURATION NODES:
59 The name of each subnode is not important; all subnodes should be enumerated
60 and processed purely based on their content.
62 Each subnode only affects those parameters that are explicitly listed. In
63 other words, a subnode that lists a mux function but no pin configuration
64 parameters implies no information about any pin configuration parameters.
65 Similarly, a pin subnode that describes a pullup parameter implies no
66 information about e.g. the mux function.
69 The following generic properties as defined in pinctrl-bindings.txt are valid
70 to specify in a pin configuration subnode:
74 Value type: <string-array>
75 Definition: List of gpio pins affected by the properties specified in
80 Supports mux, bias and drive-strength
82 sdc2_clk, sdc2_cmd, sdc2_data
83 Supports bias and drive-strength
86 Supports bias and drive-strength
91 Definition: Specify the alternative function to be configured for the
92 specified pins. Functions are only valid for gpio pins.
95 gpio, adsp_ext, agera_pll, atest_char, atest_gpsadc0,
96 atest_gpsadc1, atest_tsens, atest_tsens2, atest_usb1,
97 atest_usb10, atest_usb11, atest_usb12, atest_usb13,
98 audio_ref, bimc_dte0, bimc_dte1, blsp10_spi, blsp10_spi_a,
99 blsp10_spi_b, blsp11_i2c, blsp1_spi, blsp1_spi_a,
100 blsp1_spi_b, blsp2_spi, blsp9_spi, blsp_i2c1, blsp_i2c2,
101 blsp_i2c3, blsp_i2c4, blsp_i2c5, blsp_i2c6, blsp_i2c7,
102 blsp_i2c8, blsp_i2c9, blsp_i2c10, blsp_i2c11, blsp_i2c12,
103 blsp_spi1, blsp_spi2, blsp_spi3, blsp_spi4, blsp_spi5,
104 blsp_spi6, blsp_spi7, blsp_spi8, blsp_spi9, blsp_spi10,
105 blsp_spi11, blsp_spi12, blsp_uart1_a, blsp_uart1_b,
106 blsp_uart2_a, blsp_uart2_b, blsp_uart3_a, blsp_uart3_b,
107 blsp_uart7_a, blsp_uart7_b, blsp_uart8, blsp_uart8_a,
108 blsp_uart8_b, blsp_uart9_a, blsp_uart9_b, blsp_uim1_a,
109 blsp_uim1_b, blsp_uim2_a, blsp_uim2_b, blsp_uim3_a,
110 blsp_uim3_b, blsp_uim7_a, blsp_uim7_b, blsp_uim8_a,
111 blsp_uim8_b, blsp_uim9_a, blsp_uim9_b, bt_reset,
112 btfm_slimbus, cam_mclk, cci_async, cci_i2c, cci_timer0,
113 cci_timer1, cci_timer2, cci_timer3, cci_timer4, cri_trng,
114 cri_trng0, cri_trng1, dbg_out, ddr_bist, edp_hot, edp_lcd,
115 gcc_gp1_a, gcc_gp1_b, gcc_gp2_a, gcc_gp2_b, gcc_gp3_a,
116 gcc_gp3_b, hdmi_cec, hdmi_ddc, hdmi_hot, hdmi_rcv,
117 isense_dbg, jitter_bist, ldo_en, ldo_update, lpass_slimbus,
118 m_voc, mdp_vsync, mdp_vsync0, mdp_vsync1, mdp_vsync2,
119 mdp_vsync3, mdp_vsync_a, mdp_vsync_b, modem_tsync, mss_lte,
120 nav_dr, nav_pps, pa_indicator, pci_e0, phase_flag,
121 pll_bypassnl, pll_reset, pri_mi2s, pri_mi2s_ws, prng_rosc,
122 pwr_crypto, pwr_modem, pwr_nav, qdss_cti0_a, qdss_cti0_b,
123 qdss_cti1_a, qdss_cti1_b, qdss, qlink_enable,
124 qlink_request, qua_mi2s, sd_card, sd_write, sdc40, sdc41,
125 sdc42, sdc43, sdc4_clk, sdc4_cmd, sec_mi2s, sp_cmu,
126 spkr_i2s, ssbi1, ssc_irq, ter_mi2s, tgu_ch0, tgu_ch1,
127 tsense_pwm1, tsense_pwm2, tsif1_clk, tsif1_data, tsif1_en,
128 tsif1_error, tsif1_sync, tsif2_clk, tsif2_data, tsif2_en,
129 tsif2_error, tsif2_sync, uim1_clk, uim1_data, uim1_present,
130 uim1_reset, uim2_clk, uim2_data, uim2_present, uim2_reset,
131 uim_batt, usb_phy, vfr_1, vsense_clkout, vsense_data0,
132 vsense_data1, vsense_mode, wlan1_adc0, wlan1_adc1,
133 wlan2_adc0, wlan2_adc1,
138 Definition: The specified pins should be configued as no pull.
143 Definition: The specified pins should be configued as pull down.
148 Definition: The specified pins should be configued as pull up.
153 Definition: The specified pins are configured in output mode, driven
155 Not valid for sdc pins.
160 Definition: The specified pins are configured in output mode, driven
162 Not valid for sdc pins.
167 Definition: Selects the drive strength for the specified pins, in mA.
168 Valid values are: 2, 4, 6, 8, 10, 12, 14 and 16
172 tlmm: pinctrl@03400000 {
173 compatible = "qcom,msm8998-pinctrl";
174 reg = <0x03400000 0xc00000>;
175 interrupts = <0 208 0>;
178 interrupt-controller;
179 #interrupt-cells = <2>;
181 uart_console_active: uart_console_active {
183 pins = "gpio4", "gpio5";
184 function = "blsp_uart8_a";
188 pins = "gpio4", "gpio5";
189 drive-strength = <2>;