[BACK]Return to evtchn.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / arch / xen / include

Annotation of src/sys/arch/xen/include/evtchn.h, Revision 1.20.8.1

1.20.8.1! msaitoh     1: /*     $NetBSD: evtchn.h,v 1.20 2011/09/20 00:12:23 jym Exp $  */
1.2       bouyer      2:
                      3: /*
                      4:  *
                      5:  * Copyright (c) 2004 Christian Limpach.
                      6:  * All rights reserved.
                      7:  *
                      8:  * Redistribution and use in source and binary forms, with or without
                      9:  * modification, are permitted provided that the following conditions
                     10:  * are met:
                     11:  * 1. Redistributions of source code must retain the above copyright
                     12:  *    notice, this list of conditions and the following disclaimer.
                     13:  * 2. Redistributions in binary form must reproduce the above copyright
                     14:  *    notice, this list of conditions and the following disclaimer in the
                     15:  *    documentation and/or other materials provided with the distribution.
                     16:  *
                     17:  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
                     18:  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
                     19:  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
                     20:  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
                     21:  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
                     22:  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
                     23:  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
                     24:  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
                     25:  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
                     26:  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                     27:  */
                     28:
                     29: #ifndef _XEN_EVENTS_H_
                     30: #define _XEN_EVENTS_H_
                     31:
1.10      bouyer     32: #define NR_PIRQS       256
1.2       bouyer     33:
1.5       bouyer     34: extern struct evtsource *evtsource[];
1.2       bouyer     35:
                     36: void events_default_setup(void);
1.17      jym        37: void events_init(void);
1.20      jym        38: bool events_suspend(void);
                     39: bool events_resume(void);
                     40:
1.9       yamt       41: unsigned int evtchn_do_event(int, struct intrframe *);
1.13      yamt       42: void call_evtchn_do_event(int, struct intrframe *);
1.16      bouyer     43: void call_xenevt_event(int);
1.6       bouyer     44: int event_set_handler(int, int (*func)(void *), void *, int, const char *);
1.5       bouyer     45: int event_remove_handler(int, int (*func)(void *), void *);
1.2       bouyer     46:
1.19      cherry     47: struct cpu_info;
1.15      bouyer     48: struct intrhand;
1.19      cherry     49: void event_set_iplhandler(struct cpu_info *, struct intrhand *, int);
1.15      bouyer     50:
1.14      bouyer     51: extern int debug_port;
                     52: extern int xen_debug_handler(void *);
                     53:
1.5       bouyer     54: int bind_virq_to_evtch(int);
                     55: int bind_pirq_to_evtch(int);
1.17      jym        56: int unbind_pirq_from_evtch(int);
                     57: int unbind_virq_from_evtch(int);
1.2       bouyer     58:
1.19      cherry     59: evtchn_port_t bind_vcpu_to_evtch(cpuid_t);
                     60:
1.2       bouyer     61: struct pintrhand {
                     62:        int pirq;
1.5       bouyer     63:        int evtch;
1.2       bouyer     64:        int (*func)(void *);
                     65:        void *arg;
                     66: };
                     67:
1.12      bouyer     68: struct pintrhand *pirq_establish(int, int, int (*)(void *), void *, int,
                     69:      const char *);
1.20.8.1! msaitoh    70: void pirq_disestablish(struct pintrhand *);
1.2       bouyer     71:
                     72: #endif /*  _XEN_EVENTS_H_ */

CVSweb <webmaster@jp.NetBSD.org>