xref: /freebsd/sys/arm/freescale/vybrid/vf_port.h (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
10c94beceSRuslan Bukin /*-
2*4d846d26SWarner Losh  * SPDX-License-Identifier: BSD-2-Clause
3af3dc4a7SPedro F. Giffuni  *
40c94beceSRuslan Bukin  * Copyright (c) 2014 Ruslan Bukin <br@bsdpad.com>
50c94beceSRuslan Bukin  * All rights reserved.
60c94beceSRuslan Bukin  *
70c94beceSRuslan Bukin  * Redistribution and use in source and binary forms, with or without
80c94beceSRuslan Bukin  * modification, are permitted provided that the following conditions
90c94beceSRuslan Bukin  * are met:
100c94beceSRuslan Bukin  * 1. Redistributions of source code must retain the above copyright
110c94beceSRuslan Bukin  *    notice, this list of conditions and the following disclaimer.
120c94beceSRuslan Bukin  * 2. Redistributions in binary form must reproduce the above copyright
130c94beceSRuslan Bukin  *    notice, this list of conditions and the following disclaimer in the
140c94beceSRuslan Bukin  *    documentation and/or other materials provided with the distribution.
150c94beceSRuslan Bukin  *
160c94beceSRuslan Bukin  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
170c94beceSRuslan Bukin  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
180c94beceSRuslan Bukin  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
190c94beceSRuslan Bukin  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
200c94beceSRuslan Bukin  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
210c94beceSRuslan Bukin  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
220c94beceSRuslan Bukin  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
230c94beceSRuslan Bukin  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
240c94beceSRuslan Bukin  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
250c94beceSRuslan Bukin  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
260c94beceSRuslan Bukin  * SUCH DAMAGE.
270c94beceSRuslan Bukin  */
280c94beceSRuslan Bukin 
290c94beceSRuslan Bukin #define	NPORTS		5
300c94beceSRuslan Bukin #define	NGPIO		(NPORTS * 32)
310c94beceSRuslan Bukin 
320c94beceSRuslan Bukin enum ev_type {
330c94beceSRuslan Bukin 	DMA_RISING_EDGE,
340c94beceSRuslan Bukin 	DMA_FALLING_EDGE,
350c94beceSRuslan Bukin 	DMA_EITHER_EDGE,
360c94beceSRuslan Bukin 	INT_LOGIC_ZERO,
370c94beceSRuslan Bukin 	INT_RISING_EDGE,
380c94beceSRuslan Bukin 	INT_FALLING_EDGE,
390c94beceSRuslan Bukin 	INT_EITHER_EDGE,
400c94beceSRuslan Bukin 	INT_LOGIC_ONE,
410c94beceSRuslan Bukin };
420c94beceSRuslan Bukin 
430c94beceSRuslan Bukin int port_setup(int, enum ev_type, void (*ih)(void *), void *ih_user);
44