Find the answer to your Linux question:
Page 2 of 4 FirstFirst 1 2 3 4 LastLast
Results 11 to 20 of 34
OK, from what I can see, the input layer does no autoloading, so as I see it you have three options. Also, now I know what joydev is, so I ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #11
    Linux Guru
    Join Date
    Oct 2001
    Location
    Täby, Sweden
    Posts
    7,578

    OK, from what I can see, the input layer does no autoloading, so as I see it you have three options. Also, now I know what joydev is, so I can now answer this more correctly. joydev is the input layer module that provides the js* files.

    1:
    Either pull in sidewinder (with another add above line) along with the input module, providing that you compiled the entire input layer as a module.

    2:
    Patch your kernel. Open drivers/input/input.c, look up the input_open_file function, and replace the comment line saying "No load-on-demand here?" with the following code:
    Code:
    if(!handler)
    {
            char name[20];
            sprintf(name, "input-dev-%i", MINOR(inode->i_rdev) >> 5);
            request_module(name);
            handler = input_table[MINOR(inode->i_rdev) >> 5];
    }
    Then recompile the kernel and add the following to your modules.conf:
    Code:
    alias input-dev-0 sidewinder
    Btw., why hasn't this been added before? Should I submit it to the LKML?

    3:
    Add sidewinder to /etc/modules.

  2. #12
    Linux Engineer
    Join Date
    Nov 2002
    Location
    Queens, NY
    Posts
    1,319
    Dolda,

    Sorry I took so long to reply to this last post. As I have been very busy with my classes, I forgot about this. I just wanted to make sure that I knew what I was doing before I actually modified anything in the kernel sources.
    With the second option, do I replace the comment line with the code you have? Or do I replace the if statement following that comment?
    The best things in life are free.

  3. #13
    Linux Guru
    Join Date
    Oct 2001
    Location
    Täby, Sweden
    Posts
    7,578
    You replace the comment line itself. That code provides the on-demand loading that the comment line states is absent.

  4. $spacer_open
    $spacer_close
  5. #14
    Linux Engineer
    Join Date
    Nov 2002
    Location
    Queens, NY
    Posts
    1,319
    Dolda,

    On that last line before the closing body brace for the if statement, should that read
    Code:
    handler = input_table[MINOR(inode->i_rdev) >> 5];
    instead of what you have
    Code:
    handler = input_table[MINOR(index->i_rdev) >> 5];
    I'm assuming you meant inode->i_rdev instead of index->i_rdev.
    The best things in life are free.

  6. #15
    Linux Guru
    Join Date
    Oct 2001
    Location
    Täby, Sweden
    Posts
    7,578
    Yeah, that's right... sometimes, my fingers just run amok. I have edited the original post so that it's correct now.

  7. #16
    Linux Engineer
    Join Date
    Nov 2002
    Location
    Queens, NY
    Posts
    1,319
    Dolda,

    While the joystick is loaded beautifully, now the cdrom isn't being accessed. Here's what I have
    Code:
    options ide-cd ignore=hdc
    alias block-major-11 sr_mod
    add above sr_mod ide-scsi
    The best things in life are free.

  8. #17
    Linux Guru
    Join Date
    Oct 2001
    Location
    Täby, Sweden
    Posts
    7,578
    You mean the patch worked? Oh well, at least that's something.
    I find it strange that that would have affected the CD-ROM, though. Do you get any kernel messages when you try to mount it, and what is the exact error message from mount?

  9. #18
    Linux Engineer
    Join Date
    Nov 2002
    Location
    Queens, NY
    Posts
    1,319
    Well,

    The modules for SCSI aren't loaded at all when trying to access the cdrom. Therefore when I try mounting a cdrom, I get the following error "/dev/cdrom not a valid block device."
    The best things in life are free.

  10. #19
    Linux Engineer
    Join Date
    Nov 2002
    Location
    Queens, NY
    Posts
    1,319
    I commented out the sections regarding the joystick and the problem still prevails. When I try loading the module (sr_mod) usi/ng modprobe, I get this following error: /lib/modules/2.4.21/kernel/drivers/scsi/scsi_mod.o: unresolved symbol _mmx_memcpy
    Two lines follow this one stating that it couldn't be loaded.
    The best things in life are free.

  11. #20
    Linux Guru
    Join Date
    Oct 2001
    Location
    Täby, Sweden
    Posts
    7,578
    Could possibly be that some versioning information changed with the change of input.c. Try to make clean and recompile the kernel from a clean state.

Page 2 of 4 FirstFirst 1 2 3 4 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •