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