Re: TMDC Joystick no longer works in kernel 2.6.28



Hi Andrew,

On Saturday 10 January 2009 13:53:40 Andrew S. Johnson wrote:
Up through kernel version 2.6.27.9 I have had no problems with
my joystick on the game port. Now with 2.6.28, the game port
is recognized when the gameport and ns558 modules load, but
loading the tmdc module doesn't also automatically load joydev,
and even loading joydev manually doesn't give me a working
joystick. There are no error messages in dmesg, /var/log/messages,
or /var/log/syslog. This is on Slackware 12.1, so I don't think
it's a distro issue. Do I need to do something different than
in the past to make it work, or is there some debug I can turn
on to give more info?


The patch below should help with joysticks attached to gameports;
it should appear in 2.6.30-rc3.

--
Dmitry

Input: gameport - fix attach driver code

The commit 6902c0bead4ce266226fc0c5b3828b850bdc884a that moved
driver registration out of kgameportd thread was incomplete and
did not add the code necessary to actually attach driver to
already registered devices, rectify that.

Signed-off-by: Dmitry Torokhov <dtor@xxxxxxx>
---
drivers/input/gameport/gameport.c | 14 ++++++--------
1 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/drivers/input/gameport/gameport.c
b/drivers/input/gameport/gameport.c
index ebf4be5..2d175b5 100644
--- a/drivers/input/gameport/gameport.c
+++ b/drivers/input/gameport/gameport.c
@@ -50,9 +50,8 @@ static LIST_HEAD(gameport_list);

static struct bus_type gameport_bus;

-static void gameport_add_driver(struct gameport_driver *drv);
static void gameport_add_port(struct gameport *gameport);
-static void gameport_destroy_port(struct gameport *gameport);
+static void gameport_attach_driver(struct gameport_driver *drv);
static void gameport_reconnect_port(struct gameport *gameport);
static void gameport_disconnect_port(struct gameport *gameport);

@@ -230,7 +229,6 @@ static void gameport_find_driver(struct gameport
*gameport)

enum gameport_event_type {
GAMEPORT_REGISTER_PORT,
- GAMEPORT_REGISTER_DRIVER,
GAMEPORT_ATTACH_DRIVER,
};

@@ -374,8 +372,8 @@ static void gameport_handle_event(void)
gameport_add_port(event->object);
break;

- case GAMEPORT_REGISTER_DRIVER:
- gameport_add_driver(event->object);
+ case GAMEPORT_ATTACH_DRIVER:
+ gameport_attach_driver(event->object);
break;

default:
@@ -706,14 +704,14 @@ static int gameport_driver_remove(struct device *dev)
return 0;
}

-static void gameport_add_driver(struct gameport_driver *drv)
+static void gameport_attach_driver(struct gameport_driver *drv)
{
int error;

- error = driver_register(&drv->driver);
+ error = driver_attach(&drv->driver);
if (error)
printk(KERN_ERR
- "gameport: driver_register() failed for %s, error: %d\n",
+ "gameport: driver_attach() failed for %s, error: %d\n",
drv->driver.name, error);
}

--
1.6.0.6


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: new joystick cant get to work keep getting
    ... If your joystick uses a fifteen pin gameport plug which looks like this: ... gameport drivers required by gameport devices. ... Visit my MSN Games and Windows Gaming Help Site: ...
    (microsoft.public.windowsxp.games)
  • joystick woes
    ... joystick setup would be pretty easy, just a case of inserting modules. ... modprobe joydev ... that ns558 does not unload plus i think it's for an ISA gameport) ... One builton without a gameport VIA82xx ...
    (comp.os.linux.setup)
  • Re: Christmas list for the kernel
    ... > joystick, floppy, gameport, etc. ... VGA drivers are autoloaded by the PCI subsystem. ... The hardware is often found only by the driver, like in the joystick ...
    (Linux-Kernel)
  • Re: Last Change for Top Gun
    ... > Thrustmaster support has told me that a gameport to USB adapter won't ... > allow my basic "Top Gun" joystick to work within Windows XP and my new, ... > I'd already purchased the adaper before asking Thrustmaster, ... expect using the USB adapter) should not cost much more than the adapter. ...
    (rec.aviation.simulators)
  • Re: gameport reading requires which kernel modules be loaded?
    ... > correctly cabled my card reader to the gameport connector because it ... > card, or RHEL3 with a PCI SB Live! ... StripeSnoop 1.6 alpha works fine on the FC 2 game port ...
    (comp.os.linux.hardware)