cascardo/linux.git
11 years agoUPSTREAM: mwifiex: update cfg80211 with correct reason code when connection is lost
Bing Zhao [Sat, 6 Oct 2012 03:18:46 +0000 (20:18 -0700)]
UPSTREAM: mwifiex: update cfg80211 with correct reason code when connection is lost

Driver gets LINK_LOST, DEAUTHENTICATED and DISASSOCIATED events
from firmware when connection is lost in different scenarios.
Currently we are using common code WLAN_REASON_DEAUTH_LEAVING
for these cases.

This patch adds support to parse an actual reason code from
firmware event body and send it to cfg80211.
WLAN_REASON_DEAUTH_LEAVING code is used if deauth is initiated
by our device.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
BUG=chrome-os-partner:14966
TEST=check driver/wpa_supplicant logs and confirm that application
is informed with correct reason codes in various scenarios.

Change-Id: I18d2dd312576f19d59d7b916e93ca03daf584130
Reviewed-on: https://gerrit.chromium.org/gerrit/34848
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Ready: Bing Zhao <bzhao@marvell.com>
Tested-by: Bing Zhao <bzhao@marvell.com>
11 years agoUPSTREAM: mwifiex: update cfg80211 with correct reason code when association fails
Bing Zhao [Sat, 6 Oct 2012 01:50:33 +0000 (18:50 -0700)]
UPSTREAM: mwifiex: update cfg80211 with correct reason code when association fails

This patch adds support to send correct reason code got from
firmware when association attempt fails. Also, the error message
displayed for association failure due to network incompatibility
is modified. Current message "cannot find ssid.." misleads user.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
BUG=chrome-os-partner:14966
TEST=check driver/wpa_supplicant logs and confirm that application
is informed with correct reason codes in various scenarios.

Change-Id: If89a1e85af82d8054fc65a8d6b95a3961ccd987b
Reviewed-on: https://gerrit.chromium.org/gerrit/34847
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Ready: Bing Zhao <bzhao@marvell.com>
Tested-by: Bing Zhao <bzhao@marvell.com>
11 years agoCHROMIUM: ALSA: ASoC: exynos hdmi - always set switch state.
Dylan Reid [Wed, 3 Oct 2012 16:44:42 +0000 (09:44 -0700)]
CHROMIUM: ALSA: ASoC: exynos hdmi - always set switch state.

Don't drop the enable/disable switch toggle if it is called when HDMI is
not connected.  If it is dropped, user space has to call it with timing
constraints that it can't know.  Let the switch toggle if hotplug isn't
set, audio will be configured when hotplug is detected.

BUG=chrome-os-partner:14435
TEST=toggle HDMI switch and check that it is set.

Change-Id: I6c553cf4ada19616783ceffe111459b046d01b6f
Signed-off-by: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34579
Reviewed-by: Rahul Sharma <rahul.sharma@samsung.com>
Tested-by: Rahul Sharma <rahul.sharma@samsung.com>
11 years agoexynos5: snow: Use recommended values for pixel clock and LCD timings
Naveen Krishna Chatradhi [Wed, 3 Oct 2012 13:05:21 +0000 (18:35 +0530)]
exynos5: snow: Use recommended values for pixel clock and LCD timings

Changed the pixel clock frequency and LCD timings according to
the datasheet. This patch seems to have fixed the flickering issue.
EMI is expected to be fine with this patch.

BUG=chrome-os-partner:12498
TEST=No flickering observed for almost 12 hours.

Change-Id: I228a88f38a7b79aa33fa34dc4be98b7aa822d713
Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34343
Reviewed-by: Sean Paul <seanpaul@chromium.org>
11 years agomodpost: Permit .GCC.command.line sections
Jonathan Kliegman [Thu, 4 Oct 2012 20:23:29 +0000 (16:23 -0400)]
modpost: Permit .GCC.command.line sections

Allow .GCC.command.line sections in modules to prevent modpost warnings:
WARNING: sound/usb/snd-usbmidi-lib.o (.GCC.command.line): unexpected non-allocatable section.
Did you forget to use "ax"/"aw" in a .S file?
Note that for example <linux/init.h> contains
section definitions for use in .S files.

BUG=None
TEST=Warnings disappear with this change.
  Deployed kernel to system and no obvious regressions.
Signed-off-by: Jonathan Kliegman <kliegs@chromium.org>
Change-Id: Iefe98bb2b71cee8fb72dc9e6ce25c7be240f6609
Reviewed-on: https://gerrit.chromium.org/gerrit/34667
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Olof Johansson <olofj@chromium.org>
Commit-Ready: Jon Kliegman <kliegs@chromium.org>
Tested-by: Jon Kliegman <kliegs@chromium.org>
11 years agomwifiex: reset scan_processing flag in failure cases
Bing Zhao [Fri, 5 Oct 2012 01:00:22 +0000 (18:00 -0700)]
mwifiex: reset scan_processing flag in failure cases

scan_processing flag should be reset when scan request is failed
due to some reasons Ex. memory allocation failure etc. Otherwise
further scan requests will be blocked.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
BUG=chrome-os-partner:14486
TEST=AP doing WPA and group rekeying every 600s;
DUT connects and is doing a ping with 2 second interval;
On DUT, run "while true; do iw mlan0 scan > /dev/null; done"

Change-Id: Ie0dcf5ac74cdec5c9ae3261180923a1405d5e2c7
Reviewed-on: https://gerrit.chromium.org/gerrit/34715
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Ready: Bing Zhao <bzhao@marvell.com>
Tested-by: Bing Zhao <bzhao@marvell.com>
11 years agomwifiex: return -EBUSY if scan request cannot be honored
Bing Zhao [Thu, 4 Oct 2012 02:31:28 +0000 (19:31 -0700)]
mwifiex: return -EBUSY if scan request cannot be honored

There are cases we cannot scan when a request is received.
For example, during WPA group key negotiation the scan request
will be blocked. We should return an error code to cfg80211
because cfg80211_scan_done will never be called.

Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: Paul Stewart <pstew@chromium.org>
BUG=chrome-os-partner:14486
TEST=Scan in a tight loop while switching between networks.

Change-Id: If76544345e9300693c41f6ba07bd508706279305
Reviewed-on: https://gerrit.chromium.org/gerrit/34629
Reviewed-by: Bing Zhao <bzhao@marvell.com>
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Commit-Ready: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
11 years agodrm/exynos: fix trace events
Mandeep Singh Baines [Thu, 4 Oct 2012 02:27:20 +0000 (19:27 -0700)]
drm/exynos: fix trace events

The trace events were getting called from the wrong location.

We also need to add a fake_flip_complete event to support the
kds changes.

BUG=chromium-os:35009
TEST=Verified the events are reported correctly.

Change-Id: I6b1095b9d76a3be8c721c0232066ef60ee40b41e
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34594
Reviewed-by: Sam Leffler <sleffler@chromium.org>
11 years agoCHROMIUM: gpu: i915: optimize vblank timeout
Vincent Palatin [Thu, 4 Oct 2012 00:11:01 +0000 (17:11 -0700)]
CHROMIUM: gpu: i915: optimize vblank timeout

On the resume path, wait_for_vblank is called 4 times and waits until its
timeout. To reduce the delays on that path, let's compute the maximum vblank
delay instead of always using the arbitrary 50 ms value.

Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
BUG=chrome-os-partner:13364
TEST=On Link, measure resume time and see a 130ms improvement.

Change-Id: I88231de43573432b6d71255f622eb9860fe3c28d
Reviewed-on: https://gerrit.chromium.org/gerrit/34624
Reviewed-by: Sameer Nanda <snanda@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Commit-Ready: Vincent Palatin <vpalatin@chromium.org>
Tested-by: Vincent Palatin <vpalatin@chromium.org>
11 years agogpu: vithar: Change pm policy to always-on from demand
Abhilash Kesavan [Wed, 3 Oct 2012 06:38:41 +0000 (12:08 +0530)]
gpu: vithar: Change pm policy to always-on from demand

Switching to an always-on policy from the current on-demand
policy. This is because dynamic GPU power management should
be only done using the coarse-demand policy.

BUG=chrome-os-partner:14828
TEST=Multiple webgl apps tested.
Power Measurement variation from demand to always-on (in mW):
1) dut_idle.sh: 1.5 -> 13.5
2) No browser window (logged in): 1.9 -> 14.6
3) Browser window (Full screen): 6 -> 20
4) Aquarium: ~615 either way
5) Many Planets: ~715 either way

Change-Id: I8c209be1cd9b0f0cc9a2cf4ba78a7ba00316793c
Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/34509
Reviewed-by: Todd Broch <tbroch@chromium.org>
Commit-Ready: Todd Broch <tbroch@chromium.org>
Tested-by: Todd Broch <tbroch@chromium.org>
11 years agoASoC: Samsung: Remove pm get_sync and put_sync functionality
Padmavathi Venna [Fri, 14 Sep 2012 13:51:01 +0000 (19:21 +0530)]
ASoC: Samsung: Remove pm get_sync and put_sync functionality

Get sync and put sync is already added for cpu dai, codec dai
and platform devices in the soc-pcm file before startup and after
shutdown respectively. So this is not adding any purpose here.

BUG=chrome-os-partner:12579
TEST=Tested by playing audio using aplay command and QCTool.

Change-Id: I0f855ca17206c23625758930d8aa613bc7206af2
Signed-off-by: Padmavathi Venna <padma.v@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/33297
Reviewed-by: Dylan Reid <dgreid@chromium.org>
11 years agoarm: exynos: Disable GIC interrupts before suspend
Jonathan Kliegman [Wed, 3 Oct 2012 19:56:52 +0000 (15:56 -0400)]
arm: exynos: Disable GIC interrupts before suspend

Make sure GIC interrupts are disabled prior to suspend.

BUG=chrome-os-partner:12807
TEST=suspend_stress_test with no cpu_do_idle failures
  All other resume mechanisms still work (rtc0&1, keyboard,
  trackpad, lid, power)
Signed-off-by: Jonathan Kliegman <kliegs@chromium.org>
Change-Id: I0cf464b9c04bbd3ba9fe83d09c0a65a125221bf3
Reviewed-on: https://gerrit.chromium.org/gerrit/34541
Reviewed-by: Abhilash Kesavan <a.kesavan@samsung.com>
Tested-by: Jon Kliegman <kliegs@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Commit-Ready: Jon Kliegman <kliegs@chromium.org>

11 years agodrm/exynos: hdmi: Add additional PHY configs
Sean Paul [Tue, 4 Sep 2012 18:10:35 +0000 (11:10 -0700)]
drm/exynos: hdmi: Add additional PHY configs

