Skip to contentSkip to conversation

xserver-kdrive: update to 1.11.2

PATCH In review Xiaofeng Yan 2 participants 6 messages Dec 16, 2011 – Dec 23, 2011

lore
Share & tools
lore
#0 lore raw

cover xserver-kdrive: update to 1.11.2

From: Xiaofeng Yan <[email protected]>

Some changes are as follow:
1 Adopt evdev mode to get keyboard
- modify Xserver in meta/recipes-graphics/x11-common/x11-common/etc/X11/
2 Create a symlink to any keyboard input device
- modify local.rules in recipes-core/udev/udev-164
The goal of this is for xserver can get keyboard device automatically without appointing an input event manually.

Pull URL: git://git.pokylinux.org/poky-contrib.git
Branch: xiaofeng/update
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=xiaofeng/update

Thanks,
Xiaofeng Yan <[email protected]>
---

Xiaofeng Yan (3):
udev: add a link between /dev/input/event* with keyboard
x11-common: Change drive mode of Xfbdev when xserver using
framebuffer
xserver-kdrive: update to 1.11.2

 meta/recipes-core/udev/udev-164/local.rules        |    3 +-
 .../x11-common/x11-common/etc/X11/Xserver          |    4 +-
 .../xserver-kdrive-1.11.2/disable-apm.patch        |   22 ++
 .../xserver-kdrive-1.11.2/extra-kmodes.patch       |   82 ++++++
 .../xserver-kdrive-1.11.2/fbdev_xrandr_ioctl.patch |   57 ++++
 .../fix-newer-xorg-headers.patch                   |   13 +
 .../hide-cursor-and-ppm-root.patch                 |  298 ++++++++++++++++++++
 .../keyboard-resume-workaround.patch               |   26 ++
 .../xserver-kdrive-1.11.2/no-serial-probing.patch  |   16 +
 .../xorg-xserver/xserver-kdrive_1.11.2.bb          |   26 ++
 10 files changed, 545 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/disable-apm.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/extra-kmodes.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/fbdev_xrandr_ioctl.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/fix-newer-xorg-headers.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/hide-cursor-and-ppm-root.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/keyboard-resume-workaround.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/no-serial-probing.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive_1.11.2.bb
#1 lore raw

PATCH 1/3 udev: add a link between /dev/input/event* with keyboard

From: Xiaofeng Yan <[email protected]>

keyboard device could be one of event*.
For getting keyboard device to user easier, I make a link between the event of keyboard \
with keyboard0.

---
 meta/recipes-core/udev/udev-164/local.rules |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
meta/recipes-core/udev/udev-164/local.rules +2 -1
index 625e49a..d96f840 100644
@@ -32,4 +32,5 @@ ACTION=="add", DEVPATH=="/devices/*", ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe
 
 # Create a symlink to any touchscreen input device
 SUBSYSTEM=="input", KERNEL=="event[0-9]*", ATTRS{modalias}=="input:*-e0*,3,*a0,1,*18,*", SYMLINK+="input/touchscreen0"
-
+# Create a symlink to any keyboard input device
+SUBSYSTEM=="input", KERNEL=="event[0-9]*", ATTRS{name}=="*keyboard", SYMLINK+="input/keyboard0"
Signature · 1 line
1.7.0.4
#2 lore raw

PATCH 2/3 x11-common: Change drive mode of Xfbdev when xserver using framebuffer

In reply to Xiaofeng Yan

From: Xiaofeng Yan <[email protected]>

The previous mode of starting X is as follow:
$Xfbdev :0 -keybd keyboard -mouse tslib
This mode cause that some keys can't be mapped rightly. \
for example "Down" have the same function with "Enter".

another drive mode "evdev" can work rightly in new version. $Xfbdev :0 -keybd evdev,,device=/dev/input/event0 -mouse tslib

So I select drive mode "evdev".

---
 .../x11-common/x11-common/etc/X11/Xserver          |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver +3 -1
