Age | Commit message (Collapse) | Author |
|
Function etm_writel_cp14() takes an offset and a value rather
than the other way around, something this patch is correcting.
The semantic remains the same since it is only a function stub.
Signed-off-by: Kaixu Xia <xiakaixu@huawei.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 5fb31cd839c21130c0b2524ceb9244e98dfe10e3)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
The CoreSight ETM/PTM driver contains a check for a
CONFIG_CORESIGHT_SOURCE_ETM_DEFAULT_ENABLE macro. But there's no related
Kconfig symbol CORESIGHT_SOURCE_ETM_DEFAULT_ENABLE. Remove that check
and the single line of code it hides.
Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 406b9f659fbc966ab47a1fe8f5c1a2e8110483ad)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
Some DT specification will represent CPU nodes with address
cells greater than one, making the current code fail. Using
the proper retrieval helper function ensure the correct hwid
for CPUs is read properly with different address cell size.
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 34a03c1d30f04ca7439c685c0ea9b7d79c353705)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
There are some extra spaces, so just remove them from these lines.
Signed-off-by: Kaixu Xia <xiakaixu@huawei.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit d786a47de97fd194d6cf4f9087543119b9b330c3)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
When founding a component that has orphan connections, we should
validate if it match the newly added device. If it does not match,
only then should the @still_orphan flag should be set.
The tested result as follows.
pre:
/sys/bus/coresight/devices # echo 1 > e3c42000.etb/enable_sink
/sys/bus/coresight/devices # echo 1 > e3c7c000.ptm/enable_source
[ 15.527692] Unable to handle kernel NULL pointer dereference at virtual address 00000124
[ 15.555142] pgd = c2294000
[ 15.564226] [00000124] *pgd=3d393831, *pte=00000000, *ppte=00000000
[ 15.585391] Internal error: Oops: 817 [#1] PREEMPT SMP ARM
[ 15.603807] CPU: 0 PID: 144 Comm: sh Not tainted 3.17.0-rc1-12634-g1222fe0-dirty #3
[ 15.629490] task: ed3803c0 ti: c213a000 task.ti: c213a000
[ 15.647627] PC is at coresight_build_paths+0x1c/0x314
[ 15.664579] LR is at coresight_build_paths+0x6c/0x314
[ 15.681526] pc : [<c02da20c>] lr : [<c02da25c>] psr: 20000013
[ 15.681526] sp : c213be88 ip : c02da800 fp : 00000000
[ 15.720023] r10: 00000002 r9 : ed13250c r8 : 00000001
[ 15.737549] r7 : c213bee8 r6 : ffffffea r5 : 00000000 r4 : 00000124
[ 15.759446] r3 : ed216f24 r2 : 00000001 r1 : c213bee8 r0 : 00000000
[ 15.781346] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
post:
/sys/bus/coresight/devices # echo 1 > e3c42000.etb/enable_sink
/sys/bus/coresight/devices # echo 1 > e3c7c000.ptm/enable_source
[ 59.934255] coresight-etb10 e3c42000.etb: ETB enabled
[ 59.951317] coresight-replicator replicator0: REPLICATOR enabled
[ 59.971581] coresight-funnel e3c41000.funnel: FUNNEL inport 0 enabled
[ 59.993334] coresight-etm3x e3c7c000.ptm: ETM tracing enabled
Signed-off-by: Kaixu Xia <xiakaixu@huawei.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 22394bc58543639e5135f19eee2b03d14e4a9b66)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
According to the classification, the type of replicator
is link, so the subtype should also be link_subtype.
Signed-off-by: Kaixu Xia <xiakaixu@huawei.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 410d841a599683408a77f42f110cd17298682520)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
A validity check should be made on the remote device, i.e rdev,
rather than the current device.
Signed-off-by: Kaixu Xia <xiakaixu@huawei.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 2ccffaf92e7b7cc9dfa6c3458fc9cb151621680a)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
Outports is a member of the struct pdata and should be
a better choice.
Signed-off-by: Kaixu Xia <xiakaixu@huawei.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit f7c55298f17f0bf9d257ea7f2f15cf920248db5b)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
Debugfs isn't used for coresight configuration, so the corresponding
comments should be changed.
Signed-off-by: Kaixu Xia <xiakaixu@huawei.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit ff1e33b0c16ba422e3bf3fa8cc7e89b2c958e193)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
The coresight TRM specify that a component's trace ID should
be other than 0.
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit b2c09284bbfe36f9ba0e3e8bec8bb3c4789b3911)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
module_amba_driver() makes the code simpler by eliminating
boilerplate code.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 3ff7ca051a43bf2dfd1eebdd6c771c4b7a276d8e)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
module_amba_driver() makes the code simpler by eliminating
boilerplate code.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit d2e580c272d19afff768b56dd0f5d2095cb5a07c)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
module_amba_driver() makes the code simpler by eliminating
boilerplate code.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit a48f52e185f7f6da2c53f8dd4efda963c32b73f1)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
module_amba_driver() makes the code simpler by eliminating
boilerplate code.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 52d6bbb9b06cac67ec3c016bc9758a1815022b2b)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
There are some missing unlocks on the error paths.
Fixes: a939fc5a71ad ('coresight-etm: add CoreSight ETM/PTM driver')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 6ad1095990328e7e4b3a0e260825ad4b6406785a)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
There is no need of .owner field for driver using
module_platform_driver.
Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit ac610cd7c2b13d7f916ebb73c2ae6b91c1d53a61)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
fixes a typo %s/eveyone/everyone/ in function CS_UNLOCK.
Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 84b763d5b808ee6c23d95314ac81859cab471adb)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
This driver manages CoreSight ETM (Embedded Trace Macrocell) that
supports processor tracing. Currently supported version are ARM
ETMv3.x and PTM1.x.
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
coresight-etm3x: adding missing error checking
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit a939fc5a71ad531633610242400c262e78731532)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
This driver manages non-configurable CoreSight Replicator that
takes a single input trace data stream and replicates it to
produce two identical trace data output streams. Replicators
are typically used to route single interleaved trace data
stream to two or more sinks.
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit ceacc1d9b7ae41e4be185596306be17537682fb1)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
This driver manages CoreSight Funnel which acts as a link.
Funnels have multiple input ports (typically 8) each of which
represents an input trace data stream. These multiple input trace
data streams are interleaved into a single output stream coming
out of the Funnel.
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 6e21e3451556af6ada01e2206d5949fc654d75e1)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
This driver manages CoreSight ETB (Embedded Trace Buffer) which
acts as a circular buffer sink collecting generated trace data.
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit fdfc0d8a06b56c3ca8fc3d7d271b3c8e99e6d55c)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
This driver manages CoreSight TPIU (Trace Port Interface Unit)
which acts as a sink. TPIU is typically connected to some offchip
hardware hosting a storage buffer.
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit dc161b9f01142c6b2c985290b7aa3e58e2408036)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
This driver manages CoreSight TMC (Trace Memory Controller) which
can act as a link or a sink depending upon its configuration. It
can present itself as an ETF (Embedded Trace FIFO) or ETR
(Embedded Trace Router).
ETF when configured in circular buffer mode acts as a trace
collection sink. When configured in HW fifo mode it acts as link.
ETR always acts as a sink and can be used to route data to memory
allocated in RAM.
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit bc4bf7fe98daf4e64cc5ffc6cdc0e820f4d99c14)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
CoreSight components are compliant with the ARM CoreSight
architecture specification and can be connected in various
topologies to suit a particular SoC tracing needs. These trace
components can generally be classified as sources, links and
sinks. Trace data produced by one or more sources flows through
the intermediate links connecting the source to the currently
selected sink.
The CoreSight framework provides an interface for the CoreSight trace
drivers to register themselves with. It's intended to build up a
topological view of the CoreSight components and configure the
correct serie of components on user input via sysfs.
For eg., when enabling a source, the framework builds up a path
consisting of all the components connecting the source to the
currently selected sink(s) and enables all of them.
The framework also supports switching between available sinks
and provides status information to user space applications
through the debugfs interface.
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit a06ae8609b3dd06b957a6e4e965772a8a14d3af5)
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Conflicts:
arch/arm/Kconfig.debug
drivers/Makefile
|