Add HDMI PHY configurations to support pixel clock rates of 25.2MHz,
40MHz, 65MHz, 146.25MHz, 108MHz, 106.5MHz, 108MHz, 83MHz, 36MHz.

BUG=chrome-os-partner:12643
TEST=Tested with 640x480, 800x600, 1024x768

Change-Id: I5388856d93f3b133da085cd9ec9f3611ebc43133
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/32155

11 years agodrm/exynos: mixer: Support more than TV resolutions
Sean Paul [Wed, 5 Sep 2012 18:36:58 +0000 (11:36 -0700)]
drm/exynos: mixer: Support more than TV resolutions

Extend the mixer configuration to include all resolutions that can be
generated by the mixer. This adds 640x480 and 1680x1050, along with any
other non-standard modes that fit within the permissible ranges.

BUG=chrome-os-partner:12643
TEST=Tested on snow with the above resolutions

Change-Id: Ief7a0892640ef3c5bcf6cb82f58eb472d3c0a2cc
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/32245

11 years agodrm: Set the plane's crtc before calling disable_plane.
Stéphane Marchesin [Thu, 4 Oct 2012 02:10:24 +0000 (19:10 -0700)]
drm: Set the plane's crtc before calling disable_plane.

Some drivers like exynos need the crtc to be able to disable the plane,
so set it before calling disable_plane.

BUG=chrome-os-partner:13583
TEST=by hand

Change-Id: I163584aede53eda82b4eabc28fa9253fd4551970
Reviewed-on: https://gerrit.chromium.org/gerrit/34597
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Anush Elangovan <anush@google.com>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>

11 years agodrm/exynos: add more parallelism to page_flip
Mandeep Singh Baines [Mon, 10 Sep 2012 01:43:33 +0000 (18:43 -0700)]
drm/exynos: add more parallelism to page_flip

We add more parallelism by returning the vblank even early and
relying on kds to prevent the GPU from rendering to a buffer
that is still being scanned out.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume. Web GL. Youtube. HDMI. UI restart.
TEST=All testing done with slub_debug=FZPUA

Change-Id: Idfb42132186a10975ffbb2be9cb934530f3dacc6
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34560
Reviewed-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agodrm/exynos: use kds resource in destory_fb
Mandeep Singh Baines [Tue, 4 Sep 2012 19:21:07 +0000 (12:21 -0700)]
drm/exynos: use kds resource in destory_fb

Use a kds resource to prevent us from unmapping an fb while its
still being scanned out. This is especially important with the
concurrent page flip patches because we are flipping multiple
buffers concurrently.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume.

Change-Id: I73813706d235456453a10a89e130e04ba9c894b1
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34559
Reviewed-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agodrm/exynos: release kds resource from finish_page_flip
Mandeep Singh Baines [Tue, 4 Sep 2012 19:21:07 +0000 (12:21 -0700)]
drm/exynos: release kds resource from finish_page_flip

finish_page_flip is the correct location to release the kds resource.
This is a refactoring patch for future CLs.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume.

Change-Id: Ibc13a3ef12bde60821eab09eb4b1eda5279a8e10
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34558
Reviewed-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agodrm/exynos: Zero the dma_addr before decreasing the refcount
Stéphane Marchesin [Wed, 3 Oct 2012 19:22:50 +0000 (12:22 -0700)]
drm/exynos: Zero the dma_addr before decreasing the refcount

Otherwise if refcount goes to 0, the buffer is freed, and we do
a use-after-free when setting the dma_addr.

BUG=chrome-os-partner:14832
TEST=compiles

Change-Id: Ie75426b43b6d3519afdab38f19031cf494715ca9
Reviewed-on: https://gerrit.chromium.org/gerrit/34532
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
11 years agoRevert "drm/exynos: release kds resource from finish_page_flip"
Doug Anderson [Wed, 3 Oct 2012 17:10:49 +0000 (10:10 -0700)]
Revert "drm/exynos: release kds resource from finish_page_flip"

This reverts commit f4bd46c23bb7a328051b062aeb0ce327df4a948d.

BUG=chrome-os-partner:14832
TEST=With slub debugging and 3 reverts can 'restart ui' with
no slub failures.

Change-Id: I3ffd21d63efe6b2ea826f5b1b3a5f8f0e324031e
Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34520
Reviewed-by: Katie Roberts-Hoffman <katierh@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
11 years agoRevert "drm/exynos: use kds resource in destory_fb"
Doug Anderson [Wed, 3 Oct 2012 17:10:02 +0000 (10:10 -0700)]
Revert "drm/exynos: use kds resource in destory_fb"

BUG=chrome-os-partner:14832
TEST=With slub debugging and 3 reverts can 'restart ui' with
no slub failures.

This reverts commit 423930311564ed77225e0537624299427ec9d4b5.

Change-Id: I4985c963ae6482c5a20fdf2cf9cd47321c46f99a
Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34519
Reviewed-by: Katie Roberts-Hoffman <katierh@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
11 years agoRevert "drm/exynos: add more parallelism to page_flip"
Doug Anderson [Wed, 3 Oct 2012 17:08:23 +0000 (10:08 -0700)]
Revert "drm/exynos: add more parallelism to page_flip"

BUG=chrome-os-partner:14832
TEST=With slub debugging and 3 reverts can 'restart ui' with
no slub failures.

This reverts commit 4ae1bdaf32162d57f9584873f0be89e7ebf1485e.

Change-Id: I2e6a4e2b8db2df714fad36c7b91ad747ed32ae24
Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34518
Reviewed-by: Katie Roberts-Hoffman <katierh@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
11 years agoARM: SAMSUNG: adc: make waitq part of client structure
sunilm [Wed, 3 Oct 2012 18:03:23 +0000 (23:33 +0530)]
ARM: SAMSUNG: adc: make waitq part of client structure

Moved local waitq instance from s3c_adc_read function to s3c_adc_client
structure which is global. This makes the ADC operation more robust and
ensure there is no memory corruption.

Occasional cases (during stress test) found src_adc_read function
woke up and exited before completing last action (spinlock restore) in the
__wake_up function which is part of ADC IRQ handler. This caused memory
corruption and found subsequent function crashed due to this.

BUG=chromeos-partner:14648
TEST=Ran ADC stress test for several hours
 cd /sys/devices/platform/ncp15wb473.0/
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&

Change-Id: I52730669b2537cae32b8f4ef94750d8723c4cd6a
Signed-off-by: Sunil Mazhavanchery <sunilm@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/34504
Commit-Ready: Doug Anderson <dianders@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
11 years agoCHROMIUM: exynos: Resume exynos4 timer (FRC) earlier
Michael Spang [Mon, 1 Oct 2012 15:55:39 +0000 (11:55 -0400)]
CHROMIUM: exynos: Resume exynos4 timer (FRC) earlier

The kernel sched_clock uses FRC as its time source, so we should
ensure FRC resumes before sched_clock. We can do this by registering
the resume function via syscore_ops.

On Exynos 5250 the FRC starts ticking immediately on resume. We reset
it a second time in exynos4_frc_resume(), which makes sched_clock jump
forward by almost one period.

BUG=chrome-os-partner:14527,chrome-os-partner:13515
TEST=suspend the system, check dmesg for a 100+ second time jump

Change-Id: Ia78353b5841cdd5fb82c918d508021c5684f0d5c
Signed-off-by: Michael Spang <spang@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34149
Reviewed-by: Jon Kliegman <kliegs@chromium.org>
Reviewed-by: Olof Johansson <olofj@chromium.org>
Reviewed-by: Abhilash Kesavan <a.kesavan@samsung.com>
11 years agoCHROMIUM: ALSA: hda/ca0132 - latency patch from Creative.
Hsinyu Chao [Tue, 2 Oct 2012 08:33:55 +0000 (16:33 +0800)]
CHROMIUM: ALSA: hda/ca0132 - latency patch from Creative.

This patch includes three changes:
1. Handle latency in speaker mode.
2. Playback effects to What U Hear recording.
3. Correct VoiceFC control name and Munchkin effect.

BUG=chrome-os-partner:12926
TEST=Manual

Change-Id: I32eb5a21e5a585ddac46b8c4270c17cbf9ae6295
Signed-off-by: Hsinyu Chao <hychao@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34408
Reviewed-by: Dylan Reid <dgreid@chromium.org>
11 years agoCHROMIUM: ALSA: ASoC: Daisy - add HDMI jack.
Dylan Reid [Tue, 2 Oct 2012 20:51:53 +0000 (13:51 -0700)]
CHROMIUM: ALSA: ASoC: Daisy - add HDMI jack.

Add a jack to report HDMI connected status.  This extends the plugin
interface, allowing the machine driver to be notified of hotplug events.
This Jack allows Speakers to be muted when HDMI audio is played.

BUG=chrome-os-partner:14435
TEST=use evtest and watch HDMI jack change.

Change-Id: If06f6fb98652ab1539fccd0da31444ea4dd8986c
Signed-off-by: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34445

11 years agoCHROMIUM: drm: exynos - use msleep, not mdelay when waiting
Daniel Kurtz [Tue, 2 Oct 2012 13:47:51 +0000 (21:47 +0800)]
CHROMIUM: drm: exynos - use msleep, not mdelay when waiting

mdelay() is a busy loop, which keeps the current thread active.
msleep() allows the scheduler to wake up other threads.

Using mdelay(100) to delay while waiting for the video stream to turn on
- in the hotplug work task - means that no other tasks can get scheduled
for a long time.  This can have lots of bad side-effects.
For example, the threaded interrupt handlers used reading data from
i2c-connected input devices do not get a chance to run, so many input
events can get lost or delayed.  In particular, if a key down event
indirectly causes a hotplug event (i.e., pressing brightness up key when
at minimum brightness setting), the corresponding "key up" event is
delayed for an entire second until the video is fully up.  During this
time, many key autorepeat events will get generated (either in the
kernel, or in X, or both).

Note: there are still other uses of udelay / mdelay in the exynos drm
driver.  They should all be scrubbed and converted to usleep_range(),
unless a blocking delay is absolutely required.

Signed-off-by: Daniel Kurtz <djkurtz@chromium.org>
BUG=chrome-os-partner:14746
TEST=Set brightness down to minimum (screen off).
     Click the brightness up button just one time.
     Screen should turn back on - but at the lowest visible brightness.

