18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_cistatic struct fsr_info fsr_info[] = {
38c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 0"			},
48c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 1"			},
58c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 2"			},
68c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 3"			},
78c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"reserved translation fault"	},
88c2ecf20Sopenharmony_ci	{ do_translation_fault,	SIGSEGV, SEGV_MAPERR,	"level 1 translation fault"	},
98c2ecf20Sopenharmony_ci	{ do_translation_fault,	SIGSEGV, SEGV_MAPERR,	"level 2 translation fault"	},
108c2ecf20Sopenharmony_ci	{ do_page_fault,	SIGSEGV, SEGV_MAPERR,	"level 3 translation fault"	},
118c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"reserved access flag fault"	},
128c2ecf20Sopenharmony_ci	{ do_bad,		SIGSEGV, SEGV_ACCERR,	"level 1 access flag fault"	},
138c2ecf20Sopenharmony_ci	{ do_page_fault,	SIGSEGV, SEGV_ACCERR,	"level 2 access flag fault"	},
148c2ecf20Sopenharmony_ci	{ do_page_fault,	SIGSEGV, SEGV_ACCERR,	"level 3 access flag fault"	},
158c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"reserved permission fault"	},
168c2ecf20Sopenharmony_ci	{ do_bad,		SIGSEGV, SEGV_ACCERR,	"level 1 permission fault"	},
178c2ecf20Sopenharmony_ci	{ do_page_fault,	SIGSEGV, SEGV_ACCERR,	"level 2 permission fault"	},
188c2ecf20Sopenharmony_ci	{ do_page_fault,	SIGSEGV, SEGV_ACCERR,	"level 3 permission fault"	},
198c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous external abort"	},
208c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"asynchronous external abort"	},
218c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 18"			},
228c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 19"			},
238c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous abort (translation table walk)" },
248c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous abort (translation table walk)" },
258c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous abort (translation table walk)" },
268c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous abort (translation table walk)" },
278c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous parity error"	},
288c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"asynchronous parity error"	},
298c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 26"			},
308c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 27"			},
318c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous parity error (translation table walk" },
328c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous parity error (translation table walk" },
338c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous parity error (translation table walk" },
348c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"synchronous parity error (translation table walk" },
358c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 32"			},
368c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  BUS_ADRALN,	"alignment fault"		},
378c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"debug event"			},
388c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 35"			},
398c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 36"			},
408c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 37"			},
418c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 38"			},
428c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 39"			},
438c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 40"			},
448c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 41"			},
458c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 42"			},
468c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 43"			},
478c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 44"			},
488c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 45"			},
498c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 46"			},
508c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 47"			},
518c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 48"			},
528c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 49"			},
538c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 50"			},
548c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 51"			},
558c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"implementation fault (lockdown abort)" },
568c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 53"			},
578c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 54"			},
588c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 55"			},
598c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 56"			},
608c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 57"			},
618c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"implementation fault (coprocessor abort)" },
628c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 59"			},
638c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 60"			},
648c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 61"			},
658c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 62"			},
668c2ecf20Sopenharmony_ci	{ do_bad,		SIGBUS,  0,		"unknown 63"			},
678c2ecf20Sopenharmony_ci};
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_ci#define ifsr_info	fsr_info
70