Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) // SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) static struct fsr_info fsr_info[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) 	/*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) 	 * The following are the standard ARMv3 and ARMv4 aborts.  ARMv5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) 	 * defines these to be "precise" aborts.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) 	 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) 	{ do_bad,		SIGSEGV, 0,		"vector exception"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) 	{ do_bad,		SIGBUS,	 BUS_ADRALN,	"alignment exception"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 	{ do_bad,		SIGKILL, 0,		"terminal exception"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 	{ do_bad,		SIGBUS,	 BUS_ADRALN,	"alignment exception"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) 	{ do_bad,		SIGBUS,	 0,		"external abort on linefetch"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) 	{ do_translation_fault,	SIGSEGV, SEGV_MAPERR,	"section translation fault"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 	{ do_bad,		SIGBUS,	 0,		"external abort on linefetch"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 	{ do_page_fault,	SIGSEGV, SEGV_MAPERR,	"page translation fault"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 	{ do_bad,		SIGBUS,	 0,		"external abort on non-linefetch"  },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 	{ do_bad,		SIGSEGV, SEGV_ACCERR,	"section domain fault"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 	{ do_bad,		SIGBUS,	 0,		"external abort on non-linefetch"  },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) 	{ do_bad,		SIGSEGV, SEGV_ACCERR,	"page domain fault"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 	{ do_bad,		SIGBUS,	 0,		"external abort on translation"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) 	{ do_sect_fault,	SIGSEGV, SEGV_ACCERR,	"section permission fault"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 	{ do_bad,		SIGBUS,	 0,		"external abort on translation"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 	{ do_page_fault,	SIGSEGV, SEGV_ACCERR,	"page permission fault"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 	/*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 	 * The following are "imprecise" aborts, which are signalled by bit
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 	 * 10 of the FSR, and may not be recoverable.  These are only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 	 * supported if the CPU abort handler supports bit 10.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 	 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 	{ do_bad,		SIGBUS,  0,		"unknown 16"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 	{ do_bad,		SIGBUS,  0,		"unknown 17"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	{ do_bad,		SIGBUS,  0,		"unknown 18"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	{ do_bad,		SIGBUS,  0,		"unknown 19"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 	{ do_bad,		SIGBUS,  0,		"lock abort"			   }, /* xscale */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	{ do_bad,		SIGBUS,  0,		"unknown 21"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 	{ do_bad,		SIGBUS,  BUS_OBJERR,	"imprecise external abort"	   }, /* xscale */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 	{ do_bad,		SIGBUS,  0,		"unknown 23"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 	{ do_bad,		SIGBUS,  0,		"dcache parity error"		   }, /* xscale */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 	{ do_bad,		SIGBUS,  0,		"unknown 25"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 	{ do_bad,		SIGBUS,  0,		"unknown 26"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 	{ do_bad,		SIGBUS,  0,		"unknown 27"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 	{ do_bad,		SIGBUS,  0,		"unknown 28"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 	{ do_bad,		SIGBUS,  0,		"unknown 29"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 	{ do_bad,		SIGBUS,  0,		"unknown 30"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 	{ do_bad,		SIGBUS,  0,		"unknown 31"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) static struct fsr_info ifsr_info[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 	{ do_bad,		SIGBUS,  0,		"unknown 0"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 	{ do_bad,		SIGBUS,  0,		"unknown 1"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 	{ do_bad,		SIGBUS,  0,		"debug event"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 	{ do_bad,		SIGSEGV, SEGV_ACCERR,	"section access flag fault"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) 	{ do_bad,		SIGBUS,  0,		"unknown 4"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 	{ do_translation_fault,	SIGSEGV, SEGV_MAPERR,	"section translation fault"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) 	{ do_bad,		SIGSEGV, SEGV_ACCERR,	"page access flag fault"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) 	{ do_page_fault,	SIGSEGV, SEGV_MAPERR,	"page translation fault"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) 	{ do_bad,		SIGBUS,	 0,		"external abort on non-linefetch"  },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) 	{ do_bad,		SIGSEGV, SEGV_ACCERR,	"section domain fault"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) 	{ do_bad,		SIGBUS,  0,		"unknown 10"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) 	{ do_bad,		SIGSEGV, SEGV_ACCERR,	"page domain fault"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) 	{ do_bad,		SIGBUS,	 0,		"external abort on translation"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) 	{ do_sect_fault,	SIGSEGV, SEGV_ACCERR,	"section permission fault"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) 	{ do_bad,		SIGBUS,	 0,		"external abort on translation"	   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) 	{ do_page_fault,	SIGSEGV, SEGV_ACCERR,	"page permission fault"		   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) 	{ do_bad,		SIGBUS,  0,		"unknown 16"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) 	{ do_bad,		SIGBUS,  0,		"unknown 17"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) 	{ do_bad,		SIGBUS,  0,		"unknown 18"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) 	{ do_bad,		SIGBUS,  0,		"unknown 19"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) 	{ do_bad,		SIGBUS,  0,		"unknown 20"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) 	{ do_bad,		SIGBUS,  0,		"unknown 21"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) 	{ do_bad,		SIGBUS,  0,		"unknown 22"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) 	{ do_bad,		SIGBUS,  0,		"unknown 23"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) 	{ do_bad,		SIGBUS,  0,		"unknown 24"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) 	{ do_bad,		SIGBUS,  0,		"unknown 25"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) 	{ do_bad,		SIGBUS,  0,		"unknown 26"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) 	{ do_bad,		SIGBUS,  0,		"unknown 27"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) 	{ do_bad,		SIGBUS,  0,		"unknown 28"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) 	{ do_bad,		SIGBUS,  0,		"unknown 29"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) 	{ do_bad,		SIGBUS,  0,		"unknown 30"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) 	{ do_bad,		SIGBUS,  0,		"unknown 31"			   },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) };