Change-Id: I94584d2d48a1215c39fe7397db17becfc53f6406
Reviewed-on: https://gerrit.chromium.org/gerrit/34418
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Commit-Ready: Daniel Kurtz <djkurtz@chromium.org>
Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
Tested-by: Daniel Kurtz <djkurtz@chromium.org>
11 years agoCHROMIUM: ALSA: hda/ca0132: Turning on headphone amp 250ms after it is detected.
Chih-Chung Chang [Fri, 28 Sep 2012 10:02:00 +0000 (18:02 +0800)]
CHROMIUM: ALSA: hda/ca0132: Turning on headphone amp 250ms after it is detected.

Turing on headphone amp interferes with the detection of mic sense, so we want
to do it later.

Also restore the BIOS default configuration setting because it will be reset
after ct extension is enabled.

BUG=chrome-os-partner:14154
TEST=use alsamixer -c 0 to verify the setting are changed when headphone is
plugged/unplugged.

Signed-off-by: Chih-Chung Chang <chihchung@chromium.org>
Change-Id: I71e714abf6c71c4a23642cf18e1e68b353e42593
Reviewed-on: https://gerrit.chromium.org/gerrit/34276
Reviewed-by: Dylan Reid <dgreid@chromium.org>
11 years agoCHROMIUM: ALSA: hda/ca0132: Set the default configuration for the mic pin.
Chih-Chung Chang [Tue, 2 Oct 2012 07:25:55 +0000 (15:25 +0800)]
CHROMIUM: ALSA: hda/ca0132: Set the default configuration for the mic pin.

Because the value set in BIOS will be reset after ct extension is enabled.

BUG=chrome-os-partner:14154
TEST=use "hda-verb /dev/snd/hwC0D0 0x12 GET_CONFIG_DEFAULT 0" the check the value.

Signed-off-by: Chih-Chung Chang <chihchung@chromium.org>
Change-Id: Icebaa3b0acb5458be303781dc1db3c5a43d93996
Reviewed-on: https://gerrit.chromium.org/gerrit/34404
Reviewed-by: Dylan Reid <dgreid@chromium.org>
Commit-Ready: Chih-Chung Chang <chihchung@chromium.org>
Tested-by: Chih-Chung Chang <chihchung@chromium.org>
11 years agoUPSTREAM: serial: samsung: Add poll_get_char & poll_put_char
Julien Pichon [Sat, 22 Sep 2012 06:22:31 +0000 (23:22 -0700)]
UPSTREAM: serial: samsung: Add poll_get_char & poll_put_char

The following patch allows users to use KGDB over serial console on
board based on Samsung SOC. It has been tested on a board using
exynos5.

[dianders: changed poll to return NO_POLL_CHAR, which appears to
fix 'help' in kgdb; also updated commit message]

BUG=chrome-os-partner:13776
TEST=With If25b9f775dd6cd152da46f45b02d30a05a28a058 I'm able to
drop into kgdb.

Change-Id: Iaa93ccc3dd57fc1977144b15be671f5fa9565131
Signed-off-by: Julien Pichon <pichon.jln@gmail.com>
Signed-off-by: Doug Anderson <dianders@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 93b5c032d95e032691e627526b364cd463834347)
Reviewed-on: https://gerrit.chromium.org/gerrit/32555
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
Reviewed-by: Sameer Nanda <snanda@chromium.org>
11 years agoCHROMIUM: fix stack memory contents leak in UNAME26
Kees Cook [Tue, 2 Oct 2012 22:39:29 +0000 (15:39 -0700)]
CHROMIUM: fix stack memory contents leak in UNAME26

The UNAME26 personality allows a leak of kernel stack contents. This
fixes it by initializing the stack buffer to zero and truncating the
copy_to_user correctly.

BUG=None
TEST=parrot build, verified proper wiping of stack contents under UNAME26

Change-Id: Iab2ff3b111596db897b33e45de9c5d0b5db9849c
[submitting upstream]
Reported-by: Brad Spengler <spender@grsecurity.net>
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34482
Reviewed-by: Olof Johansson <olofj@chromium.org>
11 years agoKDS: Don't declare wait queue on stack then pass pointers to it
Doug Anderson [Tue, 2 Oct 2012 21:16:50 +0000 (14:16 -0700)]
KDS: Don't declare wait queue on stack then pass pointers to it

The kds_waitall() function was declaring a wait queue on the stack and
then passing pointers around to it.  This is not a good idea unless
you're incredibly careful that nobody could possibly ever use the wait
queue after your function exits.

In the case of kds_waitall(), there could have been two problems:

1. When kds_waitall() returned it could return rset which has a
   pointer to this on-stack memory in rset->callback_parameter.
   It's unclear that anyone would use this, but it seems like a bad
   idea.
2. Since no locking / synchronization is done in the "!triggered"
   case, it's possible that we'll observe "rset->pending == 0" before
   the sync_cb() gets called.  That could mean the function exiting
   before the sync_cb() gets called and the sync_cb() reading/trashing
   random stack memory.  This is similar to a problem observed in the
   adc driver as described in:
     https://gerrit.chromium.org/gerrit/#/c/34223/

I have not done a full analysis to see if the above is happing or
causing any problems but it seems wise to move the wait queue off the
stack to preempt any possible problems.

Placed the wait queue in the kds_resource_set so that we can be sure
that it's scope is exactly the same as the pointer to it--it will get
freed at the exact same time.

BUG=chrome-os-partner:14665
TEST=Watch a youtube video with no problems.

Change-Id: Iaff3028f67a0c9a540e4b9bd989e6649840433e8
Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34455
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Pawel Osciak <posciak@google.com>
11 years agoUPSTREAM: ARM: SAMSUNG: fix race in s3c_adc_start for ADC
Todd Poynor [Fri, 13 Jul 2012 06:30:48 +0000 (15:30 +0900)]
UPSTREAM: ARM: SAMSUNG: fix race in s3c_adc_start for ADC

Checking for adc->ts_pend already claimed should be done with the
lock held.

BUG=chrome-os-partner:14648
TEST=Run the following for many hours and observe no kernel crashes:
 cd /sys/devices/platform/ncp15wb473.0/
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&

Change-Id: I1ec53390dec24d35fb551803b3ccf6f42bc3dc0e
Original-Change-Id: I8855eb305d48c899e43bdf1c8c5c3097d1c5f1a4
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Cc: Stable <stable@vger.kernel.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Alim Akhtar <alim.akhtar@samsung.com>
Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34222
Reviewed-by: Sonny Rao <sonnyrao@chromium.org>
Reviewed-by: Olof Johansson <olofj@chromium.org>
11 years agoHACK: tpm: Add tpm_ignore_suspend_errors debugfs file
Jonathan Kliegman [Tue, 2 Oct 2012 18:05:33 +0000 (14:05 -0400)]
HACK: tpm: Add tpm_ignore_suspend_errors debugfs file

To help with testing unrelated areas, add a runtime flag to ignore
tpm errors during suspend.  This may leave the TPM in an unusable state,
but will allow the rest of the system to suspend and resume properly.

BUG=chrome-os-partner:12767
TEST=Forced error in tpm, suspend failed.
  No error in tpm, suspended normally.
  echo Y > /sys/kernel/debug/tpm_ignore_suspend_errors
  Forced error in tpm, system suspended with warning of tpm error
  No error in tpm, suspended normally with no additional errors
Signed-off-by: Jonathan Kliegman <kliegs@chromium.org>
Change-Id: I1cc2ea69cede35146d9478940e90deece0d985db
Reviewed-on: https://gerrit.chromium.org/gerrit/34431
Tested-by: Jon Kliegman <kliegs@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Luigi Semenzato <semenzato@chromium.org>
Commit-Ready: Jon Kliegman <kliegs@chromium.org>

11 years agoARM: SAMSUNG: adc: Add locking around access of client
Doug Anderson [Thu, 27 Sep 2012 21:42:09 +0000 (14:42 -0700)]
ARM: SAMSUNG: adc: Add locking around access of client

The adc driver accesses the 'client' structure in src_adc_read() /
src_adc_start() and also in the IRQ.  Many of these accesses are not
protected by any sort of lock.  Because we often need the global
adc lock anyway, just re-use that for the client structure lock.

One particular crash on a two processor system that was observed was:

P1: s3c_adc_read()
P1: -> ...
P1: -> s3c_adc_start()

P0: s3c_adc_irq()
P0: -> ...
P0: -> s3c_convert_done()
P0:    -> client->result = v;
P0:    -> wake_up(client->wait);
P0:       -> ...
P0:       -> _raw_spin_unlock_irqrestore()
P0:          -> do_raw_spin_unlock()

P1: -> s3c_adc_read() finishes

P0:             -> lock->owner = SPINLOCK_OWNER_INIT;
P0:             -> lock->owner_cpu = -1;
P0:             -> smp_mb()
P0:             -> ASM storing 0 to the lock
P0:             -> dsb_sev()
P0:          -> local_irq_restore();

...as you can see in the above the IRQ will end up trashing random
stack memory since it's writing to a lock that was declared on the
stack for a function that has now exited.  By making sure that we have
a lock around s3c_convert_done() and using the same lock in the
condition for wait_event_timeout() we avoid the crash.

No other actual crashes were observed in existing code, though it was
determined that were relying on the memory barrier in writel() to make
sure that adc->cur was correct in SMP environments.  The locking in
this CL makes this more explicit.

BUG=chrome-os-partner:14648
TEST=Run the following for many hours and observe no kernel crashes:
 cd /sys/devices/platform/ncp15wb473.0/
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&
 while true; do cat temp1_input > /dev/null; done&

Change-Id: I1080be089a4c5bc0b41c7f030021b17409c43b72
Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34223
Reviewed-by: Olof Johansson <olofj@chromium.org>
Reviewed-by: Sonny Rao <sonnyrao@chromium.org>
11 years agodrm/i915: Add a timeout to a potentially infinite loop
Stéphane Marchesin [Sat, 15 Sep 2012 00:38:12 +0000 (17:38 -0700)]
drm/i915: Add a timeout to a potentially infinite loop

BUG=chromium:148595
TEST=by hand, connect a mac DP to VGA adapter, machine doesn't reboot.

Change-Id: I29d518a7e2d906291d75da58a0d4a7c6296658cc
Reviewed-on: https://gerrit.chromium.org/gerrit/33489
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Stuart Abercrombie <sabercrombie@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>

11 years agoexynos: Don't depend on DP to set the HDMI clock
Stéphane Marchesin [Tue, 2 Oct 2012 18:11:48 +0000 (11:11 -0700)]
exynos: Don't depend on DP to set the HDMI clock

The CONFIG_EXYNOS_DP variable was removed, so this broke. However,
there is no reason we ever depended on DP to pick the HDMI clock,
so get rid of this completely.

TEST=by hand
BUG=chrome-os-partner:14729

