mbox series

[v16,0/2] Add support for UltraSoc System Memory Buffer

Message ID 20230114101302.62320-1-hejunhao3@huawei.com (mailing list archive)
Headers show
Series Add support for UltraSoc System Memory Buffer | expand

Message

Junhao He Jan. 14, 2023, 10:13 a.m. UTC
Add support for UltraSoc System Memory Buffer.

Change since v15:
- Modify document based on Bagas and Suzuki's comments.
- Link: https://lore.kernel.org/lkml/20221220092945.30722-1-hejunhao3@huawei.com/

Change since v14:
- Add some helpers to the buffer and simplify dumping data according to Jonathan's comment.
- Link: https://lore.kernel.org/lkml/20221123123823.27973-1-hejunhao3@huawei.com/

Change since v13:
- Modify document and the patches description according to Bagas's comment.
- Add dependency on config ACPI, drop redundant enable hw in smb_update_buffer(),
  Modify smb_purge_data() description according to Suzuki's comment.
- Link: https://lore.kernel.org/lkml/20221114090316.63157-1-hejunhao3@huawei.com/

Change since v12:
- Modify the code style and add "#ifdef CONFIG_ACPI" according to Jonathan's comment.
- Address the comments from Yicong, included drop "buf_base"__iomem attribute,
  modify the "reading" type to bool and fix FIELD_PREP.
- Link: https://lore.kernel.org/lkml/20221109135008.9485-1-hejunhao3@huawei.com/

Change since v11:
- Modify the code style and rename the macro according to Jonathan's comment.
- Link: https://lore.kernel.org/lkml/20221107130624.59886-1-hejunhao3@huawei.com/

