29 Mar, 2012

1 commit

  • Pull dma-buf updates from Sumit Semwal:
    "This includes the following key items:

    - kernel cpu access support,
    - flag-passing to dma_buf_fd,
    - relevant Documentation updates, and
    - some minor cleanups and fixes.

    These changes are needed for the drm prime/dma-buf interface code that
    Dave Airlie plans to submit in this merge window."

    * 'for-linus-3.4' of git://git.linaro.org/people/sumitsemwal/linux-dma-buf:
    dma-buf: correct dummy function declarations.
    dma-buf: document fd flags and O_CLOEXEC requirement
    dma_buf: Add documentation for the new cpu access support
    dma-buf: add support for kernel cpu access
    dma-buf: don't hold the mutex around map/unmap calls
    dma-buf: add get_dma_buf()
    dma-buf: pass flags into dma_buf_fd.
    dma-buf: add dma_data_direction to unmap dma_buf_op
    dma-buf: Move code out of mutex-protected section in dma_buf_attach()
    dma-buf: Return error instead of using a goto statement when possible
    dma-buf: Remove unneeded sanity checks
    dma-buf: Constify ops argument to dma_buf_export()

    Linus Torvalds
     

26 Mar, 2012

4 commits

  • Big differences to other contenders in the field (like ion) is
    that this also supports highmem, so we have to split up the cpu
    access from the kernel side into a prepare and a kmap step.

    Prepare is allowed to fail and should do everything required so that
    the kmap calls can succeed (like swapin/backing storage allocation,
    flushing, ...).

    More in-depth explanations will follow in the follow-up documentation
    patch.

    Changes in v2:

    - Clear up begin_cpu_access confusion noticed by Sumit Semwal.
    - Don't automatically fallback from the _atomic variants to the
    non-atomic variants. The _atomic callbacks are not allowed to
    sleep, so we want exporters to make this decision explicit. The
    function signatures are explicit, so simpler exporters can still
    use the same function for both.
    - Make the unmap functions optional. Simpler exporters with permanent
    mappings don't need to do anything at unmap time.

    Changes in v3:

    - Adjust the WARN_ON checks for the new ->ops functions as suggested
    by Rob Clark and Sumit Semwal.
    - Rebased on top of latest dma-buf-next git.

    Changes in v4:

    - Fixup a missing - in a return -EINVAL; statement.

    Signed-Off-by: Daniel Vetter
    Signed-off-by: Rob Clark
    Signed-off-by: Sumit Semwal

    Daniel Vetter
     
  • The mutex protects the attachment list and hence needs to be held
    around the callbakc to the exporters (optional) attach/detach
    functions.

    Holding the mutex around the map/unmap calls doesn't protect any
    dma_buf state. Exporters need to properly protect any of their own
    state anyway (to protect against calls from their own interfaces).
    So this only makes the locking messier (and lockdep easier to anger).

    Therefore let's just drop this.

    v2: Rebased on top of latest dma-buf-next git.

    Signed-off-by: Daniel Vetter
    Reviewed-by: Rob Clark
    Signed-off-by: Sumit Semwal

    Daniel Vetter
     
  • We need to pass the flags into dma_buf_fd at this point,
    so the flags end up doing the right thing for O_CLOEXEC.

    Signed-off-by: Dave Airlie
    Signed-off-by: Rob Clark
    Signed-off-by: Sumit Semwal

    Dave Airlie
     
  • Some exporters may use DMA map/unmap APIs in dma-buf ops, which require
    enum dma_data_direction for both map and unmap operations.

    Thus, the unmap dma_buf_op also needs to have enum dma_data_direction as
    a parameter.

    Reported-by: Tomasz Stanislawski
    Signed-off-by: Sumit Semwal
    Reviewed-by: Daniel Vetter
    Signed-off-by: Sumit Semwal

    Sumit Semwal
     

25 Mar, 2012

