Skip to content

Commit

Permalink
drivers/coresight: Add UltraSoc System Memory Buffer driver
Browse files Browse the repository at this point in the history
Add driver for UltraSoc SMB(System Memory Buffer) device.
SMB provides a way to buffer messages from ETM, and store
these "CPU instructions trace" in system memory.
The SMB device is identifier as ACPI HID "HISI03A1". Device
system memory address resources are allocated using the _CRS
method and buffer modes is the circular buffer mode.

SMB is developed by UltraSoc technology, which is acquired by
Siemens, and we still use "UltraSoc" to name driver.

Signed-off-by: Qi Liu <liuqi115@huawei.com>
Signed-off-by: Junhao He <hejunhao3@huawei.com>
Tested-by: JunHao He <hejunhao3@huawei.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/20230114101302.62320-2-hejunhao3@huawei.com
  • Loading branch information
77liuqi authored and Suzuki K Poulose committed Jan 16, 2023
1 parent 479043b commit 06f5c29
Show file tree
Hide file tree
Showing 4 changed files with 786 additions and 0 deletions.
12 changes: 12 additions & 0 deletions drivers/hwtracing/coresight/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -201,4 +201,16 @@ config CORESIGHT_TRBE

To compile this driver as a module, choose M here: the module will be
called coresight-trbe.

config ULTRASOC_SMB
tristate "Ultrasoc system memory buffer drivers"
depends on ACPI || COMPILE_TEST
depends on ARM64 && CORESIGHT_LINKS_AND_SINKS
help
This driver provides support for the Ultrasoc system memory buffer (SMB).
SMB is responsible for receiving the trace data from Coresight ETM devices
and storing them to a system buffer.

To compile this driver as a module, choose M here: the module will be
called ultrasoc-smb.
endif
1 change: 1 addition & 0 deletions drivers/hwtracing/coresight/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,4 @@ obj-$(CONFIG_CORESIGHT_CTI) += coresight-cti.o
obj-$(CONFIG_CORESIGHT_TRBE) += coresight-trbe.o
coresight-cti-y := coresight-cti-core.o coresight-cti-platform.o \
coresight-cti-sysfs.o
obj-$(CONFIG_ULTRASOC_SMB) += ultrasoc-smb.o
Loading

0 comments on commit 06f5c29

Please sign in to comment.