Change-Id: Ic6f0267827aea4dc78d005d7bd29b8fe444873ba
Reviewed-on: https://gerrit.chromium.org/gerrit/34432
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: John Sheu <sheu@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>

11 years agoCHROMIUM: mfd: chromeos_ec: Fix __devexit annotation on cros_ec_free
Jonathan Kliegman [Tue, 2 Oct 2012 18:44:54 +0000 (14:44 -0400)]
CHROMIUM: mfd: chromeos_ec: Fix __devexit annotation on cros_ec_free

cros_ec_free can be called from cros_ec_probe_i2c so should not have the
__devexit annotation.  This fixed the section mismatch warning.

BUG=None
TEST=Built kernel, verified no section mismatch warning.
  Booted kernel, no obvious regressions
Signed-off-by: Jonathan Kliegman <kliegs@chromium.org>
Change-Id: Ie9b13c73dbe881c368ae5daec8caf32b316294ce
Reviewed-on: https://gerrit.chromium.org/gerrit/34435
Tested-by: Jon Kliegman <kliegs@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Commit-Ready: Jon Kliegman <kliegs@chromium.org>

11 years agoidrivers: mfd: tps65090: Fix err_irq_exit warning
Jonathan Kliegman [Tue, 2 Oct 2012 18:13:35 +0000 (14:13 -0400)]
idrivers: mfd: tps65090: Fix err_irq_exit warning

Fix warning for unused label that was removed previously.

BUG=None
TEST=Built kernel, now warnings.  Deployed and did sanity check.
  Plugged/unplugged power cable, saw battery status update
Signed-off-by: Jonathan Kliegman <kliegs@chromium.org>
Change-Id: Ic67b8f83c15d0fc8bdd718037cff3e48f1e3b209
Reviewed-on: https://gerrit.chromium.org/gerrit/34433
Tested-by: Jon Kliegman <kliegs@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Commit-Ready: Jon Kliegman <kliegs@chromium.org>

11 years agogpu: vithar: tweak GPU clock governor
Sam Leffler [Thu, 20 Sep 2012 20:18:01 +0000 (13:18 -0700)]
gpu: vithar: tweak GPU clock governor

Change the parameters that drive the governor now that we have better
GPU utilization.

Signed-off-by: Sam Leffler <sleffler@chromium.org>
BUG=chrome-os-partner:13355
TEST=run usual test cases and check fps while monitoring dvfs clock and gpu utilization

Change-Id: I41716fb9f3a8a39e3b2d0a3a512c1c31cf0992ea
Reviewed-on: https://gerrit.chromium.org/gerrit/33711
Reviewed-by: Bryan Freed <bfreed@chromium.org>
Reviewed-by: Todd Broch <tbroch@chromium.org>
Commit-Ready: Sam Leffler <sleffler@chromium.org>
Tested-by: Sam Leffler <sleffler@chromium.org>
11 years agoasoc/exynos: add support to enable hdmi audio after hotplug
Rahul Sharma [Mon, 17 Sep 2012 15:30:20 +0000 (21:00 +0530)]
asoc/exynos: add support to enable hdmi audio after hotplug

This patch adds support for enabling hdmi audio during hotplug
scenarios. exanple: during audio playback, if hdmi cable is
connected, audio should be rendered to tv based on dapm switch
conf.

BUG=chrome-os-partner:12908
TEST:verified hpd plug-unplug scenarions with audio playback and
dapm switch control toggling.

Change-Id: Id7b5c0fd249e98ca1e506aceecf41f2db9a52a04
Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/33424
Reviewed-by: Dylan Reid <dgreid@chromium.org>
Commit-Ready: Dylan Reid <dgreid@chromium.org>
Tested-by: Dylan Reid <dgreid@chromium.org>
11 years agodrm/exynos5: add irq resource to hdmi-audio device for hpd handling
Rahul Sharma [Mon, 17 Sep 2012 15:24:28 +0000 (20:54 +0530)]
drm/exynos5: add irq resource to hdmi-audio device for hpd handling

Hdmi-audio device in alsa-soc needs hpd notifications for enabling and
disabling the audio. If hdmi-audio dapm switch is on and hdmi cable is
plugged-in, audio rendered on the speakers should also be routed to hdmi
audio sink. This patch adds irq resource information to the hdmi-audio
device so that it can requeste the hpd irq in shared mode.

BUG=chrome-os-partner:12908
TEST:verified hpd plug-unplug scenarions with audio playback and
dapm switch control toggling.

Change-Id: I3457e9c00d949205eca624395834ac92b4eb4bee
Signed-off-by: Rahul Sharma <rahul.sharma@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/33423
Reviewed-by: Dylan Reid <dgreid@chromium.org>
Commit-Ready: Dylan Reid <dgreid@chromium.org>
Tested-by: Dylan Reid <dgreid@chromium.org>
11 years agoCHROMIUM: config: set default hostname
Mike Frysinger [Mon, 1 Oct 2012 19:57:46 +0000 (15:57 -0400)]
CHROMIUM: config: set default hostname

Rather than wasting time in userspace running `hostname localhost`,
just boot the kernel with the default.

BUG=None
TEST=build_packages+build_image for x86-alex w/hostname removed from init worked

Change-Id: Id4e559f7c08d632e7d0b02233c45bab0d7d22973
Signed-off-by: Mike Frysinger <vapier@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34371
Reviewed-by: Olof Johansson <olofj@chromium.org>
11 years agoCHROMIUM exynos/gsc: propgate timestamps src->dst
John Sheu [Tue, 25 Sep 2012 08:18:06 +0000 (01:18 -0700)]
CHROMIUM exynos/gsc: propgate timestamps src->dst

Make gsc-m2m propgate the timestamp field from source to destination
buffers.

TEST=local build, run on lucas
BUG=None

Change-Id: Id3b2a8fc20e91abfa1b5a0ce2a4533d23c472f75
Signed-off-by: John Sheu <sheu@google.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/33983
Reviewed-by: Pawel Osciak <posciak@google.com>
Commit-Ready: John Sheu <sheu@chromium.org>
Tested-by: John Sheu <sheu@chromium.org>
11 years agomedia: s5p-mfc: Handle spin unlock without lock case
Arun Kumar K [Mon, 1 Oct 2012 19:19:47 +0000 (00:49 +0530)]
media: s5p-mfc: Handle spin unlock without lock case

In the stop streaming function, if the type is something other than
V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE or V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE,
there is a chance of calling spin_unlock without doing a spin_lock.

BUG=chrome-os-partner:14461
TEST=Checked basic playback start/stop with secomx and VDA test app.

Change-Id: I39bf02b664e3d845b45d6775b2ddfbe7e56ce396
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/34340
Reviewed-by: Pawel Osciak <posciak@google.com>
Commit-Ready: Doug Anderson <dianders@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
11 years agoCHROMIUM: Input: cyapa - remove debugfs before input_unregister_device
Benson Leung [Sat, 29 Sep 2012 01:05:21 +0000 (18:05 -0700)]
CHROMIUM: Input: cyapa - remove debugfs before input_unregister_device

In cyapa_remove, we should remove the debugfs first so that any
outstanding debugfs operations are stopped before unregistering
the input device.

BUG=chromium-os:34888
TEST=set CONFIG_MOUSE_CYAPA=m in the kernel config
Once booted, run:
cat /sys/kernel/debug/cyapa/1-0067/read_fw > /tmp/foo.bin & rmmod cyapa
Check that the system doesn't crash.

Change-Id: Ifdc3f8a0800785784dba12a221c8295df4f39e36
Signed-off-by: Benson Leung <bleung@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34323
Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
11 years agoCHROMIUM: Input: cyapa - Unmerge pm related groups on remove
Benson Leung [Fri, 28 Sep 2012 20:12:30 +0000 (13:12 -0700)]
CHROMIUM: Input: cyapa - Unmerge pm related groups on remove

Sysfs groups for power management weren't properly unmerged
during cyapa_remove.

BUG=chromium-os:32726
TEST=set CONFIG_MOUSE_CYAPA=m in the kernel config
Once booted, run:
rmmod cyapa
modprobe cyapa
Check that there is no crash within sysfs_merge_group.

Change-Id: I865af320d74a4d1c24563cb60d6e585b8e9e2f29
Signed-off-by: Benson Leung <bleung@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34289
Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
11 years agodrm/exynos: add more parallelism to page_flip
Mandeep Singh Baines [Mon, 10 Sep 2012 01:43:33 +0000 (18:43 -0700)]
drm/exynos: add more parallelism to page_flip

We add more parallelism by returning the vblank even early and
relying on kds to prevent the GPU from rendering to a buffer
that is still being scanned out.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume. Web GL. Youtube. HDMI.

Change-Id: I55e756024a7501c850b76418937ac1339b15e6ae
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/32788
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agoCHROMIUM: ARM: exynos: mct: cache mct upper count
Mandeep Singh Baines [Tue, 4 Sep 2012 22:20:37 +0000 (15:20 -0700)]
CHROMIUM: ARM: exynos: mct: cache mct upper count

Saves one register read.

BUG=chrome-os-partner:14575
TEST=Test with a chrome that has the above bug.

Before (perf report):

    9.76%  [kernel]             [k] exynos4_frc_read

After (perf report):

    7.34%  [kernel]             [k] exynos4_frc_read

Change-Id: I6a75c4aa7ed1461e8fa8915a1492664527cab819
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/32190
Reviewed-by: Olof Johansson <olofj@chromium.org>
Reviewed-by: Sonny Rao <sonnyrao@chromium.org>
11 years agoCHROMIUM: DMA: PL330: Report residue for dev to mem transfers.
Dylan Reid [Mon, 24 Sep 2012 18:36:14 +0000 (11:36 -0700)]
CHROMIUM: DMA: PL330: Report residue for dev to mem transfers.

When setting the residue, account for device to memory transfers.  Do
this by checking both the source and destination addresses against the
active descriptors.  For memory to device the source address will be
incrementing, for device to memory the destination will increment and
for memory to memory both will increment.

BUG=chrome-os-partner:12776
TEST=enter hangout, ask if other end can hear you clearly.
'arecord -B10000 -f data /tmp/asdf.wav' then playback.

Change-Id: I4debd2e8b6ea1c2c9842e692016e83d7c852de91
Signed-off-by: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33922
Reviewed-by: Olof Johansson <olofj@chromium.org>
11 years agodrm/i915: Add a try limit to avoid infinite loops
Chris Wolfe [Thu, 27 Sep 2012 17:42:51 +0000 (13:42 -0400)]
drm/i915: Add a try limit to avoid infinite loops

Unfortunately some combinations of hardware seem to generate successful
communications on the aux channel, which always report deferred. As a
result native_write can wind up in an infinite loop.

