From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D7FE8C2D0A8 for ; Mon, 28 Sep 2020 17:13:53 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 96AB920773 for ; Mon, 28 Sep 2020 17:13:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726659AbgI1RNw (ORCPT ); Mon, 28 Sep 2020 13:13:52 -0400 Received: from mga06.intel.com ([134.134.136.31]:43706 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726504AbgI1RNw (ORCPT ); Mon, 28 Sep 2020 13:13:52 -0400 IronPort-SDR: h+Q4pW67NS4GhUg+A/sn+bDgMtxKAbpmgMf2knu8cSJ46Kx5KPSe3JeccW5BGadQKxpaGMmzc2 +Fr+DG2kffDQ== X-IronPort-AV: E=McAfee;i="6000,8403,9758"; a="223624234" X-IronPort-AV: E=Sophos;i="5.77,313,1596524400"; d="scan'208";a="223624234" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2020 10:13:50 -0700 IronPort-SDR: RgT6PVG/mrKNG0UWJKclspgMmLQsBCPYUaHQW0Zl431vLcx2fkuRZxvDWsp+OSloIZ97vSklIN LlZrZzkwaxZA== X-IronPort-AV: E=Sophos;i="5.77,313,1596524400"; d="scan'208";a="456914961" Received: from lizwalsh-mobl3.ger.corp.intel.com (HELO localhost) ([10.251.86.12]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2020 10:13:45 -0700 From: Jani Nikula To: "Surendrakumar Upadhyay\, TejaskumarX" , "Vivi\, Rodrigo" , "airlied\@linux.ie" , "daniel\@ffwll.ch" , "intel-gfx\@lists.freedesktop.org" , "dri-devel\@lists.freedesktop.org" , "linux-kernel\@vger.kernel.org" , "Ausmus\, James" , "Roper\, Matthew D" , "Souza\, Jose" , "ville.syrjala\@linux.intel.com" , "De Marchi\, Lucas" , "Pandey\, Hariom" Subject: Re: [PATCH 1/2] drm/i915/jsl: Split EHL/JSL platform info and PCI ids In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20200928080931.246347-1-tejaskumarx.surendrakumar.upadhyay@intel.com> <20200928080931.246347-2-tejaskumarx.surendrakumar.upadhyay@intel.com> <87d026owdq.fsf@intel.com> Date: Mon, 28 Sep 2020 20:14:02 +0300 Message-ID: <874knhq0x1.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 28 Sep 2020, "Surendrakumar Upadhyay, TejaskumarX" wrote: > ________________________________ > From: Jani Nikula > Sent: Monday, September 28, 2020 7:07 PM > To: Surendrakumar Upadhyay, TejaskumarX ; Vivi, Rodrigo ; airlied@linux.ie ; daniel@ffwll.ch ; intel-gfx@lists.freedesktop.org ; dri-devel@lists.freedesktop.org ; linux-kernel@vger.kernel.org ; Ausmus, James ; Roper, Matthew D ; Souza, Jose ; ville.syrjala@linux.intel.com ; De Marchi, Lucas ; Pandey, Hariom > Subject: Re: [PATCH 1/2] drm/i915/jsl: Split EHL/JSL platform info and PCI ids Please fix your email quoting when interacting on the public lists. > > On Mon, 28 Sep 2020, Tejas Upadhyay wrote: >> Split the basic platform definition, macros, and PCI IDs to >> differentiate between EHL and JSL platforms. >> >> Signed-off-by: Tejas Upadhyay >> --- >> drivers/gpu/drm/i915/i915_drv.h | 4 +++- >> drivers/gpu/drm/i915/i915_pci.c | 9 +++++++++ >> drivers/gpu/drm/i915/intel_device_info.c | 1 + >> drivers/gpu/drm/i915/intel_device_info.h | 1 + >> include/drm/i915_pciids.h | 9 ++++++--- >> 5 files changed, 20 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >> index 72a9449b674e..4f20acebb038 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.h >> +++ b/drivers/gpu/drm/i915/i915_drv.h >> @@ -1417,7 +1417,9 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915, >> #define IS_COMETLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_COMETLAKE) >> #define IS_CANNONLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_CANNONLAKE) >> #define IS_ICELAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ICELAKE) >> -#define IS_ELKHARTLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ELKHARTLAKE) >> +#define IS_ELKHARTLAKE(dev_priv) (IS_PLATFORM(dev_priv, INTEL_ELKHARTLAKE) || \ >> + IS_PLATFORM(dev_priv, INTEL_JASPERLAKE)) >> +#define IS_JASPERLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_JASPERLAKE) > > I think we've learned from history that we want the platform checks to > be independent. I.e. if you need to split ELK and JSP, you need to make > IS_ELKHARTLAKE() match *only* ELK, and you need to replace every current > IS_ELKHARTLAKE() check with IS_ELKHARTLAKE() || IS_JASPERLAKE(). > > We've been here before, and we've thought before that we can get by with > the minimal change. It's just postponing the inevitable and generates > confusion. > > BR, > Jani. > > Tejas : Replacing IS_ELKHARTLAKE() || IS_JASPERLAKE() everywhere will > make lot of changes at each place. To avoid huge change and to > differentiate between platforms we have taken this way. Do you think > we still change it everywhere? Do you have example where it can harm > this change? If you need to differentiate between the two platforms, IS_ELKHARTLAKE() must mean only ELK and IS_JASPERLAKE() must mean only JSP. It's non-negotiable. We've made the mistake before, we're not doing it again. There are 32 references to IS_ELKHARTLAKE(). It's slightly painful, but the alternative is worse. BR, Jani. > >> #define IS_TIGERLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_TIGERLAKE) >> #define IS_ROCKETLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ROCKETLAKE) >> #define IS_DG1(dev_priv) IS_PLATFORM(dev_priv, INTEL_DG1) >> diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c >> index 366ddfc8df6b..8690b69fcf33 100644 >> --- a/drivers/gpu/drm/i915/i915_pci.c >> +++ b/drivers/gpu/drm/i915/i915_pci.c >> @@ -846,6 +846,14 @@ static const struct intel_device_info ehl_info = { >> .ppgtt_size = 36, >> }; >> >> +static const struct intel_device_info jsl_info = { >> + GEN11_FEATURES, >> + PLATFORM(INTEL_JASPERLAKE), >> + .require_force_probe = 1, >> + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), >> + .ppgtt_size = 36, >> +}; >> + >> #define GEN12_FEATURES \ >> GEN11_FEATURES, \ >> GEN(12), \ >> @@ -985,6 +993,7 @@ static const struct pci_device_id pciidlist[] = { >> INTEL_CNL_IDS(&cnl_info), >> INTEL_ICL_11_IDS(&icl_info), >> INTEL_EHL_IDS(&ehl_info), >> + INTEL_JSL_IDS(&jsl_info), >> INTEL_TGL_12_IDS(&tgl_info), >> INTEL_RKL_IDS(&rkl_info), >> {0, 0, 0} >> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c >> index adc836f15fde..e67cec8fa2aa 100644 >> --- a/drivers/gpu/drm/i915/intel_device_info.c >> +++ b/drivers/gpu/drm/i915/intel_device_info.c >> @@ -62,6 +62,7 @@ static const char * const platform_names[] = { >> PLATFORM_NAME(CANNONLAKE), >> PLATFORM_NAME(ICELAKE), >> PLATFORM_NAME(ELKHARTLAKE), >> + PLATFORM_NAME(JASPERLAKE), >> PLATFORM_NAME(TIGERLAKE), >> PLATFORM_NAME(ROCKETLAKE), >> PLATFORM_NAME(DG1), >> diff --git a/drivers/gpu/drm/i915/intel_device_info.h b/drivers/gpu/drm/i915/intel_device_info.h >> index 6a3d607218aa..d92fa041c700 100644 >> --- a/drivers/gpu/drm/i915/intel_device_info.h >> +++ b/drivers/gpu/drm/i915/intel_device_info.h >> @@ -79,6 +79,7 @@ enum intel_platform { >> /* gen11 */ >> INTEL_ICELAKE, >> INTEL_ELKHARTLAKE, >> + INTEL_JASPERLAKE, >> /* gen12 */ >> INTEL_TIGERLAKE, >> INTEL_ROCKETLAKE, >> diff --git a/include/drm/i915_pciids.h b/include/drm/i915_pciids.h >> index 7eeecb07c9a1..1b5e09cfa11e 100644 >> --- a/include/drm/i915_pciids.h >> +++ b/include/drm/i915_pciids.h >> @@ -579,15 +579,18 @@ >> INTEL_VGA_DEVICE(0x8A51, info), \ >> INTEL_VGA_DEVICE(0x8A5D, info) >> >> -/* EHL/JSL */ >> +/* EHL */ >> #define INTEL_EHL_IDS(info) \ >> INTEL_VGA_DEVICE(0x4500, info), \ >> INTEL_VGA_DEVICE(0x4571, info), \ >> INTEL_VGA_DEVICE(0x4551, info), \ >> INTEL_VGA_DEVICE(0x4541, info), \ >> - INTEL_VGA_DEVICE(0x4E71, info), \ >> INTEL_VGA_DEVICE(0x4557, info), \ >> - INTEL_VGA_DEVICE(0x4555, info), \ >> + INTEL_VGA_DEVICE(0x4555, info) >> + >> +/* JSL */ >> +#define INTEL_JSL_IDS(info) \ >> + INTEL_VGA_DEVICE(0x4E71, info), \ >> INTEL_VGA_DEVICE(0x4E61, info), \ >> INTEL_VGA_DEVICE(0x4E57, info), \ >> INTEL_VGA_DEVICE(0x4E55, info), \ > > -- > Jani Nikula, Intel Open Source Graphics Center -- Jani Nikula, Intel Open Source Graphics Center From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 18441C4741F for ; Mon, 28 Sep 2020 17:13:55 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 9E94A20773 for ; Mon, 28 Sep 2020 17:13:54 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9E94A20773 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 01F8689F5F; Mon, 28 Sep 2020 17:13:54 +0000 (UTC) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8C01389F5F; Mon, 28 Sep 2020 17:13:52 +0000 (UTC) IronPort-SDR: glOIpl98U9pSJTeW8wYkzErGq+gZDXyjHSRkdKslRcunV+im4NKibY/4nvKp5VHiMZZPwkSuIU HUH5DGZZ2xhA== X-IronPort-AV: E=McAfee;i="6000,8403,9758"; a="226178615" X-IronPort-AV: E=Sophos;i="5.77,313,1596524400"; d="scan'208";a="226178615" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2020 10:13:50 -0700 IronPort-SDR: RgT6PVG/mrKNG0UWJKclspgMmLQsBCPYUaHQW0Zl431vLcx2fkuRZxvDWsp+OSloIZ97vSklIN LlZrZzkwaxZA== X-IronPort-AV: E=Sophos;i="5.77,313,1596524400"; d="scan'208";a="456914961" Received: from lizwalsh-mobl3.ger.corp.intel.com (HELO localhost) ([10.251.86.12]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2020 10:13:45 -0700 From: Jani Nikula To: "Surendrakumar Upadhyay\, TejaskumarX" , "Vivi\, Rodrigo" , "airlied\@linux.ie" , "daniel\@ffwll.ch" , "intel-gfx\@lists.freedesktop.org" , "dri-devel\@lists.freedesktop.org" , "linux-kernel\@vger.kernel.org" , "Ausmus\, James" , "Roper\, Matthew D" , "Souza\, Jose" , "ville.syrjala\@linux.intel.com" , "De Marchi\, Lucas" , "Pandey\, Hariom" Subject: Re: [PATCH 1/2] drm/i915/jsl: Split EHL/JSL platform info and PCI ids In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20200928080931.246347-1-tejaskumarx.surendrakumar.upadhyay@intel.com> <20200928080931.246347-2-tejaskumarx.surendrakumar.upadhyay@intel.com> <87d026owdq.fsf@intel.com> Date: Mon, 28 Sep 2020 20:14:02 +0300 Message-ID: <874knhq0x1.fsf@intel.com> MIME-Version: 1.0 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: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" On Mon, 28 Sep 2020, "Surendrakumar Upadhyay, TejaskumarX" wrote: > ________________________________ > From: Jani Nikula > Sent: Monday, September 28, 2020 7:07 PM > To: Surendrakumar Upadhyay, TejaskumarX ; Vivi, Rodrigo ; airlied@linux.ie ; daniel@ffwll.ch ; intel-gfx@lists.freedesktop.org ; dri-devel@lists.freedesktop.org ; linux-kernel@vger.kernel.org ; Ausmus, James ; Roper, Matthew D ; Souza, Jose ; ville.syrjala@linux.intel.com ; De Marchi, Lucas ; Pandey, Hariom > Subject: Re: [PATCH 1/2] drm/i915/jsl: Split EHL/JSL platform info and PCI ids Please fix your email quoting when interacting on the public lists. > > On Mon, 28 Sep 2020, Tejas Upadhyay wrote: >> Split the basic platform definition, macros, and PCI IDs to >> differentiate between EHL and JSL platforms. >> >> Signed-off-by: Tejas Upadhyay >> --- >> drivers/gpu/drm/i915/i915_drv.h | 4 +++- >> drivers/gpu/drm/i915/i915_pci.c | 9 +++++++++ >> drivers/gpu/drm/i915/intel_device_info.c | 1 + >> drivers/gpu/drm/i915/intel_device_info.h | 1 + >> include/drm/i915_pciids.h | 9 ++++++--- >> 5 files changed, 20 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >> index 72a9449b674e..4f20acebb038 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.h >> +++ b/drivers/gpu/drm/i915/i915_drv.h >> @@ -1417,7 +1417,9 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915, >> #define IS_COMETLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_COMETLAKE) >> #define IS_CANNONLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_CANNONLAKE) >> #define IS_ICELAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ICELAKE) >> -#define IS_ELKHARTLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ELKHARTLAKE) >> +#define IS_ELKHARTLAKE(dev_priv) (IS_PLATFORM(dev_priv, INTEL_ELKHARTLAKE) || \ >> + IS_PLATFORM(dev_priv, INTEL_JASPERLAKE)) >> +#define IS_JASPERLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_JASPERLAKE) > > I think we've learned from history that we want the platform checks to > be independent. I.e. if you need to split ELK and JSP, you need to make > IS_ELKHARTLAKE() match *only* ELK, and you need to replace every current > IS_ELKHARTLAKE() check with IS_ELKHARTLAKE() || IS_JASPERLAKE(). > > We've been here before, and we've thought before that we can get by with > the minimal change. It's just postponing the inevitable and generates > confusion. > > BR, > Jani. > > Tejas : Replacing IS_ELKHARTLAKE() || IS_JASPERLAKE() everywhere will > make lot of changes at each place. To avoid huge change and to > differentiate between platforms we have taken this way. Do you think > we still change it everywhere? Do you have example where it can harm > this change? If you need to differentiate between the two platforms, IS_ELKHARTLAKE() must mean only ELK and IS_JASPERLAKE() must mean only JSP. It's non-negotiable. We've made the mistake before, we're not doing it again. There are 32 references to IS_ELKHARTLAKE(). It's slightly painful, but the alternative is worse. BR, Jani. > >> #define IS_TIGERLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_TIGERLAKE) >> #define IS_ROCKETLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ROCKETLAKE) >> #define IS_DG1(dev_priv) IS_PLATFORM(dev_priv, INTEL_DG1) >> diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c >> index 366ddfc8df6b..8690b69fcf33 100644 >> --- a/drivers/gpu/drm/i915/i915_pci.c >> +++ b/drivers/gpu/drm/i915/i915_pci.c >> @@ -846,6 +846,14 @@ static const struct intel_device_info ehl_info = { >> .ppgtt_size = 36, >> }; >> >> +static const struct intel_device_info jsl_info = { >> + GEN11_FEATURES, >> + PLATFORM(INTEL_JASPERLAKE), >> + .require_force_probe = 1, >> + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), >> + .ppgtt_size = 36, >> +}; >> + >> #define GEN12_FEATURES \ >> GEN11_FEATURES, \ >> GEN(12), \ >> @@ -985,6 +993,7 @@ static const struct pci_device_id pciidlist[] = { >> INTEL_CNL_IDS(&cnl_info), >> INTEL_ICL_11_IDS(&icl_info), >> INTEL_EHL_IDS(&ehl_info), >> + INTEL_JSL_IDS(&jsl_info), >> INTEL_TGL_12_IDS(&tgl_info), >> INTEL_RKL_IDS(&rkl_info), >> {0, 0, 0} >> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c >> index adc836f15fde..e67cec8fa2aa 100644 >> --- a/drivers/gpu/drm/i915/intel_device_info.c >> +++ b/drivers/gpu/drm/i915/intel_device_info.c >> @@ -62,6 +62,7 @@ static const char * const platform_names[] = { >> PLATFORM_NAME(CANNONLAKE), >> PLATFORM_NAME(ICELAKE), >> PLATFORM_NAME(ELKHARTLAKE), >> + PLATFORM_NAME(JASPERLAKE), >> PLATFORM_NAME(TIGERLAKE), >> PLATFORM_NAME(ROCKETLAKE), >> PLATFORM_NAME(DG1), >> diff --git a/drivers/gpu/drm/i915/intel_device_info.h b/drivers/gpu/drm/i915/intel_device_info.h >> index 6a3d607218aa..d92fa041c700 100644 >> --- a/drivers/gpu/drm/i915/intel_device_info.h >> +++ b/drivers/gpu/drm/i915/intel_device_info.h >> @@ -79,6 +79,7 @@ enum intel_platform { >> /* gen11 */ >> INTEL_ICELAKE, >> INTEL_ELKHARTLAKE, >> + INTEL_JASPERLAKE, >> /* gen12 */ >> INTEL_TIGERLAKE, >> INTEL_ROCKETLAKE, >> diff --git a/include/drm/i915_pciids.h b/include/drm/i915_pciids.h >> index 7eeecb07c9a1..1b5e09cfa11e 100644 >> --- a/include/drm/i915_pciids.h >> +++ b/include/drm/i915_pciids.h >> @@ -579,15 +579,18 @@ >> INTEL_VGA_DEVICE(0x8A51, info), \ >> INTEL_VGA_DEVICE(0x8A5D, info) >> >> -/* EHL/JSL */ >> +/* EHL */ >> #define INTEL_EHL_IDS(info) \ >> INTEL_VGA_DEVICE(0x4500, info), \ >> INTEL_VGA_DEVICE(0x4571, info), \ >> INTEL_VGA_DEVICE(0x4551, info), \ >> INTEL_VGA_DEVICE(0x4541, info), \ >> - INTEL_VGA_DEVICE(0x4E71, info), \ >> INTEL_VGA_DEVICE(0x4557, info), \ >> - INTEL_VGA_DEVICE(0x4555, info), \ >> + INTEL_VGA_DEVICE(0x4555, info) >> + >> +/* JSL */ >> +#define INTEL_JSL_IDS(info) \ >> + INTEL_VGA_DEVICE(0x4E71, info), \ >> INTEL_VGA_DEVICE(0x4E61, info), \ >> INTEL_VGA_DEVICE(0x4E57, info), \ >> INTEL_VGA_DEVICE(0x4E55, info), \ > > -- > Jani Nikula, Intel Open Source Graphics Center -- Jani Nikula, Intel Open Source Graphics Center _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A2FC2C4727E for ; Mon, 28 Sep 2020 17:13:58 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 663C920773 for ; Mon, 28 Sep 2020 17:13:58 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 663C920773 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 531EC89FCC; Mon, 28 Sep 2020 17:13:54 +0000 (UTC) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8C01389F5F; Mon, 28 Sep 2020 17:13:52 +0000 (UTC) IronPort-SDR: glOIpl98U9pSJTeW8wYkzErGq+gZDXyjHSRkdKslRcunV+im4NKibY/4nvKp5VHiMZZPwkSuIU HUH5DGZZ2xhA== X-IronPort-AV: E=McAfee;i="6000,8403,9758"; a="226178615" X-IronPort-AV: E=Sophos;i="5.77,313,1596524400"; d="scan'208";a="226178615" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2020 10:13:50 -0700 IronPort-SDR: RgT6PVG/mrKNG0UWJKclspgMmLQsBCPYUaHQW0Zl431vLcx2fkuRZxvDWsp+OSloIZ97vSklIN LlZrZzkwaxZA== X-IronPort-AV: E=Sophos;i="5.77,313,1596524400"; d="scan'208";a="456914961" Received: from lizwalsh-mobl3.ger.corp.intel.com (HELO localhost) ([10.251.86.12]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Sep 2020 10:13:45 -0700 From: Jani Nikula To: "Surendrakumar Upadhyay\, TejaskumarX" , "Vivi\, Rodrigo" , "airlied\@linux.ie" , "daniel\@ffwll.ch" , "intel-gfx\@lists.freedesktop.org" , "dri-devel\@lists.freedesktop.org" , "linux-kernel\@vger.kernel.org" , "Ausmus\, James" , "Roper\, Matthew D" , "Souza\, Jose" , "ville.syrjala\@linux.intel.com" , "De Marchi\, Lucas" , "Pandey\, Hariom" In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20200928080931.246347-1-tejaskumarx.surendrakumar.upadhyay@intel.com> <20200928080931.246347-2-tejaskumarx.surendrakumar.upadhyay@intel.com> <87d026owdq.fsf@intel.com> Date: Mon, 28 Sep 2020 20:14:02 +0300 Message-ID: <874knhq0x1.fsf@intel.com> MIME-Version: 1.0 Subject: Re: [Intel-gfx] [PATCH 1/2] drm/i915/jsl: Split EHL/JSL platform info and PCI ids X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" On Mon, 28 Sep 2020, "Surendrakumar Upadhyay, TejaskumarX" wrote: > ________________________________ > From: Jani Nikula > Sent: Monday, September 28, 2020 7:07 PM > To: Surendrakumar Upadhyay, TejaskumarX ; Vivi, Rodrigo ; airlied@linux.ie ; daniel@ffwll.ch ; intel-gfx@lists.freedesktop.org ; dri-devel@lists.freedesktop.org ; linux-kernel@vger.kernel.org ; Ausmus, James ; Roper, Matthew D ; Souza, Jose ; ville.syrjala@linux.intel.com ; De Marchi, Lucas ; Pandey, Hariom > Subject: Re: [PATCH 1/2] drm/i915/jsl: Split EHL/JSL platform info and PCI ids Please fix your email quoting when interacting on the public lists. > > On Mon, 28 Sep 2020, Tejas Upadhyay wrote: >> Split the basic platform definition, macros, and PCI IDs to >> differentiate between EHL and JSL platforms. >> >> Signed-off-by: Tejas Upadhyay >> --- >> drivers/gpu/drm/i915/i915_drv.h | 4 +++- >> drivers/gpu/drm/i915/i915_pci.c | 9 +++++++++ >> drivers/gpu/drm/i915/intel_device_info.c | 1 + >> drivers/gpu/drm/i915/intel_device_info.h | 1 + >> include/drm/i915_pciids.h | 9 ++++++--- >> 5 files changed, 20 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h >> index 72a9449b674e..4f20acebb038 100644 >> --- a/drivers/gpu/drm/i915/i915_drv.h >> +++ b/drivers/gpu/drm/i915/i915_drv.h >> @@ -1417,7 +1417,9 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915, >> #define IS_COMETLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_COMETLAKE) >> #define IS_CANNONLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_CANNONLAKE) >> #define IS_ICELAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ICELAKE) >> -#define IS_ELKHARTLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ELKHARTLAKE) >> +#define IS_ELKHARTLAKE(dev_priv) (IS_PLATFORM(dev_priv, INTEL_ELKHARTLAKE) || \ >> + IS_PLATFORM(dev_priv, INTEL_JASPERLAKE)) >> +#define IS_JASPERLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_JASPERLAKE) > > I think we've learned from history that we want the platform checks to > be independent. I.e. if you need to split ELK and JSP, you need to make > IS_ELKHARTLAKE() match *only* ELK, and you need to replace every current > IS_ELKHARTLAKE() check with IS_ELKHARTLAKE() || IS_JASPERLAKE(). > > We've been here before, and we've thought before that we can get by with > the minimal change. It's just postponing the inevitable and generates > confusion. > > BR, > Jani. > > Tejas : Replacing IS_ELKHARTLAKE() || IS_JASPERLAKE() everywhere will > make lot of changes at each place. To avoid huge change and to > differentiate between platforms we have taken this way. Do you think > we still change it everywhere? Do you have example where it can harm > this change? If you need to differentiate between the two platforms, IS_ELKHARTLAKE() must mean only ELK and IS_JASPERLAKE() must mean only JSP. It's non-negotiable. We've made the mistake before, we're not doing it again. There are 32 references to IS_ELKHARTLAKE(). It's slightly painful, but the alternative is worse. BR, Jani. > >> #define IS_TIGERLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_TIGERLAKE) >> #define IS_ROCKETLAKE(dev_priv) IS_PLATFORM(dev_priv, INTEL_ROCKETLAKE) >> #define IS_DG1(dev_priv) IS_PLATFORM(dev_priv, INTEL_DG1) >> diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c >> index 366ddfc8df6b..8690b69fcf33 100644 >> --- a/drivers/gpu/drm/i915/i915_pci.c >> +++ b/drivers/gpu/drm/i915/i915_pci.c >> @@ -846,6 +846,14 @@ static const struct intel_device_info ehl_info = { >> .ppgtt_size = 36, >> }; >> >> +static const struct intel_device_info jsl_info = { >> + GEN11_FEATURES, >> + PLATFORM(INTEL_JASPERLAKE), >> + .require_force_probe = 1, >> + .platform_engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0) | BIT(VECS0), >> + .ppgtt_size = 36, >> +}; >> + >> #define GEN12_FEATURES \ >> GEN11_FEATURES, \ >> GEN(12), \ >> @@ -985,6 +993,7 @@ static const struct pci_device_id pciidlist[] = { >> INTEL_CNL_IDS(&cnl_info), >> INTEL_ICL_11_IDS(&icl_info), >> INTEL_EHL_IDS(&ehl_info), >> + INTEL_JSL_IDS(&jsl_info), >> INTEL_TGL_12_IDS(&tgl_info), >> INTEL_RKL_IDS(&rkl_info), >> {0, 0, 0} >> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c >> index adc836f15fde..e67cec8fa2aa 100644 >> --- a/drivers/gpu/drm/i915/intel_device_info.c >> +++ b/drivers/gpu/drm/i915/intel_device_info.c >> @@ -62,6 +62,7 @@ static const char * const platform_names[] = { >> PLATFORM_NAME(CANNONLAKE), >> PLATFORM_NAME(ICELAKE), >> PLATFORM_NAME(ELKHARTLAKE), >> + PLATFORM_NAME(JASPERLAKE), >> PLATFORM_NAME(TIGERLAKE), >> PLATFORM_NAME(ROCKETLAKE), >> PLATFORM_NAME(DG1), >> diff --git a/drivers/gpu/drm/i915/intel_device_info.h b/drivers/gpu/drm/i915/intel_device_info.h >> index 6a3d607218aa..d92fa041c700 100644 >> --- a/drivers/gpu/drm/i915/intel_device_info.h >> +++ b/drivers/gpu/drm/i915/intel_device_info.h >> @@ -79,6 +79,7 @@ enum intel_platform { >> /* gen11 */ >> INTEL_ICELAKE, >> INTEL_ELKHARTLAKE, >> + INTEL_JASPERLAKE, >> /* gen12 */ >> INTEL_TIGERLAKE, >> INTEL_ROCKETLAKE, >> diff --git a/include/drm/i915_pciids.h b/include/drm/i915_pciids.h >> index 7eeecb07c9a1..1b5e09cfa11e 100644 >> --- a/include/drm/i915_pciids.h >> +++ b/include/drm/i915_pciids.h >> @@ -579,15 +579,18 @@ >> INTEL_VGA_DEVICE(0x8A51, info), \ >> INTEL_VGA_DEVICE(0x8A5D, info) >> >> -/* EHL/JSL */ >> +/* EHL */ >> #define INTEL_EHL_IDS(info) \ >> INTEL_VGA_DEVICE(0x4500, info), \ >> INTEL_VGA_DEVICE(0x4571, info), \ >> INTEL_VGA_DEVICE(0x4551, info), \ >> INTEL_VGA_DEVICE(0x4541, info), \ >> - INTEL_VGA_DEVICE(0x4E71, info), \ >> INTEL_VGA_DEVICE(0x4557, info), \ >> - INTEL_VGA_DEVICE(0x4555, info), \ >> + INTEL_VGA_DEVICE(0x4555, info) >> + >> +/* JSL */ >> +#define INTEL_JSL_IDS(info) \ >> + INTEL_VGA_DEVICE(0x4E71, info), \ >> INTEL_VGA_DEVICE(0x4E61, info), \ >> INTEL_VGA_DEVICE(0x4E57, info), \ >> INTEL_VGA_DEVICE(0x4E55, info), \ > > -- > Jani Nikula, Intel Open Source Graphics Center -- Jani Nikula, Intel Open Source Graphics Center _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx