[PATCH V6 6/6] coresight: etm4x: Add ACPI support in platform driver

Tanmay Jagdale tanmay at marvell.com
Thu Jul 20 22:42:53 PDT 2023


Hi Rafael, Len, Suzuki,

> Rafael, Len
> 
> Ping (packets 6, lost 100%).
>

We have a Marvell SoC based on ARMv9 architecture with Coresight ETE.

Without this patchset, we get following error on our platform:
[    0.042733] acpi ARMHC500:00: amba_handler_attach(): amba_device_add() failed (-16)

This patchset fixes the issue and helps in successfully probing
the Coresight ETE device when booted with ACPI tables.

Tested-by: Tanmay Jagdale <tanmay at marvell.com>

With Regards,
Tanmay

> 
> On 10/07/2023 17:40, Suzuki K Poulose wrote:
> > Rafael, Len
> >
> > On 10/07/2023 07:25, Anshuman Khandual wrote:
> >> From: Suzuki K Poulose <suzuki.poulose at arm.com>
> >>
> >> Drop ETM4X ACPI ID from the AMBA ACPI device list, and instead just
> >> move it
> >> inside the new ACPI devices list detected and used via platform driver.
> >>
> >> Cc: "Rafael J. Wysocki" <rafael at kernel.org>
> >> Cc: Len Brown <lenb at kernel.org>
> >> Cc: Mathieu Poirier <mathieu.poirier at linaro.org>
> >> Cc: Suzuki K Poulose <suzuki.poulose at arm.com>
> >> Cc: Mike Leach <mike.leach at linaro.org>
> >> Cc: Leo Yan <leo.yan at linaro.org>
> >> Cc: Sudeep Holla <sudeep.holla at arm.com>
> >> Cc: Lorenzo Pieralisi <lpieralisi at kernel.org>
> >> Cc: linux-acpi at vger.kernel.org
> >> Cc: coresight at lists.linaro.org
> >> Cc: linux-arm-kernel at lists.infradead.org
> >> Cc: linux-kernel at vger.kernel.org
> >> Reviewed-by: Sudeep Holla <sudeep.holla at arm.com> (for ACPI specific
> >> changes)
> >> Signed-off-by: Suzuki K Poulose <suzuki.poulose at arm.com>
> >> Signed-off-by: Anshuman Khandual <anshuman.khandual at arm.com>
> >
> > We would like to queue this via coresight tree. The acpi_amba bits have
> > been reviewed by Sudeep. Please could you give us an Ack, if you are
> > happy with the proposal ?
> >
> 
> Kind regards
> Suzuki
> 
> > Kind regards
> > Suzuki
> >
> >
> >> ---
> >>   drivers/acpi/acpi_amba.c                           |  1 -
> >>   drivers/hwtracing/coresight/coresight-etm4x-core.c | 10 ++++++++++
> >>   2 files changed, 10 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/acpi/acpi_amba.c b/drivers/acpi/acpi_amba.c
> >> index f5b443ab01c2..099966cbac5a 100644
> >> --- a/drivers/acpi/acpi_amba.c
> >> +++ b/drivers/acpi/acpi_amba.c
> >> @@ -22,7 +22,6 @@
> >>   static const struct acpi_device_id amba_id_list[] = {
> >>       {"ARMH0061", 0}, /* PL061 GPIO Device */
> >>       {"ARMH0330", 0}, /* ARM DMA Controller DMA-330 */
> >> -    {"ARMHC500", 0}, /* ARM CoreSight ETM4x */
> >>       {"ARMHC501", 0}, /* ARM CoreSight ETR */
> >>       {"ARMHC502", 0}, /* ARM CoreSight STM */
> >>       {"ARMHC503", 0}, /* ARM CoreSight Debug */
> >> diff --git a/drivers/hwtracing/coresight/coresight-etm4x-core.c
> >> b/drivers/hwtracing/coresight/coresight-etm4x-core.c
> >> index 43f583987250..703b6fcbb6a5 100644
> >> --- a/drivers/hwtracing/coresight/coresight-etm4x-core.c
> >> +++ b/drivers/hwtracing/coresight/coresight-etm4x-core.c
> >> @@ -3,6 +3,7 @@
> >>    * Copyright (c) 2014, The Linux Foundation. All rights reserved.
> >>    */
> >> +#include <linux/acpi.h>
> >>   #include <linux/bitops.h>
> >>   #include <linux/kernel.h>
> >>   #include <linux/moduleparam.h>
> >> @@ -2347,12 +2348,21 @@ static const struct of_device_id
> >> etm4_sysreg_match[] = {
> >>       {}
> >>   };
> >> +#ifdef CONFIG_ACPI
> >> +static const struct acpi_device_id etm4x_acpi_ids[] = {
> >> +    {"ARMHC500", 0}, /* ARM CoreSight ETM4x */
> >> +    {}
> >> +};
> >> +MODULE_DEVICE_TABLE(acpi, etm4x_acpi_ids);
> >> +#endif
> >> +
> >>   static struct platform_driver etm4_platform_driver = {
> >>       .probe        = etm4_probe_platform_dev,
> >>       .remove        = etm4_remove_platform_dev,
> >>       .driver            = {
> >>           .name            = "coresight-etm4x",
> >>           .of_match_table        = etm4_sysreg_match,
> >> +        .acpi_match_table    = ACPI_PTR(etm4x_acpi_ids),
> >>           .suppress_bind_attrs    = true,
> >>           .pm            = &etm4_dev_pm_ops,
> >>       },
> >
> 
> _______________________________________________
> CoreSight mailing list -- coresight at lists.linaro.org
> To unsubscribe send an email to coresight-leave at lists.linaro.org


More information about the linux-arm-kernel mailing list