1. 04 Aug, 2011 3 commits
    • Michal Malý's avatar
      HID: lg4ff - Add range setting support and sysfs interface · 30bb75d7
      Michal Malý authored
      Wheel range of certain Logitech wheels - namely Driving Force GT, Driving Force
      Pro, G25 and G27 can be adjusted. Minimu is 40 degrees, maximum 900. DFGT, G25
      and G27 all use a common command, DFP uses another one.  Range can be set from
      userspace by writing to
      "/sys/module/hid_logitech/drivers/hid:logitech/<dev>range". The driver use list
      to store range of each connected wheel; it's not possible to use driver_data in
      hid_device struct as it's already b hig-lg driver.
      Signed-off-by: default avatarMichal Malý <madcatxster@gmail.com>
      Signed-off-by: default avatarSimon Wood <simon@mungewell.org>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      30bb75d7
    • Michal Malý's avatar
      HID: lg4ff - Add support for native mode switching · 96440c8a
      Michal Malý authored
      This patch allows the lg4ff driver to switch wheels to the native mode. Since
      this is specific to Logitech wheels only, it's handled in hid-lg4ff rather than
      hid-lg.
      Signed-off-by: default avatarMichal Malý <madcatxster@gmail.com>
      Signed-off-by: default avatarSimon Wood <simon@mungewell.org>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      96440c8a
    • Michal Malý's avatar
      HID: lg4ff - Move handling of Logitech wheels to lg4ff driver · 7362cd22
      Michal Malý authored
      This is the first out of five patches me and Simon Wood (CC'd) have been
      working on. It separates the handling of Logite from the generic lgff driver
      and adds additional features specific for the Logitech wheels, namely
      
      - Native mode support for Driving Force GT, Driving Force Pro, G25 and G27
      wheels Every Logitech wheel reports itself as generic Logitech Driving Force
      wheel (VID 046d, PID c294). This is done to ensu wheel will work on every USB
      HID-aware system even when no Logitech driver is available. It however limits
      the capabilit wheel - range is limited to 200 degrees, G25/G27 don't report the
      clutch pedal and there is only one combined axis for t brake. The switch to
      native mode is done via hardware-specific command which is different for each
      wheel. When the wheel receives such command, it simulates reconnect and reports
      to the OS with its actual PID.
      
      - Adjustable wheel range DFGT, DFP, G25 and G27 have variable range of the
      steering wheel. The range is limited by applying a maximum constant when the
      wheel is turned beyond the allowed range. The limit as also set by a
      hardware-specific command. There is a comm command for DFGT, G25 and G27 and
      another one for DFP. It is probably possible to use the DFP command to limit
      the range other Logitech wheels too, but this is not supported by the official
      Logitech driver for Windows.  The patch adds a sysfs interface which allows for
      the range to be set from userspace.
      
      - Fixed autocentering command All Logitech wheels support FF_AUTOCENTER effect.
      The original implementation in the lgff driver didn't work well with patch
      fixes it. According to USB communication sniffs the Formula Force EX (pretty
      much rebranded original Driving Force accept the generic autocentering command,
      this issue is also addressed by the patch
      
      There are still some features this patch doesn't cover, but since some of them
      will most likely require modifications of memless driver we have decided not to
      include them yet.
      
      As first we decided to move the handling of Logitech wheels from hid-lgff
      driver to hid-lg4ff driver (originally used fo At also adds PID of Logitech
      Driving Force GT.
      Signed-off-by: default avatarMichal Malý <madcatxster@gmail.com>
      Signed-off-by: default avatarSimon Wood <simon@mungewell.org>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      7362cd22
  2. 23 Jul, 2011 37 commits