lkml.org 
[lkml]   [2021]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH RFC/RFT 0/1] add simple logic analyzer using polling
Date
Okay, this one is maybe a bit brave, let's see if it is suitable for
upstream. This is an in-kernel logic analyzer based on GPIO polling with
local irqs disabled. Besides the driver, there is a script which
isolates a CPU to get towards the best possible result. I am aware of
the latency limitations. However, the intention is only for debugging.
Especially for remote debugging and to get a first impression, this has
already been useful. So, I wonder if we want to provide this for others,
too, and have it in Linus' tree. Documentation is within the patch, to
get a better idea what this is all about.

A branch with preparation for the Renesas Salvator-XS boards is here:
git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git renesas/topic/gpio-logic-analyzer

The documentation is also available online on the elinux wiki:
https://elinux.org/Kernel_GPIO_Logic_analyzer

Looking forward to comments. If somebody has a pointer how to detect if
a task was requested to be killed (while irqs and preemption are
disabled), I'd appreciate that to avoid the currently unkillable
sub-process.

All the best,

Wolfram


Wolfram Sang (1):
misc: add simple logic analyzer using polling

.../dev-tools/gpio-logic-analyzer.rst | 63 ++++
Documentation/dev-tools/index.rst | 1 +
.../bindings/misc/gpio-logic-analyzer.yaml | 40 ++
drivers/misc/Kconfig | 12 +
drivers/misc/Makefile | 1 +
drivers/misc/gpio-logic-analyzer.c | 355 ++++++++++++++++++
tools/debugging/gpio-logic-analyzer | 156 ++++++++
7 files changed, 628 insertions(+)
create mode 100644 Documentation/dev-tools/gpio-logic-analyzer.rst
create mode 100644 Documentation/devicetree/bindings/misc/gpio-logic-analyzer.yaml
create mode 100644 drivers/misc/gpio-logic-analyzer.c
create mode 100755 tools/debugging/gpio-logic-analyzer

--
2.30.0

\
 
 \ /
  Last update: 2021-03-30 10:58    [W:0.066 / U:0.128 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site