Skip to content

Commit

Permalink
Add tools-v2.12 binaries
Browse files Browse the repository at this point in the history
Generated with Intel SOF community build, identification "Build #6229".

Signed-off-by: Kai Vehmanen <[email protected]>
  • Loading branch information
kv2019i committed Jan 21, 2025
1 parent fb5a1ef commit ec682fa
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 0 deletions.
53 changes: 53 additions & 0 deletions v2.12.x/tools-v2.12/mtrace-reader.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
#!/usr/bin/env python3
# SPDX-License-Identifier: BSD-3-Clause
#
# Copyright (c) 2022, Intel Corporation. All rights reserved.

#pylint:disable=mixed-indentation

# Tool to stream data from Linux SOF driver "mtrace" debugfs
# interface to standard output. Plain "cat" is not sufficient
# as each read() syscall returns log data with a 32bit binary
# header, containing the payload length.

import struct
import os
import sys
import argparse

READ_BUFFER = 16384
MTRACE_FILE = "/sys/kernel/debug/sof/mtrace/core0"

parser = argparse.ArgumentParser()
parser.add_argument('-m', '--mark-chunks',
action='store_true')

args = parser.parse_args()

chunk_idx = 0

fd = os.open(MTRACE_FILE, os.O_RDONLY)
while fd >= 0:
# direct unbuffered os.read() must be used to comply with
# debugfs protocol used. each non-zero read will return
# a buffer containing a 32bit header and a payload
read_bytes = os.read(fd, READ_BUFFER)

# handle end-of-file
if len(read_bytes) == 0:
continue

if len(read_bytes) <= 4:
continue

header = struct.unpack('I', read_bytes[0:4])
data_len = header[0]
data = read_bytes[4:4+data_len]

if (args.mark_chunks):
chunk_msg = "\n--- Chunk #{} start (size: {}) ---\n" .format(chunk_idx, data_len)
sys.stdout.write(chunk_msg)

sys.stdout.buffer.write(data)
sys.stdout.flush()
chunk_idx += 1
Binary file added v2.12.x/tools-v2.12/sof-ctl
Binary file not shown.
Binary file added v2.12.x/tools-v2.12/sof-probes
Binary file not shown.

0 comments on commit ec682fa

Please sign in to comment.