drm/gma500: Move fbdev code into separate source file

Move the fbdev emulation from framebuffer.c to fbdev.c. Only build
the source code if the Kconfig symbol has been selected. Remaining in
framebuffer.c is gma500's code for DRM framebuffers. No functional
changes.

v2:
	* remove 'extern' from function declaration (Patrik)
	* declare empty init/fini functions as 'static inline' (kernel
	  test robot)
	* rebase onto vm_flags_set()
	* typo fixes in commit message

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230313151610.14367-3-tzimmermann@suse.de
This commit is contained in:
Thomas Zimmermann
2023-03-13 16:16:05 +01:00
parent 556d5a2d42
commit b8bbbea1ae
4 changed files with 346 additions and 315 deletions

View File

@@ -610,7 +610,24 @@ extern void psb_lid_timer_takedown(struct drm_psb_private *dev_priv);
/* modesetting */
extern void psb_modeset_init(struct drm_device *dev);
extern void psb_modeset_cleanup(struct drm_device *dev);
/* framebuffer */
struct drm_framebuffer *psb_framebuffer_create(struct drm_device *dev,
const struct drm_mode_fb_cmd2 *mode_cmd,
struct drm_gem_object *obj);
/* fbdev */
#if defined(CONFIG_DRM_FBDEV_EMULATION)
extern int psb_fbdev_init(struct drm_device *dev);
extern void psb_fbdev_fini(struct drm_device *dev);
#else
static inline int psb_fbdev_init(struct drm_device *dev)
{
return 0;
}
static inline void psb_fbdev_fini(struct drm_device *dev)
{ }
#endif
/* backlight.c */
int gma_backlight_init(struct drm_device *dev);