27 Sep, 2006

2 commits

  • i2c-viapro: Add support for the VT8237A and VT8251

    Documentation update included. Compile tested.

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

    Rudolf Marek
     
  • i2c-stub: Chip address as a module parameter

    Add a mandatory chip_addr parameter to i2c-stub. This parameter
    defines to which chip address the driver will respond, instead of
    reponding to all addresses as before. The idea is to prevent the
    users from loading i2c-stub at random and being then confused by
    the results of sensors-detect or other user-space tools.

    Signed-off-by: Jean Delvare
    Signed-off-by: Mark M. Hoffman
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     

13 Jul, 2006

1 commit


23 Jun, 2006

8 commits

  • i2c-i801: Remove force_addr parameter

    Remove the force_addr module parameter. It doesn't appear to ever
    have been needed, and PCI resources shouldn't be arbitrarily
    changed anyway.

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

    Jean Delvare
     
  • Documentation update for the scx200_acb driver. Hopefully this will
    help future users.

    References:

    [lm-sensors] Support of i2c-nscacb (April, May 2005)
    http://lists.lm-sensors.org/pipermail/lm-sensors/2005-April/011756.html
    http://lists.lm-sensors.org/pipermail/lm-sensors/2005-May/012043.html

    [lm-sensors] making a geode i2c slave driver (April 2006)
    http://lists.lm-sensors.org/pipermail/lm-sensors/2006-April/015998.html

    Kernel bug #6445
    http://bugzilla.kernel.org/show_bug.cgi?id=6445

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

    Jean Delvare
     
  • The following patch adds support for the OpenCores I2C controller IP
    core (See http://www.opencores.org/projects.cgi/web/i2c/overview).

    Signed-off-by: Peter Korsgaard
    Signed-off-by: Andrew Morton
    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Peter Korsgaard
     
  • Add support for the new nForce4 MCP51 (also known as nForce 410 or
    430) and nForce4 MCP55 to the i2c-nforce2 driver. Some code changes
    were required because the base I/O address registers have changed in
    these versions. Standard BARs are now being used, while the original
    nForce2 chips used non-standard ones.

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

    Jean Delvare
     
  • Properly document on which systems the i2c-piix4 SMBus driver will
    refuse to load. Hopefully this will make it clearer for users, which
    were often wondering why their destop or server systems were detected
    as laptops.

    Closes bug #6429.

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

    Jean Delvare
     
  • Fix i2c-piix4 documentation typo.

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

    Jean Delvare
     
  • This patch removes the fix_hstcfg option from the driver and related
    SMBus Interrupt Select register magic because now we know what are
    valid values for this register. This patch updates the documentation
    and adds new IRQ mode check so we are sure not to miss any new
    "unusual" value.

    The PCI quirk for users of fix_hstcfg was not developed because the
    chipset lacks of subsystem ID registers and DMI is stated "To be
    filled". Impact to existing systems is minimal because the problem
    showed up on motherboards like 10 years back. On the other hand users
    of newer Serverworks and HT1000 systems won't be misleaded by the
    message suggesting to try the fix_hstcfg any more.

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

    Rudolf Marek
     
  • This patch adds the ATI IXP southbridges support to i2c-piix4,
    as it turned out those chips are compatible with it.

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

    Rudolf Marek
     

15 Apr, 2006

1 commit

  • This patch forces the user to specify what type of adapter is present when
    loading i2c-parport or i2c-parport-light. If none is specified, the driver
    init simply fails - instead of assuming adapter type 0.

    This alleviates the sometimes lengthy boot time delays which can be caused
    by accidentally building one of these into a kernel along with several i2c
    slave drivers that have lengthy probe routines (e.g. hwmon drivers).

    Kconfig and documentation updated accordingly.

    Signed-off-by: Mark M. Hoffman
    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Mark M. Hoffman
     

24 Mar, 2006

2 commits


07 Feb, 2006

1 commit


06 Jan, 2006

8 commits


08 Nov, 2005

2 commits

  • The big i2c-viapro SMBus driver update which went into 2.6.14-git1
    introduced a few minor issues. Nothing critical, but I would like a
    few adjustments to be merged in to fix the following problems:

    * VIA should not be spelled Via.
    * Frodo Looijaard and Philip Edelbrock did not write the i2c-viapro
    driver.
    * When debugging is disabled, half of messages would be logged.
    * Drop an unneeded masking.
    * Some port reads can be avoided now that the transaction size is
    passed as a parameter to vt596_transaction().
    * SMBus Receive Byte transactions are used for probing too (for
    EEPROMs), so hide errors on these too.

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

    Jean Delvare
     
  • 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

8 commits

  • Update the documented list of devices supported by the i2c-i810
    driver.

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

    Jean Delvare
     
  • 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
     
  • New driver for the Xicor X1205 RTC chip.

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

    Alessandro Zummo
     
  • 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
     
  • Make it clearer which chips are supported by the i2c-viapro driver,
    and which support I2C block transactions.

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

    Documentation/i2c/busses/i2c-viapro | 12 ++++++------
    drivers/i2c/busses/i2c-viapro.c | 22 +++++++++++++---------
    2 files changed, 19 insertions(+), 15 deletions(-)

    Jean Delvare
     
  • Implement the I2C block transactions on VIA chips which support them:
    VT82C686B, VT8233, VT8233A, VT8235 and VT8237R. This speeds up EEPROM
    accesses by a factor 10 or so.

    I would like to thank Antonino A. Daplas, Hinko Kocevar, Salah Coronya
    and Andreas Henriksson for their help in testing this new feature.

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

    Documentation/i2c/busses/i2c-viapro | 7 +++++-
    drivers/i2c/busses/i2c-viapro.c | 39 +++++++++++++++++++++++++++++++++---
    2 files changed, 42 insertions(+), 4 deletions(-)

    Jean Delvare
     
  • Before I go on cleaning up and improving the i2c-viapro driver, let's
    fix all the coding style issues: mostly trailing white space, and
    spaces used where tabs should be.

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

    Documentation/i2c/busses/i2c-viapro | 12 ++---
    drivers/i2c/busses/i2c-viapro.c | 76 ++++++++++++++++++------------------
    2 files changed, 43 insertions(+), 45 deletions(-)

    Jean Delvare
     
  • Fix the description of I2C_FUNC_PROTOCOL_MANGLING.

    From: Hideki Iwamoto
    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Documentation/i2c/functionality | 7 ++++---
    1 file changed, 4 insertions(+), 3 deletions(-)

    Hideki Iwamoto
     

06 Sep, 2005

6 commits

  • The 24RF08 corruption would better be prevented at i2c-core level than
    at chip driver level, for several reasons:
    * The second quick write should happen as soon as possible after the
    first one, so as to limit the risk that another command is issued on
    the bus inbetween, causing the corruption.
    * As a matter of fact, the protection code at driver level was reworked
    at least three times already, which proves how hard it is to get it
    right there, while it's straightforward at i2c-core level.
    * It's easy to add a new driver that would need the protection, and
    forget to add it. This did happen already.
    * As additional probing addresses can be passed to most i2c chip drivers
    as module parameters, virtually every i2c chip driver would need the
    protection if we want to be really safe.
    * Why duplicate code when we can easily avoid it?

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

    Jean Delvare
     
  • 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 part left in i2c-sensor is the VRM/VRD/VID handling code.
    This is in no way related to i2c, so it doesn't belong there. Move
    the code to hwmon, where it belongs.

    Note that not all hardware monitoring drivers do VRM/VRD/VID
    operations, so less drivers depend on hwmon-vid than there were
    depending on i2c-sensor.

    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
     
  • Fix a typo in the i2c documentation: the i2c bus scanning tool found in
    lm_sensors is called i2cdetect, not i2c_detect.

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

    Jean Delvare