mvsoc_intr.h revision 1.3
11.3Skiyohara/*	$NetBSD: mvsoc_intr.h,v 1.3 2013/11/20 12:16:47 kiyohara Exp $	*/
21.1Skiyohara/*
31.1Skiyohara * Copyright (c) 2010 KIYOHARA Takashi
41.1Skiyohara * All rights reserved.
51.1Skiyohara *
61.1Skiyohara * Redistribution and use in source and binary forms, with or without
71.1Skiyohara * modification, are permitted provided that the following conditions
81.1Skiyohara * are met:
91.1Skiyohara * 1. Redistributions of source code must retain the above copyright
101.1Skiyohara *    notice, this list of conditions and the following disclaimer.
111.1Skiyohara * 2. Redistributions in binary form must reproduce the above copyright
121.1Skiyohara *    notice, this list of conditions and the following disclaimer in the
131.1Skiyohara *    documentation and/or other materials provided with the distribution.
141.1Skiyohara *
151.1Skiyohara * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
161.1Skiyohara * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
171.1Skiyohara * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
181.1Skiyohara * DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
191.1Skiyohara * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
201.1Skiyohara * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
211.1Skiyohara * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
221.1Skiyohara * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
231.1Skiyohara * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
241.1Skiyohara * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
251.1Skiyohara * POSSIBILITY OF SUCH DAMAGE.
261.1Skiyohara */
271.1Skiyohara
281.1Skiyohara#ifndef _MVSOC_INTR_H_
291.1Skiyohara#define _MVSOC_INTR_H_
301.1Skiyohara
311.3Skiyohara#include "opt_mvsoc.h"
321.3Skiyohara
331.3Skiyohara#if defined(ARMADAXP)
341.3Skiyohara#define __HAVE_PIC_SET_PRIORITY
351.3Skiyohara#endif
361.3Skiyohara
371.1Skiyohara#define ARM_IRQ_HANDLER	_C_LABEL(mvsoc_irq_handler)
381.1Skiyohara
391.1Skiyohara#ifndef _LOCORE
401.2Smattextern int (*find_pending_irqs)(void);
411.1Skiyohara
421.1Skiyoharavoid mvsoc_irq_handler(void *);
431.1Skiyohara
441.1Skiyohara#include <arm/pic/picvar.h>
451.1Skiyohara
461.1Skiyoharastatic __inline void *
471.1Skiyoharamarvell_intr_establish(int irq, int ipl, int (*func)(void *), void *arg)
481.1Skiyohara{
491.1Skiyohara
501.1Skiyohara	return intr_establish(irq, ipl, IST_LEVEL_HIGH, func, arg);
511.1Skiyohara}
521.1Skiyohara
531.1Skiyohara#endif	/* _LOCORE */
541.1Skiyohara
551.1Skiyohara#endif	/* _MVSOC_INTR_H_ */
56