Home | History | Annotate | Line # | Download | only in gemini
gemini_lpchcvar.h revision 1.3.4.2
      1  1.3.4.2  mjf /*	$NetBSD: gemini_lpchcvar.h,v 1.3.4.2 2009/01/17 13:27:52 mjf Exp $	*/
      2  1.3.4.2  mjf 
      3  1.3.4.2  mjf #ifndef  _ARM_GEMINI_LPHCVAR_H
      4  1.3.4.2  mjf #define  _ARM_GEMINI_LPHCVAR_H
      5  1.3.4.2  mjf 
      6  1.3.4.2  mjf #include <sys/types.h>
      7  1.3.4.2  mjf #include <sys/device.h>
      8  1.3.4.2  mjf #include <machine/bus.h>
      9  1.3.4.2  mjf #include <arch/arm/gemini/gemini_lpcvar.h>
     10  1.3.4.2  mjf 
     11  1.3.4.2  mjf 
     12  1.3.4.2  mjf typedef struct gemini_lpchc_attach_args {
     13  1.3.4.2  mjf 	void	       *lpchc_tag;
     14  1.3.4.2  mjf         bus_space_tag_t lpchc_iot;
     15  1.3.4.2  mjf         bus_addr_t      lpchc_addr;
     16  1.3.4.2  mjf         bus_size_t      lpchc_size;
     17  1.3.4.2  mjf } gemini_lpchc_attach_args_t;
     18  1.3.4.2  mjf 
     19  1.3.4.2  mjf typedef struct gemini_lpchc_intrq {
     20  1.3.4.2  mjf 	SIMPLEQ_ENTRY(gemini_lpchc_intrq) iq_q;
     21  1.3.4.2  mjf 	int (*iq_func)(void *);
     22  1.3.4.2  mjf 	void *iq_arg;
     23  1.3.4.2  mjf 	uint32_t iq_bit;
     24  1.3.4.2  mjf 	boolean_t iq_isedge;
     25  1.3.4.2  mjf } gemini_lpchc_intrq_t;
     26  1.3.4.2  mjf 
     27  1.3.4.2  mjf typedef struct gemini_lpchc_softc {
     28  1.3.4.2  mjf 	device_t sc_dev;
     29  1.3.4.2  mjf 	bus_addr_t sc_addr;
     30  1.3.4.2  mjf 	bus_size_t sc_size;
     31  1.3.4.2  mjf 	bus_space_tag_t sc_iot;
     32  1.3.4.2  mjf 	bus_space_handle_t sc_ioh;
     33  1.3.4.2  mjf 	int sc_intr;
     34  1.3.4.2  mjf 	void *sc_ih;
     35  1.3.4.2  mjf 	SIMPLEQ_HEAD(, gemini_lpchc_intrq) sc_intrq;
     36  1.3.4.2  mjf } gemini_lpchc_softc_t;
     37  1.3.4.2  mjf 
     38  1.3.4.2  mjf extern void gemini_lpchc_init(lpcintrtag_t);
     39  1.3.4.2  mjf extern void *gemini_lpchc_intr_establish(lpcintrtag_t, uint, int, int,
     40  1.3.4.2  mjf         int (*)(void *), void *);
     41  1.3.4.2  mjf extern void gemini_lpchc_intr_disestablish(lpcintrtag_t, void *);
     42  1.3.4.2  mjf extern int  gemini_lpchc_intr(void *);
     43  1.3.4.2  mjf 
     44  1.3.4.2  mjf 
     45  1.3.4.2  mjf 
     46  1.3.4.2  mjf #endif  /* _ARM_GEMINI_LPHCVAR_H */
     47