xref: /linux/tools/lib/python/abi/helpers.py (revision 72c395024dac5e215136cbff793455f065603b06)
1484e9aa6SMauro Carvalho Chehab#!/usr/bin/env python3
2484e9aa6SMauro Carvalho Chehab# Copyright(c) 2025: Mauro Carvalho Chehab <mchehab@kernel.org>.
3484e9aa6SMauro Carvalho Chehab# pylint: disable=R0903
4484e9aa6SMauro Carvalho Chehab# SPDX-License-Identifier: GPL-2.0
5484e9aa6SMauro Carvalho Chehab
6484e9aa6SMauro Carvalho Chehab"""
7484e9aa6SMauro Carvalho ChehabHelper classes for ABI parser
8484e9aa6SMauro Carvalho Chehab"""
9484e9aa6SMauro Carvalho Chehab
10484e9aa6SMauro Carvalho ChehabABI_DIR = "Documentation/ABI/"
11484e9aa6SMauro Carvalho Chehab
12484e9aa6SMauro Carvalho Chehab
13484e9aa6SMauro Carvalho Chehabclass AbiDebug:
14484e9aa6SMauro Carvalho Chehab    """Debug levels"""
15484e9aa6SMauro Carvalho Chehab
16*b713adadSMauro Carvalho Chehab    WHAT_PARSING = 1        #: Enable debug parsing logic.
17*b713adadSMauro Carvalho Chehab    WHAT_OPEN = 2           #: Enable debug messages on file open.
18*b713adadSMauro Carvalho Chehab    DUMP_ABI_STRUCTS = 4    #: Enable debug for ABI parse data.
19*b713adadSMauro Carvalho Chehab    UNDEFINED = 8           #: Enable extra undefined symbol data.
20*b713adadSMauro Carvalho Chehab    REGEX = 16              #: Enable debug for what to regex conversion.
21*b713adadSMauro Carvalho Chehab    SUBGROUP_MAP = 32       #: Enable debug for symbol regex subgroups
22*b713adadSMauro Carvalho Chehab    SUBGROUP_DICT = 64      #: Enable debug for sysfs graph tree variable.
23*b713adadSMauro Carvalho Chehab    SUBGROUP_SIZE = 128     #: Enable debug of search groups.
24*b713adadSMauro Carvalho Chehab    GRAPH = 256             #: Display ref tree graph for undefined symbols.
25484e9aa6SMauro Carvalho Chehab
26*b713adadSMauro Carvalho Chehab#: Helper messages for each debug variable
27484e9aa6SMauro Carvalho ChehabDEBUG_HELP = """
28484e9aa6SMauro Carvalho Chehab1   - enable debug parsing logic
29484e9aa6SMauro Carvalho Chehab2   - enable debug messages on file open
30484e9aa6SMauro Carvalho Chehab4   - enable debug for ABI parse data
310d5fd968SMauro Carvalho Chehab8   - enable extra debug information to identify troubles
320d5fd968SMauro Carvalho Chehab      with ABI symbols found at the local machine that
330d5fd968SMauro Carvalho Chehab      weren't found on ABI documentation (used only for
340d5fd968SMauro Carvalho Chehab      undefined subcommand)
350d5fd968SMauro Carvalho Chehab16  - enable debug for what to regex conversion
360d5fd968SMauro Carvalho Chehab32  - enable debug for symbol regex subgroups
370d5fd968SMauro Carvalho Chehab64  - enable debug for sysfs graph tree variable
385c9ece0bSMauro Carvalho Chehab128 - enable debug of search groups
395c9ece0bSMauro Carvalho Chehab256 - enable displaying refrence tree graphs for undefined symbols.
40484e9aa6SMauro Carvalho Chehab"""
41