From: Emanuele Ghidoli <emanuele.ghid...@toradex.com>

Add register address and relevant bitmasks and shifts.
Allow reading these information:
- device identification
- number of cores (part of device identification)
- features (currently: PRU / no PRU)
- security
- functional safety
- speed grade
- temperature grade
- package

Signed-off-by: Emanuele Ghidoli <emanuele.ghid...@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolc...@toradex.com>
Reviewed-by: Andrew Davis <a...@ti.com>
---
v2:
 - added reviewed-by afd
 - added GPU/PRU mask
---
 arch/arm/mach-k3/include/mach/am62_hardware.h | 22 +++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/arch/arm/mach-k3/include/mach/am62_hardware.h 
b/arch/arm/mach-k3/include/mach/am62_hardware.h
index 88d58947269a..acd2d109c2c5 100644
--- a/arch/arm/mach-k3/include/mach/am62_hardware.h
+++ b/arch/arm/mach-k3/include/mach/am62_hardware.h
@@ -20,6 +20,28 @@
 #define MCU_CTRL_MMR0_BASE                     0x04500000
 #define WKUP_CTRL_MMR0_BASE                    0x43000000
 
+#define CTRLMMR_WKUP_JTAG_DEVICE_ID            (WKUP_CTRL_MMR0_BASE + 0x18)
+#define JTAG_DEV_ID_MASK                       GENMASK(31, 18)
+#define JTAG_DEV_ID_SHIFT                      18
+#define JTAG_DEV_CORE_NR_MASK                  GENMASK(21, 19)
+#define JTAG_DEV_CORE_NR_SHIFT                 19
+#define JTAG_DEV_GPU_MASK                      BIT(18)
+#define JTAG_DEV_GPU_SHIFT                     18
+#define JTAG_DEV_FEATURES_MASK                 GENMASK(17, 13)
+#define JTAG_DEV_FEATURES_SHIFT                        13
+#define JTAG_DEV_SECURITY_MASK                 BIT(12)
+#define JTAG_DEV_SECURITY_SHIFT                        12
+#define JTAG_DEV_SAFETY_MASK                   BIT(11)
+#define JTAG_DEV_SAFETY_SHIFT                  11
+#define JTAG_DEV_SPEED_MASK                    GENMASK(10, 6)
+#define JTAG_DEV_SPEED_SHIFT                   6
+#define JTAG_DEV_TEMP_MASK                     GENMASK(5, 3)
+#define JTAG_DEV_TEMP_SHIFT                    3
+#define JTAG_DEV_PKG_MASK                      GENMASK(2, 0)
+#define JTAG_DEV_PKG_SHIFT                     0
+
+#define JTAG_DEV_FEATURE_NO_PRU                        0x4
+
 #define CTRLMMR_MAIN_DEVSTAT                   (WKUP_CTRL_MMR0_BASE + 0x30)
 #define MAIN_DEVSTAT_PRIMARY_BOOTMODE_MASK     GENMASK(6, 3)
 #define MAIN_DEVSTAT_PRIMARY_BOOTMODE_SHIFT    3
-- 
2.25.1

Reply via email to