11.1Sskrll/*	$NetBSD: rzv2m-pinctrl.h,v 1.1.1.1 2026/01/18 05:21:54 skrll Exp $	*/
21.1Sskrll
31.1Sskrll/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
41.1Sskrll/*
51.1Sskrll * This header provides constants for Renesas RZ/V2M pinctrl bindings.
61.1Sskrll *
71.1Sskrll * Copyright (C) 2022 Renesas Electronics Corp.
81.1Sskrll *
91.1Sskrll */
101.1Sskrll
111.1Sskrll#ifndef __DT_BINDINGS_RZV2M_PINCTRL_H
121.1Sskrll#define __DT_BINDINGS_RZV2M_PINCTRL_H
131.1Sskrll
141.1Sskrll#define RZV2M_PINS_PER_PORT	16
151.1Sskrll
161.1Sskrll/*
171.1Sskrll * Create the pin index from its bank and position numbers and store in
181.1Sskrll * the upper 16 bits the alternate function identifier
191.1Sskrll */
201.1Sskrll#define RZV2M_PORT_PINMUX(b, p, f)	((b) * RZV2M_PINS_PER_PORT + (p) | ((f) << 16))
211.1Sskrll
221.1Sskrll/* Convert a port and pin label to its global pin index */
231.1Sskrll#define RZV2M_GPIO(port, pin)	((port) * RZV2M_PINS_PER_PORT + (pin))
241.1Sskrll
251.1Sskrll#endif /* __DT_BINDINGS_RZV2M_PINCTRL_H */
26