diff mbox series

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

Message ID 20230710062500.45147-7-anshuman.khandual@arm.com (mailing list archive)
State Handled Elsewhere, archived
Headers show
Series coresight: etm4x: Migrate ACPI AMBA devices to platform driver | expand

Commit Message

Anshuman Khandual July 10, 2023, 6:25 a.m. UTC
From: Suzuki K Poulose <suzuki.poulose@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@kernel.org>
Cc: Len Brown <lenb@kernel.org>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Leo Yan <leo.yan@linaro.org>
Cc: Sudeep Holla <sudeep.holla@arm.com>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: linux-acpi@vger.kernel.org
Cc: coresight@lists.linaro.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific changes)
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
 drivers/acpi/acpi_amba.c                           |  1 -
 drivers/hwtracing/coresight/coresight-etm4x-core.c | 10 ++++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

Comments

Suzuki K Poulose July 10, 2023, 4:40 p.m. UTC | #1
Rafael, Len

On 10/07/2023 07:25, Anshuman Khandual wrote:
> From: Suzuki K Poulose <suzuki.poulose@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@kernel.org>
> Cc: Len Brown <lenb@kernel.org>
> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
> Cc: Mike Leach <mike.leach@linaro.org>
> Cc: Leo Yan <leo.yan@linaro.org>
> Cc: Sudeep Holla <sudeep.holla@arm.com>
> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> Cc: linux-acpi@vger.kernel.org
> Cc: coresight@lists.linaro.org
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-kernel@vger.kernel.org
> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific changes)
> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> Signed-off-by: Anshuman Khandual <anshuman.khandual@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


> ---
>   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,
>   	},
Suzuki K Poulose July 19, 2023, 10:11 a.m. UTC | #2
Rafael, Len

Ping (packets 6, lost 100%).


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@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@kernel.org>
>> Cc: Len Brown <lenb@kernel.org>
>> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
>> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
>> Cc: Mike Leach <mike.leach@linaro.org>
>> Cc: Leo Yan <leo.yan@linaro.org>
>> Cc: Sudeep Holla <sudeep.holla@arm.com>
>> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
>> Cc: linux-acpi@vger.kernel.org
>> Cc: coresight@lists.linaro.org
>> Cc: linux-arm-kernel@lists.infradead.org
>> Cc: linux-kernel@vger.kernel.org
>> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific 
>> changes)
>> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
>> Signed-off-by: Anshuman Khandual <anshuman.khandual@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,
>>       },
>
Tanmay Jagdale July 21, 2023, 5:42 a.m. UTC | #3
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@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@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@kernel.org>
> >> Cc: Len Brown <lenb@kernel.org>
> >> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
> >> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
> >> Cc: Mike Leach <mike.leach@linaro.org>
> >> Cc: Leo Yan <leo.yan@linaro.org>
> >> Cc: Sudeep Holla <sudeep.holla@arm.com>
> >> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> >> Cc: linux-acpi@vger.kernel.org
> >> Cc: coresight@lists.linaro.org
> >> Cc: linux-arm-kernel@lists.infradead.org
> >> Cc: linux-kernel@vger.kernel.org
> >> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific
> >> changes)
> >> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> >> Signed-off-by: Anshuman Khandual <anshuman.khandual@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@lists.linaro.org
> To unsubscribe send an email to coresight-leave@lists.linaro.org
Suzuki K Poulose July 24, 2023, 4:25 p.m. UTC | #4
Hi Rafael/Len

On 19/07/2023 11:11, Suzuki K Poulose wrote:
> Rafael, Len
> 
> Ping (packets 6, lost 100%).
> 
> 
> 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@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@kernel.org>
>>> Cc: Len Brown <lenb@kernel.org>
>>> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
>>> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
>>> Cc: Mike Leach <mike.leach@linaro.org>
>>> Cc: Leo Yan <leo.yan@linaro.org>
>>> Cc: Sudeep Holla <sudeep.holla@arm.com>
>>> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
>>> Cc: linux-acpi@vger.kernel.org
>>> Cc: coresight@lists.linaro.org
>>> Cc: linux-arm-kernel@lists.infradead.org
>>> Cc: linux-kernel@vger.kernel.org
>>> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific 
>>> changes)
>>> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
>>> Signed-off-by: Anshuman Khandual <anshuman.khandual@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 ?
>>

