void armada_drm_queue_unref_work(struct drm_device *,
        struct drm_framebuffer *);
 
-extern const struct drm_mode_config_funcs armada_drm_mode_config_funcs;
-
 int armada_fbdev_init(struct drm_device *);
 void armada_fbdev_fini(struct drm_device *);
 
 
 #include "armada_crtc.h"
 #include "armada_drm.h"
 #include "armada_gem.h"
+#include "armada_fb.h"
 #include "armada_hw.h"
 #include <drm/armada_drm.h>
 #include "armada_ioctlP.h"
        .fops                   = &armada_drm_fops,
 };
 
+static const struct drm_mode_config_funcs armada_drm_mode_config_funcs = {
+       .fb_create              = armada_fb_create,
+       .output_poll_changed    = drm_fb_helper_output_poll_changed,
+};
+
 static int armada_drm_bind(struct device *dev)
 {
        struct armada_private *priv;
 
        return dfb;
 }
 
-static struct drm_framebuffer *armada_fb_create(struct drm_device *dev,
+struct drm_framebuffer *armada_fb_create(struct drm_device *dev,
        struct drm_file *dfile, const struct drm_mode_fb_cmd2 *mode)
 {
        struct armada_gem_object *obj;
        DRM_ERROR("failed to initialize framebuffer: %d\n", ret);
        return ERR_PTR(ret);
 }
-
-const struct drm_mode_config_funcs armada_drm_mode_config_funcs = {
-       .fb_create              = armada_fb_create,
-       .output_poll_changed    = drm_fb_helper_output_poll_changed,
-};
 
 
 struct armada_framebuffer *armada_framebuffer_create(struct drm_device *,
        const struct drm_mode_fb_cmd2 *, struct armada_gem_object *);
-
+struct drm_framebuffer *armada_fb_create(struct drm_device *dev,
+       struct drm_file *dfile, const struct drm_mode_fb_cmd2 *mode);
 #endif
 
        .fb_imageblit   = drm_fb_helper_cfb_imageblit,
 };
 
-static int armada_fb_create(struct drm_fb_helper *fbh,
+static int armada_fbdev_create(struct drm_fb_helper *fbh,
        struct drm_fb_helper_surface_size *sizes)
 {
        struct drm_device *dev = fbh->dev;
        int ret = 0;
 
        if (!fbh->fb) {
-               ret = armada_fb_create(fbh, sizes);
+               ret = armada_fbdev_create(fbh, sizes);
                if (ret == 0)
                        ret = 1;
        }