coresight: ETM: Add support for Arm Cortex-A73 and Cortex-A35
authorSuzuki K Poulose <suzuki.poulose@arm.com>
Wed, 11 Jul 2018 19:40:14 +0000 (13:40 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 26 Sep 2018 06:38:12 +0000 (08:38 +0200)
[ Upstream commit 5cedd22370a0a460b663c06de1fc10b4ba3c5d0b ]

Add ETM PIDs of the Arm cortex-A CPUs to the white list of ETMs.
While at it add a helper macro to make it easier to add the new
entries.

Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/hwtracing/coresight/coresight-etm4x.c

index cf364a5..5a1a14b 100644 (file)
@@ -1034,7 +1034,8 @@ static int etm4_probe(struct amba_device *adev, const struct amba_id *id)
        }
 
        pm_runtime_put(&adev->dev);
-       dev_info(dev, "%s initialized\n", (char *)id->data);
+       dev_info(dev, "CPU%d: ETM v%d.%d initialized\n",
+                drvdata->cpu, drvdata->arch >> 4, drvdata->arch & 0xf);
 
        if (boot_enable) {
                coresight_enable(drvdata->csdev);
@@ -1052,23 +1053,19 @@ err_arch_supported:
        return ret;
 }
 
+#define ETM4x_AMBA_ID(pid)                     \
+       {                                       \
+               .id     = pid,                  \
+               .mask   = 0x000fffff,           \
+       }
+
 static const struct amba_id etm4_ids[] = {
-       {       /* ETM 4.0 - Cortex-A53  */
-               .id     = 0x000bb95d,
-               .mask   = 0x000fffff,
-               .data   = "ETM 4.0",
-       },
-       {       /* ETM 4.0 - Cortex-A57 */
-               .id     = 0x000bb95e,
-               .mask   = 0x000fffff,
-               .data   = "ETM 4.0",
-       },
-       {       /* ETM 4.0 - A72, Maia, HiSilicon */
-               .id = 0x000bb95a,
-               .mask = 0x000fffff,
-               .data = "ETM 4.0",
-       },
-       { 0, 0},
+       ETM4x_AMBA_ID(0x000bb95d),              /* Cortex-A53 */
+       ETM4x_AMBA_ID(0x000bb95e),              /* Cortex-A57 */
+       ETM4x_AMBA_ID(0x000bb95a),              /* Cortex-A72 */
+       ETM4x_AMBA_ID(0x000bb959),              /* Cortex-A73 */
+       ETM4x_AMBA_ID(0x000bb9da),              /* Cortex-A35 */
+       {},
 };
 
 static struct amba_driver etm4x_driver = {