Please could one of you respond to this patch ? We are blocked on your 
Ack for queuing this. There are machines out there, which rely on this
patch to use Arm self-hosted tracing based on CoreSight.

Kind regards
Suzuki

> 
> 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,
>>>       },
>>
>
Steve Clevenger July 25, 2023, 8:18 p.m. UTC | #5
Hi Rafael, Len,

On 7/24/2023 9:25 AM, Suzuki K Poulose wrote:
> Hi Rafael/Len
> 
> On 19/07/2023 11:11, Suzuki K Poulose wrote:
>> Rafael, Len
>>
>> Ping (packets 6, lost 100%).
>>
>>
>> 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@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@kernel.org>
>>>> Cc: Len Brown <lenb@kernel.org>
>>>> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
>>>> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
>>>> Cc: Mike Leach <mike.leach@linaro.org>
>>>> Cc: Leo Yan <leo.yan@linaro.org>
>>>> Cc: Sudeep Holla <sudeep.holla@arm.com>
>>>> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
>>>> Cc: linux-acpi@vger.kernel.org
>>>> Cc: coresight@lists.linaro.org
>>>> Cc: linux-arm-kernel@lists.infradead.org
>>>> Cc: linux-kernel@vger.kernel.org
>>>> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific
>>>> changes)
>>>> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
>>>> Signed-off-by: Anshuman Khandual <anshuman.khandual@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 ?
>>>
> 
> Please could one of you respond to this patch ? We are blocked on your
> Ack for queuing this. There are machines out there, which rely on this
> patch to use Arm self-hosted tracing based on CoreSight.
> 
> Kind regards
> Suzuki

Ampere Computing AmpereOne machines rely on this patch series to enable
System Register Access to the ETMv4. Ampere removed the ETM MMIO
descriptions from our CoreSight ACPI to use this.

Suzuki's e-mail requests for review/Ack of this patch thread date back
to May 30.

Thanks in advance,
Steve C.

> 
>>
>> 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,
>>>>       },
>>>
>>
>
Suzuki K Poulose July 26, 2023, 2:05 p.m. UTC | #6
On 25/07/2023 15:30, Rafael J. Wysocki wrote:
> On Tue, Jul 25, 2023 at 4:040x202FPM Suzuki K Poulose <suzuki.poulose@arm.com> wrote:
>>
>> On 25/07/2023 15:00, Rafael J. Wysocki wrote:
>>> On Tue, Jul 25, 2023 at 3:270x202FPM Suzuki K Poulose <suzuki.poulose@arm.com> wrote:
>>>>
>>>> On 25/07/2023 13:28, Rafael J. Wysocki wrote:
>>>>> On Tue, Jul 25, 2023 at 12:350x202FPM Suzuki K Poulose
>>>>> <suzuki.poulose@arm.com> wrote:
>>>>>>
>>>>>> Hi Rafael
>>>>>>
>>>>>> Apologies for hijacking this thread, but please please could
>>>>>> you respond to the following patch ?
>>>>>>
>>>>>> We have been waiting for your Ack since last two months.
>>>>>>
>>>>>> https://lkml.kernel.org/r/46a3d6d3-f14e-efde-83eb-5952f313f909@arm.com
>>>>>
>>>>> Sorry about that, but I'm not sure why you need an ACK from me for
>>>>> this.0x00A0 AMBA is an ARM thing and I'm not even familiar with the driver
>>>>> in question.
>>>>>
>>>>
>>>> I understand, but there is a change to the drivers/acpi/acpi_amba.c ,
>>>> which is technically under your maintenance. The change is removing
>>>> the custom hook for the ETMv4 ID from the AMBA list and moving it
>>>> directly under the ETMv4 driver. Greg would like an Ack from you
>>>> before that can be queued. It missed the merged window last time
>>>> due to that and didn't want to miss it again this time.
>>>
>>> OK, so please feel free to add an ACK from me to that patch.
>>>
>>
>> Thanks.
>>
>>> It also would be good to find an ARM maintainer for acpi_amba.c, so
>>> people don't have to wait for my ACK on every change in that file.
>>
>> Sudeep Holla (our resident ACPI expert) has reviewed the patch, but
>> I guess he is in the Reviewer ranks.
>
> Well, next time you get a Reviewed-by from Sudeep on ARM-related ACPI
> material, it is far more meaningful than my ACK.0x00A0 You probably don't
> need the latter if you have the former.