1 commit

  • Pull avoidance patches from Paul Gortmaker:
    "Nearly every subsystem has some kind of header with a proto like:

    void foo(struct device *dev);

    and yet there is no reason for most of these guys to care about the
    sub fields within the device struct. This allows us to significantly
    reduce the scope of headers including headers. For this instance, a
    reduction of about 40% is achieved by replacing the include with the
    simple fact that the device is some kind of a struct.

    Unlike the much larger module.h cleanup, this one is simply two
    commits. One to fix the implicit users, and then one
    to delete the device.h includes from the linux/include/ dir wherever
    possible."

    * tag 'device-for-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
    device.h: audit and cleanup users in main include dir
    device.h: cleanup users outside of linux/include (C files)

    Linus Torvalds
     

24 Mar, 2012

1 commit

  • Remove for_each_set_bit_cont() after confirming that no one uses
    for_each_set_bit_cont() anymore.

    [sfr@canb.auug.org.au: regmap: cope with bitops API change]
    Signed-off-by: Akinobu Mita
    Signed-off-by: Stephen Rothwell
    Cc: Robert Richter
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: "H. Peter Anvin"
    Cc: Mark Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     

23 Mar, 2012

3 commits

  • Pull regmap updates from Mark Brown:
    "Things are really quieting down with the regmap API, while we're still
    seeing a trickle of new features coming in they're getting much
    smaller than they were. It's also nice to have some features which
    support other subsystems building infrastructure on top of regmap.
    Highlights include:

    - Support for padding between the register and the value when
    interacting with the device, sometimes needed for fast interfaces.
    - Support for applying register updates to the device when restoring
    the register state. This is intended to be used to apply updates
    supplied by manufacturers for tuning the performance of the device
    (many of which are to undocumented registers which aren't otherwise
    covered).
    - Support for multi-register operations on cached registers.
    - Support for syncing only part of the register cache.
    - Stubs and parameter query functions intended to make it easier for
    other subsystems to build infrastructure on top of the regmap API.

    plus a few driver updates making use of the new features which it was
    easier to merge via this tree."

    * tag 'regmap-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: (41 commits)
    regmap: Fix future missing prototype of devres_alloc() and friends
    regmap: Rejig struct declarations for stubbed API
    regmap: Fix rbtree block base in sync
    regcache: Make sure we sync register 0 in an rbtree cache
    regmap: delete unused module.h from drivers/base/regmap files
    regmap: Add stub for regcache_sync_region()
    mfd: Improve performance of later WM1811 revisions
    regmap: Fix x86_64 breakage
    regmap: Allow drivers to sync only part of the register cache
    regmap: Supply ranges to the sync operations
    regmap: Add tracepoints for cache only and cache bypass
    regmap: Mark the cache as clean after a successful sync
    regmap: Remove default cache sync implementation
    regmap: Skip hardware defaults for LZO caches
    regmap: Expose the driver name in debugfs
    mfd: wm8400: Convert to devm_regmap_init_i2c()
    mfd: wm831x: Convert to devm_regmap_init()
    mfd: wm8994: Convert to devm_regmap_init()
    mfd/ASoC: Convert WM8994 driver to use regmap patches
    mfd: Add __devinit and __devexit annotations in wm8994
    ...

    Linus Torvalds
     
  • Pull updates of sound stuff from Takashi Iwai:
    "Here is the first big update chunk of sound stuff for 3.4-rc1.

    In the common sound infrastructure, there are a few changes for
    dynamic PCM support (used in ASoC) and a few clean-ups. Majority of
    changes are found, as usual, in HD-audio and ASoC.

    Some highlights of HD-audio changes:

    - All the long-standing static quirk codes for Realtek codec were
    finally removed by fixing and extending the Realtek auto-parser.

    - The mute-LED control is standardized over all HD-audio codec
    drivers using the extended vmaster hook.

    - The vmaster slave mixer elements are initialized to 0dB as default
    so that the user won't be annoyed by the silent output after
    updates, e.g. due to the additions of new elements.

    - Other many fix-ups for the misc HD-audio devices.

    In the ASoC side, this is a very active release, including a quite a
    few framework enhancements. Some highlights:

    - Support for widgets not associated with a CODEC, an important part
    of the dynamic PCM framework.

    - A library factoring out the common code shared by dmaengine based
    DMA drivers contributed by Lars-Peter Clausen. This will save a
    lot of code and make it much easier to deploy enhancements to
    dmaengine.

    - Support for binary controls, used for providing runtime
    configuration of algorithm coefficients.

    - A new DAPM widget type for regulator supplies allowing drivers for
    devices that can power down unused supplies while active to do
    without any per-driver code.

    - DAPM widgets for DAIs, initially giving a speed boost for playback
    startup and shutdown and also the basis for CODECCODEC DAI link
    support.

    - Support for specifying the number of significant bits on audio
    interfaces, useful for allowing applications to know how much
    effort to put into generating data for a larger sample format.

    - Conversion of the FSI driver used on some SH processors to
    DMAEngine.

    - Conversion of EP93xx drivers to DMAEngine.

    - New CODEC drivers for Maxim MAX9768 and Wolfson Microelectronics
    WM2200.

    - Move audmux driver from arc/arm to sound/soc

    - McBSP move from arch/ to sound/ and updates

    Also, a few small updates and fixes for other drivers like au88x0,
    ymfpci, USB 6fire, USB usx2yaudio are included."

    * tag 'sound-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (446 commits)
    ASoC: wm8994: Provide VMID mode control and fix default sequence
    ASoC: wm8994: Add missing break in resume
    ASoC: wm_hubs: Don't actively manage LINEOUT_VMID_BUF
    ASoC: pxa-ssp: atomically set stream active masks
    ASoC: fsl: p1022ds: tell the WM8776 codec driver that it's the master
    ASoC: Samsung: Added to support mono recording
    ALSA: hda - Fix build with CONFIG_PM=n
    ALSA: au88x0 - Avoid possible Oops at unbinding
    ALSA: usb-audio - Fix build error by consitification of rate list
    ASoC: core: Fix obscure leak of runtime array
    ALSA: pcm - Avoid GFP_ATOMIC in snd_pcm_link()
    ALSA: pcm: Constify the list in snd_pcm_hw_constraint_list
    ASoC: wm8996: Add 44.1kHz support
    ALSA: hda - Fix build of patch_sigmatel.c without CONFIG_SND_HDA_POWER_SAVE
    ASoC: mx27vis-aic32x4: Convert it to platform driver
    ALSA: hda - fix printing of high HDMI sample rates
    ALSA: ymfpci - Fix legacy registers on S3/S4 resume
    ALSA: control - Fixe a trailing white space error
    ALSA: hda - Add expose_enum_ctl flag to snd_hda_add_vmaster_hook()
    ALSA: hda - Add "Mute-LED Mode" enum control
    ...

    Linus Torvalds
     
  • Pull MCE changes from Ingo Molnar.

    * 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/mce: Fix return value of mce_chrdev_read() when erst is disabled
    x86/mce: Convert static array of pointers to per-cpu variables
    x86/mce: Replace hard coded hex constants with symbolic defines
    x86/mce: Recognise machine check bank signature for data path error
    x86/mce: Handle "action required" errors
    x86/mce: Add mechanism to safely save information in MCE handler
    x86/mce: Create helper function to save addr/misc when needed
    HWPOISON: Add code to handle "action required" errors.
    HWPOISON: Clean up memory_failure() vs. __memory_failure()

    Linus Torvalds
     

