~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/include/asm-sh/machvec.h

Version: ~ [ 2.4.0 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /*
  2  * include/asm-sh/machvec.h
  3  *
  4  * Copyright 2000 Stuart Menefy (stuart.menefy@st.com)
  5  *
  6  * May be copied or modified under the terms of the GNU General Public
  7  * License.  See linux/COPYING for more information.
  8  */
  9 
 10 #ifndef _ASM_SH_MACHVEC_H
 11 #define _ASM_SH_MACHVEC_H 1
 12 
 13 #include <linux/config.h>
 14 #include <linux/types.h>
 15 
 16 struct sh_machine_vector
 17 {
 18         const char *mv_name;
 19 
 20         int mv_nr_irqs;
 21 
 22         unsigned long (*mv_inb)(unsigned int);
 23         unsigned long (*mv_inw)(unsigned int);
 24         unsigned long (*mv_inl)(unsigned int);
 25         void (*mv_outb)(unsigned long, unsigned int);
 26         void (*mv_outw)(unsigned long, unsigned int);
 27         void (*mv_outl)(unsigned long, unsigned int);
 28 
 29         unsigned long (*mv_inb_p)(unsigned int);
 30         unsigned long (*mv_inw_p)(unsigned int);
 31         unsigned long (*mv_inl_p)(unsigned int);
 32         void (*mv_outb_p)(unsigned long, unsigned int);
 33         void (*mv_outw_p)(unsigned long, unsigned int);
 34         void (*mv_outl_p)(unsigned long, unsigned int);
 35 
 36         void (*mv_insb)(unsigned int port, void *addr, unsigned long count);
 37         void (*mv_insw)(unsigned int port, void *addr, unsigned long count);
 38         void (*mv_insl)(unsigned int port, void *addr, unsigned long count);
 39         void (*mv_outsb)(unsigned int port, const void *addr, unsigned long count);
 40         void (*mv_outsw)(unsigned int port, const void *addr, unsigned long count);
 41         void (*mv_outsl)(unsigned int port, const void *addr, unsigned long count);
 42         
 43         unsigned long (*mv_readb)(unsigned long);
 44         unsigned long (*mv_readw)(unsigned long);
 45         unsigned long (*mv_readl)(unsigned long);
 46         void (*mv_writeb)(unsigned char, unsigned long);
 47         void (*mv_writew)(unsigned short, unsigned long);
 48         void (*mv_writel)(unsigned int, unsigned long);
 49 
 50         void* (*mv_ioremap)(unsigned long offset, unsigned long size);
 51         void* (*mv_ioremap_nocache)(unsigned long offset, unsigned long size);
 52         void (*mv_iounmap)(void *addr);
 53 
 54         unsigned long (*mv_port2addr)(unsigned long offset);
 55         unsigned long (*mv_isa_port2addr)(unsigned long offset);
 56 
 57         int (*mv_irq_demux)(int irq);
 58 
 59         void (*mv_init_arch)(void);
 60         void (*mv_init_irq)(void);
 61         void (*mv_init_pci)(void);
 62         void (*mv_kill_arch)(int);
 63 
 64         void (*mv_heartbeat)(void);
 65 
 66         unsigned int mv_hw_se : 1;
 67         unsigned int mv_hw_hp600 : 1;
 68         unsigned int mv_hw_hd64461 : 1;
 69 };
 70 
 71 extern struct sh_machine_vector sh_mv;
 72 
 73 /* Machine check macros */
 74 #ifdef CONFIG_SH_GENERIC
 75 #define MACH_SE         (sh_mv.mv_hw_se)
 76 #define MACH_HP600      (sh_mv.mv_hw_hp600)
 77 #define MACH_HD64461    (sh_mv.mv_hw_hd64461)
 78 #else
 79 # ifdef CONFIG_SH_SOLUTION_ENGINE
 80 #  define MACH_SE               1
 81 # else
 82 #  define MACH_SE               0
 83 # endif
 84 # ifdef CONFIG_SH_HP600
 85 #  define MACH_HP600            1
 86 # else
 87 #  define MACH_HP600            0
 88 # endif
 89 # ifdef CONFIG_HD64461
 90 #  define MACH_HD64461          1
 91 # else
 92 #  define MACH_HD64461          0
 93 # endif
 94 #endif
 95 
 96 #endif /* _ASM_SH_MACHVEC_H */
 97 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.