defendkey: change defendkey reserved memory process [1/1]

PD#SWPL-3706

Problem:
GXL: defenkey cause system crash

Solution:
1.change defendkey reserved memory process
2.limit reserved memory region

Verify:
GXL skt board verify pass

Change-Id: I23c6fe861803de96eccec9b643824eeae2c2e564
Signed-off-by: Zhongfu Luo <zhongfu.luo@amlogic.com>
This commit is contained in:
Zhongfu Luo
2018-12-28 16:16:28 +08:00
committed by Luan Yuan
parent 720e1c6a46
commit 43c5298960

View File

@@ -52,6 +52,7 @@ struct defendkey_mem defendkey_rmem;
#define CMD_SECURE_CHECK _IO('d', 0x01)
#define CMD_DECRYPT_DTB _IO('d', 0x02)
#define DEFENDKEY_LIMIT_ADDR 0x0F000000
enum e_defendkey_type {
e_upgrade_check = 0,
@@ -372,7 +373,6 @@ static struct class defendkey_class = {
static int __init early_defendkey_para(char *buf)
{
int ret;
struct page *page = NULL;
if (!buf)
return -EINVAL;
@@ -384,9 +384,8 @@ static int __init early_defendkey_para(char *buf)
return -EINVAL;
}
page = pfn_to_page(defendkey_rmem.base >> PAGE_SHIFT);
if (PageHighMem(page)) {
pr_err("invalid boot args \"defendkey\"\n");
if (defendkey_rmem.base > DEFENDKEY_LIMIT_ADDR) {
pr_err("defendkey reserved memory base overflow!\n");
return -EINVAL;
}