From patchwork Tue Jun 26 06:22:52 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Kumar, Mahesh" X-Patchwork-Id: 10488003 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 59498602D8 for ; Tue, 26 Jun 2018 06:22:00 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4A7EA2875E for ; Tue, 26 Jun 2018 06:22:00 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 3F5F628763; Tue, 26 Jun 2018 06:22:00 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00, MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id E4AEA2875E for ; Tue, 26 Jun 2018 06:21:59 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 059946E38C; Tue, 26 Jun 2018 06:21:50 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 51A9389B69; Tue, 26 Jun 2018 06:21:47 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Jun 2018 23:21:44 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,273,1526367600"; d="scan'208";a="240307329" Received: from unknown (HELO localhost.localdomain) ([10.223.25.241]) by fmsmga005.fm.intel.com with ESMTP; 25 Jun 2018 23:21:42 -0700 From: Mahesh Kumar To: intel-gfx@lists.freedesktop.org Subject: [PATCH 03/10] drm: crc: Introduce get_crc_sources callback Date: Tue, 26 Jun 2018 11:52:52 +0530 Message-Id: <20180626062259.15563-4-mahesh1.kumar@intel.com> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180626062259.15563-1-mahesh1.kumar@intel.com> References: <20180626062259.15563-1-mahesh1.kumar@intel.com> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mahesh Kumar , dri-devel@lists.freedesktop.org MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP This patch implements a callback function "get_crc_sources" which will be called during read of control node. It is an optional callback function and if driver implements this callback, driver should print list of available CRC sources in seq_file privided as an input to the callback. Signed-off-by: Mahesh Kumar Cc: dri-devel@lists.freedesktop.org --- drivers/gpu/drm/drm_debugfs_crc.c | 3 +++ include/drm/drm_crtc.h | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/drivers/gpu/drm/drm_debugfs_crc.c b/drivers/gpu/drm/drm_debugfs_crc.c index 2b4a737c5aeb..2751d124387d 100644 --- a/drivers/gpu/drm/drm_debugfs_crc.c +++ b/drivers/gpu/drm/drm_debugfs_crc.c @@ -68,6 +68,9 @@ static int crc_control_show(struct seq_file *m, void *data) { struct drm_crtc *crtc = m->private; + if (crtc->funcs->get_crc_sources) + crtc->funcs->get_crc_sources(m, crtc); + seq_printf(m, "%s\n", crtc->crc.source); return 0; diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index bae432469616..b3824f92c190 100644 --- a/include/drm/drm_crtc.h +++ b/include/drm/drm_crtc.h @@ -690,6 +690,16 @@ struct drm_crtc_funcs { * 0 on success or a negative error code on failure. */ int (*pre_crc_read)(struct drm_crtc *crtc); + /** + * @get_crc_sources: + * + * prints a list of available valid sources for CRC generation on + * seq_file + * + * This callback is optional if the driver does not support exporting of + * possible CRC sources list + */ + void (*get_crc_sources)(struct seq_file *m, struct drm_crtc *crtc); /** * @atomic_print_state: