kernel: modules: define fb-io-fops module

Define define fb-io-fops module - Fbdev helpers for framebuffers in I/O memory
By creating a hidden module it is possible to load fb_io_fops.ko
according to the kernel version.

Fixes: 5048c9d ("kernel: modules: adjust the object files of kmod-fb ")
Package kmod-drm-radeon is missing dependencies for the following libraries:
fb_io_fops.ko
make[2]: *** [modules/video.mk:620: /__w/openwrt/openwrt/openwrt/bin/targets/x86/geode/packages/kmod-drm-radeon-6.12.28-r1.apk] Error 1
time: package/kernel/linux/compile#45.35#40.01#75.34

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18771
Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
Mieczyslaw Nalewaj 2025-05-18 12:17:30 +02:00 committed by Robert Marko
parent 7193539c98
commit 12c93f2295

View file

@ -102,7 +102,7 @@ $(eval $(call KernelPackage,backlight-pwm))
define KernelPackage/fb define KernelPackage/fb
SUBMENU:=$(VIDEO_MENU) SUBMENU:=$(VIDEO_MENU)
TITLE:=Framebuffer and framebuffer console support TITLE:=Framebuffer and framebuffer console support
DEPENDS:=@DISPLAY_SUPPORT DEPENDS:=@DISPLAY_SUPPORT +LINUX_6_6:kmod-fb-io-fops
KCONFIG:= \ KCONFIG:= \
CONFIG_FB \ CONFIG_FB \
CONFIG_FB_DEVICE=y \ CONFIG_FB_DEVICE=y \
@ -128,8 +128,7 @@ define KernelPackage/fb
CONFIG_VT_CONSOLE=y \ CONFIG_VT_CONSOLE=y \
CONFIG_VT_HW_CONSOLE_BINDING=y CONFIG_VT_HW_CONSOLE_BINDING=y
FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb.ko \ FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb.ko \
$(LINUX_DIR)/lib/fonts/font.ko \ $(LINUX_DIR)/lib/fonts/font.ko
$(LINUX_DIR)/drivers/video/fbdev/core/fb_io_fops.ko@lt6.8
AUTOLOAD:=$(call AutoLoad,06,fb font) AUTOLOAD:=$(call AutoLoad,06,fb font)
endef endef
@ -193,6 +192,18 @@ endef
$(eval $(call KernelPackage,fb-cfb-imgblt)) $(eval $(call KernelPackage,fb-cfb-imgblt))
define KernelPackage/fb-io-fops
SUBMENU:=$(VIDEO_MENU)
TITLE:=Fbdev helpers for framebuffers in I/O memory
HIDDEN:=1
KCONFIG:=CONFIG_FB_IOMEM_FOPS
FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb_io_fops.ko
AUTOLOAD:=$(call AutoLoad,07,fb_io_fops)
endef
$(eval $(call KernelPackage,fb-io-fops))
define KernelPackage/fb-sys-fops define KernelPackage/fb-sys-fops
SUBMENU:=$(VIDEO_MENU) SUBMENU:=$(VIDEO_MENU)
TITLE:=Framebuffer software sys ops support TITLE:=Framebuffer software sys ops support
@ -638,7 +649,8 @@ define KernelPackage/drm-radeon
TITLE:=Radeon DRM support TITLE:=Radeon DRM support
DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-kms-helper \ DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-kms-helper \
+kmod-drm-ttm +kmod-drm-ttm-helper +kmod-i2c-algo-bit +radeon-firmware \ +kmod-drm-ttm +kmod-drm-ttm-helper +kmod-i2c-algo-bit +radeon-firmware \
+kmod-drm-display-helper +kmod-acpi-video +kmod-drm-suballoc-helper +kmod-drm-display-helper +kmod-acpi-video +kmod-drm-suballoc-helper \
+!LINUX_6_6:kmod-fb-io-fops
KCONFIG:=CONFIG_DRM_RADEON KCONFIG:=CONFIG_DRM_RADEON
FILES:=$(LINUX_DIR)/drivers/gpu/drm/radeon/radeon.ko FILES:=$(LINUX_DIR)/drivers/gpu/drm/radeon/radeon.ko
AUTOLOAD:=$(call AutoProbe,radeon) AUTOLOAD:=$(call AutoProbe,radeon)