Thanks Rafael.

For others wondering about the weird threading, the above happened via private
exchange of emails and linking to this patch for the record.


Suzuki
Rafael J. Wysocki July 26, 2023, 2:33 p.m. UTC | #7
On Tue, Jul 25, 2023 at 10:18 PM Steve Clevenger OS
<scclevenger@os.amperecomputing.com> wrote:
>
>
> Hi Rafael, Len,
>
> On 7/24/2023 9:25 AM, Suzuki K Poulose wrote:
> > Hi Rafael/Len
> >
> > On 19/07/2023 11:11, Suzuki K Poulose wrote:
> >> Rafael, Len
> >>
> >> Ping (packets 6, lost 100%).
> >>
> >>
> >> 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@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@kernel.org>
> >>>> Cc: Len Brown <lenb@kernel.org>
> >>>> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
> >>>> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
> >>>> Cc: Mike Leach <mike.leach@linaro.org>
> >>>> Cc: Leo Yan <leo.yan@linaro.org>
> >>>> Cc: Sudeep Holla <sudeep.holla@arm.com>
> >>>> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> >>>> Cc: linux-acpi@vger.kernel.org
> >>>> Cc: coresight@lists.linaro.org
> >>>> Cc: linux-arm-kernel@lists.infradead.org
> >>>> Cc: linux-kernel@vger.kernel.org
> >>>> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific
> >>>> changes)
> >>>> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> >>>> Signed-off-by: Anshuman Khandual <anshuman.khandual@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 ?
> >>>
> >
> > Please could one of you respond to this patch ? We are blocked on your
> > Ack for queuing this. There are machines out there, which rely on this
> > patch to use Arm self-hosted tracing based on CoreSight.
> >
> > Kind regards
> > Suzuki
>
> Ampere Computing AmpereOne machines rely on this patch series to enable
> System Register Access to the ETMv4. Ampere removed the ETM MMIO
> descriptions from our CoreSight ACPI to use this.
>
> Suzuki's e-mail requests for review/Ack of this patch thread date back
> to May 30.

I've just talked to Suzuki about this:

https://lore.kernel.org/linux-acpi/20230726140515.368981-1-suzuki.poulose@arm.com

This patch has received a Reviewed-by from Sudeep which for all
purposes should be sufficient for any ARM-related ACPI material that
doesn't affect any other architectures.  An ACK from me (or Len for
that matter) would not make any real difference from the technical
perspective.

