drm/i915/cnl: Add Cannonlake PCI IDs for another SKU.
authorRodrigo Vivi <rodrigo.vivi@intel.com>
Mon, 29 Jan 2018 23:22:14 +0000 (15:22 -0800)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Tue, 30 Jan 2018 18:24:12 +0000 (10:24 -0800)
The only difference is that this SKUs has the full
Port A/E split named as Port F.

But since SKUs differences don't matter on the platform
definition group and ids, let's merge all off them together.

v2: Really include the PCI IDs to the picidlist[];
v3: Add the PCI Id for another SKU (Anusha).
v4: Update IDs, really include to pciidlists again.
v5: Unify all GT2 IDs.
v6: Unify in a way that we don't break early-quirks.c
v7: Remove GT reference since it doesn't matter here (Paulo)
    Also move IS_CNL_WITH_PORT_F macro to this patch to
    make it easier for review this part and also to get
    used sooner.
v8: Rebased on top of commit 5db47e37b387 ("Revert "drm/i915:
mark all device info struct with __initconst"")

Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Signed-off-by: Anusha Srivatsa <anusha.srivatsa@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180129232223.766-1-rodrigo.vivi@intel.com
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_pci.c
include/drm/i915_pciids.h

index 88255f9c3cc48f506fa6e985bfd22e1e59a6f9c5..8b5c1a839655ae5d093e882b43f09f85c6b40f8c 100644 (file)
@@ -2648,6 +2648,8 @@ intel_info(const struct drm_i915_private *dev_priv)
                                 (dev_priv)->info.gt == 2)
 #define IS_CFL_GT3(dev_priv)   (IS_COFFEELAKE(dev_priv) && \
                                 (dev_priv)->info.gt == 3)
+#define IS_CNL_WITH_PORT_F(dev_priv)   (IS_CANNONLAKE(dev_priv) && \
+                                       (INTEL_DEVID(dev_priv) & 0x0004) == 0x0004)
 
 #define IS_ALPHA_SUPPORT(intel_info) ((intel_info)->is_alpha_support)
 
index 138228dd7782147fd8849788459ccd5b83503039..4e7a10c897829201619522e1dfff1696d05881b9 100644 (file)
@@ -571,7 +571,7 @@ static const struct intel_device_info intel_coffeelake_gt3_info = {
        .ddb_size = 1024, \
        GLK_COLORS
 
-static const struct intel_device_info intel_cannonlake_gt2_info = {
+static const struct intel_device_info intel_cannonlake_info = {
        GEN10_FEATURES,
        .is_alpha_support = 1,
        .platform = INTEL_CANNONLAKE,
@@ -649,8 +649,7 @@ static const struct pci_device_id pciidlist[] = {
        INTEL_CFL_U_GT1_IDS(&intel_coffeelake_gt1_info),
        INTEL_CFL_U_GT2_IDS(&intel_coffeelake_gt2_info),
        INTEL_CFL_U_GT3_IDS(&intel_coffeelake_gt3_info),
-       INTEL_CNL_U_GT2_IDS(&intel_cannonlake_gt2_info),
-       INTEL_CNL_Y_GT2_IDS(&intel_cannonlake_gt2_info),
+       INTEL_CNL_IDS(&intel_cannonlake_info),
        {0, 0, 0}
 };
 MODULE_DEVICE_TABLE(pci, pciidlist);
index 5db0458dd83214e13fd3721174ebb25e63f21a95..9e1fe6634424203e66d9393b17c6456d9f289777 100644 (file)
        INTEL_CFL_U_GT2_IDS(info), \
        INTEL_CFL_U_GT3_IDS(info)
 
-/* CNL U 2+2 */
-#define INTEL_CNL_U_GT2_IDS(info) \
+/* CNL */
+#define INTEL_CNL_IDS(info) \
        INTEL_VGA_DEVICE(0x5A52, info), \
        INTEL_VGA_DEVICE(0x5A5A, info), \
        INTEL_VGA_DEVICE(0x5A42, info), \
-       INTEL_VGA_DEVICE(0x5A4A, info)
-
-/* CNL Y 2+2 */
-#define INTEL_CNL_Y_GT2_IDS(info) \
+       INTEL_VGA_DEVICE(0x5A4A, info), \
        INTEL_VGA_DEVICE(0x5A51, info), \
        INTEL_VGA_DEVICE(0x5A59, info), \
        INTEL_VGA_DEVICE(0x5A41, info), \
        INTEL_VGA_DEVICE(0x5A49, info), \
        INTEL_VGA_DEVICE(0x5A71, info), \
-       INTEL_VGA_DEVICE(0x5A79, info)
-
-#define INTEL_CNL_IDS(info) \
-       INTEL_CNL_U_GT2_IDS(info), \
-       INTEL_CNL_Y_GT2_IDS(info)
+       INTEL_VGA_DEVICE(0x5A79, info), \
+       INTEL_VGA_DEVICE(0x5A54, info), \
+       INTEL_VGA_DEVICE(0x5A5C, info), \
+       INTEL_VGA_DEVICE(0x5A44, info)
 
 #endif /* _I915_PCIIDS_H */