Received: by 2002:a05:6a10:c7c6:0:0:0:0 with SMTP id h6csp497772pxy; Sat, 31 Jul 2021 14:45:37 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx6bzW9djOCHsl6GatBFzJtTGarFmNM3KeoeKqMV/V8I66+BDONySGyo6boe2hikBeDRGEF X-Received: by 2002:a05:6638:114:: with SMTP id x20mr7577442jao.118.1627767937299; Sat, 31 Jul 2021 14:45:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1627767937; cv=none; d=google.com; s=arc-20160816; b=aZfQCsGg5Y/Kn+VApXPBXvjBvuPeFOnBgiyCx8sgUbWX0Ylen7bJwuGa7cDXOqSEcH 9Rj/qUIRuCWSB119oXsl1UI1EYnpwvPWCpCNYVhPVLlgp5XGbDRD7BZaoJ1lIkFFpEgd jsIliOOewoJ4DtT9Fipo7ClbUzh/w252cRGJimUf+lu49uWP9Yw1ZhyrmTcCKS0WLlCG Zuk4VVrBQP2neRMNZ6QKEnYnJlX3uHUrpYcR2XuGbm0meZa1+fS4VNcmwuHT39YJ84LE wPv8KJ+1WOMInM7Itu8Fx2937kRf8TnzVMnpyiTs3l4vOugsJDkxJoug2COCLgun3n22 rBcw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=Fjsw3W3/UmlQsTKfLEE1H6kTd7xaAkJp0etT9YYbz+I=; b=IwbUW44NfMDCCK8y0T/o6tSYC9pM2vEdWc8OCJjPiRK3jBBqYX17uiiVcgwHbvc7od qYVWDjrAHj7IL1oCc7HPMpVuUv2lPm59dOt54PS5wp5B44UHXRq7/iHA51rdetZCgVT3 MUu8VqVSA5gP59vA/NNgBGp2mFBQNVu6b8STIUD8T8oEO937TeNhEVkZWhgradUm18/z B7XZf8Qtg4jAoMOQBElT7jtc+wFzBjEEcfV9lhkkxBMHaZzB2ENbS009ieK9D9X/QPE9 0hX3MLFzQXQE5JDK1bd6aYkkq/kGbuLXLdXfCg19DPphTzwIjjJ9W/jfJOc1ue27po+C ziPg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=DUQOmqbS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u15si7194037iot.89.2021.07.31.14.45.26; Sat, 31 Jul 2021 14:45:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=DUQOmqbS; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231725AbhGaVnP (ORCPT + 99 others); Sat, 31 Jul 2021 17:43:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57968 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231954AbhGaVnM (ORCPT ); Sat, 31 Jul 2021 17:43:12 -0400 Received: from mail-il1-x133.google.com (mail-il1-x133.google.com [IPv6:2607:f8b0:4864:20::133]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AC211C0613D3 for ; Sat, 31 Jul 2021 14:43:05 -0700 (PDT) Received: by mail-il1-x133.google.com with SMTP id d10so13016949ils.7 for ; Sat, 31 Jul 2021 14:43:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=Fjsw3W3/UmlQsTKfLEE1H6kTd7xaAkJp0etT9YYbz+I=; b=DUQOmqbS6V186tr3AR4AQ/htc0Bg66ZwKaVnDhi8fD4VVZlKCf/XiMXwkRotjoP/oD OlEohbOBL4Yoa9TdR+Rt4U35G0nEQ8KC1XEx4lPrsDTudjD848VcRX4MLxvsBeZw/1G1 sTsh+9jmrH/+DkMS13G8ysj2cw3Gbc0Y/imnc903XG+ZXkdCSUgEye1gO5kadZ0NHB/7 QoTZ/7GP4NjMU6SpCQNZxUXX0+r7NF0RdNFHb5ATQxh2tgpzFKgYwf2gNYLWlmt9BMSY cz2ik8KJfEIuoyTSo19BihMCTNQfO9StMfPsChEJF5EwgtM60BYWqB8C+i00hvEv47mX w6Wg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Fjsw3W3/UmlQsTKfLEE1H6kTd7xaAkJp0etT9YYbz+I=; b=aifOUScgQu+Hi13wG4u+p4DpsJRC8zQzrLf6i+qG/SBEmQaFCN2JIkhEVb3pFFFWI/ sbiePjp5jRmm2SibCrvgzKp+KlRETZaWL1owuhgF0hDbetEHAaCMRsUZITsa6pdsbRTe f7hCcuc+Y1IUh87HmZ+vB4peGqlt90E8aTX743Cw/fQPpwKRwtQnCKRoGV+Gv/gWSfKN 4tAAHz3bUn36nm0/XbKeDZJb4yxUDA5YpByIC4BIkce/h1ScHiXgbBdnrDVaVDu30Ef5 /lWgNfm+gCYokd9JCyH5pjs6gOX1b7hSD4Xrw7T9sPC7pTUCNWlzD6sm6gtbs6LUCByC kFzA== X-Gm-Message-State: AOAM532jmhzw+8t6bQ+NtRxhC+SStDN9MHhZ8a2+fbz6z+YHuaEQR/6e GrOMiRloECREvsILuHiINEc= X-Received: by 2002:a92:c7d0:: with SMTP id g16mr6296943ilk.278.1627767785160; Sat, 31 Jul 2021 14:43:05 -0700 (PDT) Received: from frodo.. (c-24-9-77-57.hsd1.co.comcast.net. [24.9.77.57]) by smtp.googlemail.com with ESMTPSA id q10sm3721040ion.3.2021.07.31.14.43.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 31 Jul 2021 14:43:04 -0700 (PDT) From: Jim Cromie To: Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Daniel Vetter , Harry Wentland , Leo Li , Alex Deucher , =?UTF-8?q?Christian=20K=C3=B6nig?= , "Pan, Xinhui" , Zhenyu Wang , Zhi Wang , Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Jason Baron , Ashley Thomas , Aurabindo Pillai , Wyatt Wood , Qingqing Zhuo , Jim Cromie , Johan Hovold , Jessica Yu , Joe Perches , Miguel Ojeda , Nick Desaulniers , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, amd-gfx@lists.freedesktop.org, intel-gvt-dev@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Subject: [PATCH v4 7/7] amdgpu: define a dydbg-bitmap to control categorized pr_debugs Date: Sat, 31 Jul 2021 15:42:04 -0600 Message-Id: <20210731214211.657280-8-jim.cromie@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210731214211.657280-1-jim.cromie@gmail.com> References: <20210731214211.657280-1-jim.cromie@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org logger_types.h defines many DC_LOG_*() categorized debug wrappers. Many of these use DRM_DEBUG_*, so are controllable using drm.debug, but others use bare pr_debug()s, each with a different class-prefix matching "^[\w+]:" Use DYNDBG_BITMAP_DESC() to create a parameter/debug_dc, and to define bits to control those pr_debugs by their category. Signed-off-by: Jim Cromie --- .../gpu/drm/amd/display/dc/core/dc_debug.c | 42 ++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_debug.c b/drivers/gpu/drm/amd/display/dc/core/dc_debug.c index 21be2a684393..3041e0c3d726 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc_debug.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc_debug.c @@ -36,8 +36,48 @@ #include "resource.h" -#define DC_LOGGER_INIT(logger) +/* define a drm.debug style dyndbg pr-debug control point */ +unsigned long __debug_dc; +EXPORT_SYMBOL(__debug_dc); + +#define _help(key) "\t\t" key " : help for " key "\n" +#define cmd_help(key) { .prefix = key, .help = "help for " key } + +/* Id like to do these inside DEFINE_DYNDBG_BITMAP, later */ +#define MY_DYNDBG_PARM_DESC(name) \ + "Enable debug output via /sys/module/amdgpu/parameters/" #name \ + ", where each bit enables a debug category.\n" \ + _help("[SURFACE]:") \ + _help("[CURSOR]:") \ + _help("[PFLIP]:") \ + _help("[VBLANK]:") \ + _help("[HW_LINK_TRAINING]:") \ + _help("[HW_AUDIO]:") \ + _help("[SCALER]:") \ + _help("[BIOS]:") \ + _help("[BANDWIDTH_CALCS]:") \ + _help("[DML]:") \ + _help("[IF_TRACE]:") \ + _help("[GAMMA]:") \ + _help("[SMU_MSG]:") +MODULE_PARM_DESC(debug_dc, MY_DYNDBG_PARM_DESC(name)); + +DEFINE_DYNDBG_BITMAP(debug_dc, &__debug_dc, + MY_DYNDBG_PARM_DESC(debug_dc), + cmd_help("[CURSOR]:"), + cmd_help("[PFLIP]:"), + cmd_help("[VBLANK]:"), + cmd_help("[HW_LINK_TRAINING]:"), + cmd_help("[HW_AUDIO]:"), + cmd_help("[SCALER]:"), + cmd_help("[BIOS]:"), + cmd_help("[BANDWIDTH_CALCS]:"), + cmd_help("[DML]:"), + cmd_help("[IF_TRACE]:"), + cmd_help("[GAMMA]:"), + cmd_help("[SMU_MSG]:")); +#define DC_LOGGER_INIT(logger) #define SURFACE_TRACE(...) do {\ if (dc->debug.surface_trace) \ -- 2.31.1