I would appreciate assigning an official ARM maintainer to acpi_amba.c
so as to avoid such unnecessary delays in the future.
Sudeep Holla July 26, 2023, 2:58 p.m. UTC | #8
On Wed, Jul 26, 2023 at 03:05:15PM +0100, Suzuki K Poulose wrote:
> On 25/07/2023 15:30, Rafael J. Wysocki wrote:
> > On Tue, Jul 25, 2023 at 4:040x202FPM Suzuki K Poulose <suzuki.poulose@arm.com> wrote:
> >>
> >> On 25/07/2023 15:00, Rafael J. Wysocki wrote:
> >>> On Tue, Jul 25, 2023 at 3:270x202FPM Suzuki K Poulose <suzuki.poulose@arm.com> wrote:
> >>>>
> >>>> On 25/07/2023 13:28, Rafael J. Wysocki wrote:
> >>>>> On Tue, Jul 25, 2023 at 12:350x202FPM Suzuki K Poulose
> >>>>> <suzuki.poulose@arm.com> wrote:
> >>>>>>
> >>>>>> Hi Rafael
> >>>>>>
> >>>>>> Apologies for hijacking this thread, but please please could
> >>>>>> you respond to the following patch ?
> >>>>>>
> >>>>>> We have been waiting for your Ack since last two months.
> >>>>>>
> >>>>>> https://lkml.kernel.org/r/46a3d6d3-f14e-efde-83eb-5952f313f909@arm.com
> >>>>>
> >>>>> Sorry about that, but I'm not sure why you need an ACK from me for
> >>>>> this.0x00A0 AMBA is an ARM thing and I'm not even familiar with the driver
> >>>>> in question.
> >>>>>
> >>>>
> >>>> I understand, but there is a change to the drivers/acpi/acpi_amba.c ,
> >>>> which is technically under your maintenance. The change is removing
> >>>> the custom hook for the ETMv4 ID from the AMBA list and moving it
> >>>> directly under the ETMv4 driver. Greg would like an Ack from you
> >>>> before that can be queued. It missed the merged window last time
> >>>> due to that and didn't want to miss it again this time.
> >>>
> >>> OK, so please feel free to add an ACK from me to that patch.
> >>>
> >>
> >> Thanks.
> >>
> >>> It also would be good to find an ARM maintainer for acpi_amba.c, so
> >>> people don't have to wait for my ACK on every change in that file.
> >>
> >> Sudeep Holla (our resident ACPI expert) has reviewed the patch, but
> >> I guess he is in the Reviewer ranks.
> >
> > Well, next time you get a Reviewed-by from Sudeep on ARM-related ACPI
> > material, it is far more meaningful than my ACK.0x00A0 You probably don't
> > need the latter if you have the former.

Thanks Rafael and this aligns with my understanding. I had mentioned to
Suzuki informally. Since I wasn't sure why this was not covered under
Arm ACPI maintainership for whatever historical reasons, I didn't make
it formally on the list. I think it would be better if we move that file
under it to be explicit and avoid any confusion in the future. I will
send the update soon.
Sudeep Holla July 26, 2023, 3:03 p.m. UTC | #9
On Wed, Jul 26, 2023 at 04:33:26PM +0200, Rafael J. Wysocki wrote:
> On Tue, Jul 25, 2023 at 10:18 PM Steve Clevenger OS
> <scclevenger@os.amperecomputing.com> wrote:
> >
> >
> > Hi Rafael, Len,
> >
> > On 7/24/2023 9:25 AM, Suzuki K Poulose wrote:
> > > Hi Rafael/Len
> > >
> > > On 19/07/2023 11:11, Suzuki K Poulose wrote:
> > >> Rafael, Len
> > >>
> > >> Ping (packets 6, lost 100%).
> > >>
> > >>
> > >> 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@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@kernel.org>
> > >>>> Cc: Len Brown <lenb@kernel.org>
> > >>>> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
> > >>>> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
> > >>>> Cc: Mike Leach <mike.leach@linaro.org>
> > >>>> Cc: Leo Yan <leo.yan@linaro.org>
> > >>>> Cc: Sudeep Holla <sudeep.holla@arm.com>
> > >>>> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> > >>>> Cc: linux-acpi@vger.kernel.org
> > >>>> Cc: coresight@lists.linaro.org
> > >>>> Cc: linux-arm-kernel@lists.infradead.org
> > >>>> Cc: linux-kernel@vger.kernel.org
> > >>>> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific
> > >>>> changes)
> > >>>> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> > >>>> Signed-off-by: Anshuman Khandual <anshuman.khandual@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 ?
> > >>>
> > >
> > > Please could one of you respond to this patch ? We are blocked on your
> > > Ack for queuing this. There are machines out there, which rely on this
> > > patch to use Arm self-hosted tracing based on CoreSight.
> > >
> > > Kind regards
> > > Suzuki
> >
> > Ampere Computing AmpereOne machines rely on this patch series to enable
> > System Register Access to the ETMv4. Ampere removed the ETM MMIO
> > descriptions from our CoreSight ACPI to use this.
> >
> > Suzuki's e-mail requests for review/Ack of this patch thread date back
> > to May 30.
> 
> I've just talked to Suzuki about this:
> 
> https://lore.kernel.org/linux-acpi/20230726140515.368981-1-suzuki.poulose@arm.com
> 
> This patch has received a Reviewed-by from Sudeep which for all
> purposes should be sufficient for any ARM-related ACPI material that
> doesn't affect any other architectures.  An ACK from me (or Len for
> that matter) would not make any real difference from the technical
> perspective.
> 
> I would appreciate assigning an official ARM maintainer to acpi_amba.c
> so as to avoid such unnecessary delays in the future.

