Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

m68k/amiga/cia.c File Reference

#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/sched.h>
#include <linux/errno.h>
#include <linux/kernel_stat.h>
#include <linux/init.h>
#include <asm/irq.h>
#include <asm/amigahw.h>
#include <asm/amigaints.h>

Include dependency graph for m68k/amiga/cia.c:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

unsigned char cia_set_irq (struct ciabase *base, unsigned char mask)
unsigned char cia_able_irq (struct ciabase *base, unsigned char mask)
int cia_request_irq (struct ciabase *base, unsigned int irq, void(*handler)(int, void *, struct pt_regs *), unsigned long flags, const char *devname, void *dev_id)
void cia_free_irq (struct ciabase *base, unsigned int irq, void *dev_id)
static void cia_handler (int irq, void *dev_id, struct pt_regs *fp)
 __initfunc (void cia_init_IRQ(struct ciabase *base))
int cia_get_irq_list (struct ciabase *base, char *buf)

Variables

ciabase ciaa_base
ciabase ciab_base


Function Documentation

__initfunc void   cia_init_IRQ(struct ciabase *base)  ) 
 

Definition at line 156 of file m68k/amiga/cia.c.

References cia_able_irq(), cia_handler(), CIA_ICR_ALL, CIA_IRQS, cia_set_irq(), custom, i, IF_SETCLR, IRQ_FLG_LOCK, IRQ_FLG_STD, NULL, and request_irq().

Here is the call graph for this function:

unsigned char cia_able_irq struct ciabase base,
unsigned char  mask
 

Definition at line 67 of file m68k/amiga/cia.c.

References CIA_ICR_ALL, CIA_ICR_SETCLR, CIA_IRQS, custom, i, IF_SETCLR, tmp, and u_char.

Referenced by __initfunc(), amiga_disable_irq(), amiga_enable_irq(), cia_free_irq(), and cia_request_irq().

void cia_free_irq struct ciabase base,
unsigned int  irq,
void *  dev_id
 

Definition at line 123 of file m68k/amiga/cia.c.

References cia_able_irq(), ciabase::cia_irq, irq_handler::dev_id, irq_handler::devname, irq_handler::flags, irq_handler::handler, IRQ_FLG_STD, ciabase::irq_list, NULL, and printk.

Here is the call graph for this function:

int cia_get_irq_list struct ciabase base,
char *  buf
 

Definition at line 176 of file m68k/amiga/cia.c.

References ciabase::cia_irq, CIA_IRQS, irq_handler::devname, irq_handler::flags, i, IRQ_FLG_LOCK, IRQ_FLG_STD, ciabase::irq_list, kernel_stat::irqs, j, kstat, len, sprintf(), and SYS_IRQS.

Here is the call graph for this function:

static void cia_handler int  irq,
void *  dev_id,
struct pt_regs fp
[static]
 

Definition at line 136 of file m68k/amiga/cia.c.

References amiga_do_irq_list(), CIA_ICR_ALL, ciabase::cia_irq, CIA_IRQS, cia_set_irq(), custom, irq_handler::dev_id, irq_handler::handler, i, ciabase::int_mask, ints, ciabase::irq_list, kernel_stat::irqs, kstat, ciabase::server, ciabase::server_irq, and SYS_IRQS.

Referenced by __initfunc().

Here is the call graph for this function:

int cia_request_irq struct ciabase base,
unsigned int  irq,
void(*)(int, void *, struct pt_regs *)  handler,
unsigned long  flags,
const char *  devname,
void *  dev_id
 

Definition at line 91 of file m68k/amiga/cia.c.

References cia_able_irq(), CIA_ICR_SETCLR, cia_set_irq(), EBUSY, IRQ_FLG_LOCK, IRQ_FLG_REPLACE, IRQ_FLG_STD, mask, printk, and u_char.

Here is the call graph for this function:

unsigned char cia_set_irq struct ciabase base,
unsigned char  mask
 

Definition at line 48 of file m68k/amiga/cia.c.

References ciabase::cia, CIA_ICR_SETCLR, custom, CIA::icr, ciabase::icr_data, ciabase::icr_mask, IF_SETCLR, ciabase::int_mask, and u_char.

Referenced by __initfunc(), amiga_enable_irq(), amiga_gettimeoffset(), cia_handler(), and cia_request_irq().


Variable Documentation

struct ciabase ciaa_base
 

Referenced by __initfunc(), amiga_disable_irq(), amiga_enable_irq(), amiga_free_irq(), amiga_get_irq_list(), and amiga_request_irq().

struct ciabase ciab_base
 

Referenced by __initfunc(), amiga_disable_irq(), amiga_enable_irq(), amiga_free_irq(), amiga_get_irq_list(), amiga_gettimeoffset(), and amiga_request_irq().