This hack adds a large (~10ms) retry limit to avoid a kernel panic,
while hopefully minimizing the impact on working hardware.

Signed-off-by: cwolfe@chromium.org
BUG=chromium-os:34840
TEST=Manually connect DP to VGA adapter to problem system. Added display
     powers up and works normally, rather than black screen and reboot.

Change-Id: Ib1b0001ca8004e65c9c5e353dbdb5e252fd88438
Reviewed-on: https://gerrit.chromium.org/gerrit/34203
Commit-Ready: Chris Wolfe <cwolfe@chromium.org>
Reviewed-by: Chris Wolfe <cwolfe@chromium.org>
Tested-by: Chris Wolfe <cwolfe@chromium.org>
11 years agoCHROMIUM: ALSA: ASoC: daisy - Poll gpio jacks after resume.
Dylan Reid [Tue, 25 Sep 2012 21:57:30 +0000 (14:57 -0700)]
CHROMIUM: ALSA: ASoC: daisy - Poll gpio jacks after resume.

After resume, poll the gpio jacks in case they changed while sleeping.

BUG=chrome-os-partner:14417
TEST=Plug headphones, play audio, suspend, unplug, resume, check audio
comes from speakers.

Change-Id: I32f47b19516094fccb253e6ec5e482f6890cecb9
Signed-off-by: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34048
Reviewed-by: Olof Johansson <olofj@chromium.org>
11 years agoCHROMIUM: ALSA: ASoC: soc-jack - export gpio detect.
Dylan Reid [Tue, 25 Sep 2012 21:52:11 +0000 (14:52 -0700)]
CHROMIUM: ALSA: ASoC: soc-jack - export gpio detect.

Export the snd_soc_jack_gpio_detect function.  Allow it to be called to
poll a gpio jack during resume, checking for state changes that may have
been missed while sleeping.

BUG=chrome-os-partner:14417
TEST=Plug headphones, play audio, suspend, unplug, resume, check audio
comes from speakers.

Change-Id: I3c2abf1c69abca6178bde1391b323efa0a6c507d
Signed-off-by: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34047
Reviewed-by: Olof Johansson <olofj@chromium.org>
11 years agodrm/exynos: use kds resource in destory_fb
Mandeep Singh Baines [Tue, 4 Sep 2012 19:21:07 +0000 (12:21 -0700)]
drm/exynos: use kds resource in destory_fb

Use a kds resource to prevent us from unmapping an fb while its
still being scanned out. This is especially important with the
concurrent page flip patches because we are flipping multiple
buffers concurrently.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume.

Change-Id: Iae41dd6f18589aa475c5e72f2d8ef787cd06e487
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34230

11 years agoModify generic x86_64 config
Russell Webb [Thu, 13 Sep 2012 16:01:55 +0000 (09:01 -0700)]
Modify generic x86_64 config

This change adds intel idle support, and sets the number of cpus
to the kernel default value of 64.

Intel idle knows which processors it will work correctly on, and on
systems it is not aware of, it will fall back to acpi idle.  Enabling
it here should improve robustness and power on systems intel idle
supports, and should not change anything on systems it doesn't support.

The number of CPU's setting was previously 4.  Setting this value too
low can have serious power consequences (non-initialized cores will
prevent the entire system from entering sleep states) and the additional
overhead is minimal. A value of 64 should be large enough to cover the
majority of systems available that Chromium OS might be used with.

BUG=None
TEST=Smoke tests passed on amd64-generic and amd64-corei7 using x86_64
     flavour.

Change-Id: I3385d751913fa1f4c81cc0b0d9fb9a69519d7f15
Signed-off-by: Russell Webb <russell.webb@intel.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/33315
Reviewed-by: paul drews <paul.drews@intel.com>
Reviewed-by: Olof Johansson <olofj@chromium.org>
11 years agodrm/exynos: release kds resource from finish_page_flip
Mandeep Singh Baines [Tue, 4 Sep 2012 19:21:07 +0000 (12:21 -0700)]
drm/exynos: release kds resource from finish_page_flip

finish_page_flip is the correct location to release the kds resource.
This is a refactoring patch for future CLs.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume.

Change-Id: Icfdf51482f7eea24ce7d3a94c62db6164c0def10
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34229
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agodrm/exynos: Remove useless EXPORT_SYMBOL_GPLs.
Stéphane Marchesin [Tue, 18 Sep 2012 02:17:30 +0000 (19:17 -0700)]
drm/exynos: Remove useless EXPORT_SYMBOL_GPLs.

BUG=none
TEST=compiles

Change-Id: Id5f05dfd284618c541403b0d8144bbb4c9e8c441
Reviewed-on: https://gerrit.chromium.org/gerrit/33494
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>

11 years agodrm/exynos: Don't leak structs on mixer cleanup.
Stéphane Marchesin [Wed, 26 Sep 2012 22:18:12 +0000 (15:18 -0700)]
drm/exynos: Don't leak structs on mixer cleanup.

TEST=compiles, runs
BUG=none

Change-Id: I72842ed600cddc6eb9f838e90b09de4e9dd47c7a
Reviewed-on: https://gerrit.chromium.org/gerrit/34141
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>

11 years agodrm/exynos: Remove unused defines from hdmi code.
Stéphane Marchesin [Mon, 24 Sep 2012 23:25:24 +0000 (16:25 -0700)]
drm/exynos: Remove unused defines from hdmi code.

Change-Id: I01d0701b4de783ee342129fe6b60bf056bb93f4b
Reviewed-on: https://gerrit.chromium.org/gerrit/34140
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>

11 years agodrm/exynos: fix race in exynos_drm_fb_map
Mandeep Singh Baines [Mon, 10 Sep 2012 01:43:33 +0000 (18:43 -0700)]
drm/exynos: fix race in exynos_drm_fb_map

In commit c4898d15, "drm/exynos: grab dma-buf reference just once",
I introduced a race where the gem object could be freed before
the kds callback ran and did the unmap.

You'd see the following in dmesg:

[  114.024936] [drm:exynos_drm_fb_unmap] *ERROR* buffer is null
[  114.024952] [drm:exynos_drm_kds_callback_rm_fb] *ERROR* Couldn't unmap buffer

This caused suspend/resume to randomly fail.

BUG=chrome-os-partner:12170
TEST=Many suspend/resume cycles. Many VT switches.

Change-Id: If806dbf5fdf57b6d910872dfc6b47f04fa9e8271
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34247

11 years agodrm/exynos: grab dma-buf reference just once
Mandeep Singh Baines [Tue, 4 Sep 2012 19:21:07 +0000 (12:21 -0700)]
drm/exynos: grab dma-buf reference just once

In a future CL, I want to release the kds resource from the interrupt
handler. But I can't release the dma-buf reference in that context.
So let's just grab a reference once and release it in destroy_fb.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume.

Change-Id: Ic1698902621dd5ed0a88a5c39e6e72f9cd617c5b
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34204
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agodrm/exynos: implement an optimized page_flip
Mandeep Singh Baines [Tue, 4 Sep 2012 19:21:07 +0000 (12:21 -0700)]
drm/exynos: implement an optimized page_flip

We want to avoid all the mode_set logic and just update the
dma_addr when page-flipping. This is necessary for the parallel
page_flip support. We want to avoid a having to call
crtc_update (which can fail) and then call commit. We need
a single call (which we call from the kds callback) which cannot
fail.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume. Web GL. Youtube. HDMI.

Change-Id: I41b63bdde0b1a4f2b4cb296b32eb75bde2d5d76b
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34198
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agodrm/exynos: print an error message when flipping a non-kds buffer
Mandeep Singh Baines [Thu, 27 Sep 2012 17:12:18 +0000 (10:12 -0700)]
drm/exynos: print an error message when flipping a non-kds buffer

This message was handy in finding a bug.

BUG=chrome-os-partner:12170
TEST=compiles

Change-Id: Id9ec24d9dd341686cb44d079ac0630a87dec31c5
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34193
Reviewed-by: Anush Elangovan <anush@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agomali-t6xx: Properly fix external resources memleak
John Einar Reitan [Thu, 27 Sep 2012 01:51:14 +0000 (18:51 -0700)]
mali-t6xx: Properly fix external resources memleak

The previous fix didn't set katom->extres to NULL
which could have caused a use-after-free.

BUG=None
TEST=Booted Snow, played WebGL Aquarium

Change-Id: I99e3eb63ba80d663d8cfea1141a969cde824280e
Signed-off-by: Ray Smith <Raymond.Smith@arm.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/34190
Reviewed-by: Anush Elangovan <anush@google.com>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agoBACKPORT: ALSA: usb-audio: Move configuration to prepare.
Dylan Reid [Tue, 18 Sep 2012 21:33:41 +0000 (14:33 -0700)]
BACKPORT: ALSA: usb-audio: Move configuration to prepare.

Move interface and endpoint configuration from hw_params to prepare
callback.  During system suspend/resume when the USB device power isn't
cycled the interface and endpoint configuration need to be set before
audio playback can continue.  Resume involves another call to prepare
but not to hw_params, moving it here allows a playing stream to continue
after resume.

This is modified from the version going upstream as the endpoint rework
in 3.5 has changed all of these interfaces.  Same functionality however.

BUG=chrome-os-parnter:12822
TEST=suspend/resume while playing audio to USB speakers.

(Backported from 61a709504b079110cd5b12ea9a4590ffea687a5c)
Change-Id: Ie70d8c4c74014b877b2b6244c5accb81b6fb8d5c
Signed-off-by: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33583
Reviewed-by: Chih-Chung Chang <chihchung@chromium.org>
11 years agoCHROMIUM: config: Rename EXYNOS_DP to DRM_EXYNOS_DP
Stéphane Marchesin [Fri, 14 Sep 2012 23:47:47 +0000 (16:47 -0700)]
CHROMIUM: config: Rename EXYNOS_DP to DRM_EXYNOS_DP

BUG=none
TEST=compiles

Change-Id: I89e89e7801ef653f4707429d40f832a6bae04cdc
Reviewed-on: https://gerrit.chromium.org/gerrit/33490
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agodrm/exynos: Move DP implementation into the DRM.
Stéphane Marchesin [Sat, 15 Sep 2012 01:58:22 +0000 (18:58 -0700)]
drm/exynos: Move DP implementation into the DRM.

We do this so we can fix the power off/on order.

This is also an initial patch towards merging the platform drivers into DRM.

BUG=chrome-os-partner:14090
TEST=by hand

