06 Jan, 2006

4 commits


08 Nov, 2005

1 commit

  • My latest update to the writing-clients i2c documentation file was
    incomplete, here's the complement.

    Large parts of this file are still way out-of-date, but at least now
    the memory allocation and freeing instructions are consistent.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     

31 Oct, 2005

1 commit

  • Removed some more references to check_region().

    I checked these changes into the 'checkreg' branch of
    rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6.git

    The only valid references remaining are in:
    drivers/scsi/advansys.c
    drivers/scsi/BusLogic.c
    drivers/cdrom/sbpcd.c
    sound/oss/pss.c

    Remove last vestiges of ide_check_region()
    drivers/char/specialix: trim trailing whitespace
    drivers/char/specialix: eliminate use of check_region()
    Remove outdated and unused references to check_region()
    [sound oss] remove check_region() usage from cs4232, wavfront
    [netdrvr eepro] trim trailing whitespace
    [netdrvr eepro] remove check_region() usage

    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Garzik
     

29 Oct, 2005

2 commits

  • Update the i2c documentation: kzalloc should be used instead of
    kmalloc.

    I also fixed a couple other things nearby in writing-clients, as several
    past changes had never been reported there.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • i2c documentation fixes.

    >From Hideki Iwamoto:
    * i2c_smbus_read_i2c_block_data is not deleted in 2.6.10. It still
    exists.
    * The name which can be set to i2c_driver is up to 31 characters.

    >From Jean Delvare:
    * Reword the paragraph about i2c_driver.name, to reflect the "new"
    naming policy.
    * Delete the out-of-date note about now gone inc_use and dec_use
    fields.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     

06 Sep, 2005

6 commits

  • i2c_probe was quite complex and slow, so I rewrote it in a more
    efficient and hopefully clearer way.

    Note that this slightly changes the way the module parameters are
    handled. This shouldn't change anything for the most common cases
    though.

    For one thing, the function now respects the order of the parameters
    for address probing. It used to always do lower addresses first. The
    new approach gives the user more control.

    For another, ignore addresses don't overrule probe addresses anymore.
    This could have been restored the way it was at the cost of a few more
    lines of code, but I don't think it's worth it. Both lists are given
    as module parameters, so a user would be quite silly to specify the
    same addresses in both lists. The normal addresses list is the only
    one that isn't controlled by a module parameter, thus is the only one
    the user may reasonably want to remove an address from.

    Another significant change is the fact that i2c_probe() will no more
    stop when a detection function returns -ENODEV. Just because a driver
    found a chip it doesn't support isn't a valid reason to stop all
    probings for this one driver. This closes the long standing lm_sensors
    ticket #1807.

    http://www2.lm-sensors.nu/~lm78/readticket.cgi?ticket=1807

    I updated the documentation accordingly.

    In terms of algorithmic complexity, the new code is way better. If
    I is the ignore address count, P the probe address count, N the
    normal address count and F the force address count, the old code
    was doing 128 * (F + I + P + N) iterations max, while the new code
    does F + P + ((I+1) * N) iterations max. For the most common case
    where F, I and P are empty, this is down from 128 * N to N.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • The only thing left in i2c-sensor.h are module parameter definition
    macros. It's only an extension of what i2c.h offers, and this extension
    is not sensors-specific. As a matter of fact, a few non-sensors drivers
    use them. So we better merge them in i2c.h, and get rid of i2c-sensor.h
    altogether.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • i2c_probe and i2c_detect now do the exact same thing and operate on
    the same data structure, so we can have everyone call i2c_probe.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • We could refactor the error message 34 different i2c drivers print if
    i2c_detach_client() fails in this function itself. Saves quite a few
    lines of code. Documentation is updated to reflect that change.

    Note that this patch should be applied after Rudolf Marek's w83792d
    patches.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • Kill all uses of i2c_is_isa_adapter except for the hybrid drivers (it87,
    lm78, w83781d). The i2c-isa adapter not being registered with the i2c
    core anymore, drivers don't have to fear being erroneously attached to
    it.

    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • Kill normal_isa in header files, documentation and all chip drivers, as
    it is no more used.

    normal_i2c could be renamed to normal, but I decided not to do so at the
    moment, so as to limit the number of changes. This might be done later
    as part of the i2c_probe/i2c_detect merge.

    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     

12 Jul, 2005

1 commit

  • The I2C stack has long had "id" fields, of rather dubious utility, in
    many data structures. This removes mention of one of them from the
    documentation about how to write an I2C driver, so that only drivers
    that really need to use them (probably old/legacy code) will have any
    reason to use this field.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    david-b@pacbell.net
     

22 Jun, 2005

1 commit

  • Some months ago, you killed the address ranges mechanism from all
    sensors i2c chip drivers (both the module parameters and the in-code
    address lists). I think it was a very good move, as the ranges can
    easily be replaced by individual addresses, and this allowed for
    significant cleanups in the i2c core (let alone the impressive size
    shrink for all these drivers).

    Unfortunately you did not do the same for non-sensors i2c chip drivers.
    These need the address ranges even less, so we could get rid of the
    ranges here as well for another significant i2c core cleanup. Here comes
    a patch which does just that. Since the process is exactly the same as
    what you did for the other drivers set already, I did not split this one
    in parts.

    A documentation update is included.

    The change saves 308 bytes in the i2c core, and an average 1382 bytes
    for chip drivers which use I2C_CLIENT_INSMOD, 126 bytes for those which
    do not.

    This change is required if we want to merge the sensors and non-sensors
    i2c code (and we want to do this).

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Index: gregkh-2.6/Documentation/i2c/writing-clients
    ===================================================================

    Jean Delvare
     

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