Age | Commit message (Collapse) | Author |
|
|
|
|
|
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
|
|
By disbaling the suspend we could avoid the hangs in suspend and resume.
This workaround will be removed once the power management supports
for all other peripheral drivers.
Signed-off-by: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com>
Signed-off-by: Philippe Langlais <philippe.langlais@stericsson.com>
|
|
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
|
|
Simple timed output vibrator driver for AB5500 MFD chips.
This chip supports Rotary and Linear vibrator hardware types.
Resonance frequency of 100-198 Hz is supported.
ST-Ericsson ID: WP 256408
Signed-off-by: Avinash A <Avinash.a@stericsson.com>
Signed-off-by: Robert Marklund <robert.marklund@stericsson.com>
u5500: enable vibrator when new timeout is requested
with this patch new timeout value will be
accepted/updated even if vibrator is already
executing.
ST-Ericsson ID: 360178
Signed-off-by: Avinash A <Avinash.a@stericsson.com>
vibra:Remove unnecessary assignment of dev->parent
Remove unnecessary assignment of dev->parent,
because of this during timed out class unregister
it is trying to free resources of parent which
does not exist
ST-Ericsson ID: 410065
Signed-off-by: Naga Radhesh <naga.radheshy@stericsson.com>
u5500: Add vibra end of life support
Detect and disable vibra when vibra end of life(eol)
condition is detected at boot sequence.
ST-Ericsson ID: 265890
Signed-off-by: Rajagopala V <rajagopala.v@stericsson.com>
|
|
ST-Ericsson vibrator driver which registers in Android specific
timed output device class.
Signed-off-by: Marcin Mielczarczyk <marcin.mielczarczyk@tieto.com>
Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg@tieto.com>
Signed-off-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
Timed output vibrator: New functionality.
This patch allows to form the vibration characteristic
using few parameters defined in the platform data:
- boost level and period for start condition
- on level as moderate speed
- off level and period for brake condition
Detailed information can be found here:
Documentation\DocBook\ste_timed_vibra.html
Signed-off-by: Grzegorz Sygieda <grzegorz.sygieda@tieto.com>
Signed-off-by: Krzysztof Antonowicz <krzysztof.antonowicz@tieto.com>
Signed-off-by: srinidhi kasagar <srinidhi.kasagar@stericsson.com>
vibrator: remove board specific control of vibrator
Platform specific control of vibrator should be
present in board file (here board-mop500.c).
So, for example if GPIO pins are used to control
the vibrator, its control function implemenation
should be in board file.
This patch provides the callback function support
in the driver for the same.
Signed-off-by: Shreshtha Kumar Sahu <shreshthakumar.sahu@stericsson.com>
android: vibrator: dont directly access ktime_t members
Use ktime helper functions for converting ktime values
Signed-off-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
u8500: vibra: linear vibrators using vibra-pwm
Linear vibrators operate on thier required resonance
frequency (for COPAL and AAC its ~150Hz). This can be
provided using AUDIO DA5 path. This software *workaround*
enables linear vibrators using AB8500 vibra-pwm by
generating required resonace frequency using software.
In addition this patch provides support for separate
platform data for Linear and Rotarty vibrators.
Signed-off-by: Shreshtha Kumar Sahu <shreshthakumar.sahu@stericsson.com>
u8500: vibra: disable vibrator after vibration
This patch disables vibrator i.e. configures
the PWM duty cycle to zero after vibration
duration is over.
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
u8500: optimize: linear vibra drv using vibra-pwm
This patch optimizes the current implementation
of "linear vibrator driver using vibra-pwm".
Current implementation is CPU intensive and uses
100% of a CPU for the time period vibrator is used.
ST-Ericsson ID: ER 349958
Signed-off-by: Avinash A <Avinash.a@stericsson.com>
u8500: vibra: fix sleeping fn. in atomic context
sleepable call - flush_workqueue called from atomic
context of vibra_enable.
ST-Ericsson ID: ER 351276
Signed-off-by: Avinash A <Avinash.a@stericsson.com>
u8500: vibra: remove race condition in timer operation
In situation described below, vibra driver can hang.
In a scenario where vibra_enable is called and vibrator
is running i.e. vibra_work is scheduled and vibra_timer.
Suppose vibra_timer is started and has not expired yet.
At this moment if vibra_work starts executing and acquires
the vibra_lock and just before hrtimer_cancel is called,
if old timer expires and timer callback starts executing
then it will try to acquire vibra_lock and hence it will
wait for vibra_lock, as it is already acquired by vibra_work.
Now vibra_work->hrtimer_cancel will wait for timer callback
to complete and timer callback will wait for vibra_lock to
be free so that it can complete. This result in recursive
waiting for vibra_lock and hence deadlock.
As timer callback is running in interrupt context so above
deadlock may trigger watchdog.
ST-Ericsson ID: 405366
Signed-off-by: Shreshtha Kumar Sahu <shreshthakumar.sahu@stericsson.com>
u8500: vibra: remove race condition in open
In situation described below, vibra driver can hang.
vibra_enable takes the vibra_lock and timer expires then
timer callback will spin for vibra_lock. If vibra_enable
tries to do hrtimer_cancel then it will wait for timer
callback to complete.
In above situation hrtimer_cancel will wait for timer callback
to complete and timer callback will wait for vibra_lock to
be free so that it can complete. This result in recursive
waiting for vibra_lock and hence deadlock.
As timer callback is running in interrupt context so above
deadlock may trigger watchdog.
ST-Ericsson ID: 407253
Signed-off-by: Shreshtha Kumar Sahu <shreshthakumar.sahu@stericsson.com>
vibra:Remove unnecessary assignment of dev->parent
Remove unnecessary assignment of dev->parent,
because of this during timed out class unregister
it is trying to free resources of parent which
does not exist
Signed-off-by: Naga Radhesh <naga.radheshy@stericsson.com>
|
|
ST-Ericsson Linux next: -
ST-Ericsson ID: 370799
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I9bb0d97f8562d6abef8b0a6d424ad38bf7f58a1c
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50944
Reviewed-by: QABUILD
Reviewed-by: Arun MURTHY <arun.murthy@stericsson.com>
Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
|
|
Add power module test. This test, in debugfs/pwr_test/idle shall
pass when the screen is black, but suspend is not yet reached.
This module test checks clocks, prcmu-regulators, db8500 regulators
and ab8500 regulators.
The reason why not adding this to LTP is that
later this module test will contain tests for voicecall and
low-power-audio, which require Android to run.
ST-Ericsson ID: 367599
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
|
|
During booting of cpu1, there is a short window where cpu1
is online, but not active where cpu1 is occupied by waiting
to become active. If cpu0 then decides to schedule something
on cpu1 and wait for it to complete, before cpu0 has set
cpu1 active, we have a deadlock.
This is just a work around to hide the original problem.
ST-Ericsson Linux next: -
ST-Ericsson ID: 419957
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I133e511cece4024375cc92a82f79bd799514d71d
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/51514
Reviewed-by: QABUILD
Reviewed-by: Rickard ANDERSSON <rickard.andersson@stericsson.com>
|
|
Sets CONFIG_UID_STAT=y in u8500_defconfig
to enable network usage statistics per UID.
ST-Ericsson Linux next: -
ST-Ericsson ID: 410876
ST-Ericsson FOSS-OUT ID: NA
Change-Id: I812748a9997fb30a15810892b7a829f9e9c4cb7c
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50545
Reviewed-by: Dominik SLIWA <dominik.sliwa@tieto.com>
Tested-by: Dominik SLIWA <dominik.sliwa@tieto.com>
Reviewed-by: QABUILD
Reviewed-by: Tomasz HLIWIAK <tomasz.hliwiak@tieto.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
|
|
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
|
|
ST-Ericsson ID: 370799
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
|
|
This patch updates the AB8500 driver to make use of the I2C
read-modify-write service in the PRCMU firmware.
ST Ericsson ID: 354143
ST Ericsson FOSS-OUT ID: trivial
Change-Id: Ic204b63b3a7546bbb7cf4966c973f9ec3662c328
Signed-off-by: Mattias Nilsson <mattias.i.nilsson@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/47195
Reviewed-by: QABUILD
Reviewed-by: Mattias WALLIN <mattias.wallin@stericsson.com>
|
|
This disadvantage of having it interrptible is that it would
appear to work OK in most situations, but in the rare case
that this call does fail, it can lead to misconfiguration
of the AB, such as a regulator not being turned off and
leading to a platform power consumption increase.
There's no real benefit to having this interruptible.
Make it a plain mutex_lock. The non-interruptability matches
other low-level I/O functions such as SPI and I2C.
ST-Ericsson ID: 420727
ST-Ericsson Linux next: NA
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I38f325f1d6e24afc5f8def0f070aad2b79cb1a34
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/51048
|
|
Add automatic suspend testcase that can be used from
android.
To use, write the number of time you wish to do suspend to
<debugfs>/pwr_test/suspend
and when done read the same file. It will answer PASS or
FAIL.
ST-Ericsson Linux next: -
ST-Ericsson ID: 370799
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: Iad7d5365e7cde8b9aeeb87e99318e5455d56201f
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/43663
|
|
Ice Cream Sandwich come with the new service for Audio
accessory detection. This patch ensures that av8100 hdmi
source code send correct event to android code.
ST-Ericsson ID: 398326
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I3e3cfa6a19736a806749dbdc03de02d8b76b75e1
Signed-off-by: Deepak Karda <deepak.karda@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/41897
Reviewed-by: Jimmy RUBIN <jimmy.rubin@stericsson.com>
Reviewed-by: Christophe PRIOUZEAU <christophe.priouzeau@stericsson.com>
Reviewed-by: Robert LIND <robert.lind@stericsson.com>
Reviewed-by: Devinder THAKUR <devinder.thakur@stericsson.com>
Reviewed-by: Hakan GARDRUP <hakan.gardrup@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/42054
Reviewed-by: QABUILD
Tested-by: Axel FAGERSTEDT <axel.fagerstedt@stericsson.com>
Reviewed-by: Per PERSSON <per.xb.persson@stericsson.com>
|
|
The cable detect clock is always enabled. This should be
switched off at the startup. Can be switched on when required.
ST-Ericsson ID: 402683
ST-Ericsson Linux next: NA
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I08cdf267c1b4c6131a7d881df741ed7a2f3318cd
Signed-off-by: Venkata Biswanath <venkata.biswanath@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/41806
Reviewed-by: QATOOLS
Reviewed-by: QABUILD
Reviewed-by: Virupax SADASHIVPETIMATH <virupax.sadashivpetimath@stericsson.com>
Reviewed-by: Rabin VINCENT <rabin.vincent@stericsson.com>
Reviewed-by: Vijaya Kumar K-1 <vijay.kilari@stericsson.com>
|
|
Enable "Headset left" and "Headset Right" ALSA options by default
Signed-off-by: ramesh.chandrasekaran <ramesh.chandrasekaran@stericsson.com>
|
|
This reverts commit 9bfa8c7f5cf9aff1df84f1761841c8f3e7c84e97.
|
|
|
|
By disbaling the suspend we could avoid the hangs in suspend and resume.
This workaround will be removed once the power management supports
for all other peripheral drivers.
Signed-off-by: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com>
|
|
Signed-off-by: Philippe Langlais <philippe.langlais@stericsson.com>
|
|
This gets rid of the "'AID_NET_RAW' and 'AID_NET_ADMIN' undeclared"
compilation error.
Signed-off-by: John Stultz <john.stultz@linaro.org>
|
|
which lockup during suspend.
__device_suspend could return with an active timer on the stack
Change-Id: I113f5f9aa12f909cb46621b6744e02a104ddd2bd
Signed-off-by: Arve Hjønnevåg <arve@android.com>
|
|
When adb is enabled, only connect the gadget when adbd is ready. If adbd
dies or is restarted (e.g. "adb root"), the gadget is disconnected when
the adb device is close, and it is re-connected once adb re-open the
device.
- Add callbacks to adb, similar to FunctionFs callbacks, to notify the
gadget when the daemon is ready or closed.
- Refcount calls to android_enable/android_disable to enable the gadget
only once all the function daemons are ready.
- Add enable/disble to android_usb_function to notify the function when
it is added/removed from the list of enabled functions.
Change-Id: Id54ff85aec9cf8715c94b4f9bd6137a79ad58bfc
Signed-off-by: Benoit Goby <benoit@android.com>
|
|
Modify the kernel logger to record the UID associated with
the log entries. Always allow the same UID which generated a
log message to read the log message.
Allow anyone in the logs group, or anyone with CAP_SYSLOG, to
read all log entries.
In addition, allow the client to upgrade log formats, so they
can get additional information from the kernel.
Change-Id: Ie48fb614b43c9302a07ad2673b78dd8749b492b6
Signed-off-by: Nick Kralevich <nnk@google.com>
|
|
This patch corrects some bad behavior for the CG2900 driver
when system suspends.
Wake locks are added to stop Android from suspending when chip
should be contacted.
Signed-off-by: Par-Gunnar Hjalmdahl <par-gunnar.p.hjalmdahl@stericsson.com>
|
|
On snwoball V5 and up GPIO161 is routed to PMU_EN of the cg2900
and as such shouldn't be configured to handle an event from the
external connector (J23).
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
|
|
Snowball have the GPIO_EN on GPIO161 diffrent from u8500.
Signed-off-by: Robert Marklund <robert.marklund@stericsson.com>
|
|
Snowball have the GPIO_EN on GPIO161 diffrent from u8500.
Signed-off-by: Robert Marklund <robert.marklund@stericsson.com>
|
|
Daemonizing makes thread (besides other things) NON-FREEZABLE, and it will not
get fake signal on suspend to quite down_interruptible()
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
|
|
As the different prcmu routines are not supporting the db5500
board and will return EINVAL, it is pointless to use the other
states than WFI.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
This patch adds the cpuidle driver for the ux500 SoC.
The boards saves 12mA with these states. It is based on the latest
cpuidle consolidation from Robert Lee.
The cpu can go to retention only if the other core is in WFI.
If the other cpu is in WFI and we decoupled the gic from the cores,
then we have the guarantee, it won't be wake up.
It is up to the prcmu firmware to recouple the gic automatically
after the power state mode is selected.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
* db5500_prcmu_set_power_state
* db5500_prcmu_enable_wakeups
are called from prcmu_set_power_state and prcmu_enable_wakeups but
they are not defined.
When applying the cpuidle patch, the code invokes both functions
and that leads to an undefined functions compilation error.
So let's do like the other functions and return EINVAL.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
The mfd-2.6 kernel tree use the cpu_is_u5500 function
while this version use machine_is_u5500.
An error was introduced by backporting prcmu_is_cpu_in_wfi function
from the mfd-2.6 kernel tree.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
This patch allows to check if the other core is in WFI
mode. It is the last check the idle routine has to do before
entering into the retention state.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
This patch allows to decouple and recouple the gic from the PRCMU.
This is needed to put the A9 core in retention mode with the cpuidle
driver.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
|
|
Enable core cpuidle timekeeping and irq enabling and remove that
handling from this code.
Signed-off-by: Robert Lee <rob.lee@linaro.org>
|
|
Add basic imx6q cpuidle driver. For now, only basic WFI state is
supported. Deeper idle will be added in the future.
Signed-off-by: Robert Lee <rob.lee@linaro.org>
|
|
Add imx5 cpuidle driver.
Signed-off-by: Robert Lee <rob.lee@linaro.org>
|
|
Add common cpuidle init functionality that can be used by various
imx platforms.
Signed-off-by: Robert Lee <rob.lee@linaro.org>
|
|
Make necessary changes to implement time keeping and irq enabling
in the core cpuidle code. This will allow the removal of these
functionalities from various platform cpuidle implementations whose
timekeeping and irq enabling follows the form in this common code.
Signed-off-by: Robert Lee <rob.lee@linaro.org>
Tested-by: Jean Pihet<j-pihet@ti.com>
Tested-by: Amit Daniel<amit.kachhap@linaro.org>
Tested-by: Robert Lee<rob.lee@linaro.org>
Reviewed-by: Kevin Hilman <khilman@ti.com>
Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Deepthi Dharwar<deepthi@linux.vnet.ibm.com>
Acked-by: Jean Pihet<j-pihet@ti.com>
|
|
This patch enables calling generic l2 setup functions if device tree is used.
Signed-off-by: Amit Daniel Kachhap <amit.kachhap@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
|
|
Following the merge of CPU PM notifiers and L2 resume code, this patch
removes useless code to save and restore L2 registers.
This is now automatically covered by suspend calls which integrated
CPU PM notifiers and new sleep code that allows to resume L2 before MMU
is turned on.
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Amit Daniel Kachhap <amit.kachhap@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
|
|
This patch adds code to save L2 register configuration at boot, and
later used to resume L2 before MMU is enabled in suspend and cpuidle
resume paths.
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Amit Daniel Kachhap <amit.kachhap@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
|