22 Mar, 2012

3 commits

  • Pull powerpc merge from Benjamin Herrenschmidt:
    "Here's the powerpc batch for this merge window. It is going to be a
    bit more nasty than usual as in touching things outside of
    arch/powerpc mostly due to the big iSeriesectomy :-) We finally got
    rid of the bugger (legacy iSeries support) which was a PITA to
    maintain and that nobody really used anymore.

    Here are some of the highlights:

    - Legacy iSeries is gone. Thanks Stephen ! There's still some bits
    and pieces remaining if you do a grep -ir series arch/powerpc but
    they are harmless and will be removed in the next few weeks
    hopefully.

    - The 'fadump' functionality (Firmware Assisted Dump) replaces the
    previous (equivalent) "pHyp assisted dump"... it's a rewrite of a
    mechanism to get the hypervisor to do crash dumps on pSeries, the
    new implementation hopefully being much more reliable. Thanks
    Mahesh Salgaonkar.

    - The "EEH" code (pSeries PCI error handling & recovery) got a big
    spring cleaning, motivated by the need to be able to implement a
    new backend for it on top of some new different type of firwmare.

    The work isn't complete yet, but a good chunk of the cleanups is
    there. Note that this adds a field to struct device_node which is
    not very nice and which Grant objects to. I will have a patch soon
    that moves that to a powerpc private data structure (hopefully
    before rc1) and we'll improve things further later on (hopefully
    getting rid of the need for that pointer completely). Thanks Gavin
    Shan.

    - I dug into our exception & interrupt handling code to improve the
    way we do lazy interrupt handling (and make it work properly with
    "edge" triggered interrupt sources), and while at it found & fixed
    a wagon of issues in those areas, including adding support for page
    fault retry & fatal signals on page faults.

    - Your usual random batch of small fixes & updates, including a bunch
    of new embedded boards, both Freescale and APM based ones, etc..."

    I fixed up some conflicts with the generalized irq-domain changes from
    Grant Likely, hopefully correctly.

    * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (141 commits)
    powerpc/ps3: Do not adjust the wrapper load address
    powerpc: Remove the rest of the legacy iSeries include files
    powerpc: Remove the remaining CONFIG_PPC_ISERIES pieces
    init: Remove CONFIG_PPC_ISERIES
    powerpc: Remove FW_FEATURE ISERIES from arch code
    tty/hvc_vio: FW_FEATURE_ISERIES is no longer selectable
    powerpc/spufs: Fix double unlocks
    powerpc/5200: convert mpc5200 to use of_platform_populate()
    powerpc/mpc5200: add options to mpc5200_defconfig
    powerpc/mpc52xx: add a4m072 board support
    powerpc/mpc5200: update mpc5200_defconfig to fit for charon board
    Documentation/powerpc/mpc52xx.txt: Checkpatch cleanup
    powerpc/44x: Add additional device support for APM821xx SoC and Bluestone board
    powerpc/44x: Add support PCI-E for APM821xx SoC and Bluestone board
    MAINTAINERS: Update PowerPC 4xx tree
    powerpc/44x: The bug fixed support for APM821xx SoC and Bluestone board
    powerpc: document the FSL MPIC message register binding
    powerpc: add support for MPIC message register API
    powerpc/fsl: Added aliased MSIIR register address to MSI node in dts
    powerpc/85xx: mpc8548cds - add 36-bit dts
    ...

    Linus Torvalds
     
  • Pull core device tree changes for Linux v3.4 from Grant Likely:
    "This branch contains a minor documentation addition, a utility
    function for parsing string properties needed by some of the new ARM
    platforms, disables dynamic DT code that isn't used anywhere but on a
    few PPC machines, and exports DT node compatible data to userspace via
    UEVENT properties. Nothing earth shattering here."

    * tag 'dt-for-linus' of git://git.secretlab.ca/git/linux-2.6:
    of: Only compile OF_DYNAMIC on PowerPC pseries and iseries
    arm/dts: OMAP3: Add omap3evm and am335xevm support
    drivercore: Output common devicetree information in uevent
    of: Add of_property_match_string() to find index into a string list

    Linus Torvalds
     
  • Pull power management updates for 3.4 from Rafael Wysocki:
    "Assorted extensions and fixes including:

    * Introduction of early/late suspend/hibernation device callbacks.
    * Generic PM domains extensions and fixes.
    * devfreq updates from Axel Lin and MyungJoo Ham.
    * Device PM QoS updates.
    * Fixes of concurrency problems with wakeup sources.
    * System suspend and hibernation fixes."

    * tag 'pm-for-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (43 commits)
    PM / Domains: Check domain status during hibernation restore of devices
    PM / devfreq: add relation of recommended frequency.
    PM / shmobile: Make MTU2 driver use pm_genpd_dev_always_on()
    PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()
    PM / shmobile: Make TMU driver use pm_genpd_dev_always_on()
    PM / Domains: Introduce "always on" device flag
    PM / Domains: Fix hibernation restore of devices, v2
    PM / Domains: Fix handling of wakeup devices during system resume
    sh_mmcif / PM: Use PM QoS latency constraint
    tmio_mmc / PM: Use PM QoS latency constraint
    PM / QoS: Make it possible to expose PM QoS latency constraints
    PM / Sleep: JBD and JBD2 missing set_freezable()
    PM / Domains: Fix include for PM_GENERIC_DOMAINS=n case
    PM / Freezer: Remove references to TIF_FREEZE in comments
    PM / Sleep: Add more wakeup source initialization routines
    PM / Hibernate: Enable usermodehelpers in hibernate() error path
    PM / Sleep: Make __pm_stay_awake() delete wakeup source timers
    PM / Sleep: Fix race conditions related to wakeup source timer function
    PM / Sleep: Fix possible infinite loop during wakeup source destruction
    PM / Hibernate: print physical addresses consistently with other parts of kernel
    ...

    Linus Torvalds
     

