When setting the depth to 24, leave bpp unset so the logic to pick
a supported value is used instead of ignoring the driver's preference
and forcing 32 bpp.
Works around a silly bug in the kernel that causes wakeup storms after
too many keypresses. Should fix the kernel bug too, but this at least
keeps the idle wakeup count below 1000/sec.
When a user specifies the position of an output for which no modes exist
(for whatever reason) assume that the width and height of this output
is 0. The result will be the same as if this output isn't taken into
consideration at all and thus should be sane. It will prevent a segfault
when trying to determine the width and height of a non-existent mode.
Also merge sun_bios.c into sun_vid.c and upstream Solaris patch to
keep aperture device open, to allow mappings to occur after X server
has given up uid 0.
Maybe one day I stop doing stupid patches like
a3a7c12fcf.
So, if X < low, reset to low, and _not_ to high.
If X > high, reset to high, and _not_ to low.
This consists of two parts:
In the implicit server layout, ignore those drivers when looking for a core
device.
And after finishing the server layout, run through the list of devices and
remove any that use mouse or kbd.
AEI is mutually exclusive with the kbd and mouse drivers, so pick either - or.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
The precedence of == is higher than that of &, so that code was
probably buggy.
xf86Init.c: In function 'DoModalias':
xf86Init.c:300: warning: suggest parentheses around comparison in operand of &
xf86Init.c:304: warning: suggest parentheses around comparison in operand of &
xf86Init.c:308: warning: suggest parentheses around comparison in operand of &
xf86Init.c:136: warning: function declaration isn't a prototype
xf86Init.c:243: warning: function declaration isn't a prototype
xf86Init.c:249: warning: function declaration isn't a prototype
xaaInit.c: In function 'XAAInit':
xaaInit.c:201: warning: implicit declaration of function 'miInitializeCompositeWrapper'
xaaInit.c:201: warning: nested extern declaration of 'miInitializeCompositeWrapper'
Add missing includes to fix the following warnings:
xf86DGA.c: In function 'DGAProcessKeyboardEvent':
xf86DGA.c:1050: warning: implicit declaration of function 'UpdateDeviceState'
xf86DGA.c:1050: warning: nested extern declaration of 'UpdateDeviceState'
xf86Xinput.c: In function 'xf86ActivateDevice':
xf86Xinput.c:303: warning: implicit declaration of function 'AssignTypeAndName'
xf86Xinput.c:303: warning: nested extern declaration of 'AssignTypeAndName'
xf86Xinput.c:311: warning: implicit declaration of function 'DeviceIsPointerType'
xf86Xinput.c:311: warning: nested extern declaration of 'DeviceIsPointerType'
xf86Xinput.c:324: warning: implicit declaration of function 'XkbSetExtension'
xf86Xinput.c:324: warning: nested extern declaration of 'XkbSetExtension'
Add automatic detection of the graphic driver to load for sbus devices.
This allows xorg to work on those devices without a "Device" section.
Debian bug#483942.
Signed-off-by: Julien Cristau <jcristau@debian.org>
Also set AutoAddDevices and AutoEnableDevices to their defaults.
And in doing so, switch the rest of the defaults over to named intializers.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Usually, the console is set to RAW in the kbd driver. If we hotplug all input
devices (i.e. the evdev driver for keyboards) and the console is left as-is.
As a result, the evdev driver must put an EVIOCGRAB on the device to avoid
characters leaking onto the console. This again breaks many things, amongst
them lirc, in-kernel mouse button emulation and HAL.
This patch sets the console to RAW if AllowEmptyInput is on.
Use-cases:
1. AEI is off
1.1. Only kbd driver is used - behaviour as-is.
1.2. kbd and evdev driver is used: if evdev does not grab the device,
duplicate events are generated.
2. AEI is on
2.1. Only evdev driver is used - behaviour as-is, but evdev does not need
to grab the device anymore.
2.2. evdev and kbd are used: duplicate key events are generated if evdev
does not grab the device.
1.2 is a marginal use-case that can be fixed by adding a "grab" option to the
evdev driver (update of xorg.conf is needed).
2.2 is an issue. If we have no ServerLayout section, AEI is on, but devices
specified in the xorg.conf are still added [1], resulting in duplicate events.
This is a common configuration and needs sorting out.
[1] 2eaed4a10f
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
I've seen about one case in three years where this has actually been
correlated with the real cause of failure, and we've trained people to
freak out about X_WARNING, so let's be less alarmist.
Very cute, Samsung, not only do you claim to be 16cm by 9cm in the
global size record, you also claim to be 160mm by 90mm in the detailed
timings. Grrr.
NIDR should be used to create a new SD from e.g. within a driver.
DIDR should be used to remove a device from the server.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
If you need to bail out the server, use Ctrl-Alt-Fx, or enable zapping
if it bothers you that much. If Ctrl-Alt-Fx is broken, nag me until
it's permanently fixed.