xref: /freebsd/sys/contrib/device-tree/Bindings/pinctrl/sunplus,sp7021-pinctrl.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
1c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c9ccf3a3SEmmanuel Vadot# Copyright (C) Sunplus Co., Ltd.
3c9ccf3a3SEmmanuel Vadot%YAML 1.2
4c9ccf3a3SEmmanuel Vadot---
5c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/sunplus,sp7021-pinctrl.yaml#
6c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7c9ccf3a3SEmmanuel Vadot
87ef62cebSEmmanuel Vadottitle: Sunplus SP7021 Pin Controller
9c9ccf3a3SEmmanuel Vadot
10c9ccf3a3SEmmanuel Vadotmaintainers:
11c9ccf3a3SEmmanuel Vadot  - Dvorkin Dmitry <dvorkin@tibbo.com>
12c9ccf3a3SEmmanuel Vadot  - Wells Lu <wellslutw@gmail.com>
13c9ccf3a3SEmmanuel Vadot
14c9ccf3a3SEmmanuel Vadotdescription: |
15c9ccf3a3SEmmanuel Vadot  The Sunplus SP7021 pin controller is used to control SoC pins. Please
16c9ccf3a3SEmmanuel Vadot  refer to pinctrl-bindings.txt in this directory for details of the common
17c9ccf3a3SEmmanuel Vadot  pinctrl bindings used by client devices.
18c9ccf3a3SEmmanuel Vadot
19c9ccf3a3SEmmanuel Vadot  SP7021 has 99 digital GPIO pins which are numbered from GPIO 0 to 98. All
20c9ccf3a3SEmmanuel Vadot  are multiplexed with some special function pins. SP7021 has 3 types of
21c9ccf3a3SEmmanuel Vadot  special function pins:
22c9ccf3a3SEmmanuel Vadot
23c9ccf3a3SEmmanuel Vadot  (1) function-group pins:
24c9ccf3a3SEmmanuel Vadot      Ex 1 (SPI-NOR flash):
25c9ccf3a3SEmmanuel Vadot        If control-field SPI_FLASH_SEL is set to 1, GPIO 83, 84, 86 and 87
26c9ccf3a3SEmmanuel Vadot        will be pins of SPI-NOR flash. If it is set to 2, GPIO 76, 78, 79
27c9ccf3a3SEmmanuel Vadot        and 81 will be pins of SPI-NOR flash.
28c9ccf3a3SEmmanuel Vadot
29c9ccf3a3SEmmanuel Vadot      Ex 2 (UART_0):
30c9ccf3a3SEmmanuel Vadot        If control-bit UA0_SEL is set to 1, GPIO 88 and 89 will be TX and
31c9ccf3a3SEmmanuel Vadot        RX pins of UART_0 (UART channel 0).
32c9ccf3a3SEmmanuel Vadot
33c9ccf3a3SEmmanuel Vadot      Ex 3 (eMMC):
34c9ccf3a3SEmmanuel Vadot        If control-bit EMMC_SEL is set to 1, GPIO 72, 73, 74, 75, 76, 77,
35c9ccf3a3SEmmanuel Vadot        78, 79, 80, 81 will be pins of an eMMC device.
36c9ccf3a3SEmmanuel Vadot
37c9ccf3a3SEmmanuel Vadot      Properties "function" and "groups" are used to select function-group
38c9ccf3a3SEmmanuel Vadot      pins.
39c9ccf3a3SEmmanuel Vadot
40c9ccf3a3SEmmanuel Vadot  (2) fully pin-mux (like phone exchange mux) pins:
41c9ccf3a3SEmmanuel Vadot      GPIO 8 to 71 are 'fully pin-mux' pins. Any pins of peripherals of
42c9ccf3a3SEmmanuel Vadot      SP7021 (ex: UART_1, UART_2, UART_3, UART_4, I2C_0, I2C_1, and etc.)
43c9ccf3a3SEmmanuel Vadot      can be routed to any pins of fully pin-mux pins.
44c9ccf3a3SEmmanuel Vadot
45c9ccf3a3SEmmanuel Vadot      Ex 1 (UART channel 1):
46c9ccf3a3SEmmanuel Vadot        If control-field UA1_TX_SEL is set to 3, TX pin of UART_1 will be
47c9ccf3a3SEmmanuel Vadot        routed to GPIO 10 (3 - 1 + 8 = 10).
48c9ccf3a3SEmmanuel Vadot        If control-field UA1_RX_SEL is set to 4, RX pin of UART_1 will be
49c9ccf3a3SEmmanuel Vadot        routed to GPIO 11 (4 - 1 + 8 = 11).
50c9ccf3a3SEmmanuel Vadot        If control-field UA1_RTS_SEL is set to 5, RTS pin of UART_1 will
51c9ccf3a3SEmmanuel Vadot        be routed to GPIO 12 (5 - 1 + 8 = 12).
52c9ccf3a3SEmmanuel Vadot        If control-field UA1_CTS_SEL is set to 6, CTS pin of UART_1 will
53c9ccf3a3SEmmanuel Vadot        be routed to GPIO 13 (6 - 1 + 8 = 13).
54c9ccf3a3SEmmanuel Vadot
55c9ccf3a3SEmmanuel Vadot      Ex 2 (I2C channel 0):
56c9ccf3a3SEmmanuel Vadot        If control-field I2C0_CLK_SEL is set to 20, CLK pin of I2C_0 will
57c9ccf3a3SEmmanuel Vadot        be routed to GPIO 27 (20 - 1 + 8 = 27).
58c9ccf3a3SEmmanuel Vadot        If control-field I2C0_DATA_SEL is set to 21, DATA pin of I2C_0
59c9ccf3a3SEmmanuel Vadot        will be routed to GPIO 28 (21 - 1 + 9 = 28).
60c9ccf3a3SEmmanuel Vadot
61c9ccf3a3SEmmanuel Vadot      Totally, SP7021 has 120 peripheral pins. The peripheral pins can be
62c9ccf3a3SEmmanuel Vadot      routed to any of 64 'fully pin-mux' pins.
63c9ccf3a3SEmmanuel Vadot
64c9ccf3a3SEmmanuel Vadot  (3) I/O processor pins
65c9ccf3a3SEmmanuel Vadot      SP7021 has a built-in I/O processor.
66c9ccf3a3SEmmanuel Vadot      Any GPIO pins (GPIO 0 to 98) can be set to pins of I/O processor.
67c9ccf3a3SEmmanuel Vadot
68c9ccf3a3SEmmanuel Vadot  Vendor property "sunplus,pins" is used to select "fully pin-mux" pins,
69c9ccf3a3SEmmanuel Vadot  "I/O processor pins" and "digital GPIO" pins.
70c9ccf3a3SEmmanuel Vadot
71c9ccf3a3SEmmanuel Vadot  The device node of pin controller of Sunplus SP7021 has following
72c9ccf3a3SEmmanuel Vadot  properties.
73c9ccf3a3SEmmanuel Vadot
74c9ccf3a3SEmmanuel Vadotproperties:
75c9ccf3a3SEmmanuel Vadot  compatible:
76c9ccf3a3SEmmanuel Vadot    const: sunplus,sp7021-pctl
77c9ccf3a3SEmmanuel Vadot
78c9ccf3a3SEmmanuel Vadot  gpio-controller: true
79c9ccf3a3SEmmanuel Vadot
80c9ccf3a3SEmmanuel Vadot  '#gpio-cells':
81c9ccf3a3SEmmanuel Vadot    const: 2
82c9ccf3a3SEmmanuel Vadot
83c9ccf3a3SEmmanuel Vadot  reg:
84c9ccf3a3SEmmanuel Vadot    items:
85c9ccf3a3SEmmanuel Vadot      - description: the MOON2 registers
86c9ccf3a3SEmmanuel Vadot      - description: the GPIOXT registers
87c9ccf3a3SEmmanuel Vadot      - description: the FIRST registers
88c9ccf3a3SEmmanuel Vadot      - description: the MOON1 registers
89c9ccf3a3SEmmanuel Vadot
90c9ccf3a3SEmmanuel Vadot  reg-names:
91c9ccf3a3SEmmanuel Vadot    items:
92c9ccf3a3SEmmanuel Vadot      - const: moon2
93c9ccf3a3SEmmanuel Vadot      - const: gpioxt
94c9ccf3a3SEmmanuel Vadot      - const: first
95c9ccf3a3SEmmanuel Vadot      - const: moon1
96c9ccf3a3SEmmanuel Vadot
97c9ccf3a3SEmmanuel Vadot  clocks:
98c9ccf3a3SEmmanuel Vadot    maxItems: 1
99c9ccf3a3SEmmanuel Vadot
100c9ccf3a3SEmmanuel Vadot  resets:
101c9ccf3a3SEmmanuel Vadot    maxItems: 1
102c9ccf3a3SEmmanuel Vadot
103c9ccf3a3SEmmanuel VadotpatternProperties:
104c9ccf3a3SEmmanuel Vadot  '-pins$':
105c9ccf3a3SEmmanuel Vadot    type: object
106c9ccf3a3SEmmanuel Vadot    description: |
107c9ccf3a3SEmmanuel Vadot      A pinctrl node should contain at least one subnodes representing the
108c9ccf3a3SEmmanuel Vadot      pins or function-pins group available on the machine. Each subnode
109c9ccf3a3SEmmanuel Vadot      will list the pins it needs, and how they should be configured.
110c9ccf3a3SEmmanuel Vadot
111c9ccf3a3SEmmanuel Vadot      Pinctrl node's client devices use subnodes for desired pin
112c9ccf3a3SEmmanuel Vadot      configuration. Client device subnodes use below standard properties.
113c9ccf3a3SEmmanuel Vadot    $ref: pinmux-node.yaml#
114c9ccf3a3SEmmanuel Vadot
115c9ccf3a3SEmmanuel Vadot    properties:
116c9ccf3a3SEmmanuel Vadot      sunplus,pins:
117c9ccf3a3SEmmanuel Vadot        description: |
118c9ccf3a3SEmmanuel Vadot          Define 'sunplus,pins' which are used by pinctrl node's client
119c9ccf3a3SEmmanuel Vadot          device.
120c9ccf3a3SEmmanuel Vadot
121c9ccf3a3SEmmanuel Vadot          It consists of one or more integers which represents the config
122c9ccf3a3SEmmanuel Vadot          setting for corresponding pin. Each integer defines a individual
123c9ccf3a3SEmmanuel Vadot          pin in which:
124c9ccf3a3SEmmanuel Vadot
125c9ccf3a3SEmmanuel Vadot          Bit 32~24: defines GPIO number. Its range is 0 ~ 98.
126c9ccf3a3SEmmanuel Vadot          Bit 23~16: defines types: (1) fully pin-mux pins
127c9ccf3a3SEmmanuel Vadot                                    (2) IO processor pins
128c9ccf3a3SEmmanuel Vadot                                    (3) digital GPIO pins
129c9ccf3a3SEmmanuel Vadot          Bit 15~8:  defines pins of peripherals (which are defined in
130c9ccf3a3SEmmanuel Vadot                     'include/dt-binging/pinctrl/sppctl.h').
131c9ccf3a3SEmmanuel Vadot          Bit 7~0:   defines types or initial-state of digital GPIO pins.
132c9ccf3a3SEmmanuel Vadot
133c9ccf3a3SEmmanuel Vadot          Please use macro SPPCTL_IOPAD to define the integers for pins.
134c9ccf3a3SEmmanuel Vadot
135c9ccf3a3SEmmanuel Vadot        $ref: /schemas/types.yaml#/definitions/uint32-array
136c9ccf3a3SEmmanuel Vadot
137c9ccf3a3SEmmanuel Vadot      function:
138c9ccf3a3SEmmanuel Vadot        description: |
139c9ccf3a3SEmmanuel Vadot          Define pin-function which is used by pinctrl node's client device.
140c9ccf3a3SEmmanuel Vadot          The name should be one of string in the following enumeration.
141*fac71e4eSEmmanuel Vadot        $ref: /schemas/types.yaml#/definitions/string
142c9ccf3a3SEmmanuel Vadot        enum: [ SPI_FLASH, SPI_FLASH_4BIT, SPI_NAND, CARD0_EMMC, SD_CARD,
143c9ccf3a3SEmmanuel Vadot                UA0, FPGA_IFX, HDMI_TX, LCDIF, USB0_OTG, USB1_OTG ]
144c9ccf3a3SEmmanuel Vadot
145c9ccf3a3SEmmanuel Vadot      groups:
146c9ccf3a3SEmmanuel Vadot        description: |
147c9ccf3a3SEmmanuel Vadot          Define pin-group in a specified pin-function.
148c9ccf3a3SEmmanuel Vadot          The name should be one of string in the following enumeration.
149*fac71e4eSEmmanuel Vadot        $ref: /schemas/types.yaml#/definitions/string
150c9ccf3a3SEmmanuel Vadot        enum: [ SPI_FLASH1, SPI_FLASH2, SPI_FLASH_4BIT1, SPI_FLASH_4BIT2,
151c9ccf3a3SEmmanuel Vadot                SPI_NAND, CARD0_EMMC, SD_CARD, UA0, FPGA_IFX, HDMI_TX1,
152c9ccf3a3SEmmanuel Vadot                HDMI_TX2, HDMI_TX3, LCDIF, USB0_OTG, USB1_OTG ]
153c9ccf3a3SEmmanuel Vadot
154c9ccf3a3SEmmanuel Vadot      sunplus,zerofunc:
155c9ccf3a3SEmmanuel Vadot        description: |
156c9ccf3a3SEmmanuel Vadot          This is a vendor specific property. It is used to disable pins
157c9ccf3a3SEmmanuel Vadot          which are not used by pinctrl node's client device.
158c9ccf3a3SEmmanuel Vadot          Some pins may be enabled by boot-loader. We can use this
159c9ccf3a3SEmmanuel Vadot          property to disable them.
160c9ccf3a3SEmmanuel Vadot        $ref: /schemas/types.yaml#/definitions/uint32-array
161c9ccf3a3SEmmanuel Vadot
162c9ccf3a3SEmmanuel Vadot    additionalProperties: false
163c9ccf3a3SEmmanuel Vadot
164c9ccf3a3SEmmanuel Vadot    allOf:
165c9ccf3a3SEmmanuel Vadot      - if:
166c9ccf3a3SEmmanuel Vadot          properties:
167c9ccf3a3SEmmanuel Vadot            function:
168c9ccf3a3SEmmanuel Vadot              enum:
169c9ccf3a3SEmmanuel Vadot                - SPI_FLASH
170c9ccf3a3SEmmanuel Vadot        then:
171c9ccf3a3SEmmanuel Vadot          properties:
172c9ccf3a3SEmmanuel Vadot            groups:
173c9ccf3a3SEmmanuel Vadot              enum:
174c9ccf3a3SEmmanuel Vadot                - SPI_FLASH1
175c9ccf3a3SEmmanuel Vadot                - SPI_FLASH2
176c9ccf3a3SEmmanuel Vadot      - if:
177c9ccf3a3SEmmanuel Vadot          properties:
178c9ccf3a3SEmmanuel Vadot            function:
179c9ccf3a3SEmmanuel Vadot              enum:
180c9ccf3a3SEmmanuel Vadot                - SPI_FLASH_4BIT
181c9ccf3a3SEmmanuel Vadot        then:
182c9ccf3a3SEmmanuel Vadot          properties:
183c9ccf3a3SEmmanuel Vadot            groups:
184c9ccf3a3SEmmanuel Vadot              enum:
185c9ccf3a3SEmmanuel Vadot                - SPI_FLASH_4BIT1
186c9ccf3a3SEmmanuel Vadot                - SPI_FLASH_4BIT2
187c9ccf3a3SEmmanuel Vadot      - if:
188c9ccf3a3SEmmanuel Vadot          properties:
189c9ccf3a3SEmmanuel Vadot            function:
190c9ccf3a3SEmmanuel Vadot              enum:
191c9ccf3a3SEmmanuel Vadot                - SPI_NAND
192c9ccf3a3SEmmanuel Vadot        then:
193c9ccf3a3SEmmanuel Vadot          properties:
194c9ccf3a3SEmmanuel Vadot            groups:
195c9ccf3a3SEmmanuel Vadot              enum:
196c9ccf3a3SEmmanuel Vadot                - SPI_NAND
197c9ccf3a3SEmmanuel Vadot      - if:
198c9ccf3a3SEmmanuel Vadot          properties:
199c9ccf3a3SEmmanuel Vadot            function:
200c9ccf3a3SEmmanuel Vadot              enum:
201c9ccf3a3SEmmanuel Vadot                - CARD0_EMMC
202c9ccf3a3SEmmanuel Vadot        then:
203c9ccf3a3SEmmanuel Vadot          properties:
204c9ccf3a3SEmmanuel Vadot            groups:
205c9ccf3a3SEmmanuel Vadot              enum:
206c9ccf3a3SEmmanuel Vadot                - CARD0_EMMC
207c9ccf3a3SEmmanuel Vadot      - if:
208c9ccf3a3SEmmanuel Vadot          properties:
209c9ccf3a3SEmmanuel Vadot            function:
210c9ccf3a3SEmmanuel Vadot              enum:
211c9ccf3a3SEmmanuel Vadot                - SD_CARD
212c9ccf3a3SEmmanuel Vadot        then:
213c9ccf3a3SEmmanuel Vadot          properties:
214c9ccf3a3SEmmanuel Vadot            groups:
215c9ccf3a3SEmmanuel Vadot              enum:
216c9ccf3a3SEmmanuel Vadot                - SD_CARD
217c9ccf3a3SEmmanuel Vadot      - if:
218c9ccf3a3SEmmanuel Vadot          properties:
219c9ccf3a3SEmmanuel Vadot            function:
220c9ccf3a3SEmmanuel Vadot              enum:
221c9ccf3a3SEmmanuel Vadot                - UA0
222c9ccf3a3SEmmanuel Vadot        then:
223c9ccf3a3SEmmanuel Vadot          properties:
224c9ccf3a3SEmmanuel Vadot            groups:
225c9ccf3a3SEmmanuel Vadot              enum:
226c9ccf3a3SEmmanuel Vadot                - UA0
227c9ccf3a3SEmmanuel Vadot      - if:
228c9ccf3a3SEmmanuel Vadot          properties:
229c9ccf3a3SEmmanuel Vadot            function:
230c9ccf3a3SEmmanuel Vadot              enum:
231c9ccf3a3SEmmanuel Vadot                - FPGA_IFX
232c9ccf3a3SEmmanuel Vadot        then:
233c9ccf3a3SEmmanuel Vadot          properties:
234c9ccf3a3SEmmanuel Vadot            groups:
235c9ccf3a3SEmmanuel Vadot              enum:
236c9ccf3a3SEmmanuel Vadot                - FPGA_IFX
237c9ccf3a3SEmmanuel Vadot      - if:
238c9ccf3a3SEmmanuel Vadot          properties:
239c9ccf3a3SEmmanuel Vadot            function:
240c9ccf3a3SEmmanuel Vadot              enum:
241c9ccf3a3SEmmanuel Vadot                - HDMI_TX
242c9ccf3a3SEmmanuel Vadot        then:
243c9ccf3a3SEmmanuel Vadot          properties:
244c9ccf3a3SEmmanuel Vadot            groups:
245c9ccf3a3SEmmanuel Vadot              enum:
246c9ccf3a3SEmmanuel Vadot                - HDMI_TX1
247c9ccf3a3SEmmanuel Vadot                - HDMI_TX2
248c9ccf3a3SEmmanuel Vadot                - HDMI_TX3
249c9ccf3a3SEmmanuel Vadot      - if:
250c9ccf3a3SEmmanuel Vadot          properties:
251c9ccf3a3SEmmanuel Vadot            function:
252c9ccf3a3SEmmanuel Vadot              enum:
253c9ccf3a3SEmmanuel Vadot                - LCDIF
254c9ccf3a3SEmmanuel Vadot        then:
255c9ccf3a3SEmmanuel Vadot          properties:
256c9ccf3a3SEmmanuel Vadot            groups:
257c9ccf3a3SEmmanuel Vadot              enum:
258c9ccf3a3SEmmanuel Vadot                - LCDIF
259c9ccf3a3SEmmanuel Vadot      - if:
260c9ccf3a3SEmmanuel Vadot          properties:
261c9ccf3a3SEmmanuel Vadot            function:
262c9ccf3a3SEmmanuel Vadot              enum:
263c9ccf3a3SEmmanuel Vadot                - USB0_OTG
264c9ccf3a3SEmmanuel Vadot        then:
265c9ccf3a3SEmmanuel Vadot          properties:
266c9ccf3a3SEmmanuel Vadot            groups:
267c9ccf3a3SEmmanuel Vadot              enum:
268c9ccf3a3SEmmanuel Vadot                - USB0_OTG
269c9ccf3a3SEmmanuel Vadot      - if:
270c9ccf3a3SEmmanuel Vadot          properties:
271c9ccf3a3SEmmanuel Vadot            function:
272c9ccf3a3SEmmanuel Vadot              enum:
273c9ccf3a3SEmmanuel Vadot                - USB1_OTG
274c9ccf3a3SEmmanuel Vadot        then:
275c9ccf3a3SEmmanuel Vadot          properties:
276c9ccf3a3SEmmanuel Vadot            groups:
277c9ccf3a3SEmmanuel Vadot              enum:
278c9ccf3a3SEmmanuel Vadot                - USB1_OTG
279c9ccf3a3SEmmanuel Vadot
280c9ccf3a3SEmmanuel Vadotrequired:
281c9ccf3a3SEmmanuel Vadot  - compatible
282c9ccf3a3SEmmanuel Vadot  - reg
283c9ccf3a3SEmmanuel Vadot  - reg-names
284c9ccf3a3SEmmanuel Vadot  - "#gpio-cells"
285c9ccf3a3SEmmanuel Vadot  - gpio-controller
286c9ccf3a3SEmmanuel Vadot  - clocks
287c9ccf3a3SEmmanuel Vadot  - resets
288c9ccf3a3SEmmanuel Vadot
289c9ccf3a3SEmmanuel VadotadditionalProperties: false
290c9ccf3a3SEmmanuel Vadot
291b97ee269SEmmanuel VadotallOf:
292*fac71e4eSEmmanuel Vadot  - $ref: pinctrl.yaml#
293b97ee269SEmmanuel Vadot
294c9ccf3a3SEmmanuel Vadotexamples:
295c9ccf3a3SEmmanuel Vadot  - |
296c9ccf3a3SEmmanuel Vadot    #include <dt-bindings/pinctrl/sppctl-sp7021.h>
297c9ccf3a3SEmmanuel Vadot
298b97ee269SEmmanuel Vadot    pinctrl@9c000100 {
299c9ccf3a3SEmmanuel Vadot        compatible = "sunplus,sp7021-pctl";
300c9ccf3a3SEmmanuel Vadot        reg = <0x9c000100 0x100>, <0x9c000300 0x100>,
301c9ccf3a3SEmmanuel Vadot              <0x9c0032e4 0x1c>, <0x9c000080 0x20>;
302c9ccf3a3SEmmanuel Vadot        reg-names = "moon2", "gpioxt", "first", "moon1";
303c9ccf3a3SEmmanuel Vadot        gpio-controller;
304c9ccf3a3SEmmanuel Vadot        #gpio-cells = <2>;
305c9ccf3a3SEmmanuel Vadot        clocks = <&clkc 0x83>;
306c9ccf3a3SEmmanuel Vadot        resets = <&rstc 0x73>;
307c9ccf3a3SEmmanuel Vadot
308c9ccf3a3SEmmanuel Vadot        uart0-pins {
309c9ccf3a3SEmmanuel Vadot            function = "UA0";
310c9ccf3a3SEmmanuel Vadot            groups = "UA0";
311c9ccf3a3SEmmanuel Vadot        };
312c9ccf3a3SEmmanuel Vadot
313c9ccf3a3SEmmanuel Vadot        spinand0-pins {
314c9ccf3a3SEmmanuel Vadot            function = "SPI_NAND";
315c9ccf3a3SEmmanuel Vadot            groups = "SPI_NAND";
316c9ccf3a3SEmmanuel Vadot        };
317c9ccf3a3SEmmanuel Vadot
318c9ccf3a3SEmmanuel Vadot        uart1-pins {
319c9ccf3a3SEmmanuel Vadot            sunplus,pins = <
320c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(11, SPPCTL_PCTL_G_PMUX, MUXF_UA1_TX, 0)
321c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(10, SPPCTL_PCTL_G_PMUX, MUXF_UA1_RX, 0)
322c9ccf3a3SEmmanuel Vadot            >;
323c9ccf3a3SEmmanuel Vadot        };
324c9ccf3a3SEmmanuel Vadot
325c9ccf3a3SEmmanuel Vadot        uart2-pins {
326c9ccf3a3SEmmanuel Vadot            sunplus,pins = <
327c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(20, SPPCTL_PCTL_G_PMUX, MUXF_UA1_TX, 0)
328c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(21, SPPCTL_PCTL_G_PMUX, MUXF_UA1_RX, 0)
329c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(22, SPPCTL_PCTL_G_PMUX, MUXF_UA1_RTS, 0)
330c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(23, SPPCTL_PCTL_G_PMUX, MUXF_UA1_CTS, 0)
331c9ccf3a3SEmmanuel Vadot            >;
332c9ccf3a3SEmmanuel Vadot        };
333c9ccf3a3SEmmanuel Vadot
334c9ccf3a3SEmmanuel Vadot        emmc-pins {
335c9ccf3a3SEmmanuel Vadot            function = "CARD0_EMMC";
336c9ccf3a3SEmmanuel Vadot            groups = "CARD0_EMMC";
337c9ccf3a3SEmmanuel Vadot        };
338c9ccf3a3SEmmanuel Vadot
339c9ccf3a3SEmmanuel Vadot        sdcard-pins {
340c9ccf3a3SEmmanuel Vadot            function = "SD_CARD";
341c9ccf3a3SEmmanuel Vadot            groups = "SD_CARD";
342c9ccf3a3SEmmanuel Vadot            sunplus,pins = < SPPCTL_IOPAD(91, SPPCTL_PCTL_G_GPIO, 0, 0) >;
343c9ccf3a3SEmmanuel Vadot        };
344c9ccf3a3SEmmanuel Vadot
345c9ccf3a3SEmmanuel Vadot        hdmi_A_tx1-pins {
346c9ccf3a3SEmmanuel Vadot            function = "HDMI_TX";
347c9ccf3a3SEmmanuel Vadot            groups = "HDMI_TX1";
348c9ccf3a3SEmmanuel Vadot        };
349c9ccf3a3SEmmanuel Vadot        hdmi_A_tx2-pins {
350c9ccf3a3SEmmanuel Vadot            function = "HDMI_TX";
351c9ccf3a3SEmmanuel Vadot            groups = "HDMI_TX2";
352c9ccf3a3SEmmanuel Vadot        };
353c9ccf3a3SEmmanuel Vadot        hdmi_A_tx3-pins {
354c9ccf3a3SEmmanuel Vadot            function = "HDMI_TX";
355c9ccf3a3SEmmanuel Vadot            groups = "HDMI_TX3";
356c9ccf3a3SEmmanuel Vadot        };
357c9ccf3a3SEmmanuel Vadot
358c9ccf3a3SEmmanuel Vadot        ethernet-pins {
359c9ccf3a3SEmmanuel Vadot            sunplus,pins = <
360c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(49,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_CLK_OUT,0)
361c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(44,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_MAC_SMI_MDC,0)
362c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(43,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_MAC_SMI_MDIO,0)
363c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(52,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_P0_MAC_RMII_TXEN,0)
364c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(50,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_P0_MAC_RMII_TXD0,0)
365c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(51,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_P0_MAC_RMII_TXD1,0)
366c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(46,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_P0_MAC_RMII_CRSDV,0)
367c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(47,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_P0_MAC_RMII_RXD0,0)
368c9ccf3a3SEmmanuel Vadot                SPPCTL_IOPAD(48,SPPCTL_PCTL_G_PMUX,MUXF_L2SW_P0_MAC_RMII_RXD1,0)
369c9ccf3a3SEmmanuel Vadot            >;
370c9ccf3a3SEmmanuel Vadot            sunplus,zerofunc = <
371c9ccf3a3SEmmanuel Vadot                MUXF_L2SW_LED_FLASH0
372c9ccf3a3SEmmanuel Vadot                MUXF_L2SW_LED_ON0
373c9ccf3a3SEmmanuel Vadot                MUXF_L2SW_P0_MAC_RMII_RXER
374c9ccf3a3SEmmanuel Vadot            >;
375c9ccf3a3SEmmanuel Vadot        };
376c9ccf3a3SEmmanuel Vadot    };
377c9ccf3a3SEmmanuel Vadot...
378