hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/soc/qcom/ocmem.c
....@@ -76,8 +76,12 @@
7676 #define OCMEM_REG_GFX_MPU_START 0x00001004
7777 #define OCMEM_REG_GFX_MPU_END 0x00001008
7878
79
-#define OCMEM_HW_PROFILE_NUM_PORTS(val) FIELD_PREP(0x0000000f, (val))
80
-#define OCMEM_HW_PROFILE_NUM_MACROS(val) FIELD_PREP(0x00003f00, (val))
79
+#define OCMEM_HW_VERSION_MAJOR(val) FIELD_GET(GENMASK(31, 28), val)
80
+#define OCMEM_HW_VERSION_MINOR(val) FIELD_GET(GENMASK(27, 16), val)
81
+#define OCMEM_HW_VERSION_STEP(val) FIELD_GET(GENMASK(15, 0), val)
82
+
83
+#define OCMEM_HW_PROFILE_NUM_PORTS(val) FIELD_GET(0x0000000f, (val))
84
+#define OCMEM_HW_PROFILE_NUM_MACROS(val) FIELD_GET(0x00003f00, (val))
8185
8286 #define OCMEM_HW_PROFILE_LAST_REGN_HALFSIZE 0x00010000
8387 #define OCMEM_HW_PROFILE_INTERLEAVING 0x00020000
....@@ -357,6 +361,12 @@
357361 }
358362 }
359363
364
+ reg = ocmem_read(ocmem, OCMEM_REG_HW_VERSION);
365
+ dev_dbg(dev, "OCMEM hardware version: %lu.%lu.%lu\n",
366
+ OCMEM_HW_VERSION_MAJOR(reg),
367
+ OCMEM_HW_VERSION_MINOR(reg),
368
+ OCMEM_HW_VERSION_STEP(reg));
369
+
360370 reg = ocmem_read(ocmem, OCMEM_REG_HW_PROFILE);
361371 ocmem->num_ports = OCMEM_HW_PROFILE_NUM_PORTS(reg);
362372 ocmem->num_macros = OCMEM_HW_PROFILE_NUM_MACROS(reg);