19 Mar, 2012

6 commits


17 Mar, 2012

5 commits

  • * pm-domains:
    PM / shmobile: Make MTU2 driver use pm_genpd_dev_always_on()
    PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()
    PM / shmobile: Make TMU driver use pm_genpd_dev_always_on()
    PM / Domains: Introduce "always on" device flag
    PM / Domains: Fix hibernation restore of devices, v2
    PM / Domains: Fix handling of wakeup devices during system resume

    Rafael J. Wysocki
     
  • * pm-qos:
    sh_mmcif / PM: Use PM QoS latency constraint
    tmio_mmc / PM: Use PM QoS latency constraint
    PM / QoS: Make it possible to expose PM QoS latency constraints

    Rafael J. Wysocki
     
  • The TMU device on the Mackerel board belongs to the A4R power domain
    and loses power when the domain is turned off. Unfortunately, the
    TMU driver is not prepared to cope with such situations and crashes
    the system when that happens. To work around this problem introduce
    a new helper function, pm_genpd_dev_always_on(), allowing a device
    driver to mark its device as "always on" in case it belongs to a PM
    domain, which will make the generic PM domains core code avoid
    powering off the domain containing the device, both at run time and
    during system suspend.

    Signed-off-by: Rafael J. Wysocki
    Tested-by: Simon Horman
    Acked-by: Paul Mundt
    Cc: stable@vger.kernel.org

    Rafael J. Wysocki
     
  • During resume from hibernation pm_genpd_restore_noirq() should only
    power off domains whose suspend_power_off flags are set once and
    not every time it is called for a device in the given domain.
    Moreover, it shouldn't decrement genpd->suspended_count, because
    that field is not touched during device freezing and therefore it is
    always equal to 0 when pm_genpd_restore_noirq() runs for the first
    device in the given domain.

    This means pm_genpd_restore_noirq() may use genpd->suspended_count
    to determine whether or not it it has been called for the domain in
    question already in this cycle (it only needs to increment that
    field every time it runs for this purpose) and whether or not it
    should check if the domain needs to be powered off. For that to
    work, though, pm_genpd_prepare() has to clear genpd->suspended_count
    when it runs for the first device in the given domain (in which case
    that flag need not be cleared during domain initialization).

    Signed-off-by: Rafael J. Wysocki
    Cc: stable@vger.kernel.org

    Rafael J. Wysocki
     
  • During system suspend pm_genpd_suspend_noirq() checks if the given
    device is in a wakeup path (i.e. it appears to be needed for one or
    more wakeup devices to work or is a wakeup device itself) and if it
    needs to be "active" for wakeup to work. If that is the case, the
    function returns 0 without incrementing the device domain's counter
    of suspended devices and without executing genpd_stop_dev() for the
    device. In consequence, the device is not stopped (e.g. its clock
    isn't disabled) and power is always supplied to its domain in the
    resulting system sleep state.

    However, pm_genpd_resume_noirq() doesn't repeat that check and it
    runs genpd_start_dev() and decrements the domain's counter of
    suspended devices even for the wakeup device that weren't stopped by
    pm_genpd_suspend_noirq(). As a result, the start callback may be run
    unnecessarily for them and their domains' counters of suspended
    devices may become negative. Both outcomes aren't desirable, so fix
    pm_genpd_resume_noirq() to look for wakeup devices that might not be
    stopped by during system suspend.

    Signed-off-by: Rafael J. Wysocki
    Tested-by: Simon Horman
    Cc: stable@vger.kernel.org

    Rafael J. Wysocki
     

14 Mar, 2012

7 commits


12 Mar, 2012

1 commit

  • For files that are actively using linux/device.h, make sure
    that they call it out. This will allow us to clean up some
    of the implicit uses of linux/device.h within include/*
    without introducing build regressions.

    Yes, this was created by "cheating" -- i.e. the headers were
    cleaned up, and then the fallout was found and fixed, and then
    the two commits were reordered. This ensures we don't introduce
    build regressions into the git history.

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

11 Mar, 2012

1 commit

  • [Fix for breakage which will be introduced during the merge window via
    header reworks in another tree, the regmap tree does include device.h
    but Paul's tree breaks that. Reworded subject to reflect -- broonie]

    regmap.s uses devres_alloc() and others that are prototyped in device.h.
    Include that to solve the following:

    drivers/base/regmap/regmap.c: In function 'devm_regmap_init':
    drivers/base/regmap/regmap.c:331:2: error: implicit declaration of function 'devres_alloc' [-Werror=implicit-function-declaration]
    drivers/base/regmap/regmap.c:338:3: error: implicit declaration of function 'devres_add' [-Werror=implicit-function-declaration]
    drivers/base/regmap/regmap.c:340:3: error: implicit declaration of function 'devres_free' [-Werror=implicit-function-declaration]
    drivers/base/regmap/regmap.c: In function '_regmap_raw_write':
    drivers/base/regmap/regmap.c:421:5: error: implicit declaration of function 'dev_err' [-Werror=implicit-function-declaration]

    Signed-off-by: Stephen Warren
    Signed-off-by: Mark Brown

    Stephen Warren
     

10 Mar, 2012

1 commit


09 Mar, 2012

4 commits

  • The PowerPC legacy iSeries plateform is being removed along with the
    "one looney iseries driver", so this code can now be removed as well.

    cc: Greg Kroah-Hartman
    Signed-off-by: Stephen Rothwell
    Signed-off-by: Benjamin Herrenschmidt

    Stephen Rothwell
     
  • Came in in the deferred probe patch, quick, clean them up before a
    kernel janitor finds them and sends me 4 individual patches to fix them
    up...

    Cc: Grant Likely
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • Nothing outside of the driver core needs to get to the deferred probe
    pointer, so move it inside the private area of 'struct device' so no one
    tries to mess around with it.

    Cc: Grant Likely
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • Allow drivers to report at probe time that they cannot get all the resources
    required by the device, and should be retried at a later time.

    This should completely solve the problem of getting devices
    initialized in the right order. Right now this is mostly handled by
    mucking about with initcall ordering which is a complete hack, and
    doesn't even remotely handle the case where device drivers are in
    modules. This approach completely sidesteps the issues by allowing
    driver registration to occur in any order, and any driver can request
    to be retried after a few more other drivers get probed.

    v4: - Integrate Manjunath's addition of a separate workqueue
    - Change -EAGAIN to -EPROBE_DEFER for drivers to trigger deferral
    - Update comment blocks to reflect how the code really works
    v3: - Hold off workqueue scheduling until late_initcall so that the bulk
    of driver probes are complete before we start retrying deferred devices.
    - Tested with simple use cases. Still needs more testing though.
    Using it to get rid of the gpio early_initcall madness, or to replace
    the ASoC internal probe deferral code would be ideal.
    v2: - added locking so it should no longer be utterly broken in that regard
    - remove device from deferred list at device_del time.
    - Still completely untested with any real use case, but has been
    boot tested.

    Signed-off-by: Grant Likely
    Cc: Mark Brown
    Cc: Arnd Bergmann
    Cc: Dilan Lee
    Cc: Manjunath GKondaiah
    Cc: Alan Stern
    Cc: Tony Lindgren
    Cc: Alan Cox
    Reviewed-by: Mark Brown
    Acked-by: David Daney
    Reviewed-by: Arnd Bergmann
    Signed-off-by: Greg Kroah-Hartman

    Grant Likely
     

06 Mar, 2012

2 commits