!C99Shell v. 1.0 pre-release build #13!

Software: Apache/2.0.54 (Unix) mod_perl/1.99_09 Perl/v5.8.0 mod_ssl/2.0.54 OpenSSL/0.9.7l DAV/2 FrontPage/5.0.2.2635 PHP/4.4.0 mod_gzip/2.0.26.1a 

uname -a: Linux snow.he.net 4.4.276-v2-mono-1 #1 SMP Wed Jul 21 11:21:17 PDT 2021 i686 

uid=99(nobody) gid=98(nobody) groups=98(nobody) 

Safe-mode: OFF (not secure)

/usr/src/linux-2.4.18-xfs-1.1/include/asm-sh/   drwxr-xr-x
Free 318.35 GB of 458.09 GB (69.5%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     irq.h (8.16 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#ifndef __ASM_SH_IRQ_H
#define __ASM_SH_IRQ_H

/*
 *
 * linux/include/asm-sh/irq.h
 *
 * Copyright (C) 1999  Niibe Yutaka & Takeshi Yaegashi
 * Copyright (C) 2000  Kazumoto Kojima
 *
 */

#include <linux/config.h>
#include <asm/machvec.h>
#include <asm/ptrace.h>        /* for pt_regs */

#if defined(__sh3__)
#define INTC_IPRA      0xfffffee2UL
#define INTC_IPRB      0xfffffee4UL
#elif defined(__SH4__)
#define INTC_IPRA    0xffd00004UL
#define INTC_IPRB    0xffd00008UL
#define INTC_IPRC    0xffd0000cUL
#endif

#define TIMER_IRQ    16
#define TIMER_IPR_ADDR    INTC_IPRA
#define TIMER_IPR_POS     3
#define TIMER_PRIORITY     2

#define RTC_IRQ        22
#define RTC_IPR_ADDR    INTC_IPRA
#define RTC_IPR_POS     0
#define RTC_PRIORITY    TIMER_PRIORITY

#if defined(__sh3__)
#define DMTE0_IRQ    48
#define DMTE1_IRQ    49
#define DMTE2_IRQ    50
#define DMTE3_IRQ    51
#define DMA_IPR_ADDR    INTC_IPRE
#define DMA_IPR_POS    3
#define DMA_PRIORITY    7
#elif defined(__SH4__)
#define DMTE0_IRQ    34
#define DMTE1_IRQ    35
#define DMTE2_IRQ    36
#define DMTE3_IRQ    37
#define DMAE_IRQ    38
#define DMA_IPR_ADDR    INTC_IPRC
#define DMA_IPR_POS    2
#define DMA_PRIORITY    7
#endif

#if defined (CONFIG_CPU_SUBTYPE_SH7707) || defined (CONFIG_CPU_SUBTYPE_SH7708) || \
    defined (CONFIG_CPU_SUBTYPE_SH7709) || defined (CONFIG_CPU_SUBTYPE_SH7750) || \
    defined (CONFIG_CPU_SUBTYPE_SH7751)
#define SCI_ERI_IRQ    23
#define SCI_RXI_IRQ    24
#define SCI_TXI_IRQ    25
#define SCI_IPR_ADDR    INTC_IPRB
#define SCI_IPR_POS    1
#define SCI_PRIORITY    3
#endif

#if defined(CONFIG_CPU_SUBTYPE_SH7707) || defined(CONFIG_CPU_SUBTYPE_SH7709)
#define SCIF_ERI_IRQ    56
#define SCIF_RXI_IRQ    57
#define SCIF_BRI_IRQ    58
#define SCIF_TXI_IRQ    59
#define SCIF_IPR_ADDR    INTC_IPRE
#define SCIF_IPR_POS    1
#define SCIF_PRIORITY    3

#define IRDA_ERI_IRQ    52
#define IRDA_RXI_IRQ    53
#define IRDA_BRI_IRQ    54
#define IRDA_TXI_IRQ    55
#define IRDA_IPR_ADDR    INTC_IPRE
#define IRDA_IPR_POS    2
#define IRDA_PRIORITY    3
#elif defined(CONFIG_CPU_SUBTYPE_SH7750) || defined(CONFIG_CPU_SUBTYPE_SH7751) || \
      defined(CONFIG_CPU_SUBTYPE_ST40STB1)
#define SCIF_ERI_IRQ    40
#define SCIF_RXI_IRQ    41
#define SCIF_BRI_IRQ    42
#define SCIF_TXI_IRQ    43
#define SCIF_IPR_ADDR    INTC_IPRC
#define SCIF_IPR_POS    1
#define SCIF_PRIORITY    3
#if defined(CONFIG_CPU_SUBTYPE_ST40STB1)
#define SCIF1_ERI_IRQ    23
#define SCIF1_RXI_IRQ    24
#define SCIF1_BRI_IRQ    25
#define SCIF1_TXI_IRQ    26
#define SCIF1_IPR_ADDR    INTC_IPRB
#define SCIF1_IPR_POS    1
#define SCIF1_PRIORITY    3
#endif
#endif

/* NR_IRQS is made from three components:
 *   1. ONCHIP_NR_IRQS - number of IRLS + on-chip peripherial modules
 *   2. PINT_NR_IRQS   - number of PINT interrupts
 *   3. OFFCHIP_NR_IRQS - numbe of IRQs from off-chip peripherial modules
 */

/* 1. ONCHIP_NR_IRQS */
#ifdef CONFIG_SH_GENERIC
# define ONCHIP_NR_IRQS 144
#else
# if defined(CONFIG_CPU_SUBTYPE_SH7707)
#  define ONCHIP_NR_IRQS 64
#  define PINT_NR_IRQS   16
# elif defined(CONFIG_CPU_SUBTYPE_SH7708)
#  define ONCHIP_NR_IRQS 32
# elif defined(CONFIG_CPU_SUBTYPE_SH7709)
#  define ONCHIP_NR_IRQS 64    // Actually 61
#  define PINT_NR_IRQS   16
# elif defined(CONFIG_CPU_SUBTYPE_SH7750)
#  define ONCHIP_NR_IRQS 48    // Actually 44
# elif defined(CONFIG_CPU_SUBTYPE_SH7751)
#  define ONCHIP_NR_IRQS 72
# elif defined(CONFIG_CPU_SUBTYPE_ST40STB1)
#  define ONCHIP_NR_IRQS 144
# endif
#endif

/* 2. PINT_NR_IRQS */
#ifdef CONFIG_SH_GENERIC
# define PINT_NR_IRQS 16
#else
# ifndef PINT_NR_IRQS
#  define PINT_NR_IRQS 0
# endif
#endif

#if PINT_NR_IRQS > 0
# define PINT_IRQ_BASE  ONCHIP_NR_IRQS
#endif

/* 3. OFFCHIP_NR_IRQS */
#ifdef CONFIG_SH_GENERIC
# define OFFCHIP_NR_IRQS 16
#else
# if defined(CONFIG_HD64461)
#  define OFFCHIP_NR_IRQS 16
# elif defined (CONFIG_SH_BIGSUR) /* must be before CONFIG_HD64465 */
#  define OFFCHIP_NR_IRQS 48
# elif defined(CONFIG_HD64465)
#  define OFFCHIP_NR_IRQS 16
# elif defined (CONFIG_SH_EC3104)
#  define OFFCHIP_NR_IRQS 16
# elif defined (CONFIG_SH_DREAMCAST)
#  define OFFCHIP_NR_IRQS 96
# else
#  define OFFCHIP_NR_IRQS 0
# endif
#endif

#if OFFCHIP_NR_IRQS > 0
# define OFFCHIP_IRQ_BASE (ONCHIP_NR_IRQS + PINT_NR_IRQS)
#endif

/* NR_IRQS. 1+2+3 */
#define NR_IRQS (ONCHIP_NR_IRQS + PINT_NR_IRQS + OFFCHIP_NR_IRQS)

/* In a generic kernel, NR_IRQS is an upper bound, and we should use
 * ACTUAL_NR_IRQS (which uses the machine vector) to get the correct value.
 */
#ifdef CONFIG_SH_GENERIC
# define ACTUAL_NR_IRQS (sh_mv.mv_nr_irqs)
#else
# define ACTUAL_NR_IRQS NR_IRQS
#endif


extern void disable_irq(unsigned int);
extern void disable_irq_nosync(unsigned int);
extern void enable_irq(unsigned int);

/*
 * Simple Mask Register Support
 */
extern void make_maskreg_irq(unsigned int irq);
extern unsigned short *irq_mask_register;

/*
 * Function for "on chip support modules".
 */
extern void make_ipr_irq(unsigned int irq, unsigned int addr,
             int pos,  int priority);
extern void make_imask_irq(unsigned int irq);

#if defined(CONFIG_CPU_SUBTYPE_SH7707) || defined(CONFIG_CPU_SUBTYPE_SH7709)
#define INTC_IRR0    0xa4000004UL
#define INTC_IRR1    0xa4000006UL
#define INTC_IRR2    0xa4000008UL

#define INTC_ICR0      0xfffffee0UL
#define INTC_ICR1      0xa4000010UL
#define INTC_ICR2      0xa4000012UL
#define INTC_INTER     0xa4000014UL

#define INTC_IPRC      0xa4000016UL
#define INTC_IPRD      0xa4000018UL
#define INTC_IPRE      0xa400001aUL
#if defined(CONFIG_CPU_SUBTYPE_SH7707)
#define INTC_IPRF    0xa400001cUL
#endif

#define PORT_PACR    0xa4000100UL
#define PORT_PBCR    0xa4000102UL
#define PORT_PCCR    0xa4000104UL
#define PORT_PFCR    0xa400010aUL
#define PORT_PADR      0xa4000120UL
#define PORT_PBDR      0xa4000122UL
#define PORT_PCDR      0xa4000124UL
#define PORT_PFDR      0xa400012aUL

#define IRQ0_IRQ    32
#define IRQ1_IRQ    33
#define IRQ2_IRQ    34
#define IRQ3_IRQ    35
#define IRQ4_IRQ    36
#define IRQ5_IRQ    37

#define IRQ0_IPR_ADDR    INTC_IPRC
#define IRQ1_IPR_ADDR    INTC_IPRC
#define IRQ2_IPR_ADDR    INTC_IPRC
#define IRQ3_IPR_ADDR    INTC_IPRC
#define IRQ4_IPR_ADDR    INTC_IPRD
#define IRQ5_IPR_ADDR    INTC_IPRD

#define IRQ0_IPR_POS    0
#define IRQ1_IPR_POS    1
#define IRQ2_IPR_POS    2
#define IRQ3_IPR_POS    3
#define IRQ4_IPR_POS    0
#define IRQ5_IPR_POS    1

#define IRQ0_PRIORITY    1
#define IRQ1_PRIORITY    1
#define IRQ2_PRIORITY    1
#define IRQ3_PRIORITY    1
#define IRQ4_PRIORITY    1
#define IRQ5_PRIORITY    1

#define PINT0_IRQ    40
#define PINT8_IRQ    41

#define PINT0_IPR_ADDR    INTC_IPRD
#define PINT8_IPR_ADDR    INTC_IPRD

#define PINT0_IPR_POS    3
#define PINT8_IPR_POS    2
#define PINT0_PRIORITY    2
#define PINT8_PRIORITY    2

extern int ipr_irq_demux(int irq);
#define __irq_demux(irq) ipr_irq_demux(irq)

#else
#define __irq_demux(irq) irq
#endif /* CONFIG_CPU_SUBTYPE_SH7707 || CONFIG_CPU_SUBTYPE_SH7709 */

#if defined(CONFIG_CPU_SUBTYPE_SH7750) || defined(CONFIG_CPU_SUBTYPE_SH7751) || \
    defined(CONFIG_CPU_SUBTYPE_ST40STB1)
#define INTC_ICR        0xffd00000
#define INTC_ICR_NMIL    (1<<15)
#define INTC_ICR_MAI    (1<<14)
#define INTC_ICR_NMIB    (1<<9)
#define INTC_ICR_NMIE    (1<<8)
#define INTC_ICR_IRLM    (1<<7)
#endif

#ifdef CONFIG_CPU_SUBTYPE_ST40STB1
#define INTC2_FIRST_IRQ 64
#define NR_INTC2_IRQS 25
 
#define INTC2_BASE0 0xfe080000
#define INTC2_INTC2MODE  (INTC2_BASE0+0x80)
 
#define INTC2_INTPRI_OFFSET    0x00
#define INTC2_INTREQ_OFFSET    0x20
#define INTC2_INTMSK_OFFSET    0x40
#define INTC2_INTMSKCLR_OFFSET    0x60
 
extern void make_intc2_irq(unsigned int irq,unsigned int addr,
                           unsigned int group,int pos,int priority);
 
#endif                                                                        
       
#ifdef CONFIG_SH_GENERIC

static __inline__ int irq_demux(int irq)
{
    if (sh_mv.mv_irq_demux) {
        irq = sh_mv.mv_irq_demux(irq);
    }
    return __irq_demux(irq);
}

#elif defined(CONFIG_SH_BIGSUR)

extern int bigsur_irq_demux(int irq);
#define irq_demux(irq) bigsur_irq_demux(irq)

#elif defined(CONFIG_HD64461)

extern int hd64461_irq_demux(int irq);
#define irq_demux(irq) hd64461_irq_demux(irq)

#elif defined(CONFIG_HD64465)

extern int hd64465_irq_demux(int irq);
#define irq_demux(irq) hd64465_irq_demux(irq)

#elif defined(CONFIG_SH_EC3104)

extern int ec3104_irq_demux(int irq);
#define irq_demux ec3104_irq_demux

#elif defined(CONFIG_SH_CAT68701)

extern int cat68701_irq_demux(int irq);
#define irq_demux cat68701_irq_demux

#elif defined(CONFIG_SH_DREAMCAST)

extern int systemasic_irq_demux(int irq);
#define irq_demux systemasic_irq_demux

#else

#define irq_demux(irq) __irq_demux(irq)

#endif



#endif /* __ASM_SH_IRQ_H */

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0049 ]--