xref: /freebsd-src/sys/contrib/device-tree/Bindings/arm/arm,trace-buffer-extension.yaml (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1*aa1a8ff2SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2b97ee269SEmmanuel Vadot# Copyright 2021, Arm Ltd
3b97ee269SEmmanuel Vadot%YAML 1.2
4b97ee269SEmmanuel Vadot---
5*aa1a8ff2SEmmanuel Vadot$id: http://devicetree.org/schemas/arm/arm,trace-buffer-extension.yaml#
6*aa1a8ff2SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7b97ee269SEmmanuel Vadot
8b97ee269SEmmanuel Vadottitle: ARM Trace Buffer Extensions
9b97ee269SEmmanuel Vadot
10b97ee269SEmmanuel Vadotmaintainers:
11b97ee269SEmmanuel Vadot  - Anshuman Khandual <anshuman.khandual@arm.com>
12b97ee269SEmmanuel Vadot
13b97ee269SEmmanuel Vadotdescription: |
14b97ee269SEmmanuel Vadot  Arm Trace Buffer Extension (TRBE) is a per CPU component
15b97ee269SEmmanuel Vadot  for storing trace generated on the CPU to memory. It is
16b97ee269SEmmanuel Vadot  accessed via CPU system registers. The software can verify
17b97ee269SEmmanuel Vadot  if it is permitted to use the component by checking the
18b97ee269SEmmanuel Vadot  TRBIDR register.
19b97ee269SEmmanuel Vadot
20b97ee269SEmmanuel Vadotproperties:
21b97ee269SEmmanuel Vadot  $nodename:
22*aa1a8ff2SEmmanuel Vadot    const: trbe
23*aa1a8ff2SEmmanuel Vadot
24b97ee269SEmmanuel Vadot  compatible:
25b97ee269SEmmanuel Vadot    items:
26b97ee269SEmmanuel Vadot      - const: arm,trace-buffer-extension
27b97ee269SEmmanuel Vadot
28b97ee269SEmmanuel Vadot  interrupts:
29b97ee269SEmmanuel Vadot    description: |
30b97ee269SEmmanuel Vadot       Exactly 1 PPI must be listed. For heterogeneous systems where
31b97ee269SEmmanuel Vadot       TRBE is only supported on a subset of the CPUs, please consult
32b97ee269SEmmanuel Vadot       the arm,gic-v3 binding for details on describing a PPI partition.
33b97ee269SEmmanuel Vadot    maxItems: 1
34b97ee269SEmmanuel Vadot
35b97ee269SEmmanuel Vadotrequired:
36b97ee269SEmmanuel Vadot  - compatible
37b97ee269SEmmanuel Vadot  - interrupts
38b97ee269SEmmanuel Vadot
39b97ee269SEmmanuel VadotadditionalProperties: false
40b97ee269SEmmanuel Vadot
41b97ee269SEmmanuel Vadotexamples:
42b97ee269SEmmanuel Vadot
43b97ee269SEmmanuel Vadot  - |
44b97ee269SEmmanuel Vadot   #include <dt-bindings/interrupt-controller/arm-gic.h>
45b97ee269SEmmanuel Vadot
46b97ee269SEmmanuel Vadot   trbe {
47b97ee269SEmmanuel Vadot     compatible = "arm,trace-buffer-extension";
48b97ee269SEmmanuel Vadot     interrupts = <GIC_PPI 15 IRQ_TYPE_LEVEL_HIGH>;
49b97ee269SEmmanuel Vadot   };
50b97ee269SEmmanuel Vadot...
51