*/
        u16 hotplug_active;
 
-       enum port port;
-
        /* DDC bus used by this SDVO encoder */
        u8 ddc_bus;
 
                return;
        }
 
-       if (intel_sdvo->port == PORT_B)
+       if (intel_sdvo->base.port == PORT_B)
                cval = intel_de_read(dev_priv, GEN3_SDVOC);
        else
                bval = intel_de_read(dev_priv, GEN3_SDVOB);
        return NULL;
 }
 
-#define SDVO_NAME(svdo) ((svdo)->port == PORT_B ? "SDVOB" : "SDVOC")
+#define SDVO_NAME(svdo) ((svdo)->base.port == PORT_B ? "SDVOB" : "SDVOC")
 
 static void intel_sdvo_debug_write(struct intel_sdvo *intel_sdvo, u8 cmd,
                                   const void *args, int args_len)
                        sdvox |= SDVO_BORDER_ENABLE;
        } else {
                sdvox = intel_de_read(dev_priv, intel_sdvo->sdvo_reg);
-               if (intel_sdvo->port == PORT_B)
+               if (intel_sdvo->base.port == PORT_B)
                        sdvox &= SDVOB_PRESERVE_MASK;
                else
                        sdvox &= SDVOC_PRESERVE_MASK;
        struct drm_i915_private *dev_priv = to_i915(sdvo->base.base.dev);
        struct sdvo_device_mapping *mapping;
 
-       if (sdvo->port == PORT_B)
+       if (sdvo->base.port == PORT_B)
                mapping = &dev_priv->display.vbt.sdvo_mappings[0];
        else
                mapping = &dev_priv->display.vbt.sdvo_mappings[1];
        struct sdvo_device_mapping *mapping;
        u8 pin;
 
-       if (sdvo->port == PORT_B)
+       if (sdvo->base.port == PORT_B)
                mapping = &dev_priv->display.vbt.sdvo_mappings[0];
        else
                mapping = &dev_priv->display.vbt.sdvo_mappings[1];
        struct drm_i915_private *dev_priv = to_i915(sdvo->base.base.dev);
        struct sdvo_device_mapping *my_mapping, *other_mapping;
 
-       if (sdvo->port == PORT_B) {
+       if (sdvo->base.port == PORT_B) {
                my_mapping = &dev_priv->display.vbt.sdvo_mappings[0];
                other_mapping = &dev_priv->display.vbt.sdvo_mappings[1];
        } else {
         * No SDVO device info is found for another DVO port,
         * so use mapping assumption we had before BIOS parsing.
         */
-       if (sdvo->port == PORT_B)
+       if (sdvo->base.port == PORT_B)
                return 0x70;
        else
                return 0x72;
                         "SDVO %c", port_name(port));
 
        intel_sdvo->sdvo_reg = sdvo_reg;
-       intel_sdvo->port = port;
        intel_sdvo->slave_addr = intel_sdvo_get_slave_addr(intel_sdvo) >> 1;
        intel_sdvo_select_i2c_bus(intel_sdvo);
        if (!intel_sdvo_init_ddc_proxy(intel_sdvo))
         * hotplug lines.
         */
        if (intel_sdvo->hotplug_active) {
-               if (intel_sdvo->port == PORT_B)
+               if (intel_sdvo->base.port == PORT_B)
                        intel_encoder->hpd_pin = HPD_SDVO_B;
                else
                        intel_encoder->hpd_pin = HPD_SDVO_C;