Change-Id: Id35c1f3d8eb439a97ff2b2c735ddebf6b67df58b
Reviewed-on: https://gerrit.chromium.org/gerrit/33491
Reviewed-by: Mandeep Singh Baines <msb@chromium.org>
Commit-Ready: Stéphane Marchesin <marcheu@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agoSupport for the standby mode of BUCK1.
Jaehoon [Fri, 21 Sep 2012 13:10:27 +0000 (09:10 -0400)]
Support for the standby mode of BUCK1.

Change op-mode of BUCK1 to reduce the power consumption of MIF in S2R.

BUG=chrome-os-partner:14211
TEST=Build and boot snow. see that S2R mode work as expected. The power
consumption of BUCK1 goes down to zero.

Change-Id: I6780f90308b8bc8bc32c518f0d49f3a0020c9fa9
Signed-off-by: Jaehoon <jh228.kim@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/33776
Reviewed-by: Todd Broch <tbroch@chromium.org>
Reviewed-by: Abhilash Kesavan <a.kesavan@samsung.com>
Tested-by: Todd Broch <tbroch@chromium.org>
Commit-Ready: Todd Broch <tbroch@chromium.org>

11 years agoPoll for HDMI unplugs in Intel driver.
Stuart Abercrombie [Wed, 26 Sep 2012 18:36:14 +0000 (11:36 -0700)]
Poll for HDMI unplugs in Intel driver.

The driver was relying on a successful EDID read following a hotplug interrupt to indicate HDMI sink presence.  This leads to missing HDMI cable unplug events because the DDC lines can remain up, allowing an EDID read to complete, well after the HPD line goes down during unplugging.

Unfortunately the hardware does not seem to allow querying the HPD line directly.

BUG=chrome-os-partner:13495
TEST=HDMI unplugs are now detected.

Change-Id: I82f33809cdd4fca5cf427902641ba678241f6647
Reviewed-on: https://gerrit.chromium.org/gerrit/34121
Tested-by: Stuart Abercrombie <sabercrombie@chromium.org>
Commit-Ready: Stuart Abercrombie <sabercrombie@chromium.org>
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
11 years agoregulator: tps65090: Mark FET registers as volatile
Simon Glass [Wed, 26 Sep 2012 20:19:24 +0000 (13:19 -0700)]
regulator: tps65090: Mark FET registers as volatile

The FET registers include both status and control bits.

Due to the regcache, we won't see changes in these registers since we
never read from the chip. Make the FET registers volatile to fix this.

One symptom of this problem is regultor error messages in the logs:

[    0.643077] s3c-i2c s3c2440-i2c.4: bus frequency set to 65 KHz
[    0.649217] tps65090 4-0048: No cache defaults, reading back from HW
[    0.771339] tps65090 4-0048: Disabling irq acks to chip.
[    0.796539] vcd_led: 12000 mV
[    0.811323] regulator regulator.20: reg 0x10 enable failed
[    0.816727] video_mid: failed to enable
[    0.826323] regulator regulator.21: reg 0x11 enable failed
[    0.831725] wwan_r: failed to enable
[    0.835442] sdcard: 3300 mV
[    0.846323] regulator regulator.23: reg 0x13 enable failed
[    0.851723] camout: failed to enable
[    0.855442] lcd_vdd: 3300 mV
[    0.858472] ts: 5000 mV
[    0.861067] vinchg:
[    0.863633] s3c-i2c s3c2440-i2c.4: i2c-4: S3C I2C adapter

I believe this is ultimately harmless, since we print a warning and continue.
Still, it is confusing.

BUG=chrome-os-partner:14576
TEST=manual
Boot snow kernel and see that regulator error messages no longer appear.

Change-Id: I181e8f7ed15c1df527fcfeb683cb43566002957f
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/34127
Reviewed-by: Doug Anderson <dianders@chromium.org>
11 years agoCHROMIUM: Refactor chromeos_ec_i2c to use a common file
Simon Glass [Sun, 16 Sep 2012 00:18:59 +0000 (17:18 -0700)]
CHROMIUM: Refactor chromeos_ec_i2c to use a common file

Much of the code in the I2C implementation should actually be common
to all interfaces. As a first step, create a chromeos_ec.c which
implements this common functionality, and make the I2C implementation
use it.

(Note: The FDT change is in this commit also to avoid a breakage)

BUG=chrome-os-partner:13860
TEST=manual
See that snow keyboard still works correctly over I2C.

Change-Id: Ib48009d3c38ee8b80b3dd40eadbb7f56f5b5ea59
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33571
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
11 years agoCHROMIUM: config: Enable I2C and SPI EC
Simon Glass [Sun, 16 Sep 2012 00:47:46 +0000 (17:47 -0700)]
CHROMIUM: config: Enable I2C and SPI EC

Enable the I2C EC in preparation for its config control being renamed
from  MFD_CHROMEOS_EC to MFD_CHROMEOS_I2C_EC. Enable SPI also.

BUG=chrome-os-partner:13860
TEST=manual
Boot into kernel on snow, see that keyboard works as expected (over i2c,
which is the default still).

Change-Id: I86734fcdd440b5f72b09d70866adc47778a296fc
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33570
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
11 years agoCHROMIUM: Rename chromeos_ec.c to chromeos_ec_i2c.c
Simon Glass [Wed, 12 Sep 2012 23:12:34 +0000 (16:12 -0700)]
CHROMIUM: Rename chromeos_ec.c to chromeos_ec_i2c.c

This driver only supports i2c, so move it into its own place. We will
create a new chromeos_ec which will handle any bus type.

BUG=chrome-os-partner:13860
TEST=manual
Boot into kernel on snow, see that keyboard works as expected.

Change-Id: Iea777c315a3bf0d24e8f24b6da2ab40cbabdcbf4
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33569
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
11 years agoCHROMIUM: mfd: chromeos_ec: update EC<->AP protocol
Simon Glass [Wed, 12 Sep 2012 23:15:09 +0000 (16:15 -0700)]
CHROMIUM: mfd: chromeos_ec: update EC<->AP protocol

The ec_commands.h file has changed substantially. Bring the new version
into the kernel and adjust drivers to use it.

BUG=none
TEST=manual
Build and boot to kernel
See that EC keyboard still operates correctly.

See that we can query the firmware driver also:

localhost 4-001e # cd /sys/bus/i2c/drivers/chromeos-ec/4-001e
localhost 4-001e # cat build_info
snow_v1.1.469-b4d73d3 2012-09-15 17:22:15 sjg@kea
localhost 4-001e # cat chip_info
stm stm32f100
localhost 4-001e # cat fw_version
Current: RO
RO: snow_v1.1.469-b4d73d3
RW:

Change-Id: Ib6e74ccc41161d541d390f4cb94456423ca60eb4
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33568
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
11 years agoSupport for the standby mode of LDOs.
Jaehoon [Mon, 17 Sep 2012 06:59:44 +0000 (02:59 -0400)]
Support for the standby mode of LDOs.

Change op-mode of LDOs (LDO6,7,10,11,12,13,14,15 and 16) to reduce the
power consumption of snow during suspend.

BUG=chrome-os-partner:14211
TEST=Build and boot snow. See that S2R mode works as expected with
external devices such as SD and USB (Check detecting external devices after
resume from suspend).  Also, The power consumption of BUCK6 and BUCK7 goes down to almost
zero during suspend mod.

Change-Id: Ie64517ddc3431ffd50425069d1902326e18f7fc4
Signed-off-by: Jaehoon <jh228.kim@samsung.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/33412
Reviewed-by: Todd Broch <tbroch@chromium.org>
Reviewed-by: Abhilash Kesavan <a.kesavan@samsung.com>
Commit-Ready: Todd Broch <tbroch@chromium.org>
Tested-by: Todd Broch <tbroch@chromium.org>
11 years agoMALI: mali-t6xx: Fix memory leak using external resources.
John Rees [Tue, 11 Sep 2012 23:48:43 +0000 (16:48 -0700)]
MALI: mali-t6xx: Fix memory leak using external resources.

When using external resources the memory allocated
to hold the references to the resources is not freed.

BUG=None
TEST=Booted snow with aquarium web egl

Change-Id: Ia7ae27b26733629f69f613d70c3529e3e2694bc2
Signed-off-by: John Rees
Reviewed-on: https://gerrit.chromium.org/gerrit/33026
Commit-Ready: Gabriele Paoloni <gabriele.paoloni@arm.com>
Reviewed-by: Gabriele Paoloni <gabriele.paoloni@arm.com>
Commit-Ready: Anush Elangovan <anush@google.com>
Reviewed-by: Anush Elangovan <anush@google.com>
Tested-by: Anush Elangovan <anush@google.com>
11 years agoCHROMIUM: Revert "CHROMIUM: Input: cyapa - Disable runtime PM"
Benson Leung [Tue, 25 Sep 2012 22:55:22 +0000 (15:55 -0700)]
CHROMIUM: Revert "CHROMIUM: Input: cyapa - Disable runtime PM"

This reverts commit f1256eb8c33081f160a66b5d4ac63e3c094ff558.

Signed-off-by: Benson Leung <bleung@chromium.org>
BUG=chrome-os-partner:14583,chrome-os-partner:10550, chrome-os-partner:12954
TEST=Boot a system with cyapa trackpad.
cd /sys/bus/i2c/devices/1-0067/power/
(the i2c bus will vary per system above. 1-0067 is for snow. 7-0067 is
typical for Parrot or Lumpy)
check that runtime_suspend_scanrate_ms exists. Cat it.
Check that it returns 30.
cat runtime_status
Check that it is "suspended" when the touchpad has not been touched
for 2 seconds. Check that it is "active" when the touchpad is being touched
or for 2 seconds after last touch.

Change-Id: Iaabe26da2f188d238329ebc3ba5695c9663bf95f
Reviewed-on: https://gerrit.chromium.org/gerrit/34063
Reviewed-by: Todd Broch <tbroch@chromium.org>
Commit-Ready: Benson Leung <bleung@chromium.org>
Tested-by: Benson Leung <bleung@chromium.org>
11 years agoCHROMIUM: ALSA: ASoC: max98095 - Disable codec while loading EQ coefficients.
Dylan Reid [Tue, 18 Sep 2012 16:17:27 +0000 (09:17 -0700)]
CHROMIUM: ALSA: ASoC: max98095 - Disable codec while loading EQ coefficients.

According to Evan from Maxim:
"It is mandatory to use codec shutdown when changing the EQ parameters.
Also, depending on the current device settings, it may take some time
for the codec to actually shut down (due to volume ramping).  Please be
sure to account for this delay after CODEC_SHDN is asserted and before
any EQ coefficients are written.  A 20ms delay should be fine."

Assert codec shutdown around EQ coefficients loads.

