} else if (HAS_PCH_CNP(i915)) {
                pins = gmbus_pins_cnp;
                size = ARRAY_SIZE(gmbus_pins_cnp);
-       } else if (IS_GEMINILAKE(i915) || IS_BROXTON(i915)) {
+       } else if (display->platform.geminilake || display->platform.broxton) {
                pins = gmbus_pins_bxt;
                size = ARRAY_SIZE(gmbus_pins_bxt);
        } else if (DISPLAY_VER(display) == 9) {
                pins = gmbus_pins_skl;
                size = ARRAY_SIZE(gmbus_pins_skl);
-       } else if (IS_BROADWELL(i915)) {
+       } else if (display->platform.broadwell) {
                pins = gmbus_pins_bdw;
                size = ARRAY_SIZE(gmbus_pins_bdw);
        } else {
 static u32 get_reserved(struct intel_gmbus *bus)
 {
        struct intel_display *display = bus->display;
-       struct drm_i915_private *i915 = to_i915(display->drm);
        u32 reserved = 0;
 
        /* On most chips, these bits must be preserved in software. */
-       if (!IS_I830(i915) && !IS_I845G(i915))
+       if (!display->platform.i830 && !display->platform.i845g)
                reserved = intel_de_read_notrace(display, bus->gpio_reg) &
                        (GPIO_DATA_PULLUP_DISABLE | GPIO_CLOCK_PULLUP_DISABLE);
 
 {
        struct intel_gmbus *bus = to_intel_gmbus(adapter);
        struct intel_display *display = bus->display;
-       struct drm_i915_private *i915 = to_i915(display->drm);
 
        intel_gmbus_reset(display);
 
-       if (IS_PINEVIEW(i915))
+       if (display->platform.pineview)
                pnv_gmbus_clock_gating(display, false);
 
        set_data(bus, 1);
 {
        struct intel_gmbus *bus = to_intel_gmbus(adapter);
        struct intel_display *display = bus->display;
-       struct drm_i915_private *i915 = to_i915(display->drm);
 
        set_data(bus, 1);
        set_clock(bus, 1);
 
-       if (IS_PINEVIEW(i915))
+       if (display->platform.pineview)
                pnv_gmbus_clock_gating(display, true);
 }
 
        int ret = 0;
 
        /* Display WA #0868: skl,bxt,kbl,cfl,glk */
-       if (IS_GEMINILAKE(i915) || IS_BROXTON(i915))
+       if (display->platform.geminilake || display->platform.broxton)
                bxt_gmbus_clock_gating(display, false);
        else if (HAS_PCH_SPT(i915) || HAS_PCH_CNP(i915))
                pch_gmbus_clock_gating(display, false);
 
 out:
        /* Display WA #0868: skl,bxt,kbl,cfl,glk */
-       if (IS_GEMINILAKE(i915) || IS_BROXTON(i915))
+       if (display->platform.geminilake || display->platform.broxton)
                bxt_gmbus_clock_gating(display, true);
        else if (HAS_PCH_SPT(i915) || HAS_PCH_CNP(i915))
                pch_gmbus_clock_gating(display, true);
  */
 int intel_gmbus_setup(struct intel_display *display)
 {
-       struct drm_i915_private *i915 = to_i915(display->drm);
        struct pci_dev *pdev = to_pci_dev(display->drm->dev);
        unsigned int pin;
        int ret;
 
-       if (IS_VALLEYVIEW(i915) || IS_CHERRYVIEW(i915))
+       if (display->platform.valleyview || display->platform.cherryview)
                display->gmbus.mmio_base = VLV_DISPLAY_BASE;
        else if (!HAS_GMCH(display))
                /*
                bus->reg0 = pin | GMBUS_RATE_100KHZ;
 
                /* gmbus seems to be broken on i830 */
-               if (IS_I830(i915))
+               if (display->platform.i830)
                        bus->force_bit = 1;
 
                intel_gpio_setup(bus, GPIO(display, gmbus_pin->gpio));