Ah I just crossed and replied on other thread. I will soon send an update
to add this file under Arm ACPI for the maintenance.
Steve Clevenger July 26, 2023, 4:30 p.m. UTC | #10
Hi Sudeep,

On 7/26/2023 8:03 AM, Sudeep Holla wrote:
> On Wed, Jul 26, 2023 at 04:33:26PM +0200, Rafael J. Wysocki wrote:
>> On Tue, Jul 25, 2023 at 10:18 PM Steve Clevenger OS
>> <scclevenger@os.amperecomputing.com> wrote:
>>>
>>>
>>> Hi Rafael, Len,
>>>
>>> On 7/24/2023 9:25 AM, Suzuki K Poulose wrote:
>>>> Hi Rafael/Len
>>>>
>>>> On 19/07/2023 11:11, Suzuki K Poulose wrote:
>>>>> Rafael, Len
>>>>>
>>>>> Ping (packets 6, lost 100%).
>>>>>
>>>>>
>>>>> 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@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@kernel.org>
>>>>>>> Cc: Len Brown <lenb@kernel.org>
>>>>>>> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
>>>>>>> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
>>>>>>> Cc: Mike Leach <mike.leach@linaro.org>
>>>>>>> Cc: Leo Yan <leo.yan@linaro.org>
>>>>>>> Cc: Sudeep Holla <sudeep.holla@arm.com>
>>>>>>> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
>>>>>>> Cc: linux-acpi@vger.kernel.org
>>>>>>> Cc: coresight@lists.linaro.org
>>>>>>> Cc: linux-arm-kernel@lists.infradead.org
>>>>>>> Cc: linux-kernel@vger.kernel.org
>>>>>>> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> (for ACPI specific
>>>>>>> changes)
>>>>>>> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
>>>>>>> Signed-off-by: Anshuman Khandual <anshuman.khandual@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 ?
>>>>>>
>>>>
>>>> Please could one of you respond to this patch ? We are blocked on your
>>>> Ack for queuing this. There are machines out there, which rely on this
>>>> patch to use Arm self-hosted tracing based on CoreSight.
>>>>
>>>> Kind regards
>>>> Suzuki
>>>
>>> Ampere Computing AmpereOne machines rely on this patch series to enable
>>> System Register Access to the ETMv4. Ampere removed the ETM MMIO
>>> descriptions from our CoreSight ACPI to use this.
>>>
>>> Suzuki's e-mail requests for review/Ack of this patch thread date back
>>> to May 30.
>>
>> I've just talked to Suzuki about this:
>>
>> https://lore.kernel.org/linux-acpi/20230726140515.368981-1-suzuki.poulose@arm.com
>>
>> This patch has received a Reviewed-by from Sudeep which for all
>> purposes should be sufficient for any ARM-related ACPI material that
>> doesn't affect any other architectures.  An ACK from me (or Len for
>> that matter) would not make any real difference from the technical
>> perspective.
>>
>> I would appreciate assigning an official ARM maintainer to acpi_amba.c
>> so as to avoid such unnecessary delays in the future.
> 
> Ah I just crossed and replied on other thread. I will soon send an update
> to add this file under Arm ACPI for the maintenance.
> 

Thank you.

Steve C.
diff mbox series

Patch

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,
 	},