BUG=chrome-os-partner:12039
TEST=enable/disable EQ, set EQ mode while playing music.

Change-Id: Iae41bdaf97fb8594cd8893ddbe1bbfa2477a01af
Reviewed-on: https://gerrit.chromium.org/gerrit/33576
Reviewed-by: Dylan Reid <dgreid@chromium.org>
Tested-by: Dylan Reid <dgreid@chromium.org>
Commit-Ready: Dylan Reid <dgreid@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
11 years agoUPSTREAM: ath9k_btcoex: fix ASPM initialization on resume
Felix Fietkau [Thu, 16 Aug 2012 09:29:56 +0000 (11:29 +0200)]
UPSTREAM: ath9k_btcoex: fix ASPM initialization on resume

BUG=chrome-os-partner:10677
TEST=compile

ath_pci_aspm_init is only called on card init, so PCI registers get reset
after a suspend/resume cycle.

This ports gerrit.chromium.org/gerrit/30885 from ath9k to ath9k_btcoex.

Change-Id: Ib0389e4a30ae4764ed0fd9f4f9b31e2f168e2c03
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33954
Commit-Ready: mukesh agrawal <quiche@chromium.org>
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Tested-by: mukesh agrawal <quiche@chromium.org>
11 years agoCHROMIUM: ath9k_btcoex: improve resume reliability
Felix Fietkau [Fri, 7 Sep 2012 09:53:32 +0000 (11:53 +0200)]
CHROMIUM: ath9k_btcoex: improve resume reliability

Ensure that drv_start() always returns true, as a failing hw start usually
eventually leads to crashes when there's still a station entry present.
Call a power-on reset after resume and also if a hw reset fails, this should
bring the hardware back to life again.

This ports gerrit.chromium.org/gerrit/32599 from the ath9k driver to
the ath9k_btcoex driver.

BUG=chrome-os-partner:10785
TEST=compile

Change-Id: I3c16b8c37191377c2bc0db54295adfd8b5786dd5
Signed-off-by: mukesh agrawal <quiche@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33952
Reviewed-by: Paul Stewart <pstew@chromium.org>
11 years agoCHROMIUM: ath9k_btcoex: properly deal with imbalance in station add/remove calls
Felix Fietkau [Thu, 30 Aug 2012 16:02:12 +0000 (18:02 +0200)]
CHROMIUM: ath9k_btcoex: properly deal with imbalance in station add/remove calls

When this happens (usually in the suspend/resume path), invalid node list
pointers get dereferenced, leading to a crash.

This ports gerrit.chromium.org/gerrit/31985 from the ath9k driver to
the ath9k_btcoex driver.

BUG=chrome-os-partner:10785
TEST=compile

Change-Id: Iff2de310fb44f184081824e02f84e4d40b49fe7c
Signed-off-by: mukesh agrawal <quiche@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33951
Reviewed-by: Paul Stewart <pstew@chromium.org>
11 years agoRevert "drm/exynos: implement an optimized page_flip"
Mandeep Singh Baines [Tue, 25 Sep 2012 17:03:49 +0000 (10:03 -0700)]
Revert "drm/exynos: implement an optimized page_flip"

This reverts commit 16c3c0609f298adba79e4bf290a48fabc2926bea

This change breaks suspend/resume.

Change-Id: I6f4783894f1667827f7eea41826f4dde6e2035ac
Reviewed-on: https://gerrit.chromium.org/gerrit/33999
Reviewed-by: Anush Elangovan <anush@google.com>
Commit-Ready: Mandeep Singh Baines <msb@chromium.org>
Tested-by: Mandeep Singh Baines <msb@chromium.org>
11 years agodrm/exynos: implement an optimized page_flip
Mandeep Singh Baines [Tue, 4 Sep 2012 19:21:07 +0000 (12:21 -0700)]
drm/exynos: implement an optimized page_flip

We want to avoid all the mode_set logic and just update the
dma_addr when page-flipping. This is necessary for the parallel
page_flip support. We want to avoid a having to call
crtc_update (which can fail) and then call commit. We need
a single call (which we call from the kds callback) which cannot
fail.

BUG=chrome-os-partner:12170
TEST=VT switch. Log in/out. Suspend/resume. Web GL. Youtube. HDMI.

Change-Id: I21afa7dd15bbff184c7ae759bb26e23d855af372
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/32787

11 years agoBACKPORT: ALSA: hda - Always resume the codec immediately
Takashi Iwai [Tue, 8 May 2012 14:52:23 +0000 (16:52 +0200)]
BACKPORT: ALSA: hda - Always resume the codec immediately

This is a fix for the problem in commit 785f857d1c, the pop noise
issue on some machines with ALC269.  The problem was the uninitialized
state after the resume due to the delayed resume of the codec chips.
In that commit, we tried to fix by forcibly putting the codec to D3 at
suspend.  But, this still also leaves the uninitialized state after
resume, and it _might_ be still problematic with some BIOS.  Since the
commit turned out to regress another issues, we reverted it in the
end.

Now, in this fix, try to fix by turning on the codec immediately at
the resume path.  We need to take care of the power-saving in this
case.  When the device is woken up at the power-saved state, it should
go power-saving again after the resume.

BUG=chrome-os-partner:13493
TEST=suspend/resume, then plug in HDMI monitor audio should route to
monitor.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
(cherry picked from commit 7f30830b7b82e5225c38a48b387e44f3defe40e2)

Conflicts:
sound/pci/hda/hda_codec.c
sound/pci/hda/hda_intel.c

Change-Id: Iccc5916614e6ae2e75a5048b3728e9e20f4391ad
Signed-off-by: Dylan Reid <dgreid@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33734
Reviewed-by: Sameer Nanda <snanda@chromium.org>
Reviewed-by: Todd Broch <tbroch@chromium.org>
11 years agoCHROMIUM: Bluetooth: Add WB2222 [0cf3:311e]
Scott James Remnant [Mon, 24 Sep 2012 18:03:41 +0000 (11:03 -0700)]
CHROMIUM: Bluetooth: Add WB2222 [0cf3:311e]

BUG=chrome-os-partner:14262
TEST=hciconfig shows device, hcitool scan and l2test work

Change-Id: If2087f1e7ad6488dd724882df89d534f48ba2bad
Signed-off-by: Scott James Remnant <keybuk@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33903
Reviewed-by: Paul Stewart <pstew@chromium.org>
11 years agoCHROMIUM: drivers: power: add min design voltage to sbs-battery
Simon Que [Wed, 19 Sep 2012 18:57:55 +0000 (11:57 -0700)]
CHROMIUM: drivers: power: add min design voltage to sbs-battery

sbs-battery has a max design voltage but not a min design voltage field.
The SBS spec only has one design voltage:
http://www.sbs-forum.org/specs/sbdat110.pdf

Currently this is being used for max design voltage.  This patch uses it
for min design voltage as well.

BUG=chromium-os:33528
TEST=On Daisy system -- go to /sys/class/power_supply/sbs* and make sure
the min design voltage field is present and readable.

Change-Id: I217f82057ad239d5f0ea5faf656195e98e7bc32b
Signed-off-by: Simon Que <sque@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33622
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Todd Broch <tbroch@chromium.org>
11 years agoCHROMIUM: mwifiex: make use of bgscan flag provided in scan request
Bing Zhao [Sat, 22 Sep 2012 03:49:51 +0000 (20:49 -0700)]
CHROMIUM: mwifiex: make use of bgscan flag provided in scan request

This new flag indicates scan type. We will cancel/abort scan
operation based on traffic only for background scan. Foreground
scan will have higher priority. Hence it will never be cancelled
or aborted.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
BUG=chrome-os-partner:13861
TEST=Build and run autotest suites

Change-Id: I465c337def80d5ec2cae3567167d718bc3b2ff7e
Reviewed-on: https://gerrit.chromium.org/gerrit/33852
Reviewed-by: Gary Morain <gmorain@chromium.org>
Tested-by: Bing Zhao <bzhao@marvell.com>
Commit-Ready: Bing Zhao <bzhao@marvell.com>

11 years agoUPSTREAM: mwifiex: block scan request during heavy Tx traffic
Bing Zhao [Fri, 21 Sep 2012 19:35:58 +0000 (12:35 -0700)]
UPSTREAM: mwifiex: block scan request during heavy Tx traffic

Currently scan operation is delayed/aborted based on Tx traffic
consistency. This decision is taken after receiving scan
response of first scan command from FW. But when heavy traffic
is running, we can not even afford to send first scan command
and go off channel for 30msec. We will block scan request in
this case.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
BUG=chrome-os-partner:13861
TEST=Build and run autotest suites

Change-Id: I2ee6eb31dcc22099088bc58ba98f99943ff4e4c4
Reviewed-on: https://gerrit.chromium.org/gerrit/33851
Reviewed-by: Gary Morain <gmorain@chromium.org>
Commit-Ready: Bing Zhao <bzhao@marvell.com>
Tested-by: Bing Zhao <bzhao@marvell.com>
11 years agoUPSTREAM: mwifiex: improve scan delay logic during Tx traffic
Bing Zhao [Fri, 21 Sep 2012 19:20:32 +0000 (12:20 -0700)]
UPSTREAM: mwifiex: improve scan delay logic during Tx traffic

Earlier scan command was postponed by 20msec multiple times to give
preference to Tx traffic until we find empty wmm queue.

There is a corner case in which wmm queue becomes empty immediately
after processing the packet(before 20msec) and there may be next
packet coming after some time. In this case we should not resume scan
operation.

We will use new flag to check Tx traffic and resume scan operation
only if there is no traffic for 200msec.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Note:
The original patch had a bug which has been fixed by patch
"mwifiex: fix issue in resumed scan operation".
I've merged these two patches together in this UPSTREAM port.

BUG=chrome-os-partner:13861
TEST=Build and run autotest suites

Change-Id: I29b0fe1eaa9df79bf2220130a44df13ed842ac94
Reviewed-on: https://gerrit.chromium.org/gerrit/33850
Reviewed-by: Gary Morain <gmorain@chromium.org>
Commit-Ready: Bing Zhao <bzhao@marvell.com>
Tested-by: Bing Zhao <bzhao@marvell.com>
11 years agoUPSTREAM: ath9k_hw: fix BT sleep state on chip wakeup
Rajkumar Manoharan [Mon, 24 Sep 2012 08:06:05 +0000 (13:36 +0530)]
UPSTREAM: ath9k_hw: fix BT sleep state on chip wakeup

