drm_panel_attach(intel_dsi->panel, connector);
 
        mutex_lock(&dev->mode_config.mutex);
-       drm_panel_get_modes(intel_dsi->panel);
+       intel_dsi_vbt_get_modes(intel_dsi->panel);
        list_for_each_entry(scan, &connector->probed_modes, head) {
                if ((scan->type & DRM_MODE_TYPE_PREFERRED)) {
                        fixed_mode = drm_mode_duplicate(dev, scan);
 
                            enum port port);
 
 struct drm_panel *intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id);
+int intel_dsi_vbt_get_modes(struct drm_panel *panel);
 enum mipi_dsi_pixel_format pixel_format_from_register_bits(u32 fmt);
 
 #endif /* _INTEL_DSI_H */
 
        }
 }
 
-static int vbt_panel_get_modes(struct drm_panel *panel)
+int intel_dsi_vbt_get_modes(struct drm_panel *panel)
 {
        struct vbt_panel *vbt_panel = to_vbt_panel(panel);
        struct intel_dsi *intel_dsi = vbt_panel->intel_dsi;
        return 1;
 }
 
-static const struct drm_panel_funcs vbt_panel_funcs = {
-       .get_modes = vbt_panel_get_modes,
-};
-
 struct drm_panel *intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
 {
        struct drm_device *dev = intel_dsi->base.base.dev;
 
        vbt_panel->intel_dsi = intel_dsi;
        drm_panel_init(&vbt_panel->panel);
-       vbt_panel->panel.funcs = &vbt_panel_funcs;
        drm_panel_add(&vbt_panel->panel);
 
        /* a regular driver would get the device in probe */