root/arch/alpha/kernel/proto.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. find_console_vga_hose
  2. locate_and_init_vga
  3. __alpha_remap_area_pages

   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 #include <linux/interrupt.h>
   3 #include <linux/io.h>
   4 
   5 #include <asm/pgtable.h>
   6 
   7 /* Prototypes of functions used across modules here in this directory.  */
   8 
   9 #define vucp    volatile unsigned char  *
  10 #define vusp    volatile unsigned short *
  11 #define vip     volatile int *
  12 #define vuip    volatile unsigned int   *
  13 #define vulp    volatile unsigned long  *
  14 
  15 struct pt_regs;
  16 struct task_struct;
  17 struct pci_dev;
  18 struct pci_controller;
  19 
  20 /* core_apecs.c */
  21 extern struct pci_ops apecs_pci_ops;
  22 extern void apecs_init_arch(void);
  23 extern void apecs_pci_clr_err(void);
  24 extern void apecs_machine_check(unsigned long vector, unsigned long la_ptr);
  25 extern void apecs_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
  26 
  27 /* core_cia.c */
  28 extern struct pci_ops cia_pci_ops;
  29 extern void cia_init_pci(void);
  30 extern void cia_init_arch(void);
  31 extern void pyxis_init_arch(void);
  32 extern void cia_kill_arch(int);
  33 extern void cia_machine_check(unsigned long vector, unsigned long la_ptr);
  34 extern void cia_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
  35 
  36 /* core_irongate.c */
  37 extern struct pci_ops irongate_pci_ops;
  38 extern int irongate_pci_clr_err(void);
  39 extern void irongate_init_arch(void);
  40 #define irongate_pci_tbi ((void *)0)
  41 
  42 /* core_lca.c */
  43 extern struct pci_ops lca_pci_ops;
  44 extern void lca_init_arch(void);
  45 extern void lca_machine_check(unsigned long vector, unsigned long la_ptr);
  46 extern void lca_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
  47 
  48 /* core_marvel.c */
  49 extern struct pci_ops marvel_pci_ops;
  50 extern void marvel_init_arch(void);
  51 extern void marvel_kill_arch(int);
  52 extern void marvel_machine_check(unsigned long, unsigned long);
  53 extern void marvel_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
  54 extern int marvel_pa_to_nid(unsigned long);
  55 extern int marvel_cpuid_to_nid(int);
  56 extern unsigned long marvel_node_mem_start(int);
  57 extern unsigned long marvel_node_mem_size(int);
  58 extern struct _alpha_agp_info *marvel_agp_info(void);
  59 struct io7 *marvel_find_io7(int pe);
  60 struct io7 *marvel_next_io7(struct io7 *prev);
  61 void io7_clear_errors(struct io7 *io7);
  62 
  63 /* core_mcpcia.c */
  64 extern struct pci_ops mcpcia_pci_ops;
  65 extern void mcpcia_init_arch(void);
  66 extern void mcpcia_init_hoses(void);
  67 extern void mcpcia_machine_check(unsigned long vector, unsigned long la_ptr);
  68 extern void mcpcia_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
  69 
  70 /* core_polaris.c */
  71 extern struct pci_ops polaris_pci_ops;
  72 extern int polaris_read_config_dword(struct pci_dev *, int, u32 *);
  73 extern int polaris_write_config_dword(struct pci_dev *, int, u32);
  74 extern void polaris_init_arch(void);
  75 extern void polaris_machine_check(unsigned long vector, unsigned long la_ptr);
  76 #define polaris_pci_tbi ((void *)0)
  77 
  78 /* core_t2.c */
  79 extern struct pci_ops t2_pci_ops;
  80 extern void t2_init_arch(void);
  81 extern void t2_kill_arch(int);
  82 extern void t2_machine_check(unsigned long vector, unsigned long la_ptr);
  83 extern void t2_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
  84 
  85 /* core_titan.c */
  86 extern struct pci_ops titan_pci_ops;
  87 extern void titan_init_arch(void);
  88 extern void titan_kill_arch(int);
  89 extern void titan_machine_check(unsigned long, unsigned long);
  90 extern void titan_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
  91 extern struct _alpha_agp_info *titan_agp_info(void);
  92 
  93 /* core_tsunami.c */
  94 extern struct pci_ops tsunami_pci_ops;
  95 extern void tsunami_init_arch(void);
  96 extern void tsunami_kill_arch(int);
  97 extern void tsunami_machine_check(unsigned long vector, unsigned long la_ptr);
  98 extern void tsunami_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
  99 
 100 /* core_wildfire.c */
 101 extern struct pci_ops wildfire_pci_ops;
 102 extern void wildfire_init_arch(void);
 103 extern void wildfire_kill_arch(int);
 104 extern void wildfire_machine_check(unsigned long vector, unsigned long la_ptr);
 105 extern void wildfire_pci_tbi(struct pci_controller *, dma_addr_t, dma_addr_t);
 106 extern int wildfire_pa_to_nid(unsigned long);
 107 extern int wildfire_cpuid_to_nid(int);
 108 extern unsigned long wildfire_node_mem_start(int);
 109 extern unsigned long wildfire_node_mem_size(int);
 110 
 111 /* console.c */
 112 #ifdef CONFIG_VGA_HOSE
 113 extern void find_console_vga_hose(void);
 114 extern void locate_and_init_vga(void *(*)(void *, void *));
 115 #else
 116 static inline void find_console_vga_hose(void) { }
 117 static inline void locate_and_init_vga(void *(*sel_func)(void *, void *)) { }
 118 #endif
 119 
 120 /* setup.c */
 121 extern unsigned long srm_hae;
 122 extern int boot_cpuid;
 123 #ifdef CONFIG_VERBOSE_MCHECK
 124 extern unsigned long alpha_verbose_mcheck;
 125 #endif
 126 
 127 /* srmcons.c */
 128 #if defined(CONFIG_ALPHA_GENERIC) || defined(CONFIG_ALPHA_SRM)
 129 extern void register_srm_console(void);
 130 extern void unregister_srm_console(void);
 131 #else
 132 #define register_srm_console()
 133 #define unregister_srm_console()
 134 #endif
 135 
 136 /* smp.c */
 137 extern void setup_smp(void);
 138 extern void handle_ipi(struct pt_regs *);
 139 
 140 /* bios32.c */
 141 /* extern void reset_for_srm(void); */
 142 
 143 /* time.c */
 144 extern irqreturn_t rtc_timer_interrupt(int irq, void *dev);
 145 extern void init_clockevent(void);
 146 extern void common_init_rtc(void);
 147 extern unsigned long est_cycle_freq;
 148 
 149 /* smc37c93x.c */
 150 extern void SMC93x_Init(void);
 151 
 152 /* smc37c669.c */
 153 extern void SMC669_Init(int);
 154 
 155 /* es1888.c */
 156 extern void es1888_init(void);
 157 
 158 /* ../lib/fpreg.c */
 159 extern void alpha_write_fp_reg (unsigned long reg, unsigned long val);
 160 extern unsigned long alpha_read_fp_reg (unsigned long reg);
 161 
 162 /* head.S */
 163 extern void wrmces(unsigned long mces);
 164 extern void cserve_ena(unsigned long);
 165 extern void cserve_dis(unsigned long);
 166 extern void __smp_callin(unsigned long);
 167 
 168 /* entry.S */
 169 extern void entArith(void);
 170 extern void entIF(void);
 171 extern void entInt(void);
 172 extern void entMM(void);
 173 extern void entSys(void);
 174 extern void entUna(void);
 175 extern void entDbg(void);
 176 
 177 /* ptrace.c */
 178 extern int ptrace_set_bpt (struct task_struct *child);
 179 extern int ptrace_cancel_bpt (struct task_struct *child);
 180 
 181 /* traps.c */
 182 extern void dik_show_regs(struct pt_regs *regs, unsigned long *r9_15);
 183 extern void die_if_kernel(char *, struct pt_regs *, long, unsigned long *);
 184 
 185 /* sys_titan.c */
 186 extern void titan_dispatch_irqs(u64);
 187 
 188 /* ../mm/init.c */
 189 extern void switch_to_system_map(void);
 190 extern void srm_paging_stop(void);
 191 
 192 static inline int
 193 __alpha_remap_area_pages(unsigned long address, unsigned long phys_addr,
 194                          unsigned long size, unsigned long flags)
 195 {
 196         pgprot_t prot;
 197 
 198         prot = __pgprot(_PAGE_VALID | _PAGE_ASM | _PAGE_KRE
 199                         | _PAGE_KWE | flags);
 200         return ioremap_page_range(address, address + size, phys_addr, prot);
 201 }
 202 
 203 /* irq.c */
 204 
 205 #ifdef CONFIG_SMP
 206 #define mcheck_expected(cpu)    (cpu_data[cpu].mcheck_expected)
 207 #define mcheck_taken(cpu)       (cpu_data[cpu].mcheck_taken)
 208 #define mcheck_extra(cpu)       (cpu_data[cpu].mcheck_extra)
 209 #else
 210 extern struct mcheck_info
 211 {
 212         unsigned char expected __attribute__((aligned(8)));
 213         unsigned char taken;
 214         unsigned char extra;
 215 } __mcheck_info;
 216 
 217 #define mcheck_expected(cpu)    (*((void)(cpu), &__mcheck_info.expected))
 218 #define mcheck_taken(cpu)       (*((void)(cpu), &__mcheck_info.taken))
 219 #define mcheck_extra(cpu)       (*((void)(cpu), &__mcheck_info.extra))
 220 #endif
 221 
 222 extern void process_mcheck_info(unsigned long vector, unsigned long la_ptr,
 223                                 const char *machine, int expected);

/* [<][>][^][v][top][bottom][index][help] */