mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-22 22:04:47 +08:00
vga16fb: drop powerpc support
I noticed that commit0db5b61e0d
("fbdev/vga16fb: Create EGA/VGA devices in sysfb code") broke vga16fb on non-x86 platforms, because the sysfb code never creates a vga-framebuffer device when screen_info.orig_video_isVGA is set to '1' instead of VIDEO_TYPE_VGAC. However, it turns out that the only architecture that has allowed building vga16fb in the past 20 years is powerpc, and this only worked on two 32-bit platforms and never on 64-bit powerpc. The last machine that actually used this was removed in linux-3.10, so this is all dead code and can be removed. The big-endian support in vga16fb.c could also be removed, but I'd just leave this in place. Fixes:933ee7119f
("powerpc: remove PReP platform") Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Acked-by: Helge Deller <deller@gmx.de> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Link: https://lore.kernel.org/r/20231009211845.3136536-8-arnd@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
555624c0d1
commit
b858a97bf0
@ -22,7 +22,6 @@
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/ioport.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/screen_info.h>
|
||||
#include <linux/root_dev.h>
|
||||
#include <linux/cpu.h>
|
||||
#include <linux/unistd.h>
|
||||
@ -98,21 +97,6 @@ int boot_cpu_hwid = -1;
|
||||
int dcache_bsize;
|
||||
int icache_bsize;
|
||||
|
||||
/*
|
||||
* This still seems to be needed... -- paulus
|
||||
*/
|
||||
struct screen_info screen_info = {
|
||||
.orig_x = 0,
|
||||
.orig_y = 25,
|
||||
.orig_video_cols = 80,
|
||||
.orig_video_lines = 25,
|
||||
.orig_video_isVGA = 1,
|
||||
.orig_video_points = 16
|
||||
};
|
||||
#if defined(CONFIG_FB_VGA16_MODULE)
|
||||
EXPORT_SYMBOL(screen_info);
|
||||
#endif
|
||||
|
||||
/* Variables required to store legacy IO irq routing */
|
||||
int of_i8042_kbd_irq;
|
||||
EXPORT_SYMBOL_GPL(of_i8042_kbd_irq);
|
||||
|
@ -363,7 +363,7 @@ config FB_IMSTT
|
||||
|
||||
config FB_VGA16
|
||||
tristate "VGA 16-color graphics support"
|
||||
depends on FB && (X86 || PPC)
|
||||
depends on FB && X86
|
||||
select APERTURE_HELPERS
|
||||
select FB_CFB_FILLRECT
|
||||
select FB_CFB_COPYAREA
|
||||
|
@ -185,8 +185,6 @@ static inline void setindex(int index)
|
||||
/* Check if the video mode is supported by the driver */
|
||||
static inline int check_mode_supported(const struct screen_info *si)
|
||||
{
|
||||
/* non-x86 architectures treat orig_video_isVGA as a boolean flag */
|
||||
#if defined(CONFIG_X86)
|
||||
/* only EGA and VGA in 16 color graphic mode are supported */
|
||||
if (si->orig_video_isVGA != VIDEO_TYPE_EGAC &&
|
||||
si->orig_video_isVGA != VIDEO_TYPE_VGAC)
|
||||
@ -197,7 +195,7 @@ static inline int check_mode_supported(const struct screen_info *si)
|
||||
si->orig_video_mode != 0x10 && /* 640x350/4 (EGA) */
|
||||
si->orig_video_mode != 0x12) /* 640x480/4 (VGA) */
|
||||
return -ENODEV;
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -1338,12 +1336,7 @@ static int vga16fb_probe(struct platform_device *dev)
|
||||
printk(KERN_INFO "vga16fb: mapped to 0x%p\n", info->screen_base);
|
||||
par = info->par;
|
||||
|
||||
#if defined(CONFIG_X86)
|
||||
par->isVGA = si->orig_video_isVGA == VIDEO_TYPE_VGAC;
|
||||
#else
|
||||
/* non-x86 architectures treat orig_video_isVGA as a boolean flag */
|
||||
par->isVGA = si->orig_video_isVGA;
|
||||
#endif
|
||||
par->palette_blanked = 0;
|
||||
par->vesa_blanked = 0;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user