mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-29 01:04:14 -04:00
The mdacon driver supports using ISA MDA or Hercules-compatible display adapters as a secondary text console. This was commonly used in the 1990s and earlier for debugging software which took over the primary display. It is highly unlikely anyone is doing so nowadays because serial consoles and much better methods of debugging exist. The driver is not enabled by any defconfig, nor any of the dozens of distro configs collected at [1]. It has been relegated to VTs 13-16 since commit0b9cf3aa6b("mdacon messing up default vc's - set default to vc13-16 again") in Linux 2.6.27 (and before Linux 2.5.53 - see the link in the message of the above commit). The change in 2.6.27 was done because it was incorrectly detecting non-MDA adapters as MDA and taking over all VTs, rendering them unusable. Furthermore, vgacon supports using MDA/Hercules-compatible adapters as the primary text console, so any systems with only one of these adapters were already using vgacon and will not experience any loss in functionality from the removal of this driver. Given all of these factors, the mdacon driver is likely entirely unused. Remove it. [1]f0bee86a13Signed-off-by: Ethan Nelson-Moore <enelsonmoore@gmail.com> Signed-off-by: Helge Deller <deller@gmx.de>
56 lines
1.1 KiB
C
56 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _ASM_POWERPC_VGA_H_
|
|
#define _ASM_POWERPC_VGA_H_
|
|
|
|
#ifdef __KERNEL__
|
|
|
|
/*
|
|
* Access to VGA videoram
|
|
*
|
|
* (c) 1998 Martin Mares <mj@ucw.cz>
|
|
*/
|
|
|
|
|
|
#include <asm/io.h>
|
|
|
|
|
|
#ifdef CONFIG_VGA_CONSOLE
|
|
|
|
#define VT_BUF_HAVE_RW
|
|
/*
|
|
* These are only needed for supporting VGA or MDA text mode, which use little
|
|
* endian byte ordering.
|
|
* In other cases, we can optimize by using native byte ordering and
|
|
* <linux/vt_buffer.h> has already done the right job for us.
|
|
*/
|
|
|
|
static inline void scr_writew(u16 val, volatile u16 *addr)
|
|
{
|
|
*addr = cpu_to_le16(val);
|
|
}
|
|
|
|
static inline u16 scr_readw(volatile const u16 *addr)
|
|
{
|
|
return le16_to_cpu(*addr);
|
|
}
|
|
|
|
#define VT_BUF_HAVE_MEMSETW
|
|
static inline void scr_memsetw(u16 *s, u16 v, unsigned int n)
|
|
{
|
|
memset16(s, cpu_to_le16(v), n / 2);
|
|
}
|
|
|
|
#endif /* !CONFIG_VGA_CONSOLE */
|
|
|
|
#ifdef __powerpc64__
|
|
#define VGA_MAP_MEM(x,s) ((unsigned long) ioremap((x), s))
|
|
#else
|
|
#define VGA_MAP_MEM(x,s) (x)
|
|
#endif
|
|
|
|
#define vga_readb(x) (*(x))
|
|
#define vga_writeb(x,y) (*(y) = (x))
|
|
|
|
#endif /* __KERNEL__ */
|
|
#endif /* _ASM_POWERPC_VGA_H_ */
|