03 May, 2007

1 commit


17 Feb, 2007

2 commits


27 Sep, 2006

1 commit

  • Add modalias attribute support for the almost forgotten now EISA bus and
    (at least some) EISA-aware modules.

    The modalias entry looks like (for an 3c509 NIC):

    eisa:sTCM5093

    and the in-module alias like:

    eisa:sTCM5093*

    The patch moves struct eisa_device_id declaration from include/linux/eisa.h
    to include/linux/mod_devicetable.h (so that the former now #includes the
    latter), adds proper MODULE_DEVICE_TABLE(eisa, ...) statements for all
    drivers with EISA IDs I found (some drivers already have that DEVICE_TABLE
    declared), and adds recognision of __mod_eisa_device_table to
    scripts/mod/file2alias.c so that proper modules.alias will be generated.

    There's no support for /lib/modules/$kver/modules.eisamap, as it's not used
    by any existing tools, and because with in-kernel modalias mechanism those
    maps are obsolete anyway.

    The rationale for this patch is:

    a) to make EISA bus to act as other busses with modalias
    support, to unify driver loading

    b) to foget about EISA finally - with this patch, kernel
    (who still supports EISA) will be the only one who knows
    how to choose the necessary drivers for this bus ;)

    [akpm@osdl.org: fix the kbuild bit]
    Signed-off-by: Michael Tokarev
    Cc: Rusty Russell
    Cc: Randy Dunlap
    Acked-the-net-bits-by: Jeff Garzik
    Acked-the-tulip-bit-by: Valerie Henson
    Cc: James Bottomley
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael Tokarev
     

20 Sep, 2006

1 commit

  • Add a bus for the adjunct processor interface. Up to 64 devices can
    be connect to the ap bus interface, each device with 16 domains. That
    makes 1024 message queues. The interface is asynchronous, the answer
    to a message sent to a queue needs to be received at some later point
    in time. Unfortunately the interface does not provide interrupts when
    a message reply is pending. So the ap bus needs to implement some
    fancy polling, each active queue is polled once per 1/HZ second or
    continuously if an idle cpus exsists and the poll thread is activ
    (see poll_thread parameter).

    The ap bus uses the sysfs path /sys/bus/ap and has two bus attributes,
    ap_domain and config_time. The ap_domain selects one of the 16 domains
    to be used for this system. This limits the maximum number of ap devices
    to 64. The config_time attribute contains the number of seconds between
    two ap bus scans to find new devices.

    The ap bus uses the modalias entries of the form "ap:tN" to autoload
    the ap driver for hardware type N. Currently known types are:
    3 - PCICC, 4 - PCICA, 5 - PCIXCC, 6 - CEX2A and 7 - CEX2C.

    Signed-off-by: Cornelia Huck
    Signed-off-by: Ralph Wuerthner
    Signed-off-by: Martin Schwidefsky

    Martin Schwidefsky
     

16 Aug, 2006

1 commit

  • There is a small but annoying bug in scripts/mod/file2alias.c which causes
    it to generate invalid aliases for input devices on 64 bit archs. This causes
    joydev.ko to not be automaticly loaded when inserting a joystick, resulting in
    a non working joystick (for the average user).

    In scripts/mod/file2alias.c is the following code for generating the input
    aliases:
    static void do_input(char *alias,
    kernel_ulong_t *arr, unsigned int min, unsigned int max)
    {
    unsigned int i;

    for (i = min; i < max; i++)
    if (arr[i / BITS_PER_LONG] & (1 << (i%BITS_PER_LONG)))
    sprintf(alias + strlen(alias), "%X,*", i);
    }

    On 32 bits systems, this correctly generates "0,*" for the first alias, "8,*"
    for the second etc.

    However on 64 bits it generates: "0,*20,*" resp "8,*28,*" Notice how it adds 20
    + first entry (hex) ! to the list of hex codes, which is 32 more then the first
    entry, thus is because the bit test above wraps at 32 bits instead of 64.

    scripts/mod/file2alias.c, line 379 reads:
    if (arr[i / BITS_PER_LONG] & (1 << (i%BITS_PER_LONG)))
    That should be:
    if (arr[i / BITS_PER_LONG] & (1L << (i%BITS_PER_LONG)))

    Notice the added 'L' after the 1, otherwise that is an 32 bit int instead of a
    64 bit long, and when that int gets shifted >= 32 times, appearantly the number
    by which to shift is wrapped at 5 bits ( % 32) causing it to test a bit 32 bits
    too low.

    The patch below makes the nescesarry 1 char change :)

    Signed-off-by: Hans de Goede
    Acked-by: Rusty Russell
    Signed-off-by: Greg Kroah-Hartman

    Hans de Goede
     

01 Aug, 2006

