1. 19 7月, 2011 3 次提交
  2. 08 7月, 2011 9 次提交
  3. 07 7月, 2011 2 次提交
  4. 01 7月, 2011 4 次提交
  5. 30 6月, 2011 11 次提交
  6. 29 6月, 2011 11 次提交
    • P
      i2c/pca954x: Initialize the mux to disconnected state · cd823db8
      Petri Gynther 提交于
      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: NPetri Gynther <pgynther@google.com>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Cc: stable@kernel.org
      cd823db8
    • J
      i2c-taos-evm: Fix log messages · 9b640f2e
      Jean Delvare 提交于
      * 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: NJean Delvare <khali@linux-fr.org>
      Cc: stable@kernel.org
      9b640f2e
    • B
      powerpc/pseries: Move hvsi support into a library · 17bdc6c0
      Benjamin Herrenschmidt 提交于
      This will allow a different backend to share it
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      17bdc6c0
    • B
      powerpc/pseries: Re-implement HVSI as part of hvc_vio · 4d2bb3f5
      Benjamin Herrenschmidt 提交于
      On pseries machines, consoles are provided by the hypervisor using
      a low level get_chars/put_chars type interface. However, this is
      really just a transport to the service processor which implements
      them either as "raw" console (networked consoles, HMC, ...) or as
      "hvsi" serial ports.
      
      The later is a simple packet protocol on top of the raw character
      interface that is supposed to convey additional "serial port" style
      semantics. In practice however, all it does is provide a way to
      read the CD line and set/clear our DTR line, that's it.
      
      We currently implement the "raw" protocol as an hvc console backend
      (/dev/hvcN) and the "hvsi" protocol using a separate tty driver
      (/dev/hvsi0).
      
      However this is quite impractical. The arbitrary difference between
      the two type of devices has been a major source of user (and distro)
      confusion. Additionally, there's an additional mini -hvsi implementation
      in the pseries platform code for our low level debug console and early
      boot kernel messages, which means code duplication, though that low
      level variant is impractical as it's incapable of doing the initial
      protocol negociation to establish the link to the FSP.
      
      This essentially replaces the dedicated hvsi driver and the platform
      udbg code completely by extending the existing hvc_vio backend used
      in "raw" mode so that:
      
       - It now supports HVSI as well
       - We add support for hvc backend providing tiocm{get,set}
       - It also provides a udbg interface for early debug and boot console
      
      This is overall less code, though this will only be obvious once we
      remove the old "hvsi" driver, which is still available for now. When
      the old driver is enabled, the new code still kicks in for the low
      level udbg console, replacing the old mini implementation in the platform
      code, it just doesn't provide the higher level "hvc" interface.
      
      In addition to producing generally simler code, this has several benefits
      over our current situation:
      
       - The user/distro only has to deal with /dev/hvcN for the hypervisor
      console, avoiding all sort of confusion that has plagued us in the past
      
       - The tty, kernel and low level debug console all use the same code
      base which supports the full protocol establishment process, thus the
      console is now available much earlier than it used to be with the
      old HVSI driver. The kernel console works much earlier and udbg is
      available much earlier too. Hackers can enable a hard coded very-early
      debug console as well that works with HVSI (previously that was only
      supported for the "raw" mode).
      
      I've tried to keep the same semantics as hvsi relative to how I react
      to things like CD changes, with some subtle differences though:
      
       - I clear DTR on close if HUPCL is set
      
       - Current hvsi triggers a hangup if it detects a up->down transition
         on CD (you can still open a console with CD down). My new implementation
         triggers a hangup if the link to the FSP is severed, and severs it upon
         detecting a up->down transition on CD.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      4d2bb3f5
    • B
      powerpc/udbg: Register udbg console generically · dd2e356a
      Benjamin Herrenschmidt 提交于
      When CONFIG_PPC_EARLY_DEBUG is set, call register_early_udbg_console()
      early from generic code.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      dd2e356a
    • B
      powerpc/pseries: Factor HVSI header struct in packet definitions · 048bee77
      Benjamin Herrenschmidt 提交于
      Embed the struct hvsi_header in the various packet definitions
      rather than open coding it multiple times. Will help provide
      stronger type checking.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      048bee77
    • B
      powerpc/hvsi: Move HVSI protocol definitions to a header file · 725e789f
      Benjamin Herrenschmidt 提交于
      This moves various HVSI protocol definitions from the hvsi.c
      driver to a header file that can be used later on by a udbg
      implementation
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      725e789f
    • D
      powerpc/maple: Register CPC925 EDAC device on all boards with CPC925 · 8a0360a5
      Dmitry Eremin-Solenikov 提交于
      Currently Maple setup code creates cpc925_edac device only on
      Motorola ATCA-6101 blade. Make setup code check bridge revision
      and enable EDAC on all U3H bridges.
      
      Verified on Momentum MapleD (ppc970fx kit) board.
      Signed-off-by: NDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      8a0360a5
    • A
      powerpc/pseries: Improve error code on reconfiguration notifier failure · de2780a3
      Akinobu Mita 提交于
      Reconfiguration notifier call for device node may fail by several reasons,
      but it always assumes kmalloc failures.
      
      This enables reconfiguration notifier call chain to get the actual error
      code rather than -ENOMEM by converting all reconfiguration notifier calls
      to return encapsulate error code with notifier_from_errno().
      Signed-off-by: NAkinobu Mita <akinobu.mita@gmail.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: linuxppc-dev@lists.ozlabs.org
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      de2780a3
    • A
      powerpc/pseries: Introduce pSeries_reconfig_notify() · 3aef19f0
      Akinobu Mita 提交于
      This introduces pSeries_reconfig_notify() as a just wrapper of
      blocking_notifier_call_chain() for pSeries_reconfig_chain.
      
      This is a preparation to improvement of error code on reconfiguration
      notifier failure.
      Signed-off-by: NAkinobu Mita <akinobu.mita@gmail.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: linuxppc-dev@lists.ozlabs.org
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      3aef19f0
    • D
      powerpc/maple: Enable scom access functions on Maple · e48f7eb2
      Dmitry Eremin-Solenikov 提交于
      Enable functions used to access SCOM if PPC_MAPLE is defined: they are
      used by cpufreq driver to control hardware.
      Signed-off-by: NDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      e48f7eb2