linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RESEND PATCH V4 0/4] Introduce CoreSight STM support
@ 2016-03-08  6:33 Chunyan Zhang
  2016-03-08  6:33 ` [RESEND PATCH V4 2/4] Documentations: Add explanations of the case for non-configurable masters Chunyan Zhang
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: Chunyan Zhang @ 2016-03-08  6:33 UTC (permalink / raw)
  To: mathieu.poirier, alexander.shishkin
  Cc: mike.leach, Michael.Williams, al.grant, tor, nicolas.guion,
	pratikp, zhang.lyra, linux-kernel, linux-arm-kernel, linux-api,
	linux-doc

This patchset adds support for the CoreSight STM IP block.

In the fourth version, comments from various people have been
addressed.  Representing configurations where channels are shared
between multiple masterIDs has been kept unchanged from the previous
version because a viable alternative hasn't been suggested.

This RESEND PATCH 1/4 depends on the patch [3] which has been
merged into linux-next.

Changes from V3:
 - Removed ioctl get_options interface from the generic STM code and CoreSight STM driver.
 - Removed 'write_max' from the structure 'stm_drvdata', and changed 'write_64bit' to 'write_bytes'.
 - Revised stm_fundamental_data_size() to return the fundamental data size instead of 0/1.
 - Removed stm_remove() from the driver.
 - Revised the return value of ::packet() callback function according to [2].
 - Modified stm_send() to send one STP packet at a time.
 - Added comments to invariant/guaranteed CoreSight STM transaction mode.

Changes from V2:
 - Changed to return -EFAULT if failed on the command STP_GET_OPTIONS.
 - Used Alex's patch [1] instead of the last 2/6.
 - Removed the while loop from stm_send(), since the packet size passed
   to it isn't larger than 4 bytes on 32-bit system and 8 bytes on
   64-bit system.
 - Removed stm_send_64bit(), since the process of packets on 64-bit
   CS-STM should be basically the same with on 32-bit system, except the 
   maximum length of writing STM at a time.
 - Removed the support of writing 64-bit to CoreSight STM buffer at a time
   on 32-bit ARM architecture according to an ARM engineer suggestion.  As
   he said that the STM might receive a 64-bit write, or might receive a
   pair of 32-bit writes to the two addressed words in either order.
   So 64-bit write isn't guaranteed to work on the ARM 32-bit architecture.

Changes from v1:
 - Added a definition of coresight_simple_func() in CS-STM driver to
   avoid the kbuild test robot error for the time being.  This
   modification will be removed when merging the code in which the
   coresight_simple_func() has been moved to the header file.
 - Calculate the channel number according to the channel memory space size.


Thanks,
Chunyan

[1] https://lkml.org/lkml/2016/2/4/652
[2] https://lkml.org/lkml/2016/2/12/397
[3] https://lkml.org/lkml/2015/12/22/348

Chunyan Zhang (1):
  Documentations: Add explanations of the case for non-configurable
    masters

Mathieu Poirier (2):
  stm class: provision for statically assigned masterIDs
  coresight-stm: Bindings for System Trace Macrocell

Pratik Patel (1):
  coresight-stm: adding driver for CoreSight STM component

 .../ABI/testing/sysfs-bus-coresight-devices-stm    |  53 ++
 .../devicetree/bindings/arm/coresight.txt          |  28 +
 Documentation/trace/coresight.txt                  |  37 +-
 Documentation/trace/stm.txt                        |   6 +
 drivers/hwtracing/coresight/Kconfig                |  11 +
 drivers/hwtracing/coresight/Makefile               |   1 +
 drivers/hwtracing/coresight/coresight-stm.c        | 890 +++++++++++++++++++++
 drivers/hwtracing/stm/core.c                       |  17 +-
 drivers/hwtracing/stm/policy.c                     |  18 +-
 include/linux/coresight-stm.h                      |   6 +
 include/linux/stm.h                                |   8 +
 include/uapi/linux/coresight-stm.h                 |  21 +
 12 files changed, 1090 insertions(+), 6 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-bus-coresight-devices-stm
 create mode 100644 drivers/hwtracing/coresight/coresight-stm.c
 create mode 100644 include/linux/coresight-stm.h
 create mode 100644 include/uapi/linux/coresight-stm.h

-- 
1.9.1


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2016-03-31 16:18 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-08  6:33 [RESEND PATCH V4 0/4] Introduce CoreSight STM support Chunyan Zhang
2016-03-08  6:33 ` [RESEND PATCH V4 2/4] Documentations: Add explanations of the case for non-configurable masters Chunyan Zhang
2016-03-08  6:33 ` [RESEND PATCH V4 3/4] coresight-stm: Bindings for System Trace Macrocell Chunyan Zhang
     [not found] ` <1457418835-31417-1-git-send-email-zhang.chunyan-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-03-08  6:33   ` [RESEND PATCH V4 1/4] stm class: provision for statically assigned masterIDs Chunyan Zhang
2016-03-21  7:47     ` Alexander Shishkin
2016-03-21 19:04       ` Mathieu Poirier
     [not found]         ` <CANLsYkxsaGmkpq6cNNw+CeMDKK7wwdDoegEuG2oNPNp185_9Mg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-03-31 13:20           ` Alexander Shishkin
2016-03-31 16:18             ` Mathieu Poirier
2016-03-08  6:33   ` [RESEND PATCH V4 4/4] coresight-stm: adding driver for CoreSight STM component Chunyan Zhang
2016-03-14  9:53     ` Michael Williams
     [not found]       ` <HE1PR08MB1130236EF28E34442F362F828A880-P22sD0dWJi1S5jlqwlCNZikoKrxaZxrJvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2016-03-28  3:06         ` Chunyan Zhang
2016-03-25 12:48     ` Mathieu Poirier
     [not found]       ` <CANLsYkzDt5GLaqsY03xxe7nYTfF9W26rGWfmjwsZPM3FvDA4hg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-03-28  3:03         ` Chunyan Zhang
2016-03-25 12:51 ` [RESEND PATCH V4 0/4] Introduce CoreSight STM support Mathieu Poirier
     [not found]   ` <CANLsYkyZODA6dHpKZfx2DPaZ0qe==6T1FGgR5ajZASGmcuJXhw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-03-28  2:58     ` Chunyan Zhang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).