1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * Copyright (c) 2009 Wind River Systems, Inc.
4 * Tom Rix <Tom.Rix@windriver.com>
5 *
6 * This work is derived from the linux 2.6.27 kernel source
7 * To fetch, use the kernel repository
8 * git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
9 * Use the v2.6.27 tag.
10 *
11 * Below is the original's header including its copyright
12 *
13 *  linux/arch/arm/plat-omap/gpio.c
14 *
15 * Support functions for OMAP GPIO
16 *
17 * Copyright (C) 2003-2005 Nokia Corporation
18 * Written by Juha Yrj��l�� <juha.yrjola@nokia.com>
19 */
20#ifndef _GPIO_H
21#define _GPIO_H
22
23#include <asm/arch/cpu.h>
24
25#if CONFIG_IS_ENABLED(DM_GPIO)
26
27/* Information about a GPIO bank */
28struct omap_gpio_plat {
29	int bank_index;
30	ulong base;	/* address of registers in physical memory */
31	const char *port_name;
32};
33
34#else
35
36struct gpio_bank {
37	void *base;
38};
39
40extern const struct gpio_bank *const omap_gpio_bank;
41
42/**
43 * Check if gpio is valid.
44 *
45 * @param gpio	GPIO number
46 * Return: 1 if ok, 0 on error
47 */
48int gpio_is_valid(int gpio);
49#endif
50
51#endif /* _GPIO_H_ */
52