Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Arm Trusted Firmware
Commits
e4622d3c
Commit
e4622d3c
authored
Jun 01, 2021
by
Madhukar Pappireddy
Committed by
TrustedFirmware Code Review
Jun 01, 2021
Browse files
Merge "feat(plat/zynqmp): add support for XCK26 silicon" into integration
parents
b35f8f2d
7a30e08b
Changes
1
Hide whitespace changes
Inline
Side-by-side
plat/xilinx/zynqmp/aarch64/zynqmp_common.c
View file @
e4622d3c
...
@@ -62,156 +62,156 @@ static const struct {
...
@@ -62,156 +62,156 @@ static const struct {
}
zynqmp_devices
[]
=
{
}
zynqmp_devices
[]
=
{
{
{
.
id
=
0x10
,
.
id
=
0x10
,
.
name
=
"3EG"
,
.
name
=
"
XCZU
3EG"
,
},
},
{
{
.
id
=
0x10
,
.
id
=
0x10
,
.
ver
=
0x2c
,
.
ver
=
0x2c
,
.
name
=
"3CG"
,
.
name
=
"
XCZU
3CG"
,
},
},
{
{
.
id
=
0x11
,
.
id
=
0x11
,
.
name
=
"2EG"
,
.
name
=
"
XCZU
2EG"
,
},
},
{
{
.
id
=
0x11
,
.
id
=
0x11
,
.
ver
=
0x2c
,
.
ver
=
0x2c
,
.
name
=
"2CG"
,
.
name
=
"
XCZU
2CG"
,
},
},
{
{
.
id
=
0x20
,
.
id
=
0x20
,
.
name
=
"5EV"
,
.
name
=
"
XCZU
5EV"
,
.
evexists
=
true
,
.
evexists
=
true
,
},
},
{
{
.
id
=
0x20
,
.
id
=
0x20
,
.
ver
=
0x100
,
.
ver
=
0x100
,
.
name
=
"5EG"
,
.
name
=
"
XCZU
5EG"
,
.
evexists
=
true
,
.
evexists
=
true
,
},
},
{
{
.
id
=
0x20
,
.
id
=
0x20
,
.
ver
=
0x12c
,
.
ver
=
0x12c
,
.
name
=
"5CG"
,
.
name
=
"
XCZU
5CG"
,
},
},
{
{
.
id
=
0x21
,
.
id
=
0x21
,
.
name
=
"4EV"
,
.
name
=
"
XCZU
4EV"
,
.
evexists
=
true
,
.
evexists
=
true
,
},
},
{
{
.
id
=
0x21
,
.
id
=
0x21
,
.
ver
=
0x100
,
.
ver
=
0x100
,
.
name
=
"4EG"
,
.
name
=
"
XCZU
4EG"
,
.
evexists
=
true
,
.
evexists
=
true
,
},
},
{
{
.
id
=
0x21
,
.
id
=
0x21
,
.
ver
=
0x12c
,
.
ver
=
0x12c
,
.
name
=
"4CG"
,
.
name
=
"
XCZU
4CG"
,
},
},
{
{
.
id
=
0x30
,
.
id
=
0x30
,
.
name
=
"7EV"
,
.
name
=
"
XCZU
7EV"
,
.
evexists
=
true
,
.
evexists
=
true
,
},
},
{
{
.
id
=
0x30
,
.
id
=
0x30
,
.
ver
=
0x100
,
.
ver
=
0x100
,
.
name
=
"7EG"
,
.
name
=
"
XCZU
7EG"
,
.
evexists
=
true
,
.
evexists
=
true
,
},
},
{
{
.
id
=
0x30
,
.
id
=
0x30
,
.
ver
=
0x12c
,
.
ver
=
0x12c
,
.
name
=
"7CG"
,
.
name
=
"
XCZU
7CG"
,
},
},
{
{
.
id
=
0x38
,
.
id
=
0x38
,
.
name
=
"9EG"
,
.
name
=
"
XCZU
9EG"
,
},
},
{
{
.
id
=
0x38
,
.
id
=
0x38
,
.
ver
=
0x2c
,
.
ver
=
0x2c
,
.
name
=
"9CG"
,
.
name
=
"
XCZU
9CG"
,
},
},
{
{
.
id
=
0x39
,
.
id
=
0x39
,
.
name
=
"6EG"
,
.
name
=
"
XCZU
6EG"
,
},
},
{
{
.
id
=
0x39
,
.
id
=
0x39
,
.
ver
=
0x2c
,
.
ver
=
0x2c
,
.
name
=
"6CG"
,
.
name
=
"
XCZU
6CG"
,
},
},
{
{
.
id
=
0x40
,
.
id
=
0x40
,
.
name
=
"11EG"
,
.
name
=
"
XCZU
11EG"
,
},
},
{
/* For testing purpose only */
{
/* For testing purpose only */
.
id
=
0x50
,
.
id
=
0x50
,
.
ver
=
0x2c
,
.
ver
=
0x2c
,
.
name
=
"15CG"
,
.
name
=
"
XCZU
15CG"
,
},
},
{
{
.
id
=
0x50
,
.
id
=
0x50
,
.
name
=
"15EG"
,
.
name
=
"
XCZU
15EG"
,
},
},
{
{
.
id
=
0x58
,
.
id
=
0x58
,
.
name
=
"19EG"
,
.
name
=
"
XCZU
19EG"
,
},
},
{
{
.
id
=
0x59
,
.
id
=
0x59
,
.
name
=
"17EG"
,
.
name
=
"
XCZU
17EG"
,
},
},
{
{
.
id
=
0x60
,
.
id
=
0x60
,
.
name
=
"28DR"
,
.
name
=
"
XCZU
28DR"
,
},
},
{
{
.
id
=
0x61
,
.
id
=
0x61
,
.
name
=
"21DR"
,
.
name
=
"
XCZU
21DR"
,
},
},
{
{
.
id
=
0x62
,
.
id
=
0x62
,
.
name
=
"29DR"
,
.
name
=
"
XCZU
29DR"
,
},
},
{
{
.
id
=
0x63
,
.
id
=
0x63
,
.
name
=
"23DR"
,
.
name
=
"
XCZU
23DR"
,
},
},
{
{
.
id
=
0x64
,
.
id
=
0x64
,
.
name
=
"27DR"
,
.
name
=
"
XCZU
27DR"
,
},
},
{
{
.
id
=
0x65
,
.
id
=
0x65
,
.
name
=
"25DR"
,
.
name
=
"
XCZU
25DR"
,
},
},
{
{
.
id
=
0x66
,
.
id
=
0x66
,
.
name
=
"39DR"
,
.
name
=
"
XCZU
39DR"
,
},
},
{
{
.
id
=
0x7d
,
.
id
=
0x7d
,
.
name
=
"43DR"
,
.
name
=
"
XCZU
43DR"
,
},
},
{
{
.
id
=
0x78
,
.
id
=
0x78
,
.
name
=
"46DR"
,
.
name
=
"
XCZU
46DR"
,
},
},
{
{
.
id
=
0x7f
,
.
id
=
0x7f
,
.
name
=
"47DR"
,
.
name
=
"
XCZU
47DR"
,
},
},
{
{
.
id
=
0x7b
,
.
id
=
0x7b
,
.
name
=
"48DR"
,
.
name
=
"
XCZU
48DR"
,
},
},
{
{
.
id
=
0x7e
,
.
id
=
0x7e
,
.
name
=
"49DR"
,
.
name
=
"
XCZU
49DR"
,
},
},
};
};
...
@@ -219,6 +219,8 @@ static const struct {
...
@@ -219,6 +219,8 @@ static const struct {
#define ZYNQMP_PL_STATUS_MASK BIT(ZYNQMP_PL_STATUS_BIT)
#define ZYNQMP_PL_STATUS_MASK BIT(ZYNQMP_PL_STATUS_BIT)
#define ZYNQMP_CSU_VERSION_MASK ~(ZYNQMP_PL_STATUS_MASK)
#define ZYNQMP_CSU_VERSION_MASK ~(ZYNQMP_PL_STATUS_MASK)
#define SILICON_ID_XCK26 0x4724093
static
char
*
zynqmp_get_silicon_idcode_name
(
void
)
static
char
*
zynqmp_get_silicon_idcode_name
(
void
)
{
{
uint32_t
id
,
ver
,
chipid
[
2
];
uint32_t
id
,
ver
,
chipid
[
2
];
...
@@ -236,7 +238,7 @@ static char *zynqmp_get_silicon_idcode_name(void)
...
@@ -236,7 +238,7 @@ static char *zynqmp_get_silicon_idcode_name(void)
chipid
[
1
]
=
mmio_read_32
(
EFUSE_BASEADDR
+
EFUSE_IPDISABLE_OFFSET
);
chipid
[
1
]
=
mmio_read_32
(
EFUSE_BASEADDR
+
EFUSE_IPDISABLE_OFFSET
);
#else
#else
if
(
pm_get_chipid
(
chipid
)
!=
PM_RET_SUCCESS
)
if
(
pm_get_chipid
(
chipid
)
!=
PM_RET_SUCCESS
)
return
"UNKN"
;
return
"
XCZU
UNKN"
;
#endif
#endif
id
=
chipid
[
0
]
&
(
ZYNQMP_CSU_IDCODE_DEVICE_CODE_MASK
|
id
=
chipid
[
0
]
&
(
ZYNQMP_CSU_IDCODE_DEVICE_CODE_MASK
|
...
@@ -250,8 +252,13 @@ static char *zynqmp_get_silicon_idcode_name(void)
...
@@ -250,8 +252,13 @@ static char *zynqmp_get_silicon_idcode_name(void)
break
;
break
;
}
}
if
(
i
>=
ARRAY_SIZE
(
zynqmp_devices
))
if
(
i
>=
ARRAY_SIZE
(
zynqmp_devices
))
{
return
"UNKN"
;
if
(
chipid
[
0
]
==
SILICON_ID_XCK26
)
{
return
"XCK26"
;
}
else
{
return
"XCZUUNKN"
;
}
}
if
(
!
zynqmp_devices
[
i
].
evexists
)
if
(
!
zynqmp_devices
[
i
].
evexists
)
return
zynqmp_devices
[
i
].
name
;
return
zynqmp_devices
[
i
].
name
;
...
@@ -327,7 +334,7 @@ static void zynqmp_print_platform_name(void)
...
@@ -327,7 +334,7 @@ static void zynqmp_print_platform_name(void)
break
;
break
;
}
}
NOTICE
(
"
A
TF running on
XCZU
%s/%s v%d/RTL%d.%d at 0x%x
\n
"
,
NOTICE
(
"TF
-A
running on %s/%s v%d/RTL%d.%d at 0x%x
\n
"
,
zynqmp_print_silicon_idcode
(),
label
,
zynqmp_get_ps_ver
(),
zynqmp_print_silicon_idcode
(),
label
,
zynqmp_get_ps_ver
(),
(
rtl
&
0xf0
)
>>
4
,
rtl
&
0xf
,
BL31_BASE
);
(
rtl
&
0xf0
)
>>
4
,
rtl
&
0xf
,
BL31_BASE
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment