History log of /xsrc/external/mit/xorg-server/dist/hw/netbsd/x68k/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
59a1f54a 22-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Make sure the keyboard device is actually enabled in DDXRingBell().

Also use consistent variable names for readability.

62918564 22-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Allocate keyboard and mouse event buffers in the device private structures.

Also simplify GetEvents functions.

9decb2cd 22-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Allocate X68kKbdPriv dynamically to make it really private.

DEVICE_OFF and DEVICE_CLOSE operations are adjusted accordingly.
x68kGetKbdType() function is also added to get keyboard map type
specified in the config file.

3ec86d60 22-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Allocate X68kMousePriv dynamically to avoid static buffers.

DEVICE_OFF and DEVICE_CLOSE operations are also adjusted.

4ff7d041 22-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Reduce references to x68kKbdPriv and x68kMousePriv for readability.

45f60b5b 22-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Refactor X68k input device handling to remove SIGIO based event processing.

The keyboard and pointer input events are now processed directly
using fd event notifications registered via DIX SetNotifyFd(),
instead of the legacy SIGIO-based asynchronous I/O.

b0c54374 22-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Use consistent name for DeviceIntPtr variables among keyboard and mouse.

d8389a6e 17-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Initialize DDX pointer valuators consistently with other drivers/servers.

This may not be strictly necessary, since InitValuatorAxisStruct()
for all axes is also called from the DIX InitPointerDeviceStruct()
via InitValuatorClassDeviceStruct() with default values.

However, for future X.Org updates, it is beneficial to keep the
DIX-DDX interface implementation in MouseProc's DEVICE_INIT operation
consistent with the official xf86-input-mouse driver, xquartz DDX server,
and others.

1406604b 17-Jun-2025 tsutsui <tsutsui@NetBSD.org>

Properly apply DIX locking to input events in NetBSD-specific DDX servers.

This thread-based DIX locking approach using input_lock() and
input_unlock() has been available since X.Org 1.19.0:
https://gitlab.freedesktop.org/xorg/xserver/-/commit/30ac7567980a1eb79d084a63e0e74e1d9a3af673

All xfree86 DDX implementations have switched to using these new
DIX locks instead of the old OsBlockSIGIO() / OsReleaseSIGIO() methods:
https://gitlab.freedesktop.org/xorg/xserver/-/commit/6a5a4e60373c1386b311b2a8bb666c32d68a9d99

The xquartz DDX (an official X.Org server implementation) also uses
these locks for input events:
https://gitlab.freedesktop.org/xorg/xserver/-/commit/7d6ebf3f4e4d517bb846d15a5deb131da19a267c

This should resolve occasional SIGSEGVs in the Xsun server caused
by NULL pointer dereferences around the event queue handlers
under heavy load.

Should be pulled up to netbsd-10.

357cbbce 16-Jul-2022 tsutsui <tsutsui@NetBSD.org>

Merge AbortDDX() into ddxGiveUp() as other upstream DDX servers.

https://gitlab.freedesktop.org/xorg/xserver/-/commit/a23eba2a91024d27da45e5aee1f4215f7ec2ae82
> These are so close to identical that most DDXes implement one in terms
> of the other. All the relevant cases can be distinguished by the error
> code, so merge the functions together to make things simpler.

6b007147 15-Jul-2022 mrg <mrg@NetBSD.org>

couple of changes needed for xorg-server 21.1.4.

- AbortDDX() is removed, make it static to avoid code churn since
it is used by internal code now
- LegalModifier() is gone
- if the PRESENT extension isn't included, don't enable the
-fakescreenfps option since it require PRESENT.

fixes builds for sun3 and x68k.

26f5ec08 22-Mar-2021 tsutsui <tsutsui@NetBSD.org>

Explicitly include dix-config.h for HAVE_foo definitions referred in os.h.

2aa2a51f 17-Mar-2021 tsutsui <tsutsui@NetBSD.org>

Fixes "FatalError re-entered, aborting" error when Xservers get SIGSEGV.

Handle a new DEVICE_ABORT mode perperly in deviceProc funtions.
Also don't exit via FatalError() on an unknown mode because it looks
upstream assumes DDX deviceProc functions don't treat it fatal:
https://gitlab.freedesktop.org/xorg/xserver/-/commit/9f79e93b6b3416055d08a0e8f9f16d5fd0649e36

9c576acf 11-Mar-2021 tsutsui <tsutsui@NetBSD.org>

ErrorF() doesn't append newlines at the end of messages.

e8a9312a 07-Feb-2021 tsutsui <tsutsui@NetBSD.org>

Add "Emulate3Buttons" support to the X68k Xorg based monolithic server.

Based on "Emulate3Buttons" functions in the xf86-input-mouse driver,
with various refactoring and cleanups:
- rewrite a magic three-dimensional array for a finate state machine
with proper named structures etc.
- separate 3 button emulation functions from other stuff

See my post on port-x68k@ (and tech-x11@) for more details:
https://mail-index.netbsd.org/port-x68k/2021/02/05/msg000074.html

09f8ca91 08-Dec-2020 mrg <mrg@NetBSD.org>

add dummy ddxInputThreadInit() if INPUTTHREAD is defined.
fixes sun3 build and should fix x68k build too.

b83276b4 20-Nov-2020 tsutsui <tsutsui@NetBSD.org>

valuator_mask_zero() is enough for mouse button events.

15b0c026 16-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Report which settings are chosen per a config file in the log file.

Also reorganize a logging strategy in parseError() and
make several variables and functions static or const.

c77af8b1 13-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Fix typo in comment.

