17 Dec, 2012

1 commit


06 Oct, 2012

2 commits


10 Sep, 2012

1 commit


24 Jul, 2012

3 commits

  • Add a new 'feature' to i2c-i801 to enable using PCI interrupts.
    When the feature is enabled, then an isr is installed for the device's
    PCI IRQ.

    An I2C/SMBus transaction is always terminated by one of the following
    interrupt sources: FAILED, BUS_ERR, DEV_ERR, or on success: INTR.

    When the isr fires for one of these cases, it sets the ->status variable
    and wakes up the waitq. The waitq then saves off the status code, and
    clears ->status (in preparation for some future transaction).
    The SMBus controller generates an INTR irq at the end of each
    transaction where INTREN was set in the HST_CNT register.

    No locking is needed around accesses to priv->status since all writes to
    it are serialized: it is only ever set once in the isr at the end of a
    transaction, and cleared while no interrupts can occur. In addition, the
    I2C adapter lock guarantees that entire I2C transactions for a single
    adapter are always serialized.

    For this patch, the INTREN bit is set only for SMBus block, byte and word
    transactions, but not for I2C reads or writes. The use of the DS
    (BYTE_DONE) interrupt with byte-by-byte I2C transactions is implemented in
    a subsequent patch.

    The interrupt feature has only been enabled for COUGARPOINT hardware.
    In addition, it is disabled if SMBus is using the SMI# interrupt.

    Signed-off-by: Daniel Kurtz
    Signed-off-by: Jean Delvare

    Daniel Kurtz
     
  • Based on a previous patch from Peter Meerwald.

    Signed-off-by: Jean Delvare
    Acked-by: Peter Meerwald

    Jean Delvare
     
  • Some AMD chipsets, such as the SP5100, have an auxiliary SMBus
    controller with a second set of registers. This patch adds
    support for this auxiliary controller.

    Tested on ASUS KCMA-D8 motherboard.

    Signed-off-by: Andrew Armenia
    Signed-off-by: Jean Delvare

    Andrew Armenia
     

30 May, 2012

1 commit

  • Since there are uses for I2C_M_NOSTART which are much more sensible and
    standard than most of the protocol mangling functionality (the main one
    being gather writes to devices where something like a register address
    needs to be inserted before a block of data) create a new I2C_FUNC_NOSTART
    for this feature and update all the users to use it.

    Also strengthen the disrecommendation of the protocol mangling while we're
    at it.

    In the case of regmap-i2c we remove the requirement for mangling as
    I2C_M_NOSTART is the only mangling feature which is being used.

    Signed-off-by: Mark Brown
    Acked-by: Wolfram Sang
    Signed-off-by: Jean Delvare

    Mark Brown
     

12 May, 2012

1 commit


31 Mar, 2012

1 commit

  • Usage of /etc/modprobe.conf file was deprecated by module-init-tools and
    is no longer parsed by new kmod tool. References to this file are
    replaced in Documentation, comments and Kconfig according to the
    context.

    There are also some references to the old /etc/modules.conf from 2.4
    kernels that are being removed.

    Signed-off-by: Lucas De Marchi
    Acked-by: Takashi Iwai
    Acked-by: Mauro Carvalho Chehab
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Lucas De Marchi
     

27 Mar, 2012

1 commit


14 Mar, 2012

1 commit


23 Nov, 2011

1 commit

  • 10-bit addresses overlap with traditional 7-bit addresses, leading in
    device name collisions. Add an arbitrary offset to 10-bit addresses to
    prevent this collision. The offset was chosen so that the address is
    still easily recognizable.

    Signed-off-by: Jean Delvare
    Acked-by: Wolfram Sang

    Jean Delvare
     

30 Oct, 2011

1 commit


25 May, 2011

2 commits


31 Mar, 2011

1 commit


23 Mar, 2011

1 commit

  • * 'for-linus/2639/i2c-2' of git://git.fluff.org/bjdooks/linux:
    i2c-pxa2xx: Don't clear isr bits too early
    i2c-pxa2xx: Fix register offsets
    i2c-pxa2xx: pass of_node from platform driver to adapter and publish
    i2c-pxa2xx: check timeout correctly
    i2c-pxa2xx: add support for shared IRQ handler
    i2c-pxa2xx: Add PCI support for PXA I2C controller
    ARM: pxa2xx: reorganize I2C files
    i2c-pxa2xx: use dynamic register layout
    i2c-mxs: set controller to pio queue mode after reset
    i2c-eg20t: support new device OKI SEMICONDUCTOR ML7213 IOH
    i2c/busses: Add support for Diolan U2C-12 USB-I2C adapter

    Linus Torvalds
     