Whenever both WLAN and BT in/out sleep mode, sometimes WLAN
is not able to take back the shared LNA control after resumes
from sleep mode. The idea is that for WLAN to check if BT owns
LNA control and BT is in sleep mode when WLAN just resumes from
sleep mode. If the condition is true, do a BTCOEX_RC_WARM_RESET
for WLAN to take back the control of shared LNA.
Now the issue is the BT sleep value read from MCI register is
overlooked by assigning u32 into u8. Hence the above condition never
be met so that WLAN used to report beacon losses and frequent
connection drops. Fix that.

Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: Paul Stewart <pstew@chromium.org>
BUG=chrome-os-partner:12560
TEST=Run on 9462-based device with both bluetooth and ath9k in powersave.

Change-Id: Iea6214455aacdf293ce6c26f6a57b07a05448e49
Reviewed-on: https://gerrit.chromium.org/gerrit/33889
Reviewed-by: Gary Morain <gmorain@chromium.org>
Commit-Ready: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
11 years agoCHROMIUM: ARM: exynos: no duplicate mask/unmask in eint0_15
Daniel Kurtz [Wed, 5 Sep 2012 08:16:51 +0000 (16:16 +0800)]
CHROMIUM: ARM: exynos: no duplicate mask/unmask in eint0_15

chained_irq_enter/exit() already mask&ack/unmask the chained interrupt.
There is no need to also explicitly do it in the handler.

Signed-off-by: Daniel Kurtz <djkurtz@chromium.org>
BUG=chrome-os-partner:13488
TEST=Manually verify.
TEST=ftrace shows only one call to
     combiner_{mask,unmask}_irq per call to exynos_irq_eint0_15

Change-Id: Id978cb4574af3ef1c6adccb1453ad2c51049e08b
Reviewed-on: https://gerrit.chromium.org/gerrit/32215
Reviewed-by: Doug Anderson <dianders@chromium.org>
Commit-Ready: Daniel Kurtz <djkurtz@chromium.org>
Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
Tested-by: Daniel Kurtz <djkurtz@chromium.org>
11 years agoCHROMIUM: exynos: dts: Add first device tree for Spring
Vincent Palatin [Sat, 22 Sep 2012 00:36:03 +0000 (17:36 -0700)]
CHROMIUM: exynos: dts: Add first device tree for Spring

Add a board configuration to bring-up the upcoming Spring board.

Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
BUG=chrome-os-partner:14489
TEST=emerge-daisy chromeos-kernel
and see the device tree compiled properly in the log.

Change-Id: Idd1c0128f88cdbc575a976dc1cf8e601e1777ba3
Reviewed-on: https://gerrit.chromium.org/gerrit/33835
Reviewed-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Commit-Ready: Vincent Palatin <vpalatin@chromium.org>
Tested-by: Vincent Palatin <vpalatin@chromium.org>
11 years agomali-t6xx: Fix for BUG: Bad rss-counter state
John Einar Reitan [Fri, 14 Sep 2012 22:15:48 +0000 (15:15 -0700)]
mali-t6xx: Fix for BUG: Bad rss-counter state

This was causing a crash on halt if slub debugging was
turned on.

BUG=chrome-os-partner:14484
TEST=halt with slub debugging turned on works.

Change-Id: I3cc225f6aff5cb0e8d6b288e067763ce4f622e99
Signed-off-by: John Einar Reitan <john.reitan@arm.com>
(cherry picked from commit 41a74be06074efe3cec3e44f7876b43a983b4e7c)
(https://android.googlesource.com/kernel/exynos/android-exynos-3.4)
Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33818

11 years agoUPSTREAM: serial: samsung: protect NULL dereference of clock name
KeyYoung Park [Wed, 30 May 2012 08:29:55 +0000 (17:29 +0900)]
UPSTREAM: serial: samsung: protect NULL dereference of clock name

When priting the serial clock source, if clock source name is null,
kernel reference NULL point.

BUG=None
TEST=Built and booted on one board.

Signed-off-by: Naveen Krishna Chatradhi <naveen@chromium.org>
(Landed on linux-next on Wed May 30, cherry picked from commit
7b15e1d9e342aca6c65f4824f1957f5245fcd87a)

Change-Id: I970a7d8f260421a376abfeb388d263b7a6ff3fdc
Signed-off-by: KeyYoung Park <keyyoung.park@samsung.com>
Signed-off-by: Huisung Kang <hs1218.kang@samsung.com>
Signed-off-by: Kyoungil Kim <ki0351.kim@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33192
Tested-by: naveen krishna chatradhi <naveen@chromium.org>
Reviewed-by: Arjun.K.V <arjun.kv@samsung.com>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Commit-Ready: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
11 years agoUPSTREAM: serial: samsung: Fixed wrong comparison for baudclk_rate
Kyoungil Kim [Sun, 20 May 2012 08:49:31 +0000 (17:49 +0900)]
UPSTREAM: serial: samsung: Fixed wrong comparison for baudclk_rate

port->baudclk_rate should be compared to the rate of port->baudclk,
because port->baudclk_rate was assigned as the rate of port->baudclk previously.
So to check that the current baudclk rate is same as previous rate,
the target of comparison sholud be the rate of port->baudclk.

BUG=None
TEST=Built and booted on one board.

Signed-off-by: Naveen Krishna Chatradhi <naveen@chromium.org>
(Landed on linux-next on Sun May 20, cherry picked from commit
25f04ad423e5eb40c33a904db5a0d2c7e3bf08f5)

Change-Id: Iae21f911f63ad483289fbd85a3123a609e7aa50d
Signed-off-by: Jun-Ho, Yoon <junho78.yoon@samsung.com>
Signed-off-by: Kyoungil Kim <ki0351.kim@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33419
Tested-by: naveen krishna chatradhi <naveen@chromium.org>
Reviewed-by: Arjun.K.V <arjun.kv@samsung.com>
Commit-Ready: Doug Anderson <dianders@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
11 years agoUPSTREAM: serial: samsung: Remove NULL checking for baud clock
Kyoungil Kim [Sun, 20 May 2012 08:45:54 +0000 (17:45 +0900)]
UPSTREAM: serial: samsung: Remove NULL checking for baud clock

BUG=None
TEST=Built and booted on one board.

Signed-off-by: Naveen Krishna Chatradhi <naveen@chromium.org>
(Landed on linux-next on Sun May 20, cherry picked from commit
7cd88831feb03cadb355d5fb2b18ebe284c1f1e3)

Change-Id: I2cd6967b6b42437c580bf1a2945c3a70b2b61e0f
Signed-off-by: Kyoungil Kim <ki0351.kim@samsung.com>
Suggested-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33418
Tested-by: naveen krishna chatradhi <naveen@chromium.org>
Reviewed-by: Arjun.K.V <arjun.kv@samsung.com>
Commit-Ready: Doug Anderson <dianders@chromium.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Tested-by: Doug Anderson <dianders@chromium.org>
11 years agoUPSTREAM: ath9k: Disable ASPM only for AR9285
Sujith Manoharan [Fri, 21 Sep 2012 18:44:28 +0000 (00:14 +0530)]
UPSTREAM: ath9k: Disable ASPM only for AR9285

Currently, ASPM is disabled for all WLAN+BT combo chipsets
when BTCOEX is enabled. This is incorrect since the workaround
is required only for WB195, which is a AR9285+AR3011 combo
solution. Fix this by checking for the HW version when enabling
the workaround.

Cc: stable@vger.kernel.org
Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: Paul Stewart <pstew@chromium.org>
BUG=chrome-os-partner:14030
TEST=Install and run on 9462-based device.  Observe that output
of "lspci -vvv -d 168c:0034" contains "ASPM L0s L1 Enabled".

Change-Id: I8052a176ce74eb830d46aa82a8149888745a0e6a
Reviewed-on: https://gerrit.chromium.org/gerrit/33790
Reviewed-by: Sameer Nanda <snanda@chromium.org>
Reviewed-by: Todd Broch <tbroch@chromium.org>
Commit-Ready: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
11 years agoCHROMIUM: v4l: vb2-dma-contig: fix compiler warning
Naveen Krishna Chatradhi [Tue, 11 Sep 2012 13:09:25 +0000 (18:39 +0530)]
CHROMIUM: v4l: vb2-dma-contig: fix compiler warning

Remove the following warning:
drivers/media/video/videobuf2-dma-contig.c:368:2: warning: initialization from incompatible pointer type [enabled by default]
drivers/media/video/videobuf2-dma-contig.c:368:2: warning: (near initialization for 'vb2_dc_dmabuf_ops.mmap') [enabled by default]

BUG=chromium-os:34287
TEST=emerge-daisy chromeos-kernel built without this warning.

Change-Id: I5ba8226f7ed3f75b7bfea35d5245bb037cc8b1b9
Signed-off-by: Naveen Krishna Chatradhi <naveen@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/32919
Reviewed-by: Doug Anderson <dianders@chromium.org>
11 years agoCHROMIUM: mwifiex: disconnect the device before entering suspend state
Todd Broch [Wed, 5 Sep 2012 21:59:49 +0000 (14:59 -0700)]
CHROMIUM: mwifiex: disconnect the device before entering suspend state

By default, device is disconnected before entering suspend state.
User can keep the connection alive by using module parameter
"disconnect_on_suspend=0".

BUG=chrome-os-partner:12164
TEST=manual,
  1. Boot device on battery and associated to AP
  2. Suspend
  3. Measure current to WLAN <=1mA ( deep-sleep state )
  4. Resume and device re-connects to AP successfully
  5. echo 0 > /sys/module/mwifiex/parameters/disconnect_on_suspend
  6. Measure current to WLAN <=10mA ( IEEE PS state )
  7. Resume and device re-connect to AP successfully

Change-Id: Iaf633d41e1a0cf2fab2dad9ff16dc39d04e87abf
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: Todd Broch <tbroch@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/32294
Reviewed-by: Gary Morain <gmorain@chromium.org>
11 years agoRevert "CHROMIUM: tpm: move resume to workqueue"
Jonathan Kliegman [Thu, 20 Sep 2012 20:56:57 +0000 (16:56 -0400)]
Revert "CHROMIUM: tpm: move resume to workqueue"

This reverts commit 3ff093d8483a3da3647e041edcf83e82859d61c7.

To help diagnose bug 14059, revert the change to ensure the
TPM properly finishes resuming.

Per bug 12397, this commit was only a temporary measure as well,
so removing it early.

BUG=chrome-os-partner:12397, chrome-os-partner:14059
TEST=Multiple suspend-resume cycle, tpm resumes

Change-Id: I3f11f4a114612d6dcb847a0ef68d522e5c28a40f
Signed-off-by: Jon Kliegman <kliegs@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/33722
Reviewed-by: Olof Johansson <olofj@chromium.org>