From patchwork Mon Jan 16 12:18:19 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jani Nikula X-Patchwork-Id: 13102952 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id DC995C46467 for ; Mon, 16 Jan 2023 12:18:36 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id C00A210E3E5; Mon, 16 Jan 2023 12:18:33 +0000 (UTC) Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id D9CAF10E3E4; Mon, 16 Jan 2023 12:18:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673871511; x=1705407511; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+W1tKvCJ6wirX6BdOC8GKF6EZDRt5lgzvf41l8pYz+I=; b=XHp2GxVzoaEcppcjGu9MzzdG5GHv/M0ToTe7dANoN6nX52/ucjJToL0q R7guu35lVbSHpPH6EiQA/gonE8EkLlph63SNrEd4zTDKnJZTf2R9oZU1n wxhR7CptgFZVfcIygdAoWJaW5fBZ0fs4Iky6tpEd3xnMPMJY526U0QO7r ZQJcT7mKngsAi/SkxoWPMG7JjPFjx6bF+6sDGp7qDhFP4a9y//aqWDUcZ hceanqZZYTpHJAEwibb8KcN924nmCVw7t9SuAxpAf3fQMfo8Jt5rTuFg8 GkpdKoT00pbGXSBSU1qwKM2V3Zo/E/1c6yJw7lNq1Q0LMEVnF17l4TYem w==; X-IronPort-AV: E=McAfee;i="6500,9779,10591"; a="386795093" X-IronPort-AV: E=Sophos;i="5.97,220,1669104000"; d="scan'208";a="386795093" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jan 2023 04:18:31 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10591"; a="691232297" X-IronPort-AV: E=Sophos;i="5.97,220,1669104000"; d="scan'208";a="691232297" Received: from amakarev-mobl2.ger.corp.intel.com (HELO localhost) ([10.252.13.137]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jan 2023 04:18:29 -0800 From: Jani Nikula To: intel-gfx@lists.freedesktop.org Subject: [PATCH 1/3] drm/i915/pciids: add common INTEL_VGA_DEVICE_INIT macro Date: Mon, 16 Jan 2023 14:18:19 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: jani.nikula@intel.com, dri-devel@lists.freedesktop.org Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Add a shared abstraction for the INTEL_VGA_DEVICE() and INTEL_QUANTA_VGA_DEVICE() initializers to help follow-up changes. Sprinkle in some underscores and parenthesis to be safe. Signed-off-by: Jani Nikula --- include/drm/i915_pciids.h | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/include/drm/i915_pciids.h b/include/drm/i915_pciids.h index 4a4c190f7698..0987bc12476f 100644 --- a/include/drm/i915_pciids.h +++ b/include/drm/i915_pciids.h @@ -35,17 +35,18 @@ * Don't use C99 here because "class" is reserved and we want to * give userspace flexibility. */ -#define INTEL_VGA_DEVICE(id, info) { \ - 0x8086, id, \ - ~0, ~0, \ - 0x030000, 0xff0000, \ - (unsigned long) info } - -#define INTEL_QUANTA_VGA_DEVICE(info) { \ - 0x8086, 0x16a, \ - 0x152d, 0x8990, \ - 0x030000, 0xff0000, \ - (unsigned long) info } +#define INTEL_VGA_DEVICE_INIT(__id, __subvendor, __subdevice, __info) { \ + 0x8086, (__id), \ + (__subvendor), (__subdevice), \ + 0x030000, 0xff0000, \ + (unsigned long)(__info), \ + } + +#define INTEL_VGA_DEVICE(__id, __info) \ + INTEL_VGA_DEVICE_INIT(__id, ~0, ~0, __info) + +#define INTEL_QUANTA_VGA_DEVICE(__info) \ + INTEL_VGA_DEVICE_INIT(0x16a, 0x152d, 0x8990, __info) #define INTEL_I810_IDS(info) \ INTEL_VGA_DEVICE(0x7121, info), /* I810 */ \ From patchwork Mon Jan 16 12:18:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jani Nikula X-Patchwork-Id: 13102953 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0DC08C54EBE for ; Mon, 16 Jan 2023 12:18:43 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B4B3010E3F1; Mon, 16 Jan 2023 12:18:37 +0000 (UTC) Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id B82E110E3F1; Mon, 16 Jan 2023 12:18:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673871515; x=1705407515; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=vmajSOdlgev8/0PZszXAK7RBRxRuIzCR9sbh+xD8KlM=; b=TC0n+7GYHsTy4ijNqyE0jljgC2QQyu9YA+/brJO6rk1pEzCCHniq1RhM yr9FahHe1Ei+b2uo0eNw4ElFZbCRAqkSLuN9JLM4lpL8u5jnnBtD03PsZ D+SkfbiErVQoKlZMOKjxXdY6k5mwSKy+EMljToyNEmynNWKdZTuy7VTi+ 0s8gSuXiRTQPitl8zvQ/byjJUauf7zRkO3gC8idrfkZHZP9yFnOQy43Lm SMfQQxheBoKjWTdCXilFfW5Kh5cEpR8r+suW+lzMKr98qGmjahOHNn58q Q4PrfIfvsAP9op6kE/HppJl56lMxKWV/9rdYmYmgZ3Y4aydZDy2eldqIC g==; X-IronPort-AV: E=McAfee;i="6500,9779,10591"; a="386795099" X-IronPort-AV: E=Sophos;i="5.97,220,1669104000"; d="scan'208";a="386795099" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jan 2023 04:18:35 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10591"; a="691232309" X-IronPort-AV: E=Sophos;i="5.97,220,1669104000"; d="scan'208";a="691232309" Received: from amakarev-mobl2.ger.corp.intel.com (HELO localhost) ([10.252.13.137]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jan 2023 04:18:33 -0800 From: Jani Nikula To: intel-gfx@lists.freedesktop.org Subject: [PATCH 2/3] drm/i915/pciids: use designated initializers for struct pci_device_id Date: Mon, 16 Jan 2023 14:18:20 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: jani.nikula@intel.com, kernel test robot , dri-devel@lists.freedesktop.org Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Use designated initializers for struct pci_device_id in kernel to avoid the dependency on struct pci_device_id remaining unchanged. Recently, commit 343b7258687e ("PCI: Add 'override_only' field to struct pci_device_id") added a new member leading to warnings about missing field initializers. Any userspace using this header should switch to defining their own initializers. The old one is left in place for now. References: https://lore.kernel.org/all/202108272322.EipbBEAp-lkp@intel.com Reported-by: kernel test robot Signed-off-by: Jani Nikula --- include/drm/i915_pciids.h | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/include/drm/i915_pciids.h b/include/drm/i915_pciids.h index 0987bc12476f..7baf14fcb7c2 100644 --- a/include/drm/i915_pciids.h +++ b/include/drm/i915_pciids.h @@ -25,15 +25,18 @@ #ifndef _I915_PCIIDS_H #define _I915_PCIIDS_H +#ifdef __KERNEL__ +/* Initializer for struct pci_device_id. */ +#define INTEL_VGA_DEVICE_INIT(__id, __subvendor, __subdevice, __info) { \ + .vendor = 0x8086, .device = (__id), \ + .subvendor = (__subvendor), .subdevice = (__subdevice), \ + .class = 0x030000, .class_mask = 0xff0000, \ + .driver_data = (kernel_ulong_t)(__info), \ + } +#else /* - * A pci_device_id struct { - * __u32 vendor, device; - * __u32 subvendor, subdevice; - * __u32 class, class_mask; - * kernel_ulong_t driver_data; - * }; - * Don't use C99 here because "class" is reserved and we want to - * give userspace flexibility. + * Transitional. Non-kernel users should define INTEL_VGA_DEVICE_INIT() + * themselves. */ #define INTEL_VGA_DEVICE_INIT(__id, __subvendor, __subdevice, __info) { \ 0x8086, (__id), \ @@ -41,6 +44,7 @@ 0x030000, 0xff0000, \ (unsigned long)(__info), \ } +#endif #define INTEL_VGA_DEVICE(__id, __info) \ INTEL_VGA_DEVICE_INIT(__id, ~0, ~0, __info) From patchwork Mon Jan 16 12:18:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jani Nikula X-Patchwork-Id: 13102958 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 5D9B2C54EBE for ; Mon, 16 Jan 2023 12:19:11 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id ADAA210E3EF; Mon, 16 Jan 2023 12:19:10 +0000 (UTC) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id E269810E3EF; Mon, 16 Jan 2023 12:19:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673871548; x=1705407548; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=3H/i0zpNTVsCg8t1O38161ofPY+gKJJCooashKntwcM=; b=oArqmhxZdFraj4XbZBeK4vsyL0R6vv/mbJrhxx5aQc4BH/jLX45Dc40t mvMPS10PQN2n4pBS9QvAYUpw8bOvFM66cx3O6QKKbRrnMppj/xLIJgOJe dDirZcAeZbF7Gs86S7NRaX9n8y7cW5WDjyOBrceRvfZn5+a2mXrId9TRQ pHB3GwCdKbMgSmJxGGIs6XTAMD/+9Hq+M6uYlBkSLPrG18sYlVvOLhzcE vFA0/gJ1Vu4ow9NTphCO0BMB4ieEbpFMjCOsLzI38zd9PYPTHfKH+2bfa V33E/CtJULxOl+mDeVfVWEdm9UCz84crqHwZRombo15FJw3/aPtrmUA7p A==; X-IronPort-AV: E=McAfee;i="6500,9779,10591"; a="312302707" X-IronPort-AV: E=Sophos;i="5.97,220,1669104000"; d="scan'208";a="312302707" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jan 2023 04:18:39 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10591"; a="832822627" X-IronPort-AV: E=Sophos;i="5.97,220,1669104000"; d="scan'208";a="832822627" Received: from amakarev-mobl2.ger.corp.intel.com (HELO localhost) ([10.252.13.137]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jan 2023 04:18:38 -0800 From: Jani Nikula To: intel-gfx@lists.freedesktop.org Subject: [PATCH 3/3] drm/i915: define INTEL_VGA_DEVICE_INIT() for subplatform init Date: Mon, 16 Jan 2023 14:18:21 +0200 Message-Id: <2a6123db0a58110ba3f9557361d1e4b2cc1fa5cf.1673871359.git.jani.nikula@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: jani.nikula@intel.com, dri-devel@lists.freedesktop.org Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Redefine INTEL_VGA_DEVICE_INIT() instead of INTEL_VGA_DEVICE() for subplatform init. This is only for completeness as we don't use subplatforms for Quanta devices. Signed-off-by: Jani Nikula --- drivers/gpu/drm/i915/intel_device_info.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c index 05e90d09b208..00a2b229cd7c 100644 --- a/drivers/gpu/drm/i915/intel_device_info.c +++ b/drivers/gpu/drm/i915/intel_device_info.c @@ -143,8 +143,8 @@ void intel_device_info_print(const struct intel_device_info *info, drm_printf(p, "rawclk rate: %u kHz\n", runtime->rawclk_freq); } -#undef INTEL_VGA_DEVICE -#define INTEL_VGA_DEVICE(id, info) (id) +#undef INTEL_VGA_DEVICE_INIT +#define INTEL_VGA_DEVICE_INIT(__id, ...) (__id) static const u16 subplatform_ult_ids[] = { INTEL_HSW_ULT_GT1_IDS(0),