【问题标题】:How to attach keyboard to tinyX server如何将键盘连接到 tinyX 服务器
【发布时间】:2011-12-07 07:06:01
【问题描述】:

我在 buildroot 的帮助下为我的 arm 开发板编译了根文件系统。我的 rootfs 包含 TinyX 服务器和作为窗口管理器的 match-box。然后我通过下面的脚本启动了 x 服务器。

导出 DISPLAY=:0

X -wr -keybd 键盘 -mouse mouse & (TinyX)

火柴盒会话&

我面临的问题是 TinyX 服务器中的键盘无法正常工作。 TinyX 服务器正在生成以下错误消息 “驱动程序 Linux 控制台键盘想要在 [0, 0] 之外发布扫描码 57!” 对于所有按键和释放。 但是鼠标工作正常。

谁能给我一些解决这个问题的建议?

【问题讨论】:

    标签: linux arm buildroot


    【解决方案1】:

    环境:Ubuntu 12.10 主机上的 QEMU qemu-system-arm 版本 1.2.0。 访客:内核 3.2.21

    仿真板:ARMv7l Verstatile Express

    使用 Buildroot 12.08 版构建的支持 X 的根文件系统等; TinyX X 服务器。

    跑qemu:

    /usr/bin/qemu-system-arm -M vexpress-a9 -kernel <kernel> -drive file=<rootfs-ext2-img>,if=sd -append "console=ttyAMA0,115200 root=/dev/mmcblk0 init=/myinit.sh" -serial stdio -net nic,model=lan9118 -net user
    

    一旦客户机运行,我们就会有一个控制台窗口和一个图形 qemu 窗口(一开始是空的)。

    在来宾控制台窗口中: 开始 X:

    Xfbdev :0 -keybd evdev,,device=/dev/input/event0 -mouse evdev,,device=/dev/input/event1 &
    

    然后加载xterm等

    我使用了一个简单的脚本,这里是:

    # cat Xstart.sh 
    #!/bin/ash
    unset USERNAME LOGNAME
    
    echo Setting up X server ..
    # kill any stale instance
    kill $(ps |grep Xfb|head -n1|awk '{print $1}') 2> /dev/null
    export DISPLAY=:0
    
    # How to determine 'mouse' dev?
    # dmesg shows :
    # input: AT Raw Set 2 keyboard as /devices/mb:kmi0/serio0/input/input0
    # input: ImExPS/2 Generic Explorer Mouse as /devices/mb:kmi1/serio1/input/input1
    # QEMU_ARM_BR / # ls /sys//devices/mb:kmi1/serio1/input/input1
    # capabilities/ id/           name          properties    uniq
    # device@       modalias      phys          subsystem@
    # event1/       mouse0/       power/        uevent
    # Can see the only 'event' file is 'event1', so we use it!
    
    Xfbdev :0 -keybd evdev,,device=/dev/input/event0 -mouse evdev,,device=/dev/input/event1 &
    
    sleep 1
    echo "Running fluxbox & xterm .."
    DISPLAY=:0 xterm 2> /dev/null &
    DISPLAY=:0 fluxbox 2> /dev/null &
    
    echo "### Please wait a bit for X to initialize & come up ... ###"
    sleep 3
    echo "Press [Enter] to use this console..."
    read
    
    # 
    

    注意关于如何确定鼠标、键盘设备的提示:查找 dmesg 输出..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-22
      • 1970-01-01
      • 2012-12-21
      • 2016-01-31
      • 1970-01-01
      • 1970-01-01
      • 2021-03-31
      相关资源
      最近更新 更多