2020-08-13 13:01:53

by liuqi (BA)

[permalink] [raw]
Subject: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device

Add ETMv4 periperhal ID for HiSilicon Hip08 and Hip09 platform. Hip08
contains ETMv4.2 device and Hip09 contains ETMv4.5 device.

Signed-off-by: Qi Liu <[email protected]>
---
drivers/hwtracing/coresight/coresight-etm4x.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c b/drivers/hwtracing/coresight/coresight-etm4x.c
index 6d7d216..7797a57 100644
--- a/drivers/hwtracing/coresight/coresight-etm4x.c
+++ b/drivers/hwtracing/coresight/coresight-etm4x.c
@@ -1587,6 +1587,8 @@ static const struct amba_id etm4_ids[] = {
CS_AMBA_UCI_ID(0x000bb805, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A55 */
CS_AMBA_UCI_ID(0x000bb804, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A76 */
CS_AMBA_UCI_ID(0x000cc0af, uci_id_etm4),/* Marvell ThunderX2 */
+ CS_AMBA_UCI_ID(0x000b6d01, uci_id_etm4),/* HiSilicon-Hip08 */
+ CS_AMBA_UCI_ID(0x000b6d02, uci_id_etm4),/* HiSilicon-Hip09 */
{},
};

--
2.8.1


2020-08-13 13:41:56

by Suzuki K Poulose

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device

On 08/13/2020 01:59 PM, Qi Liu wrote:
> Add ETMv4 periperhal ID for HiSilicon Hip08 and Hip09 platform. Hip08
> contains ETMv4.2 device and Hip09 contains ETMv4.5 device.
>
> Signed-off-by: Qi Liu <[email protected]>
> ---
> drivers/hwtracing/coresight/coresight-etm4x.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c b/drivers/hwtracing/coresight/coresight-etm4x.c
> index 6d7d216..7797a57 100644
> --- a/drivers/hwtracing/coresight/coresight-etm4x.c
> +++ b/drivers/hwtracing/coresight/coresight-etm4x.c
> @@ -1587,6 +1587,8 @@ static const struct amba_id etm4_ids[] = {
> CS_AMBA_UCI_ID(0x000bb805, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A55 */
> CS_AMBA_UCI_ID(0x000bb804, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A76 */
> CS_AMBA_UCI_ID(0x000cc0af, uci_id_etm4),/* Marvell ThunderX2 */
> + CS_AMBA_UCI_ID(0x000b6d01, uci_id_etm4),/* HiSilicon-Hip08 */
> + CS_AMBA_UCI_ID(0x000b6d02, uci_id_etm4),/* HiSilicon-Hip09 */

Acked-by: Suzuki K Poulose <[email protected]>

2020-08-13 21:03:07

by Mathieu Poirier

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device

On Thu, Aug 13, 2020 at 08:59:22PM +0800, Qi Liu wrote:
> Add ETMv4 periperhal ID for HiSilicon Hip08 and Hip09 platform. Hip08
> contains ETMv4.2 device and Hip09 contains ETMv4.5 device.
>
> Signed-off-by: Qi Liu <[email protected]>

I have applied your patch to my local branch - it will be published on Monday
with the release of the v5.9-rc1 kernel.

Thanks,
Mathieu

> ---
> drivers/hwtracing/coresight/coresight-etm4x.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c b/drivers/hwtracing/coresight/coresight-etm4x.c
> index 6d7d216..7797a57 100644
> --- a/drivers/hwtracing/coresight/coresight-etm4x.c
> +++ b/drivers/hwtracing/coresight/coresight-etm4x.c
> @@ -1587,6 +1587,8 @@ static const struct amba_id etm4_ids[] = {
> CS_AMBA_UCI_ID(0x000bb805, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A55 */
> CS_AMBA_UCI_ID(0x000bb804, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A76 */
> CS_AMBA_UCI_ID(0x000cc0af, uci_id_etm4),/* Marvell ThunderX2 */
> + CS_AMBA_UCI_ID(0x000b6d01, uci_id_etm4),/* HiSilicon-Hip08 */
> + CS_AMBA_UCI_ID(0x000b6d02, uci_id_etm4),/* HiSilicon-Hip09 */
> {},
> };
>
> --
> 2.8.1
>

2022-05-26 00:02:47

by Alexei Budankov

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device


Hi Qi Liu,

On 13.08.2020 15:59, Qi Liu wrote:
> Add ETMv4 periperhal ID for HiSilicon Hip08 and Hip09 platform. Hip08
> contains ETMv4.2 device and Hip09 contains ETMv4.5 device.
>
> Signed-off-by: Qi Liu <[email protected]>
> ---
> drivers/hwtracing/coresight/coresight-etm4x.c | 2 ++
> 1 file changed, 2 insertions(+)

Thanks for your patch.
I would like to test HiSilicon ETM device feature on
Kunpeng 920 based server.
I applied the patch and booted the kernel with the changes.
However I don't see any device files neither here:
/sys/bus/coresight/devices/
nor here:
/sys/bus/event_source/devices/cs_etm/sinks/
What should a user expect new in os with this patch added?

Thanks,
Alexei


>
> diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c b/drivers/hwtracing/coresight/coresight-etm4x.c
> index 6d7d216..7797a57 100644
> --- a/drivers/hwtracing/coresight/coresight-etm4x.c
> +++ b/drivers/hwtracing/coresight/coresight-etm4x.c
> @@ -1587,6 +1587,8 @@ static const struct amba_id etm4_ids[] = {
> CS_AMBA_UCI_ID(0x000bb805, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A55 */
> CS_AMBA_UCI_ID(0x000bb804, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A76 */
> CS_AMBA_UCI_ID(0x000cc0af, uci_id_etm4),/* Marvell ThunderX2 */
> + CS_AMBA_UCI_ID(0x000b6d01, uci_id_etm4),/* HiSilicon-Hip08 */
> + CS_AMBA_UCI_ID(0x000b6d02, uci_id_etm4),/* HiSilicon-Hip09 */
> {},
> };
>
> --
> 2.8.1

2022-05-26 20:47:03

by liuqi (BA)

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device


Hi Alexei,

On 2022/5/25 23:10, Alexei Budankov wrote:
>
> Hi Qi Liu,
>
> On 13.08.2020 15:59, Qi Liu wrote:
>> Add ETMv4 periperhal ID for HiSilicon Hip08 and Hip09 platform. Hip08
>> contains ETMv4.2 device and Hip09 contains ETMv4.5 device.
>>
>> Signed-off-by: Qi Liu <[email protected]>
>> ---
>>   drivers/hwtracing/coresight/coresight-etm4x.c | 2 ++
>>   1 file changed, 2 insertions(+)
>
> Thanks for your patch.
> I would like to test HiSilicon ETM device feature on
> Kunpeng 920 based server.
> I applied the patch and booted the kernel with the changes.
> However I don't see any device files neither here:
> /sys/bus/coresight/devices/

Thanks for your test :)

Kunpeng 920 platform(Non-PG) support tracing CPU instruction, source
device is coresight ETM, link device is coresight funnel and sink device
is ultrasoc SMB. So you need to insmod coresight-* driver and SMB
driver, which patch is :
Add support for UltraSoc System Memory Buffer
https://lore.kernel.org/linux-arm-kernel/[email protected]/

by the way, can you help to check /sys/bus/amba/devices/, and make sure
that the firmware of your board has supported ETM, funnel and SMB devices?

Thanks,
Qi

> nor here:
> /sys/bus/event_source/devices/cs_etm/sinks/
> What should a user expect new in os with this patch added?


>
> Thanks,
> Alexei
>


>
>>
>> diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c
>> b/drivers/hwtracing/coresight/coresight-etm4x.c
>> index 6d7d216..7797a57 100644
>> --- a/drivers/hwtracing/coresight/coresight-etm4x.c
>> +++ b/drivers/hwtracing/coresight/coresight-etm4x.c
>> @@ -1587,6 +1587,8 @@ static const struct amba_id etm4_ids[] = {
>>       CS_AMBA_UCI_ID(0x000bb805, uci_id_etm4),/* Qualcomm Kryo 4XX
>> Cortex-A55 */
>>       CS_AMBA_UCI_ID(0x000bb804, uci_id_etm4),/* Qualcomm Kryo 4XX
>> Cortex-A76 */
>>       CS_AMBA_UCI_ID(0x000cc0af, uci_id_etm4),/* Marvell ThunderX2 */
>> +    CS_AMBA_UCI_ID(0x000b6d01, uci_id_etm4),/* HiSilicon-Hip08 */
>> +    CS_AMBA_UCI_ID(0x000b6d02, uci_id_etm4),/* HiSilicon-Hip09 */
>>       {},
>>   };
>>
>> --
>> 2.8.1
> .

2022-05-27 12:01:52

by Alexei Budankov

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device

Hi Suzuki,

On 26.05.2022 12:59, Suzuki K Poulose wrote:
> Hi
>
>
>
> On 26/05/2022 09:00, Alexei Budankov wrote:
>> Hi,
>>
>> On 26.05.2022 10:47, liuqi (BA) wrote:
>>>
>>>
>>> On 2022/5/26 15:23, Alexei Budankov wrote:
>>>> Hi Qi,
>>>>
>> <SNIP>
>>>>
>>>> Look like our server firmware should be upgraded, right?
>>>
>>> Yes, seems firmware should be upgraded first, and then you could test ETM device :)
>>
>> I would appreciate if you could share some links to upgrade bits and docs, if possible,
>> so we could use it to perform the upgrade.
>
> Does your system use ACPI based firmware ? If that is

Not sure about it yet.

> the case, we do not have the support for ETM with system instructions
> at the moment. Anshuman is currently working on addressing
> this.

Thanks for clarification. Good to know.

Thanks,
Alexei

>
> Cheers
> Suzuki
>
>>
>> Thanks, > Alexei
>>
>
> .

2022-05-27 12:04:58

by Suzuki K Poulose

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device

Hi



On 26/05/2022 09:00, Alexei Budankov wrote:
> Hi,
>
> On 26.05.2022 10:47, liuqi (BA) wrote:
>>
>>
>> On 2022/5/26 15:23, Alexei Budankov wrote:
>>> Hi Qi,
>>>
> <SNIP>
>>>
>>> Look like our server firmware should be upgraded, right?
>>
>> Yes, seems firmware should be upgraded first, and then you could test ETM device :)
>
> I would appreciate if you could share some links to upgrade bits and docs, if possible,
> so we could use it to perform the upgrade.

Does your system use ACPI based firmware ? If that is
the case, we do not have the support for ETM with system instructions
at the moment. Anshuman is currently working on addressing
this.

Cheers
Suzuki

>
> Thanks, > Alexei
>


2022-05-28 00:47:06

by liuqi (BA)

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device



On 2022/5/26 15:23, Alexei Budankov wrote:
> Hi Qi,
>
> On 26.05.2022 5:56, liuqi (BA) wrote:
>>
>> Hi Alexei,
>>
>> On 2022/5/25 23:10, Alexei Budankov wrote:
>>>
>>> Hi Qi Liu,
>>>
>>> On 13.08.2020 15:59, Qi Liu wrote:
>>>> Add ETMv4 periperhal ID for HiSilicon Hip08 and Hip09 platform. Hip08
>>>> contains ETMv4.2 device and Hip09 contains ETMv4.5 device.
>>>>
>>>> Signed-off-by: Qi Liu <[email protected]>
>>>> ---
>>>>   drivers/hwtracing/coresight/coresight-etm4x.c | 2 ++
>>>>   1 file changed, 2 insertions(+)
>>>
>>> Thanks for your patch.
>>> I would like to test HiSilicon ETM device feature on
>>> Kunpeng 920 based server.
>>> I applied the patch and booted the kernel with the changes.
>>> However I don't see any device files neither here:
>>> /sys/bus/coresight/devices/
>>
>> Thanks for your test :)
>
> Thanks for quick reply. Appreciate it much. :)
>
>>
>> Kunpeng 920 platform(Non-PG) support tracing CPU instruction, source device is coresight ETM, link device is coresight funnel and sink device is ultrasoc SMB. So you need to insmod coresight-* driver and SMB driver, which patch is :
>> Add support for UltraSoc System Memory Buffer
>> https://lore.kernel.org/linux-arm-kernel/[email protected]/
>
> I will try it shortly and let you know.
>
>>
>> by the way, can you help to check /sys/bus/amba/devices/, and make sure that the firmware of your board has supported ETM, funnel and SMB devices?
>
> Here we go:
>
> huawei@armubuntu:~$ pwd
> /home/huawei
> huawei@armubuntu:~$ ls /sys/bus/amba/devices/
> huawei@armubuntu:~$
>
> Look like our server firmware should be upgraded, right?

Yes, seems firmware should be upgraded first, and then you could test
ETM device :)

Best regards,
Qi
> Your help and support is greatly appreciated.
> > Thanks,
> Alexei
>
>>
>> Thanks,
>> Qi
>>
>>> nor here:
>>> /sys/bus/event_source/devices/cs_etm/sinks/
>>> What should a user expect new in os with this patch added?
>>
>>
>>>
>>> Thanks,
>>> Alexei
>>>
>>
>>
>>>
>>>>
>>>> diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c b/drivers/hwtracing/coresight/coresight-etm4x.c
>>>> index 6d7d216..7797a57 100644
>>>> --- a/drivers/hwtracing/coresight/coresight-etm4x.c
>>>> +++ b/drivers/hwtracing/coresight/coresight-etm4x.c
>>>> @@ -1587,6 +1587,8 @@ static const struct amba_id etm4_ids[] = {
>>>>       CS_AMBA_UCI_ID(0x000bb805, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A55 */
>>>>       CS_AMBA_UCI_ID(0x000bb804, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A76 */
>>>>       CS_AMBA_UCI_ID(0x000cc0af, uci_id_etm4),/* Marvell ThunderX2 */
>>>> +    CS_AMBA_UCI_ID(0x000b6d01, uci_id_etm4),/* HiSilicon-Hip08 */
>>>> +    CS_AMBA_UCI_ID(0x000b6d02, uci_id_etm4),/* HiSilicon-Hip09 */
>>>>       {},
>>>>   };
>>>>
>>>> --
>>>> 2.8.1
>>> .
>> .
> .
>

2022-05-28 06:25:43

by Alexei Budankov

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device

Hi,

On 26.05.2022 10:47, liuqi (BA) wrote:
>
>
> On 2022/5/26 15:23, Alexei Budankov wrote:
>> Hi Qi,
>>
<SNIP>
>>
>> Look like our server firmware should be upgraded, right?
>
> Yes, seems firmware should be upgraded first, and then you could test ETM device :)

I would appreciate if you could share some links to upgrade bits and docs, if possible,
so we could use it to perform the upgrade.

Thanks,
Alexei


2022-05-28 20:35:53

by Alexei Budankov

[permalink] [raw]
Subject: Re: [PATCH v2] coresight: etm4x: Add Support for HiSilicon ETM device

Hi Qi,

On 26.05.2022 5:56, liuqi (BA) wrote:
>
> Hi Alexei,
>
> On 2022/5/25 23:10, Alexei Budankov wrote:
>>
>> Hi Qi Liu,
>>
>> On 13.08.2020 15:59, Qi Liu wrote:
>>> Add ETMv4 periperhal ID for HiSilicon Hip08 and Hip09 platform. Hip08
>>> contains ETMv4.2 device and Hip09 contains ETMv4.5 device.
>>>
>>> Signed-off-by: Qi Liu <[email protected]>
>>> ---
>>>   drivers/hwtracing/coresight/coresight-etm4x.c | 2 ++
>>>   1 file changed, 2 insertions(+)
>>
>> Thanks for your patch.
>> I would like to test HiSilicon ETM device feature on
>> Kunpeng 920 based server.
>> I applied the patch and booted the kernel with the changes.
>> However I don't see any device files neither here:
>> /sys/bus/coresight/devices/
>
> Thanks for your test :)

Thanks for quick reply. Appreciate it much. :)

>
> Kunpeng 920 platform(Non-PG) support tracing CPU instruction, source device is coresight ETM, link device is coresight funnel and sink device is ultrasoc SMB. So you need to insmod coresight-* driver and SMB driver, which patch is :
> Add support for UltraSoc System Memory Buffer
> https://lore.kernel.org/linux-arm-kernel/[email protected]/

I will try it shortly and let you know.

>
> by the way, can you help to check /sys/bus/amba/devices/, and make sure that the firmware of your board has supported ETM, funnel and SMB devices?

Here we go:

huawei@armubuntu:~$ pwd
/home/huawei
huawei@armubuntu:~$ ls /sys/bus/amba/devices/
huawei@armubuntu:~$

Look like our server firmware should be upgraded, right?
Your help and support is greatly appreciated.

Thanks,
Alexei

>
> Thanks,
> Qi
>
>> nor here:
>> /sys/bus/event_source/devices/cs_etm/sinks/
>> What should a user expect new in os with this patch added?
>
>
>>
>> Thanks,
>> Alexei
>>
>
>
>>
>>>
>>> diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c b/drivers/hwtracing/coresight/coresight-etm4x.c
>>> index 6d7d216..7797a57 100644
>>> --- a/drivers/hwtracing/coresight/coresight-etm4x.c
>>> +++ b/drivers/hwtracing/coresight/coresight-etm4x.c
>>> @@ -1587,6 +1587,8 @@ static const struct amba_id etm4_ids[] = {
>>>       CS_AMBA_UCI_ID(0x000bb805, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A55 */
>>>       CS_AMBA_UCI_ID(0x000bb804, uci_id_etm4),/* Qualcomm Kryo 4XX Cortex-A76 */
>>>       CS_AMBA_UCI_ID(0x000cc0af, uci_id_etm4),/* Marvell ThunderX2 */
>>> +    CS_AMBA_UCI_ID(0x000b6d01, uci_id_etm4),/* HiSilicon-Hip08 */
>>> +    CS_AMBA_UCI_ID(0x000b6d02, uci_id_etm4),/* HiSilicon-Hip09 */
>>>       {},
>>>   };
>>>
>>> -- 
>>> 2.8.1
>> .
> .