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

TOMOYO Linux Cross Reference
Linux/arch/alpha/kernel/err_impl.h

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0 */
  2 /*
  3  *      linux/arch/alpha/kernel/err_impl.h
  4  *
  5  *      Copyright (C) 2000 Jeff Wiedemeier (Compaq Computer Corporation)
  6  *
  7  *      Contains declarations and macros to support Alpha error handling
  8  *      implementations.
  9  */
 10 
 11 #include <asm/mce.h>
 12 
 13 union el_timestamp;
 14 struct el_subpacket;
 15 struct ev7_lf_subpackets;
 16 
 17 struct el_subpacket_annotation {
 18         struct el_subpacket_annotation *next;
 19         u16 class;
 20         u16 type;
 21         u16 revision;
 22         char *description;
 23         char **annotation;
 24 };
 25 #define SUBPACKET_ANNOTATION(c, t, r, d, a) {NULL, (c), (t), (r), (d), (a)}
 26 
 27 struct el_subpacket_handler {
 28         struct el_subpacket_handler *next;
 29         u16 class;
 30         struct el_subpacket *(*handler)(struct el_subpacket *);
 31 };
 32 #define SUBPACKET_HANDLER_INIT(c, h) {NULL, (c), (h)}
 33 
 34 /*
 35  * Manipulate a field from a register given it's name. defines
 36  * for the LSB (__S - shift count) and bitmask (__M) are required
 37  *
 38  * EXTRACT(u, f) - extracts the field and places it at bit position 0
 39  * GEN_MASK(f) - creates an in-position mask for the field
 40  */
 41 #define EXTRACT(u, f) (((u) >> f##__S) & f##__M)
 42 #define GEN_MASK(f) ((u64)f##__M << f##__S)
 43 
 44 /*
 45  * err_common.c
 46  */
 47 extern char *err_print_prefix;
 48 
 49 extern void mchk_dump_mem(void *, size_t, char **);
 50 extern void mchk_dump_logout_frame(struct el_common *);
 51 extern void el_print_timestamp(union el_timestamp *);
 52 extern void el_process_subpackets(struct el_subpacket *, int);
 53 extern struct el_subpacket *el_process_subpacket(struct el_subpacket *);
 54 extern void el_annotate_subpacket(struct el_subpacket *);
 55 extern void cdl_check_console_data_log(void);
 56 extern int cdl_register_subpacket_annotation(struct el_subpacket_annotation *);
 57 extern int cdl_register_subpacket_handler(struct el_subpacket_handler *);
 58 
 59 /*
 60  * err_ev7.c
 61  */
 62 extern struct ev7_lf_subpackets *
 63 ev7_collect_logout_frame_subpackets(struct el_subpacket *,
 64                                     struct ev7_lf_subpackets *);
 65 extern void ev7_register_error_handlers(void);
 66 extern void ev7_machine_check(unsigned long, unsigned long);
 67 
 68 /*
 69  * err_ev6.c
 70  */
 71 extern void ev6_register_error_handlers(void);
 72 extern int ev6_process_logout_frame(struct el_common *, int);
 73 extern void ev6_machine_check(unsigned long, unsigned long);
 74 
 75 /*
 76  * err_marvel.c
 77  */
 78 extern void marvel_machine_check(unsigned long, unsigned long);
 79 extern void marvel_register_error_handlers(void);
 80 
 81 /*
 82  * err_titan.c
 83  */
 84 extern int titan_process_logout_frame(struct el_common *, int);
 85 extern void titan_machine_check(unsigned long, unsigned long);
 86 extern void titan_register_error_handlers(void);
 87 extern int privateer_process_logout_frame(struct el_common *, int);
 88 extern void privateer_machine_check(unsigned long, unsigned long);
 89 

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

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php