As per the PLIC specification, maximum priority threshold value is 0x7.
Even though, writing a higher value doesn't cause any error in qemu
hifive unleashed, there may be some implementation which checks the upper
and may result in an illegal access.
Signed-off-by: Atish Patra <atish.patra@wdc.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Anup Patel <anup.patel@wdc.com>
/* By default, disable M-mode threshold */
if (m_cntx_id > -1)
- plic_set_thresh(m_cntx_id, 0xffffffff);
+ plic_set_thresh(m_cntx_id, 0x7);
/* By default, disable S-mode threshold */
if (s_cntx_id > -1)
- plic_set_thresh(s_cntx_id, 0xffffffff);
+ plic_set_thresh(s_cntx_id, 0x7);
return 0;
}