Kernel: Update reset value and register names of SCTLR_EL1 per Arm ARM
Referencing ARM DDI 0487J.a, update the names of previously reserved fields, and set the reset_value() of the SCTLR_EL1 struct to reflect the defaults we want for this register on reboot.
This commit is contained in:
parent
60cddb4179
commit
f62c646c28
Notes:
sideshowbarker
2024-07-17 02:22:23 +09:00
Author: https://github.com/ADKaster Commit: https://github.com/SerenityOS/serenity/commit/f62c646c28 Pull-request: https://github.com/SerenityOS/serenity/pull/18846 Reviewed-by: https://github.com/BertalanD ✅
1 changed files with 14 additions and 7 deletions
|
@ -626,12 +626,12 @@ struct alignas(u64) SCTLR_EL1 {
|
|||
int SA : 1;
|
||||
int SA0 : 1;
|
||||
int CP15BEN : 1;
|
||||
int _reserved6 : 1 = 0;
|
||||
int nAA : 1;
|
||||
int ITD : 1;
|
||||
int SED : 1;
|
||||
int UMA : 1;
|
||||
int _reserved10 : 1 = 0;
|
||||
int _reserved11 : 1 = 1;
|
||||
int EnRCTX : 1;
|
||||
int EOS : 1;
|
||||
int I : 1;
|
||||
int EnDB : 1;
|
||||
int DZE : 1;
|
||||
|
@ -640,9 +640,9 @@ struct alignas(u64) SCTLR_EL1 {
|
|||
int _reserved17 : 1 = 0;
|
||||
int nTWE : 1;
|
||||
int WXN : 1;
|
||||
int _reserved20 : 1 = 1;
|
||||
int TSCXT : 1;
|
||||
int IESB : 1;
|
||||
int _reserved22 : 1 = 1;
|
||||
int EIS : 1;
|
||||
int SPAN : 1;
|
||||
int E0E : 1;
|
||||
int EE : 1;
|
||||
|
@ -688,10 +688,17 @@ struct alignas(u64) SCTLR_EL1 {
|
|||
static constexpr SCTLR_EL1 reset_value()
|
||||
{
|
||||
SCTLR_EL1 system_control_register_el1 = {};
|
||||
system_control_register_el1.SA = 1;
|
||||
system_control_register_el1.SA0 = 1;
|
||||
system_control_register_el1.ITD = 1;
|
||||
system_control_register_el1.SED = 1;
|
||||
system_control_register_el1.EOS = 1;
|
||||
system_control_register_el1.TSCXT = 1;
|
||||
system_control_register_el1.IESB = 1;
|
||||
system_control_register_el1.EIS = 1;
|
||||
system_control_register_el1.SPAN = 1;
|
||||
system_control_register_el1.LSMAOE = 1;
|
||||
system_control_register_el1.nTLSMD = 1;
|
||||
system_control_register_el1.SPAN = 1;
|
||||
system_control_register_el1.IESB = 1;
|
||||
return system_control_register_el1;
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue