summaryrefslogtreecommitdiff
path: root/arch/arm/mach-k3/common.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-k3/common.c')
-rw-r--r--arch/arm/mach-k3/common.c48
1 files changed, 29 insertions, 19 deletions
diff --git a/arch/arm/mach-k3/common.c b/arch/arm/mach-k3/common.c
index 4335f2877b..63bf060616 100644
--- a/arch/arm/mach-k3/common.c
+++ b/arch/arm/mach-k3/common.c
@@ -25,7 +25,6 @@
#include <fs.h>
#include <env.h>
#include <elf.h>
-#include <soc.h>
struct ti_sci_handle *get_ti_sci_handle(void)
{
@@ -309,27 +308,38 @@ void reset_cpu(ulong ignored)
#if defined(CONFIG_DISPLAY_CPUINFO)
int print_cpuinfo(void)
{
- struct udevice *soc;
- char name[64];
- int ret;
-
- printf("SoC: ");
+ u32 soc, rev;
+ char *name;
- ret = soc_get(&soc);
- if (ret) {
- printf("UNKNOWN\n");
- return 0;
- }
+ soc = (readl(CTRLMMR_WKUP_JTAG_ID) &
+ JTAG_ID_PARTNO_MASK) >> JTAG_ID_PARTNO_SHIFT;
+ rev = (readl(CTRLMMR_WKUP_JTAG_ID) &
+ JTAG_ID_VARIANT_MASK) >> JTAG_ID_VARIANT_SHIFT;
- ret = soc_get_family(soc, name, 64);
- if (!ret) {
- printf("%s ", name);
- }
+ printf("SoC: ");
+ switch (soc) {
+ case AM65X:
+ name = "AM65x";
+ break;
+ case J721E:
+ name = "J721E";
+ break;
+ default:
+ name = "Unknown Silicon";
+ };
- ret = soc_get_revision(soc, name, 64);
- if (!ret) {
- printf("%s\n", name);
- }
+ printf("%s SR ", name);
+ switch (rev) {
+ case REV_PG1_0:
+ name = "1.0";
+ break;
+ case REV_PG2_0:
+ name = "2.0";
+ break;
+ default:
+ name = "Unknown Revision";
+ };
+ printf("%s\n", name);
return 0;
}