You are not logged in.

#1 2008-12-31 17:29:52

semperfiguy
Member
Registered: 2007-12-03
Posts: 224

Can I use hotplugging and a xorg.conf?

I was wondering if I can set up the input hotplugging to work with everything but my keyboard. When I try to use hotplugging for my keyboard, the up arrow key gets messed up as well as my multimedia keys. I don't know how to work around this, so I turned hotplugging off for now. On the other hand, hot plugging gets my touchpad right, and I can use two fingered scrolling and configure it the way I want. So my question is, can I use my xorg.conf for my keyboard, but input hotplugging for everything else?

Here are my configs:

xorg.conf

Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard1" "CoreKeyboard"
EndSection

Section "Files"
    ModulePath   "/usr/lib/xorg/modules"
    FontPath     "/usr/share/fonts/misc"
    FontPath     "/usr/share/fonts/100dpi:unscaled"
    FontPath     "/usr/share/fonts/75dpi:unscaled"
    FontPath     "/usr/share/fonts/TTF"
    FontPath     "/usr/share/fonts/Type1"
       FontPath     "/usr/share/fonts/Type1"
       FontPath     "/usr/share/fonts/local"
EndSection


Section "Module"
    Load  "extmod"
    Load  "xtrap"
    Load  "dbe"
    Load  "glx"
    Load  "dri"
    Load  "freetype"
EndSection

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option        "CoreKeyboard"
    Option          "XkbRules" "xorg"
    Option         "XkbLayout" "dvorak,us"
    Option         "XkbOptions" "grp:shifts_toggle"
EndSection

Section "Monitor"
    Identifier   "Monitor0"
    VendorName   "Monitor Vendor"
    ModelName    "Monitor Model"
EndSection

Section "Device"
    Identifier  "Card0"
    Driver      "nvidia"
    VendorName  "nVidia Corporation"
    BoardName   "GeForce 7150M"
    BusID       "PCI:0:18:0"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device     "Card0"
    Monitor    "Monitor0"
    SubSection "Display"
        Viewport   0 0
        Depth     1
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     4
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     8
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     15
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     16
    EndSubSection
    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

Section "Extensions"
    Option         "Composite" "Enable"
EndSection

Section "ServerFlags"
     Option "AutoAddDevices" "False"
EndSection

/hal/*/*/*/10-keymap.fdi

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keymap">
      <append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
    </match>

    <match key="info.capabilities" contains="input.keys">
      <merge key="input.xkb.rules" type="string">base</merge>

      <!-- If we're using Linux, we use evdev by default (falling back to
           keyboard otherwise). -->
      <merge key="input.xkb.model" type="string">keyboard</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.xkb.model" type="string">evdev</merge>
      </match>

      <merge key="input.xkb.layout" type="string">dvorak,us</merge>
      <merge key="input.xkb.variant" type="string" />
      <merge key="input.xkb.options" type="string">grp:shifts_toggle</merge>

    </match>
  </device>
</deviceinfo>

/hal/*/*/*/11-synaptics.fdi

<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.touchpad">
      <match key="info.product" contains="Synaptics TouchPad">
        <merge key="input.x11_driver" type="string">synaptics</merge>
    <!-- Arbitrary options can be passed to the driver using 
         the input.x11_options property since xorg-server-1.5. -->
    <!-- EXAMPLE:
    <merge key="input.x11_options.LeftEdge" type="string">120</merge>
    -->
         <merge key="input.x11_options.AlwaysCore" type="string">true</merge>
        <merge key="input.x11_options.Protocol" type="string">auto-dev</merge>
        <merge key="input.x11_options.Emulate3Buttons" type="string">true</merge>
        <merge key="input.x11_options.SHMConfig" type="string">false</merge>
        <merge key="input.x11_options.LeftEdge" type="string">1700</merge>
        <merge key="input.x11_options.RightEdge" type="string">5400</merge>
        <merge key="input.x11_options.TopEdge" type="string">1400</merge>
        <merge key="input.x11_options.BottomEdge" type="string">4700</merge>
        <merge key="input.x11_options.FingerLow" type="string">25</merge>
        <merge key="input.x11_options.FingerHigh" type="string">30</merge>
        <merge key="input.x11_options.MaxTapTime" type="string">180</merge>
        <merge key="input.x11_options.VertEdgeScroll" type="string">false</merge>
        <merge key="input.x11_options.HorizEdgeScroll" type="string">false</merge>
        <merge key="input.x11_options.CornerCoasting" type="string">true</merge>
        <merge key="input.x11_options.CoastingSpeed" type="string">0.30</merge>
        <merge key="input.x11_options.VertScrollDelta" type="string">100</merge>
        <merge key="input.x11_options.HorizScrollDelta" type="string">100</merge>
        <merge key="input.x11_options.MinSpeed" type="string">0.05</merge>
        <merge key="input.x11_options.MaxSpeed" type="string">0.30</merge>
        <merge key="input.x11_options.AccelFactor" type="string">0.02</merge>
        <merge key="input.x11_options.VertTwoFingerScroll" type="string">true</merge>
        <merge key="input.x11_options.HorizTwoFingerScroll" type="string">true</merge>
        <merge key="input.x11_options.TapButton1" type="string">1</merge>
        <merge key="input.x11_options.TapButton2" type="string">2</merge>
        <merge key="input.x11_options.TapButton3" type="string">3</merge>
     </match>
      <match key="info.product" contains="AlpsPS/2 ALPS">
        <merge key="input.x11_driver" type="string">synaptics</merge>
      </match>
      <match key="info.product" contains="appletouch">
        <merge key="input.x11_driver" type="string">synaptics</merge>
      </match>
      <match key="info.product" contains="bcm5974">
        <merge key="input.x11_driver" type="string">synaptics</merge>
      </match>
    </match>
  </device>
</deviceinfo>

How can I allow hotplugging on everything but my keyboard?

Offline

#2 2008-12-31 18:11:38

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: Can I use hotplugging and a xorg.conf?

xorg input hotplugging is all or nothing, I'm afraid. You don't need to use hotplugging for your touchpad, as the legacy method still works, so I'd recommend you disable it altogether, and configure everything in xorg.conf.

Alternatively, you could try to establish why your keyboard fails with hotplugging, and see if you can find a fix.

Offline

Board footer

Powered by FluxBB