9b65525f 04-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Use exact-width interger types properly for register accesses etc.

No binary changes.

d998ab55 03-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Remove unnecessary pointer casts from malloc(3).

1fca83cb 03-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Avoid a use of __UNVOLATILE(3). Tested on XM6i.

c22c75e2 03-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Add ModeDef for 640x480x4bit PseudoColor.

d2b73a16 03-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Restore video mode properly on exit even on CRT Mode 19 (640x480 31kHz VGA).

bd299232 01-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Fix a suspicious chunk disabled on xfree 4.x migration as sunKbd.c does.

9979d90a 01-Nov-2020 tsutsui <tsutsui@NetBSD.org>

Call LogInit() for logging to /var/log/X68k.%s.log as Xorg and Xsun servers.

5ca846b1 01-Aug-2020 tsutsui <tsutsui@NetBSD.org>

Replace 'pointer' type with 'void *' to sync with upstream manner.

https://cgit.freedesktop.org/xorg/xserver/commit/?id=60014a4a98ff924ae7f6840781f768c1cc93bbab

ab290810 01-Aug-2020 tsutsui <tsutsui@NetBSD.org>

TAB/space cleanup.

47cf8911 22-Jul-2020 tsutsui <tsutsui@NetBSD.org>

Normalize #include paths.

1179ded1 19-Jul-2020 tsutsui <tsutsui@NetBSD.org>

Sync with xorg-server.old: Remove #ifdef XKB conditional.

> It has been mandatory on Xorg:
> https://cgit.freedesktop.org/xorg/xserver/commit/?id=40877c6680863bd6a8475f2bb0c54df55bcf0b0e

01f81e7b 18-Jul-2020 tsutsui <tsutsui@NetBSD.org>

Add a stub for miinitext of GLX.

As per upstream commits for Xnest:
https://cgit.freedesktop.org/xorg/xserver/commit/?id=67c303fff303f94b62f03a76de97116c6ebcfda9

Note GLXEXT is defined as 1 in xorg-server/include/xorg-server.h
(i.e. /usr/X11R7/include/xorg/xorg-server.h) so no proper way to
disable it on building MD servers per ${MACHINE} basis.

72502d70 18-Jul-2020 tsutsui <tsutsui@NetBSD.org>

Update for removal of AddEnabledDevice and RemoveEnabledDevice.

Use the NotifyFd API instead as per upstream commits:
https://cgit.freedesktop.org/xorg/xserver/commit/?id=55c2e1a3aa587c58a74066724e11e30b3df267b8
https://cgit.freedesktop.org/xorg/xserver/commit/?id=be5a513fee6cbf29ef7570e57eb0436d70fbd88c
https://cgit.freedesktop.org/xorg/xserver/commit/?id=60a91031d13e4d29c383087120e318f6b528b6e5
https://cgit.freedesktop.org/xorg/xserver/commit/?id=7def2fea30060d47780dc1eedc91fada5ae1934f

1dfa130e 18-Jul-2020 tsutsui <tsutsui@NetBSD.org>

Pull changes of x68kInit.c rev 1.3 from xorg-server.old.

https://mail-index.netbsd.org/source-changes/2020/07/18/msg119473.html
> Use AllocDevicePair() to initialize input devices in InitInput().

Untested, but I'll re-visit on migrating to HAVE_XORG_SERVER_VER=120.

80c54d45 10-Apr-2020 tsutsui <tsutsui@NetBSD.org>

Remove clause 3 and 4 from X68k server files written by Yasushi Yamasaki.

I've finally contacted with Yamasaki-san and he kindly answered
"no objection to change them to 2 clause license" in private mail.
Diffs to be committed have also been confirmed by him.
We appreciate all his contribution to early NetBSD/x68k.

bddeb3e5 11-Sep-2016 tsutsui <tsutsui@NetBSD.org>

Pull more changes from Xnest to adapt X68k to Xorg server 1.18.

- use QueueKeyboardEvents() and QueuePointerEvents() which are provided
by dix/getevents.c, instead of raw mieqEnqueue() with uninitialized
local InternalEvent
- remove now actually unused local InternalEvent
- explicitly call mieqFini() in DDX CloseInput()

Confirmed working on XM6i, and "please commit" from mrg@.

909daefd 30-Aug-2016 mrg <mrg@NetBSD.org>

port to xorg-server 1.18. builds and may work, but not tested.

ce2d3770 16-Aug-2016 mrg <mrg@NetBSD.org>

mibstore.h and its miInitializeBackingStore() have been otherwise empty
since at least xorg-server 1.10. remove all reference to them as the
header is gone in xorg-server 1.18.

a2ab6c90 04-Mar-2014 tsutsui <tsutsui@NetBSD.org>

Replace xalloc(), xrealloc() and xfree() with malloc(), realloc() and free().

Per following Xorg changes:
> Replace X-allocation functions with their C89 counterparts
http://cgit.freedesktop.org/xorg/xserver/commit/?id=3f3ff971ecff9936cebafc813af9193b97bba89c

b65a0881 02-Mar-2014 tsutsui <tsutsui@NetBSD.org>

Fix comment to sync with code.

ba64b02e 01-Mar-2014 tsutsui <tsutsui@NetBSD.org>

Port the ancient Xsun based monolithic MD X68k server to X11R7, like Xnest.

Most diffs (API changes from xfree to xorg and some WARNSfy)
are mechanical. Confirmed working on X68030 and XM6i.

See my post on port-x68k@ for details:
http://mail-index.netbsd.org/port-x68k/2014/02/27/msg000043.html