20 Mar, 2011

3 commits


27 Jan, 2011

1 commit


11 Jan, 2011

1 commit

  • Add an i2c mux driver providing access to i2c bus segments using a
    hardware MUX sitting on a master bus and controlled through gpio pins.

    E.G. something like:

    ---------- ---------- Bus segment 1 - - - - -
    | | SCL/SDA | |-------------- | |
    | |------------| |
    | | | | Bus segment 2 | |
    | Linux | GPIO 1..N | MUX |--------------- Devices
    | |------------| | | |
    | | | | Bus segment M
    | | | |---------------| |
    ---------- ---------- - - - - -

    SCL/SDA of the master I2C bus is multiplexed to bus segment 1..M
    according to the settings of the GPIO pins 1..N.

    Signed-off-by: Peter Korsgaard
    Signed-off-by: Jean Delvare

    Peter Korsgaard
     

01 Nov, 2010

2 commits


12 Aug, 2010

1 commit


04 Aug, 2010

1 commit

  • Below you will find an updated version from the original series bunching all patches into one big patch
    updating broken web addresses that are located in Documentation/*
    Some of the addresses date as far far back as 1995 etc... so searching became a bit difficult,
    the best way to deal with these is to use web.archive.org to locate these addresses that are outdated.
    Now there are also some addresses pointing to .spec files some are located, but some(after searching
    on the companies site)where still no where to be found. In this case I just changed the address
    to the company site this way the users can contact the company and they can locate them for the users.

    Signed-off-by: Justin P. Mattock
    Signed-off-by: Thomas Weber
    Signed-off-by: Mike Frysinger
    Cc: Paulo Marques
    Cc: Randy Dunlap
    Cc: Michael Neuling
    Signed-off-by: Jiri Kosina

    Justin P. Mattock
     

03 Jun, 2010

1 commit


22 May, 2010

1 commit


04 May, 2010

1 commit

  • After discovering that a lot of i2c-drivers leave the pointer to their
    clientdata dangling, it was decided to let the core handle this issue.
    It is assumed that the core may access the private data after remove()
    as there are no guarantees for the lifetime of such pointers anyhow (see
    thread starting at http://lkml.org/lkml/2010/3/21/68)

    Signed-off-by: Wolfram Sang
    Signed-off-by: Jean Delvare

    Wolfram Sang
     

02 Mar, 2010

5 commits

  • i2c_master_send & i2c_master_recv do not support more than 64 kb
    transfer, since msg.len is u16.

    Signed-off-by: Zhangfei Gao
    Signed-off-by: Jean Delvare

    Zhangfei Gao
     
  • Add support for the SMBus alert mechanism to the i2c-parport-light
    driver. The ADM1032 evaluation board at least is properly wired for
    this.

    Signed-off-by: Jean Delvare
    Cc: David Brownell
    Cc: Trent Piepho

    Jean Delvare
     
  • Add support for the SMBus alert mechanism to the i2c-parport driver.
    The ADM1032 evaluation board at least is properly wired for this.

    Signed-off-by: Jean Delvare
    Cc: David Brownell
    Cc: Trent Piepho

    Jean Delvare
     
  • SMBus alert support. The SMBus alert protocol allows several SMBus
    slave devices to share a single interrupt pin on the SMBus master,
    while still allowing the master to know which slave triggered the
    interrupt.

    This is based on preliminary work by David Brownell. The key
    difference between David's implementation and mine is that his was
    part of i2c-core, while mine is split into a separate, standalone
    module named i2c-smbus. The i2c-smbus module is meant to include
    support for all SMBus extensions to the I2C protocol in the future.

    The benefit of this approach is a zero cost for I2C bus segments which
    do not need SMBus alert support. Where David's implementation
    increased the size of struct i2c_adapter by 7% (40 bytes on i386),
    mine doesn't touch it. Where David's implementation added over 150
    lines of code to i2c-core (+10%), mine doesn't touch it. The only
    change that touches all the users of the i2c subsystem is a new
    callback in struct i2c_driver (common to both implementations.) I seem
    to remember Trent was worried about the footprint of David'd
    implementation, hopefully mine addresses the issue.

    Signed-off-by: Jean Delvare
    Acked-by: Jonathan Cameron
    Cc: David Brownell
    Cc: Trent Piepho

    Jean Delvare
     
  • Add the Intel Cougar Point (PCH) SMBus controller device IDs.

    Signed-off-by: Seth Heasley
    Signed-off-by: Jean Delvare

    Seth Heasley
     

15 Dec, 2009

1 commit


07 Dec, 2009

4 commits