07 Sep, 2011

4 commits


25 Aug, 2011

1 commit


24 Aug, 2011

2 commits

  • This reverts commit adf6e07922255937c8bfeea777d19502b4c9a2be.

    Remove system PM methods which can race with runtime PM methods.

    Also, as of v3.1, the PM domain level code for OMAP handles device
    power state transistions automatically for devices, so drivers no
    longer need to specifically call the bus/pm_domain methods themselves.

    Signed-off-by: Kevin Hilman
    Signed-off-by: Ben Dooks

    Kevin Hilman
     
  • If there is a signal pending and wait_for_completion_interruptible_timeout
    exited because of the -ERESTARTSYS error we are unable to send any more
    i2c messages.

    So, deprecate this _interruptible_ variant call.

    Signed-off-by: Srinidhi Kasagar
    Signed-off-by: Linus Walleij
    Signed-off-by: Ben Dooks

    srinidhi kasagar
     

27 Jul, 2011

3 commits


26 Jul, 2011

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (43 commits)
    fs: Merge split strings
    treewide: fix potentially dangerous trailing ';' in #defined values/expressions
    uwb: Fix misspelling of neighbourhood in comment
    net, netfilter: Remove redundant goto in ebt_ulog_packet
    trivial: don't touch files that are removed in the staging tree
    lib/vsprintf: replace link to Draft by final RFC number
    doc: Kconfig: `to be' -> `be'
    doc: Kconfig: Typo: square -> squared
    doc: Konfig: Documentation/power/{pm => apm-acpi}.txt
    drivers/net: static should be at beginning of declaration
    drivers/media: static should be at beginning of declaration
    drivers/i2c: static should be at beginning of declaration
    XTENSA: static should be at beginning of declaration
    SH: static should be at beginning of declaration
    MIPS: static should be at beginning of declaration
    ARM: static should be at beginning of declaration
    rcu: treewide: Do not use rcu_read_lock_held when calling rcu_dereference_check
    Update my e-mail address
    PCIe ASPM: forcedly -> forcibly
    gma500: push through device driver tree
    ...

    Fix up trivial conflicts:
    - arch/arm/mach-ep93xx/dma-m2p.c (deleted)
    - drivers/gpio/gpio-ep93xx.c (renamed and context nearby)
    - drivers/net/r8169.c (just context changes)

    Linus Torvalds
     

25 Jul, 2011

2 commits


11 Jul, 2011

3 commits


08 Jul, 2011

1 commit


29 Jun, 2011

2 commits

  • pca954x power-on default is channel 0 connected. If multiple pca954x
    muxes are connected to the same physical I2C bus, the parent bus will
    see channel 0 devices behind both muxes by default. This is bad.

    Scenario:
    -- pca954x @ 0x70 -- ch 0 (I2C-bus-101) -- EEPROM @ 0x50
    |
    I2C-bus-1 ---
    |
    -- pca954x @ 0x71 -- ch 0 (I2C-bus-111) -- EEPROM @ 0x50

    1. Load I2C bus driver: creates I2C-bus-1
    2. Load pca954x driver: creates virtual I2C-bus-101 and I2C-bus-111
    3. Load eeprom driver
    4. Try to read EEPROM @ 0x50 on I2C-bus-101. The transaction will also bleed
    onto I2C-bus-111 because pca954x @ 0x71 channel 0 is connected by default.

    Fix: Initialize pca954x to disconnected state in pca954x_probe()

    Signed-off-by: Petri Gynther
    Signed-off-by: Jean Delvare
    Cc: stable@kernel.org

    Petri Gynther
     
  • * Print all error and information messages even when debugging is
    disabled.
    * Don't use adapter device to log messages before it is ready.

    Signed-off-by: Jean Delvare
    Cc: stable@kernel.org

    Jean Delvare
     

28 Jun, 2011

5 commits

  • …' and 'for-30-rc4/i2c-tegra' into for-30-rc5/all-i2c

    Ben Dooks
     
  • Sometimes, the first I2C transmit interrupt is not serviced in time (like
    when higher priority interrupts take too long). Since the RESTART bit is
    not set before the next I2C clock, when the TWI handler is finally called,
    the I2C session is aborted (MEM bit is reset) and both SMITSERV and MCOMP
    int status bits are set.

    So when this happens, abort the transfer.

    Reported-by: Isabelle Leonardi
    Signed-off-by: Sonic Zhang
    Signed-off-by: Mike Frysinger
    Signed-off-by: Ben Dooks

    Sonic Zhang
     
  • Signed-off-by: Jonghwan Choi
    Signed-off-by: Kukjin Kim
    Signed-off-by: Ben Dooks

    Jonghwan Choi
     
  • Signed-off-by: Huisung Kang
    Signed-off-by: Kukjin Kim
    Signed-off-by: Ben Dooks

    Huisung Kang
     
  • On Tegra, we should always use the "new" I2C slave controller, to avoid
    issues with the old controller. This was implemented in commit 65a1a0a
    "i2c: tegra: Enable new slave mode."

    There is currently no driver for the Tegra I2C slave controller upstream.
    Additionally, the controller cannot be completely disabled. Instead, we
    need to:

    a) Set I2C_SL_CNFG_NACK to make the controller automatically NACK any
    incoming transactions.

    b) The controller's definition of NACK isn't identical to the I2C
    protocol's definition. Specifically, it will perform a standard NACK, but
    *also* continue to hold the clock line low in expectation of receiving
    more data. This can hang the bus, or at least cause transaction timeouts,
    if something starts a transaction that matches the controller's slave
    address. Since the default address is 0x00, the general call address,
    this does occur in practice.

    To avoid this, we explicitly program a slave address that is reserved for
    future expansion. For current boards, this guarantees the address will
    never be used. If a future board ever needs to use this address, we can
    add platform data to determine a board-specific safe address. 0xfc is
    picked by this patch.

    This patch is based on a change previously posted by: Wei Ni
    http://www.spinics.net/lists/linux-i2c/msg05437.html
    In turned based on internal changes by: Bharat Nihalani

    A semantically equivalent change has been contained in the various
    ChromeOS kernels for a while.

    I tested this change on top of 3.0-rc2 on Harmony, and interacted with
    the WM8903 I2C-based audio codec.

    Signed-off-by: Stephen Warren
    Signed-off-by: Ben Dooks

    Stephen Warren
     

24 Jun, 2011

1 commit


27 May, 2011

1 commit


25 May, 2011

14 commits