Change since v10:
- Rebase onto v6.1-rc4, included similar sysfs register accessors (as same as James's patch)
- Link: https://lore.kernel.org/lkml/20221022115929.7503-1-hejunhao3@huawei.com/

Change since v9:
- Update the Contact tag in SMB document. 
- Replace the spinlock with mutex.
- Do some clean-ups in "smb_enable()" and "smb_release()".
- Use classic memory mapped interface.
- Link: https://lore.kernel.org/linux-arm-kernel/20220818132231.28240-1-hejunhao3@huawei.com/

Change since v8:
- Insert a blank line at the end of the config tag in Kconfig according to Randy's comment.
- Link: https://lore.kernel.org/linux-arm-kernel/20220816131634.38195-1-hejunhao3@huawei.com/

Change since v7:
- Use the macros for register bit flags and numbers of resource.
- Cleanup punctuation.
- Update the Date tag and the KernelVersion tag in the document.
- Link: https://lore.kernel.org/lkml/20220712091353.34540-1-hejunhao3@huawei.com/

Change since v6:
- Modify the code style and driver description according to Suzuki's comment.
- Modify configuration of "drvdata->reading", to void problems in open/read
  concurrency scenario.
- Rename the macro of "SMB_FLOW_MASK".
- Use the "handle->head" to determine the page number and offset.
- Link: https://lore.kernel.org/linux-arm-kernel/20220606130223.57354-1-liuqi115@huawei.com/

  Change since v5:
- Address the comments from Suzuki, add some comments in SMB document, and modify
  configuration of "drvdata->reading", to void problems in multi-core concurrency scenario
- Link: https://lore.kernel.org/linux-arm-kernel/20220416083953.52610-1-liuqi115@huawei.com/

Change since v4:
- Add a simple document of SMB driver according to Suzuki's comment.
- Address the comments from Suzuki.
- Link: https://lore.kernel.org/linux-arm-kernel/20220128061755.31909-1-liuqi115@huawei.com/

Change since v3:
- Modify the file header according to community specifications.
- Address the comments from Mathieu.
- Link: https://lore.kernel.org/linux-arm-kernel/20211118110016.40398-1-liuqi115@huawei.com/

Change since v2:
- Move ultrasoc driver to drivers/hwtracing/coresight by Mathieu's comment.
- Link: https://lists.linaro.org/pipermail/coresight/2021-November/007310.html

Change since v1:
- Drop the document of UltraSoc according to Mathieu's comment.
- Add comments to explain some private hardware settings.
- Address the comments from Mathieu.
- Link: https://lists.linaro.org/pipermail/coresight/2021-August/006842.html

Change since RFC:
- Move driver to drivers/hwtracing/coresight/ultrasoc.
- Remove ultrasoc-axi-com.c, as AXI-COM doesn't need to be configured in
  basic tracing function.
- Remove ultrasoc.c as SMB does not need to register with the ultrasoc core.
- Address the comments from Mathieu and Suzuki.
- Link: https://lists.linaro.org/pipermail/coresight/2021-June/006535.html

Qi Liu (2):
  drivers/coresight: Add UltraSoc System Memory Buffer driver
  Documentation: Add document for UltraSoc SMB driver

 .../sysfs-bus-coresight-devices-ultra_smb     |  31 +
 .../trace/coresight/ultrasoc-smb.rst          |  83 +++
 drivers/hwtracing/coresight/Kconfig           |  12 +
 drivers/hwtracing/coresight/Makefile          |   1 +
 drivers/hwtracing/coresight/ultrasoc-smb.c    | 648 ++++++++++++++++++
 drivers/hwtracing/coresight/ultrasoc-smb.h    | 125 ++++
 6 files changed, 900 insertions(+)
 create mode 100644 Documentation/ABI/testing/sysfs-bus-coresight-devices-ultra_smb
 create mode 100644 Documentation/trace/coresight/ultrasoc-smb.rst
 create mode 100644 drivers/hwtracing/coresight/ultrasoc-smb.c
 create mode 100644 drivers/hwtracing/coresight/ultrasoc-smb.h

Comments

Suzuki K Poulose Jan. 16, 2023, 10:49 a.m. UTC | #1
On 14/01/2023 10:13, Junhao He wrote:
> Add support for UltraSoc System Memory Buffer.
> 
> Change since v15:
> - Modify document based on Bagas and Suzuki's comments.
> - Link: https://lore.kernel.org/lkml/20221220092945.30722-1-hejunhao3@huawei.com/
> 
> Change since v14:
> - Add some helpers to the buffer and simplify dumping data according to Jonathan's comment.
> - Link: https://lore.kernel.org/lkml/20221123123823.27973-1-hejunhao3@huawei.com/
> 
> Change since v13:
> - Modify document and the patches description according to Bagas's comment.
> - Add dependency on config ACPI, drop redundant enable hw in smb_update_buffer(),
>    Modify smb_purge_data() description according to Suzuki's comment.
> - Link: https://lore.kernel.org/lkml/20221114090316.63157-1-hejunhao3@huawei.com/
> 
> Change since v12:
> - Modify the code style and add "#ifdef CONFIG_ACPI" according to Jonathan's comment.
> - Address the comments from Yicong, included drop "buf_base"__iomem attribute,
>    modify the "reading" type to bool and fix FIELD_PREP.
> - Link: https://lore.kernel.org/lkml/20221109135008.9485-1-hejunhao3@huawei.com/
> 
> Change since v11:
> - Modify the code style and rename the macro according to Jonathan's comment.
> - Link: https://lore.kernel.org/lkml/20221107130624.59886-1-hejunhao3@huawei.com/
> 
> Change since v10:
> - Rebase onto v6.1-rc4, included similar sysfs register accessors (as same as James's patch)
> - Link: https://lore.kernel.org/lkml/20221022115929.7503-1-hejunhao3@huawei.com/
> 
> Change since v9:
> - Update the Contact tag in SMB document.
> - Replace the spinlock with mutex.
> - Do some clean-ups in "smb_enable()" and "smb_release()".
> - Use classic memory mapped interface.
> - Link: https://lore.kernel.org/linux-arm-kernel/20220818132231.28240-1-hejunhao3@huawei.com/
> 
> Change since v8:
> - Insert a blank line at the end of the config tag in Kconfig according to Randy's comment.
> - Link: https://lore.kernel.org/linux-arm-kernel/20220816131634.38195-1-hejunhao3@huawei.com/
> 
> Change since v7:
> - Use the macros for register bit flags and numbers of resource.
> - Cleanup punctuation.
> - Update the Date tag and the KernelVersion tag in the document.
> - Link: https://lore.kernel.org/lkml/20220712091353.34540-1-hejunhao3@huawei.com/
> 
> Change since v6:
> - Modify the code style and driver description according to Suzuki's comment.
> - Modify configuration of "drvdata->reading", to void problems in open/read
>    concurrency scenario.
> - Rename the macro of "SMB_FLOW_MASK".
> - Use the "handle->head" to determine the page number and offset.
> - Link: https://lore.kernel.org/linux-arm-kernel/20220606130223.57354-1-liuqi115@huawei.com/
> 
>    Change since v5:
> - Address the comments from Suzuki, add some comments in SMB document, and modify
>    configuration of "drvdata->reading", to void problems in multi-core concurrency scenario
> - Link: https://lore.kernel.org/linux-arm-kernel/20220416083953.52610-1-liuqi115@huawei.com/
> 
> Change since v4:
> - Add a simple document of SMB driver according to Suzuki's comment.
> - Address the comments from Suzuki.
> - Link: https://lore.kernel.org/linux-arm-kernel/20220128061755.31909-1-liuqi115@huawei.com/
> 
> Change since v3:
> - Modify the file header according to community specifications.
> - Address the comments from Mathieu.
> - Link: https://lore.kernel.org/linux-arm-kernel/20211118110016.40398-1-liuqi115@huawei.com/
> 
> Change since v2:
> - Move ultrasoc driver to drivers/hwtracing/coresight by Mathieu's comment.
> - Link: https://lists.linaro.org/pipermail/coresight/2021-November/007310.html
> 
> Change since v1:
> - Drop the document of UltraSoc according to Mathieu's comment.
> - Add comments to explain some private hardware settings.
> - Address the comments from Mathieu.
> - Link: https://lists.linaro.org/pipermail/coresight/2021-August/006842.html
> 
> Change since RFC:
> - Move driver to drivers/hwtracing/coresight/ultrasoc.
> - Remove ultrasoc-axi-com.c, as AXI-COM doesn't need to be configured in
>    basic tracing function.
> - Remove ultrasoc.c as SMB does not need to register with the ultrasoc core.
> - Address the comments from Mathieu and Suzuki.
> - Link: https://lists.linaro.org/pipermail/coresight/2021-June/006535.html
> 
> Qi Liu (2):
>    drivers/coresight: Add UltraSoc System Memory Buffer driver
>    Documentation: Add document for UltraSoc SMB driver


Queued to coresight next tree

https://git.kernel.org/coresight/c/06f5c2926aaa
https://git.kernel.org/coresight/c/2d4103ae31aa

Thanks for the patches

Suzuki