From 00e23cb0d69ad7b84a6b989139bdee2c35c58ba5 Mon Sep 17 00:00:00 2001 From: "Enrico Weigelt, metux IT consult" Date: Tue, 18 Jun 2024 08:50:44 +0200 Subject: [PATCH] bsd: drop PCCONS support The old PCCONS driver only seems to be used on minimal install disks and cannot coexist with newer ones, so there's probably no practical use case for supporting it in Xorg anymore. Signed-off-by: Enrico Weigelt, metux IT consult --- hw/xfree86/os-support/bsd/bsd_bell.c | 16 ------ hw/xfree86/os-support/bsd/bsd_init.c | 80 -------------------------- hw/xfree86/os-support/bsd/i386_video.c | 32 ----------- include/meson.build | 4 -- include/xorg-config.h.meson.in | 3 - include/xorg-server.h.meson.in | 3 - 6 files changed, 138 deletions(-) diff --git a/hw/xfree86/os-support/bsd/bsd_bell.c b/hw/xfree86/os-support/bsd/bsd_bell.c index 1a60a8ad9..daed0c293 100644 --- a/hw/xfree86/os-support/bsd/bsd_bell.c +++ b/hw/xfree86/os-support/bsd/bsd_bell.c @@ -38,10 +38,6 @@ #include "xf86_os_support.h" #include "xf86_OSlib.h" -#ifndef CONSOLE_X_BELL -#define CONSOLE_X_BELL _IOW('t',123,int[2]) -#endif - void xf86OSRingBell(int loudness, int pitch, int duration) { @@ -50,19 +46,7 @@ xf86OSRingBell(int loudness, int pitch, int duration) #endif if (loudness && pitch) { -#ifdef PCCONS_SUPPORT - int data[2]; -#endif - switch (xf86Info.consType) { - -#ifdef PCCONS_SUPPORT - case PCCONS: - data[0] = pitch; - data[1] = (duration * loudness) / 50; - ioctl(xf86Info.consoleFd, CONSOLE_X_BELL, data); - break; -#endif #if defined (SYSCONS_SUPPORT) || defined (PCVT_SUPPORT) case SYSCONS: case PCVT: diff --git a/hw/xfree86/os-support/bsd/bsd_init.c b/hw/xfree86/os-support/bsd/bsd_init.c index b524d7fa6..4162e2a4b 100644 --- a/hw/xfree86/os-support/bsd/bsd_init.c +++ b/hw/xfree86/os-support/bsd/bsd_init.c @@ -45,31 +45,13 @@ #include "os/osdep.h" -#ifndef CONSOLE_X_MODE_ON -#define CONSOLE_X_MODE_ON _IO('t',121) -#endif - -#ifndef CONSOLE_X_MODE_OFF -#define CONSOLE_X_MODE_OFF _IO('t',122) -#endif - static Bool KeepTty = FALSE; -#ifdef PCCONS_SUPPORT -static int devConsoleFd = -1; -#endif #if defined (SYSCONS_SUPPORT) || defined (PCVT_SUPPORT) static int VTnum = -1; static int initialVT = -1; #endif -#ifdef PCCONS_SUPPORT -/* Stock 0.1 386bsd pccons console driver interface */ -#define PCCONS_CONSOLE_DEV1 "/dev/ttyv0" -#define PCCONS_CONSOLE_DEV2 "/dev/vga" -#define PCCONS_CONSOLE_MODE O_RDWR|O_NDELAY -#endif - #ifdef SYSCONS_SUPPORT /* The FreeBSD 1.1 version syscons driver uses /dev/ttyv0 */ #define SYSCONS_CONSOLE_DEV1 "/dev/ttyv0" @@ -100,9 +82,6 @@ static int initialVT = -1; "Check your kernel's console driver configuration and /dev entries" static const char *supported_drivers[] = { -#ifdef PCCONS_SUPPORT - "pccons (with X support)", -#endif #ifdef SYSCONS_SUPPORT "syscons", #endif @@ -124,10 +103,6 @@ static const char *supported_drivers[] = { typedef int (*xf86ConsOpen_t) (void); -#ifdef PCCONS_SUPPORT -static int xf86OpenPccons(void); -#endif /* PCCONS_SUPPORT */ - #ifdef SYSCONS_SUPPORT static int xf86OpenSyscons(void); #endif /* SYSCONS_SUPPORT */ @@ -153,9 +128,6 @@ static xf86ConsOpen_t xf86ConsTab[] = { #ifdef SYSCONS_SUPPORT xf86OpenSyscons, #endif -#ifdef PCCONS_SUPPORT - xf86OpenPccons, -#endif #ifdef WSCONS_SUPPORT xf86OpenWScons, #endif @@ -218,24 +190,6 @@ xf86OpenConsole(void) xf86Info.consoleFd = fd; switch (xf86Info.consType) { -#ifdef PCCONS_SUPPORT - case PCCONS: - if (ioctl(xf86Info.consoleFd, CONSOLE_X_MODE_ON, 0) < 0) { - FatalError("%s: CONSOLE_X_MODE_ON failed (%s)\n%s", - "xf86OpenConsole", strerror(errno), - CHECK_DRIVER_MSG); - } - /* - * Hack to prevent keyboard hanging when syslogd closes - * /dev/console - */ - if ((devConsoleFd = open("/dev/console", O_WRONLY, 0)) < 0) { - LogMessageVerb(X_WARNING, 1, - "xf86OpenConsole: couldn't open /dev/console (%s)\n", - strerror(errno)); - } - break; -#endif #if defined (SYSCONS_SUPPORT) || defined (PCVT_SUPPORT) case SYSCONS: /* as of FreeBSD 2.2.8, syscons driver does not need the #1 vt @@ -329,31 +283,6 @@ xf86OpenConsole(void) return; } -#ifdef PCCONS_SUPPORT - -static int -xf86OpenPccons(void) -{ - int fd = -1; - - if ((fd = open(PCCONS_CONSOLE_DEV1, PCCONS_CONSOLE_MODE, 0)) - >= 0 || (fd = open(PCCONS_CONSOLE_DEV2, PCCONS_CONSOLE_MODE, 0)) - >= 0) { - if (ioctl(fd, CONSOLE_X_MODE_OFF, 0) < 0) { - FatalError("%s: CONSOLE_X_MODE_OFF failed (%s)\n%s\n%s", - "xf86OpenPccons", - strerror(errno), - "Was expecting pccons driver with X support", - CHECK_DRIVER_MSG); - } - xf86Info.consType = PCCONS; - LogMessageVerb(X_PROBED, 1, "Using pccons driver with X support\n"); - } - return fd; -} - -#endif /* PCCONS_SUPPORT */ - #ifdef SYSCONS_SUPPORT static int @@ -617,11 +546,6 @@ xf86CloseConsole(void) return; switch (xf86Info.consType) { -#ifdef PCCONS_SUPPORT - case PCCONS: - ioctl(xf86Info.consoleFd, CONSOLE_X_MODE_OFF, 0); - break; -#endif /* PCCONS_SUPPORT */ #if defined (SYSCONS_SUPPORT) || defined (PCVT_SUPPORT) case SYSCONS: case PCVT: @@ -652,10 +576,6 @@ xf86CloseConsole(void) } close(xf86Info.consoleFd); -#ifdef PCCONS_SUPPORT - if (devConsoleFd >= 0) - close(devConsoleFd); -#endif return; } diff --git a/hw/xfree86/os-support/bsd/i386_video.c b/hw/xfree86/os-support/bsd/i386_video.c index 6b4f701d0..a68cf3e44 100644 --- a/hw/xfree86/os-support/bsd/i386_video.c +++ b/hw/xfree86/os-support/bsd/i386_video.c @@ -46,14 +46,6 @@ #include #endif -#ifndef CONSOLE_X_TV_ON -#define CONSOLE_X_TV_ON _IOW('t',155,int) -#endif - -#ifndef CONSOLE_X_TV_OFF -#define CONSOLE_X_TV_OFF _IO('t',156) -#endif - #ifdef __OpenBSD__ #define SYSCTL_MSG "\tCheck that you have set 'machdep.allowaperture=1'\n"\ "\tin /etc/sysctl.conf and reboot your machine\n" \ @@ -289,18 +281,6 @@ void xf86SetTVOut(int mode) { switch (xf86Info.consType) { -#ifdef PCCONS_SUPPORT - case PCCONS:{ - - if (ioctl(xf86Info.consoleFd, CONSOLE_X_TV_ON, &mode) < 0) { - LogMessageVerb(X_WARNING, 1, - "xf86SetTVOut: Could not set console to TV output, %s\n", - strerror(errno)); - } - } - break; -#endif /* PCCONS_SUPPORT */ - default: FatalError("Xf86SetTVOut: Unsupported console"); break; @@ -312,18 +292,6 @@ void xf86SetRGBOut(void) { switch (xf86Info.consType) { -#ifdef PCCONS_SUPPORT - case PCCONS:{ - - if (ioctl(xf86Info.consoleFd, CONSOLE_X_TV_OFF, 0) < 0) { - LogMessageVerb(X_WARNING, 1, - "xf86SetTVOut: Could not set console to RGB output, %s\n", - strerror(errno)); - } - } - break; -#endif /* PCCONS_SUPPORT */ - default: FatalError("Xf86SetTVOut: Unsupported console"); break; diff --git a/include/meson.build b/include/meson.build index 79c2f3f3f..a5aff09af 100644 --- a/include/meson.build +++ b/include/meson.build @@ -275,21 +275,18 @@ defines_svr4 = '''#if !defined(SVR4) && !defined(__svr4__) && !defined(__SVR4) ''' # BSD specifics -supports_pccons = false supports_pcvt = false supports_syscons = false supports_wscons = false csrg_based = false if host_machine.system() == 'freebsd' or host_machine.system() == 'dragonfly' - supports_pccons = true supports_pcvt = true supports_syscons = true csrg_based = true endif if host_machine.system() == 'kfreebsd' - supports_pccons = true supports_pcvt = true supports_syscons = true endif @@ -317,7 +314,6 @@ conf_data.set_quoted('XCONFIGFILE', 'xorg.conf') conf_data.set_quoted('__XSERVERNAME__', 'Xorg') conf_data.set('WITH_VGAHW', build_vgahw ? '1' : false) conf_data.set('CSRG_BASED', csrg_based ? '1' : false) -conf_data.set('PCCONS_SUPPORT', supports_pccons ? '1' : false) conf_data.set('PCVT_SUPPORT', supports_pcvt ? '1' : false) conf_data.set('SYSCONS_SUPPORT', supports_syscons ? '1' : false) conf_data.set('WSCONS_SUPPORT', supports_wscons ? '1' : false) diff --git a/include/xorg-config.h.meson.in b/include/xorg-config.h.meson.in index 192c340dc..1e0306083 100644 --- a/include/xorg-config.h.meson.in +++ b/include/xorg-config.h.meson.in @@ -94,9 +94,6 @@ /* System is BSD-like */ #mesondefine CSRG_BASED -/* System has PC console */ -#mesondefine PCCONS_SUPPORT - /* System has PCVT console */ #mesondefine PCVT_SUPPORT diff --git a/include/xorg-server.h.meson.in b/include/xorg-server.h.meson.in index 0f5b5834c..ed02c8927 100644 --- a/include/xorg-server.h.meson.in +++ b/include/xorg-server.h.meson.in @@ -176,9 +176,6 @@ /* System is BSD-like */ #mesondefine CSRG_BASED -/* System has PC console */ -#mesondefine PCCONS_SUPPORT - /* System has PCVT console */ #mesondefine PCVT_SUPPORT