index 57923e6..d1e17fb 100644
@@ -28,11 +28,13 @@ module_id() {
 
 ARGS=" -br -pn"
 
+KD_DRIVE_KEYBOARD="-keybd keyboard"
+KD_DRIVE_EVDEV="-keybd evdev,,device=/dev/input/keyboard0"
 if [ "$XSERVER" != "/usr/bin/Xorg" ]; then
 
         . /etc/formfactor/config
 
-        ARGS="$ARGS -keybd keyboard"
+        ARGS="$ARGS $KD_DRIVE_EVDEV"
 
         # use usb mouse if present
         if [ -z "$TSLIB_TSDEVICE" ] && [ -e /dev/input/mice ]; then
Signature · 1 line
1.7.0.4
#3 lore raw

Re: [PATCH 2/3] x11-common: Change drive mode of Xfbdev when xserver using framebuffer

Quoted 22 lines · Xiaofeng Yan

From: Xiaofeng Yan<[email protected]>

The previous mode of starting X is as follow:
$Xfbdev :0 -keybd keyboard -mouse tslib
This mode cause that some keys can't be mapped rightly. \
for example "Down" have the same function with "Enter".

another drive mode "evdev" can work rightly in new version. $Xfbdev :0 -keybd evdev,,device=/dev/input/event0 -mouse tslib

So I select drive mode "evdev".

---
  .../x11-common/x11-common/etc/X11/Xserver          |    4 +++-
  1 files changed, 3 insertions(+), 1 deletions(-)
meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver +0 -0
index 57923e6..d1e17fb 100644

meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver module_id() { · line 32

Quoted 5 lines
meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver +2 -0
@@ -28,11 +28,13 @@ module_id() {
 
  ARGS=" -br -pn"
 
+KD_DRIVE_KEYBOARD="-keybd keyboard"
+KD_DRIVE_EVDEV="-keybd evdev,,device=/dev/input/keyboard0"

Not sure it's such a good idea to hard code the /dev here.

Quoted 9 lines
meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver +1 -1
  if [ "$XSERVER" != "/usr/bin/Xorg" ]; then
 
          . /etc/formfactor/config
 
-        ARGS="$ARGS -keybd keyboard"
+        ARGS="$ARGS $KD_DRIVE_EVDEV"
 
          # use usb mouse if present
          if [ -z "$TSLIB_TSDEVICE" ]&&  [ -e /dev/input/mice ]; then
#4 lore raw

Re: [PATCH 2/3] x11-common: Change drive mode of Xfbdev when xserver using framebuffer

Quoted 24 lines · Saul Wold
Quoted 23 lines · Xiaofeng Yan

From: Xiaofeng Yan<[email protected]>

The previous mode of starting X is as follow:
$Xfbdev :0 -keybd keyboard -mouse tslib
This mode cause that some keys can't be mapped rightly. \
for example "Down" have the same function with "Enter".

another drive mode "evdev" can work rightly in new version. $Xfbdev :0 -keybd evdev,,device=/dev/input/event0 -mouse tslib

So I select drive mode "evdev".

---
.../x11-common/x11-common/etc/X11/Xserver | 4 +++-

1 files changed, 3 insertions(+), 1 deletions(-)
meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver +0 -0
index 57923e6..d1e17fb 100644
@@ -28,11 +28,13 @@ module_id() {
 
Quoted 5 lines

meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver module_id() { · line 32

Quoted 4 lines

ARGS=" -br -pn"

meta/recipes-graphics/x11-common/x11-common/etc/X11/Xserver +2 -0
+KD_DRIVE_KEYBOARD="-keybd keyboard"
+KD_DRIVE_EVDEV="-keybd evdev,,device=/dev/input/keyboard0"

Not sure it's such a good idea to hard code the /dev here.

I use "udev" to recognize keyboard device from "event*" automatically.

#5 lore raw

PATCH 3/3 xserver-kdrive: update to 1.11.2

In reply to Xiaofeng Yan

From: Xiaofeng Yan <[email protected]>

update to 1.11.2

---
 .../xserver-kdrive-1.11.2/disable-apm.patch        |   22 ++
 .../xserver-kdrive-1.11.2/extra-kmodes.patch       |   82 ++++++
 .../xserver-kdrive-1.11.2/fbdev_xrandr_ioctl.patch |   57 ++++
 .../fix-newer-xorg-headers.patch                   |   13 +
 .../hide-cursor-and-ppm-root.patch                 |  298 ++++++++++++++++++++
 .../keyboard-resume-workaround.patch               |   26 ++
 .../xserver-kdrive-1.11.2/no-serial-probing.patch  |   16 +
 .../xorg-xserver/xserver-kdrive_1.11.2.bb          |   26 ++
 8 files changed, 540 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/disable-apm.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/extra-kmodes.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/fbdev_xrandr_ioctl.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/fix-newer-xorg-headers.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/hide-cursor-and-ppm-root.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/keyboard-resume-workaround.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/no-serial-probing.patch
 create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-kdrive_1.11.2.bb
meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/disable-apm.patch new file +22 -0
new file mode 100644
index 0000000..e1d5622
@@ -0,0 +1,22 @@
+Upstream-Status: Inappropriate [disable feature]
+
+Signed-off-by: Yu Ke <[email protected]>
+
+--- xorg-server-1.11.1.901/hw/kdrive/linux/linux.c	2011-07-15 21:26:40.000000000 +0800
++++ xorg-server-1.11.1.901/hw/kdrive/linux/linux.c.new	2011-10-24 16:15:12.000000000 +0800
+@@ -251,6 +251,7 @@
+     /*
+      * Open the APM driver
+      */
++    /*
+     LinuxApmFd = open ("/dev/apm_bios", 2);
+     if (LinuxApmFd < 0 && errno == ENOENT)
+ 	LinuxApmFd = open ("/dev/misc/apm_bios", 2);
+@@ -261,6 +262,7 @@
+ 	RegisterBlockAndWakeupHandlers (LinuxApmBlock, LinuxApmWakeup, 0);
+ 	AddEnabledDevice (LinuxApmFd);
+     }
++    */
+ 
+     /*
+      * now get the VT
meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/extra-kmodes.patch new file +82 -0

82 lines not on this page · raw message

meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/fbdev_xrandr_ioctl.patch new file +57 -0

57 lines not on this page · raw message

meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/fix-newer-xorg-headers.patch new file +13 -0
new file mode 100644
index 0000000..18781b3
@@ -0,0 +1,13 @@
+Upstream-Status: Pending
+
+Signed-off-by: Yu Ke <[email protected]>
+--- xorg-server-1.11.1.901/render/glyphstr.h	2011-03-02 12:09:33.000000000 +0800
++++ xorg-server-1.11.1.901/render/glyphstr.h.new	2011-10-24 16:19:32.000000000 +0800
+@@ -25,6 +25,7 @@
+ #ifndef _GLYPHSTR_H_
+ #define _GLYPHSTR_H_
+ 
++#include <X11/X.h>
+ #include <X11/extensions/renderproto.h>
+ #include "picture.h"
+ #include "screenint.h"
meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/hide-cursor-and-ppm-root.patch new file +298 -0

298 lines not on this page · raw message

meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/keyboard-resume-workaround.patch new file +26 -0
new file mode 100644
index 0000000..bdf22ba
@@ -0,0 +1,26 @@
+Upstream-Status: Pending
+
+Signed-off-by: Yu Ke <[email protected]>
+--- xorg-server-1.11.1.901/hw/kdrive/linux/keyboard.c	2011-10-24 16:44:10.000000000 +0800
++++ xorg-server-1.11.1.901/hw/kdrive/linux/keyboard.c.new	2011-10-24 16:41:27.000000000 +0800
+@@ -486,6 +486,8 @@
+     ki->minScanCode = minKeyCode;
+     ki->maxScanCode = maxKeyCode;
+ #endif
++    ki->minScanCode = 0;
++    ki->maxScanCode = NR_KEYS;
+ }
+ 
+ /*
+@@ -707,11 +709,6 @@
+     cfsetispeed(&nTty, 9600);
+     cfsetospeed(&nTty, 9600);
+     tcsetattr(fd, TCSANOW, &nTty);
+-    /*
+-     * Flush any pending keystrokes
+-     */
+-    while ((n = read (fd, buf, sizeof (buf))) > 0)
+-	;
+     KdRegisterFd (fd, LinuxKeyboardRead, ki);
+     return Success;
+ }
meta/recipes-graphics/xorg-xserver/xserver-kdrive-1.11.2/no-serial-probing.patch new file +16 -0
new file mode 100644
index 0000000..dbc2bf8
@@ -0,0 +1,16 @@
+Upstream-Status: Pending
+
+Signed-off-by: Yu Ke <[email protected]>
+--- xorg-server-1.11.1.901/hw/kdrive/linux/mouse.c	2011-10-24 16:33:08.000000000 +0800
++++ xorg-server-1.11.1.901/hw/kdrive/linux/mouse.c.new	2011-10-24 16:23:23.000000000 +0800
+@@ -924,8 +924,10 @@
+     "/dev/mouse",
+     "/dev/psaux",
+     "/dev/adbmouse",
++#ifdef BREAK_MY_SERIAL_CONSOLE
+     "/dev/ttyS0",
+     "/dev/ttyS1",
++#endif
+ };
+ 
+ #define NUM_DEFAULT_MOUSE    (sizeof (kdefaultMouse) / sizeof (kdefaultMouse[0]))
meta/recipes-graphics/xorg-xserver/xserver-kdrive_1.11.2.bb new file +26 -0
new file mode 100644
index 0000000..43c4113
@@ -0,0 +1,26 @@
+require xserver-kdrive.inc
+
+DEPENDS += "libxkbfile libxcalibrate font-util pixman"
+
+RDEPENDS_${PN} += "xkeyboard-config"
+
+EXTRA_OECONF += "--disable-glx --enable-unit-tests=no  --enable-kdrive-kbd=yes --enable-kdrive-evdev=yes --enable-config-udev=yes"
+
+PE = "1"
+PR = "r0"
+
+LIC_FILES_CHKSUM  = "file://COPYING;md5=74df27b6254cc88d2799b5f4f5949c00"
+
+SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \
+		file://extra-kmodes.patch \
+		file://disable-apm.patch \
+		file://no-serial-probing.patch \
+		file://keyboard-resume-workaround.patch \
+		file://hide-cursor-and-ppm-root.patch \
+		file://fbdev_xrandr_ioctl.patch \
+		file://fix-newer-xorg-headers.patch"
+	
+SRC_URI[md5sum] = "8796fff441e5435ee36a72579008af24"
+SRC_URI[sha256sum] = "fa415decf02027ca278b06254ccfbcceba2a83c2741405257ebf749da4a73cf2"
+
+S = "${WORKDIR}/xorg-server-${PV}"
Signature · 1 line
1.7.0.4