Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Ubuntu 8.10 64 bits enable force feedback G25
04-08-2009, 09:12 AM,
#1
Ubuntu 8.10 64 bits enable force feedback G25
Here is how I enable force feedback on my Ubuntu 8.10 64 bits kernel:
First create a patch file named G25.patch for the kernel ( Tested on 2.6.27 ) :
Code:
diff -Naur linux-source-2.6.27/drivers/hid/usbhid/hid-ff.c linux-source-2.6.27.orig/drivers/hid/usbhid/hid-ff.c
--- linux-source-2.6.27/drivers/hid/usbhid/hid-ff.c     2008-10-10 00:13:53.000000000 +0200                    
+++ linux-source-2.6.27.orig/drivers/hid/usbhid/hid-ff.c        2009-02-23 22:21:27.000000000 +0100            
@@ -57,6 +57,7 @@                                                                                              
        { 0x46d, 0xc286, hid_lgff_init }, /* Logitech Force 3D Pro Joystick */                                
        { 0x46d, 0xc294, hid_lgff_init }, /* Logitech Formula Force EX */                                      
        { 0x46d, 0xc295, hid_lgff_init }, /* Logitech MOMO force wheel */
+       { 0x46d, 0xc299, hid_lgff_init }, /* Logitech G25 wheel */
        { 0x46d, 0xca03, hid_lgff_init }, /* Logitech MOMO force wheel */
#endif
#ifdef CONFIG_LOGIRUMBLEPAD2_FF
diff -Naur linux-source-2.6.27/drivers/hid/usbhid/hid-lgff.c linux-source-2.6.27.orig/drivers/hid/usbhid/hid-lgff.c
--- linux-source-2.6.27/drivers/hid/usbhid/hid-lgff.c   2008-10-10 00:13:53.000000000 +0200
+++ linux-source-2.6.27.orig/drivers/hid/usbhid/hid-lgff.c      2009-02-23 22:23:22.000000000 +0100
@@ -55,6 +55,7 @@
        { 0x046d, 0xc286, ff_joystick },
        { 0x046d, 0xc294, ff_joystick },
        { 0x046d, 0xc295, ff_joystick },
+       { 0x046d, 0xc299, ff_joystick },
        { 0x046d, 0xca03, ff_joystick },
};

diff -Naur linux-source-2.6.27/drivers/hid/usbhid/hid-quirks.c linux-source-2.6.27.orig/drivers/hid/usbhid/hid-quirks.c
--- linux-source-2.6.27/drivers/hid/usbhid/hid-quirks.c 2009-03-13 18:54:14.000000000 +0100
+++ linux-source-2.6.27.orig/drivers/hid/usbhid/hid-quirks.c    2009-02-23 22:25:45.000000000 +0100
@@ -316,6 +316,7 @@
#define USB_DEVICE_ID_LOGITECH_HARMONY_64 0xc14f
#define USB_DEVICE_ID_LOGITECH_EXTREME_3D      0xc215
#define USB_DEVICE_ID_LOGITECH_WHEEL   0xc294
+#define USB_DEVICE_ID_LOGITECH_WHEELG25        0xc299
#define USB_DEVICE_ID_LOGITECH_ELITE_KBD       0xc30a
#define USB_DEVICE_ID_LOGITECH_KBD     0xc311
#define USB_DEVICE_ID_S510_RECEIVER    0xc50c
@@ -625,6 +626,7 @@
        { USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2700, HID_QUIRK_NOGET },
        { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_EXTREME_3D, HID_QUIRK_NOGET },
        { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WHEEL, HID_QUIRK_NOGET },
+       { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WHEELG25, HID_QUIRK_NOGET },
        { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_WIRELESS_OPTICAL_DESKTOP_3_0, HID_QUIRK_NOGET },
        { USB_VENDOR_ID_PETALYNX, USB_DEVICE_ID_PETALYNX_MAXTER_REMOTE, HID_QUIRK_NOGET },
        { USB_VENDOR_ID_SUN, USB_DEVICE_ID_RARITAN_KVM_DONGLE, HID_QUIRK_NOGET },
make sure U have everything needed to compile your kernel :
Code:
sudo apt-get install fakeroot build-essential makedumpfile libncurses5 libncurses5-dev
sudo apt-get build-dep linux
Get the kernel source code :
Code:
sudo apt-get install linux-source
Now we are ready to start :
Prepare your environment:
Code:
mkdir ~/src
cd ~/src
tar xjvf /usr/src/linux-source-<version>.tar.bz2
cd linux-source-<version>
copy the G25.patch file into the source directory and
Code:
patch -p1 <G25.patch
the output should be something like that:
Code:
patching file drivers/hid/usbhid/hid-ff.c
patching file drivers/hid/usbhid/hid-lgff.c
patching file drivers/hid/usbhid/hid-quirks.c
get the running kernel configuration:
Code:
cp -vi /boot/config-`uname -r` .config
Adjust the kernel configuration:
Code:
make oldconfig
make menuconfig
go to Device Drivers , and HID Devices
and enable the following options
Code:
Force feedback support (EXPERIMENTAL)
  PID device support
  Logitech devices support
  Logitech Rumblepad 2 support
  PantherLord/GreenAsia based device support
  ThrustMaster devices support
  Zeroplus based game controller support
I have to disable paravirtualized guest support otherwise the kernel cleaning fail:
go to Processor type and features and disable the following:
Code:
Paravirtualized guest support
Compile and package the new kernel:
Code:
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-ff kernel-image kernel-headers
you now have 2 new package files in ~/src.
install those packages :
Code:
cbo@cbobox:~/src$ sudo dpkg -i linux-image-2.6.27.18-ff_2.6.27.18-ff-10.00.Custom_amd64.deb linux-headers-2.6.27.18-ff_2.6.27.18-ff-10.00.Custom_amd64.deb
Reply


Messages In This Thread
Ubuntu 8.10 64 bits enable force feedback G25 - by tof8pool - 04-08-2009, 09:12 AM
[No subject] - by joevenzon_phpbb2_import3 - 04-08-2009, 10:15 AM
[No subject] - by tof8pool - 04-08-2009, 10:29 AM
[No subject] - by tof8pool - 04-08-2009, 11:24 AM
[No subject] - by thelusiv - 04-09-2009, 03:40 PM
[No subject] - by rmcooke - 07-08-2009, 08:30 AM
[No subject] - by tof8pool - 07-08-2009, 02:23 PM
patch errors failed hunk - by DrP - 07-09-2009, 09:08 AM
[No subject] - by tof8pool - 07-10-2009, 01:51 AM
[No subject] - by DrP - 07-10-2009, 04:21 AM
[No subject] - by rmcooke - 07-10-2009, 07:06 AM
[No subject] - by DrP - 07-10-2009, 08:53 AM
[No subject] - by rmcooke - 07-10-2009, 09:01 AM

Forum Jump:


Users browsing this thread: 1 Guest(s)