Commit Graph

7 Commits

Author SHA1 Message Date
Rob Oliver
38dd043be6 pw_trace_tokenized: Add tick rate to decoder
Applications need to be able to provide the devices trace clock rate
to the decoder.

NOTE: A future change will add an RPC and do this step automatically
for devices using the trace_rpc_server.

Test: Reran the included examples with different clock rates as args.
Change-Id: I2da937ede4a1d2fc296e268191ca12bc7fd78226
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/58720
Commit-Queue: Tri Pho <tripho@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
2021-09-08 02:16:30 +00:00
Adrien Larbanet
d1ca56c8cd overall: Adding IgnoreError() where Status was discarded
Bug: 387
Change-Id: I720b7a99a1c7a24eb8e2554629529d1e24394cb1
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/49041
Reviewed-by: Keir Mierle <keir@google.com>
Commit-Queue: Keir Mierle <keir@google.com>
2021-08-16 18:43:40 +00:00
Wyatt Hepler
63afc007a3 pw_preprocessor: Remove uses of the PW_UNUSED macro
- PW_UNUSED provides no value over the [[maybe_unused]] C++ attribute or
  a simple void cast. Replace uses of it and mark the macro as
  deprecated.
- Add a section to the Embedded C++ Guide about compiler warnings,
  including how to silence -Wunused-* warnings.

Change-Id: I078be670465ed87733f7c6d1f3d327915a0f49f6
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/32122
Commit-Queue: Wyatt Hepler <hepler@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
2021-02-24 21:44:55 +00:00
Rob Oliver
9d66337f90 pw_trace: Add basic RPCs to get trace
Add a basic RPC service to trace which currently provides 3 RPCs:
  - Enable(bool), Turns tracing on or off
  - IsEnabled, Returns if tracing is currently on or off
  - GetTraceData, Streams the encoded trace data.

This CL also adds a python script which uses these RPCs to retrieve
and decode trace data from a connected device.

Change-Id: Iaceb3fa87017939a17512738101af70bf335504a
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/31880
Reviewed-by: Paul Mathieu <paulmathieu@google.com>
Commit-Queue: Rob Oliver <rgoliver@google.com>
2021-02-19 19:09:25 +00:00
Robert Oliver
0cc2075e56 pw_trace: tokenizer filter example
Add a example for how to filter out traces. in this example, all traces
from the processing task which aren't trace_id 3 are skipped.

Change-Id: I8c1ad1931cf2319df85c13c01b6d41e359e6cbb6
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/13922
Commit-Queue: Rob Oliver <rgoliver@google.com>
Reviewed-by: (☞゚∀゚)☞ Tennessee Carmel-Veilleux  <tennessee@google.com>
2020-07-31 21:04:12 +00:00
Robert Oliver
19146916e6 pw_trace: tokenizer trigger example
Uses the trace sample app to demonstrate how to use trace events as
triggrs to capture a specific sequence of events. in this case the
example captures all events when handling job 3 of the sample app.

Change-Id: Ib278ad5318f428e1dee8813fd0d6cff9b77b1c1a
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/13921
Commit-Queue: Rob Oliver <rgoliver@google.com>
Reviewed-by: (☞゚∀゚)☞ Tennessee Carmel-Veilleux  <tennessee@google.com>
2020-07-31 21:03:43 +00:00
Robert Oliver
6d05de13e7 pw_trace: tokenizer basic example
Run the trace sample app and dump all trace data to a file.
- Use std::chrono::system_clock as the time source for host builds.
- Add trace_to_file.h which registers callbacks and saves all trace data
to a provided binary file.

Change-Id: I57fac75ed91fc98646e7aae920897687a39549ab
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/13802
Commit-Queue: Rob Oliver <rgoliver@google.com>
Reviewed-by: (☞゚∀゚)☞ Tennessee Carmel-Veilleux  <tennessee@google.com>
2020-07-31 20:57:23 +00:00