Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
leon_kernel.c File Reference
#include <linux/kernel.h>
#include <linux/errno.h>
#include <linux/mutex.h>
#include <linux/of.h>
#include <linux/of_platform.h>
#include <linux/interrupt.h>
#include <linux/of_device.h>
#include <linux/clocksource.h>
#include <linux/clockchips.h>
#include <asm/oplib.h>
#include <asm/timer.h>
#include <asm/prom.h>
#include <asm/leon.h>
#include <asm/leon_amba.h>
#include <asm/traps.h>
#include <asm/cacheflush.h>
#include <asm/smp.h>
#include <asm/setup.h>
#include "kernel.h"
#include "prom.h"
#include "irq.h"

Go to the source code of this file.


#define LEON_IMASK(cpu)   (&leon3_irqctrl_regs->mask[cpu])
#define LEON_IACK   (&leon3_irqctrl_regs->iclear)
#define LEON_DO_ACK_HW   1
#define irq_choose_cpu(affinity)   boot_cpu_id


void leon_eirq_setup (unsigned int eirq)
unsigned long leon_get_irqmask (unsigned int irq)
unsigned int leon_build_device_irq (unsigned int real_irq, irq_flow_handler_t flow_handler, const char *name, int do_ack)
void leon_update_virq_handling (unsigned int virq, irq_flow_handler_t flow_handler, const char *name, int do_ack)
void __init leon_init_timers (void)
void __init leon_trans_init (struct device_node *dp)
void __init leon_init_IRQ (void)


struct leon3_irqctrl_regs_mapleon3_irqctrl_regs
struct leon3_gptimer_regs_mapleon3_gptimer_regs
int leondebug_irq_disable
int leon_debug_irqout
unsigned long amba_system_id
unsigned long leon3_gptimer_irq
unsigned long leon3_gptimer_idx
int leon3_ticker_irq
unsigned int sparc_leon_eirq

Macro Definition Documentation

#define irq_choose_cpu (   affinity)    boot_cpu_id

Definition at line 119 of file leon_kernel.c.

#define LEON_DO_ACK_HW   1

Definition at line 45 of file leon_kernel.c.

#define LEON_IACK   (&leon3_irqctrl_regs->iclear)

Definition at line 44 of file leon_kernel.c.

#define LEON_IMASK (   cpu)    (&leon3_irqctrl_regs->mask[cpu])

Definition at line 43 of file leon_kernel.c.

Function Documentation

unsigned int leon_build_device_irq ( unsigned int  real_irq,
irq_flow_handler_t  flow_handler,
const char name,
int  do_ack 

Definition at line 210 of file leon_kernel.c.

void leon_eirq_setup ( unsigned int  eirq)

Definition at line 69 of file leon_kernel.c.

unsigned long leon_get_irqmask ( unsigned int  irq)

Definition at line 92 of file leon_kernel.c.

void __init leon_init_IRQ ( void  )

Definition at line 508 of file leon_kernel.c.

void __init leon_init_timers ( void  )

Definition at line 289 of file leon_kernel.c.

void __init leon_trans_init ( struct device_node dp)

Definition at line 477 of file leon_kernel.c.

void leon_update_virq_handling ( unsigned int  virq,
irq_flow_handler_t  flow_handler,
const char name,
int  do_ack 

Definition at line 243 of file leon_kernel.c.

Variable Documentation

unsigned long amba_system_id

Definition at line 36 of file leon_kernel.c.

unsigned long leon3_gptimer_idx

Definition at line 40 of file leon_kernel.c.

unsigned long leon3_gptimer_irq

Definition at line 39 of file leon_kernel.c.

struct leon3_gptimer_regs_map* leon3_gptimer_regs

Definition at line 31 of file leon_kernel.c.

struct leon3_irqctrl_regs_map* leon3_irqctrl_regs

Definition at line 30 of file leon_kernel.c.

int leon3_ticker_irq

Definition at line 41 of file leon_kernel.c.

int leon_debug_irqout

Definition at line 34 of file leon_kernel.c.

int leondebug_irq_disable

Definition at line 33 of file leon_kernel.c.

unsigned int sparc_leon_eirq

Definition at line 42 of file leon_kernel.c.