1 commit

  • The original errormessage was just plain unreadable.

    Sample error message after this update (not for real - I provoked it):

    FATAL: drivers/net/s2io: sizeof(struct pci_device_id)=33 is not a modulo of the
    size of section __mod_pci_device_table=160.
    Fix definition of struct pci_device_id in mod_devicetable.h

    Before a warning was generated - this is now a fatal error.

    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     

26 Apr, 2006

1 commit


26 Mar, 2006

1 commit

  • * master.kernel.org:/pub/scm/linux/kernel/git/sam/kbuild: (46 commits)
    kbuild: remove obsoleted scripts/reference_* files
    kbuild: fix make help & make *pkg
    kconfig: fix time ordering of writes to .kconfig.d and include/linux/autoconf.h
    Kconfig: remove the CONFIG_CC_ALIGN_* options
    kbuild: add -fverbose-asm to i386 Makefile
    kbuild: clean-up genksyms
    kbuild: Lindent genksyms.c
    kbuild: fix genksyms build error
    kbuild: in makefile.txt note that Makefile is preferred name for kbuild files
    kbuild: replace PHONY with FORCE
    kbuild: Fix bug in crc symbol generating of kernel and modules
    kbuild: change kbuild to not rely on incorrect GNU make behavior
    kbuild: when warning symbols exported twice now tell user this is the problem
    kbuild: fix make dir/file.xx when asm symlink is missing
    kbuild: in the section mismatch check try harder to find symbols
    kbuild: fix section mismatch check for unwind on IA64
    kbuild: kill false positives from section mismatch warnings for powerpc
    kbuild: kill trailing whitespace in modpost & friends
    kbuild: small update of allnoconfig description
    kbuild: make namespace.pl CROSS_COMPILE happy
    ...

    Trivial conflict in arch/ppc/boot/Makefile manually fixed up

    Linus Torvalds
     

07 Mar, 2006

1 commit


03 Mar, 2006

1 commit


19 Feb, 2006

1 commit


09 Jan, 2006

1 commit


05 Jan, 2006

1 commit

  • Here's the patch for modalias support for input classes. It uses
    comma-separated numbers, and doesn't describe all the potential keys (no
    module currently cares, and that would make the strings huge). The
    changes to input.h are to move the definitions needed by file2alias
    outside __KERNEL__. I chose not to move those definitions to
    mod_devicetable.h, because there are so many that it might break compile
    of something else in the kernel.

    The rest is fairly straightforward.

    Signed-off-by: Rusty Russell
    CC: Kay Sievers
    Signed-off-by: Greg Kroah-Hartman

    Rusty Russell
     

29 Oct, 2005

1 commit


26 Sep, 2005

1 commit


30 Aug, 2005

1 commit


07 Jul, 2005

1 commit

  • This converts the usage of struct of_match to struct of_device_id,
    similar to pci_device_id. This allows a device table to be generated,
    which can be parsed by depmod(8) to generate a map file for module
    loading.

    In order for hotplug to work with macio devices, patches to
    module-init-tools and hotplug must be applied. Those patches are
    available at:

    ftp://ftp.suse.com/pub/people/jeffm/linux/macio-hotplug/

    Signed-off-by: Jeff Mahoney
    Signed-off-by: Linus Torvalds

    Jeff Mahoney
     

28 Jun, 2005

1 commit


23 Apr, 2005

1 commit

  • Another attempt at that...

    The attached patch fixes the longstanding problem with USB bcdDevice
    numeric ranges incorrectly converted into patterns for MODULE_ALIAS
    generation. Previously it put both the lower and the upper limits into
    the pattern, dlXdhY, making it impossible to fnmatch against except for
    a few special cases, like dl*dh* or dlXdhX.

    The patch makes it generate multiple MODULE_ALIAS lines covering the
    whole range with fnmatch-able patterns. E.g. for a range between 0x0001
    and 0x8345 it gives the following patterns:

    000[1-9]
    00[1-9]*
    0[1-9]*
    [1-7]*
    8[0-2]*
    83[0-3]*
    834[0-5]

    Since bcdDevice is 2 bytes wide = 4 digits in hex representation, the
    max no. of patters is 2 * 4 - 1 = 7.

    The values are BCD (binary-coded decimals) and not hex, so patterns
    using a dash seem to be safe regardless of locale collation order.

    The patch changes bcdDevice part of the alias from dlXdhY to dZ, but
    this shouldn't have big compatibility issues because fnmatch()-based
    modprobing hasn't yet been widely used. Besides, the most common (and
    almost the only working) case of dl*dh* becomes d* and thus continues to
    work.

    The patch is against 2.6.12-rc2, applies to -mm3 with an offset. The
    matching patch to fix the MODALIAS environment variable now generated by
    the usb hotplug function follows.

    Signed-off-by: Roman Kagan
    Signed-off-by: Greg Kroah-Hartman

    Roman Kagan
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds