xref: /freebsd/sys/contrib/device-tree/include/dt-bindings/pinctrl/rzg2l-pinctrl.h (revision 3a3af6b2a160bea72509a9d5ef84e25906b0478a)
1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
2 /*
3  * This header provides constants for Renesas RZ/G2L family pinctrl bindings.
4  *
5  * Copyright (C) 2021 Renesas Electronics Corp.
6  *
7  */
8 
9 #ifndef __DT_BINDINGS_RZG2L_PINCTRL_H
10 #define __DT_BINDINGS_RZG2L_PINCTRL_H
11 
12 #define RZG2L_PINS_PER_PORT	8
13 
14 /*
15  * Create the pin index from its bank and position numbers and store in
16  * the upper 16 bits the alternate function identifier
17  */
18 #define RZG2L_PORT_PINMUX(b, p, f)	((b) * RZG2L_PINS_PER_PORT + (p) | ((f) << 16))
19 
20 /* Convert a port and pin label to its global pin index */
21  #define RZG2L_GPIO(port, pin)	((port) * RZG2L_PINS_PER_PORT + (pin))
22 
23 #endif /* __DT_BINDINGS_RZG2L_PINCTRL_H */
24