Commit graph

303403 commits

Author SHA1 Message Date
Bhalchandra Gajare
34847385a5 ASoC: WCD9304: Vote for runtime pm off after slimbus port disconnect
If the vote for pm runtime is done while codec shutdown, it is possible
that the runtime pm vote occurs even before the slimbus port for tx/rx
audio channel is disconnected. This can cause problem in audio playback/
record. Fix by moving the vote for runtime pm after slimbus port has
been disconnected

Change-Id: I711bc5cfee5b832575ea0b91cf68e826f1a3c0f5
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2013-02-27 18:21:03 -08:00
Stephen Boyd
c081865714 msm: ssr: Panic on concurrent subsystem_restart()
Before "msm: SSR: Pull struct restart_wq_data into struct
subsys_device" we would allocate a work struct for every instance
of a subsystem_restart() call. After that change, we only
allocate one instance of the work during intialization and we
serialize calls to queue_work() with a restarting flag in the
subsys_device structure. This has the unfortunate side effect of
silently ignoring a subsystem_restart() call made while a
subsystem is in the process of restarting (i.e. hasn't reached
the end of subsystem_restart_wq_func().

Add a refcount around the wake lock so that the system stays out
of suspend for as long as any restart work item is being processed.
Then queue the work unconditionally so that the work queue
function can determine that a subsystem restart is happening
while the subsystem is powering up.

Change-Id: Ide5627a29a0df7c1c102cf508ce577ce4f751140
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2013-02-27 18:21:03 -08:00
Praneeth Paladugu
cd1fa64d6c msm: vidc: Adds error check for controls
- Adds Error check before calling control to make
sure that Venus is in right state.
- Adds supports to calculate right scratch buffer length.

Change-Id: I83043a87859d7bb31c683e3ad19a4a23fb519747
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
2013-02-27 18:21:02 -08:00
Jeff Hugo
20545ec597 msm: smd: fix packet polling race condition
Packet polling is intended to be used with interrupts disabled, however in
multicore targets, interrupts may not be disabled on all cores.  Therefore
packet polling must lock on shared resources to ensure cores with
interrupts enabled do not stomp on polling operations.

Change-Id: I2faa1024024a46ef7c55224f8e9c5e548d07c5e4
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
2013-02-27 18:21:02 -08:00
Mitchel Humpherys
aaf80f6db9 msm: Rename pmem variables and macros
Since MSM no longer uses PMEM, the variables, macros, and kernel
config (CONFIG_KERNEL_PMEM_EBI_REGION) relating to PMEM should be
renamed to something more generic.

Change-Id: I4ca909098c96317853d4f040850b63f37db4811e
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
2013-02-27 18:21:01 -08:00
Joel Nider
e31a03a5ba 8064: tspp: porting TSPP driver to 8064
Contains the platform data needed to run the TSPP driver on 8064.
For more details on the TSPP peripheral, please read:
kernel/Documentation/arm/msm/tspp.txt

Change-Id: Icaa3cca0e951bcd79cc7ed4efe456b38fa586c8d
Signed-off-by: Joel Nider <jnider@codeaurora.org>
2013-02-27 18:21:01 -08:00
Abhijeet Dharmapurikar
e59243486f power: pm8921-bms: use shutdown soc if it is within limits
When a strong battery is removed, it was seen that the battery voltage
lines on the phone take about five to six seconds to go below 2.1volts
where the pmic resets all the battery backed registers.

If a new battery is plugged in within this time the driver will force
the shutdown soc on this battery which is incorrect.

Compare the shutdown soc with the calculated soc and if they are
different than a configurable limit, simply discard the shutdown soc
and use the calculated soc.

Change-Id: I02e7c78eb5e9df0127ce7e78b0bd9792a8141039
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:21:00 -08:00
Abhijeet Dharmapurikar
911fd944fb power: pm8921-bms: dont adjust at high battery capacity
The adjusting algorithm was designed to prevent uvlo event towards
low state of charge situations. It works by decreasing ocv so that the
a lower soc is reported.

When the battery is fully charged, we fake an ocv event, causing the
ocv to jump to 100% and cc to 0. But after a few milliseconds when
charging stops, the adjusting algorithm reduces the ocv which
causes the SOC to jump from 100% to 99%.

This jump from 100 to 99 is incorrect. Moreover we have seen quick
decreases at high soc range because of the adjusting algorithm.
To fix that and the 100 to 99% jumps simply don't run the adjusting
algorithm when the battery soc is above 90%.

Change-Id: I68e8bb72ec0e58552f9fedecceaffbf149c1f10e
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:21:00 -08:00
Abhijeet Dharmapurikar
2e92e03738 power: pm8921-bms: iterate rbatt algorithm
When ocv (open circuit voltage of the battery) is adjusted to match a
specific soc, rbatt (the battery resistance) changes too. This is
because rbatt is dependent on the remaining charge which changes as
the ocv changes.

The issue we observed with this changing rbatt was the unusable charge
changes which causes the soc to move away from the soc the algorithm
attempts to match.

To get around this issue adjust both the rbatt and ocv in a iterative
fashion until rbatt value stabilizes.

Change-Id: Id3e36c1a8361a6d71b63fca3e6b0c2a4a9bb7e06
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:21:00 -08:00
Abhijeet Dharmapurikar
8f768a0109 power: pm8921-bms: use background work to calculate soc
The soc (state of charge) calculation algorithms and the associated
adjusting algorithms were coded assuming that the soc will be queried
at distant intervals (more than 20 seconds).

However this assumption is bad and soc can be queried at sub second
intervals. These soc queries in quick succession causes the adjusting
algorithm to over correct the battery voltage.

Separate the soc calculation from the soc reporting - calculate soc
at specific intervals, while the reporting uses the values resulting
from the latest calculation. This way the adjusting algorithms run
at specified intervals and are not perturbed by the sub second querying
for soc.

Change-Id: I240bfdbd3ae3b2e37ae16cc3757a25f5a918e972
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:59 -08:00
Abhijeet Dharmapurikar
b7bf0dfbec power: pm8921-bms: adjust rbatt and ocv both for shutdown soc
When ocv (open circuit voltage of the battery) is adjusted to match a
specific soc, rbatt (the battery resistance) changes too. This is because
rbatt is dependent on the remaining charge which changes as the ocv
changes.

The issue we observed with this changing rbatt was the unusable charge
changes which causes the soc to move away from the soc the algorithm
attempts to match.

To get around this issue adjust both the rbatt and ocv when we want to
match a soc for a specific soc.

Change-Id: Ifa8efe1e37b9982d6d67730f911e47e369e9b4ff
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:59 -08:00
Abhijeet Dharmapurikar
f4384a2b5f power: pm8921-charger: increase hearbeat if battery is low
When the battery percent charge goes low we want to increase the
frequency of state of charge updates. This helps the correction
algorithm ample opportunities to correct the state of charge and
prevent a low voltage shutdown.

Change-Id: Ie846350ee4c1fd70198d28646779b20349134ef7
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:58 -08:00
Abhijeet Dharmapurikar
e4ac94b8f4 power: pm8921-bms: increase soc slowly while charging
It could happen that the calculated soc was higher than the reported
soc even when a charger is not plugged in. This usually happens when
the battery temperature increases or the average current changes causing
unusable charge to go low. The current code never reports this high soc
unless a charger is plugged in.

However at the instant when charger is plugged in, the driver reports
that high calculated soc. This jump in soc in an instant is
unacceptable.

Slowly increase the reported soc so that it approaches the calculated
soc while charging. Basically we are playing catchup between reported
soc and calculated soc. The catch up time is based on how big the
difference between calculated soc and reported soc is - we allow
60 seconds per percent delta.

Change-Id: Ic1ae741c23ea596a46ca2cd49b58c75cf773c3e5
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:58 -08:00
Abhijeet Dharmapurikar
d2f418d0b8 power: pm8921-bms: remove Dynamic Unusable Charge algorithm
The dynamic UUC algorithm changes the UUC as load, state of charge and
temperature changes. This uncontrolled behaviour causes unacceptable
jumps in state of charge numbers.

Replace the dynamic UUC algorithm with a simple average current based
UUC. The average current is calculated by remembering the load for last
few (16) samples. Also to maintain a reasonable UUC while charging, a
load of 300mA is assumed.

Note that the first time UUC is calculated we don't have load samples
and in that case the instantaneous current is used.

Since we now don't change the UUC with respect to max possible load
(itest), the usage of this value is removed.  Also instead of failure
voltage we introduce cutoff voltage which represents the loaded voltage
by which the battery should be reported 0%.

Change-Id: Ia640164ee2c9690537308d4e840953824ba15b58
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:58 -08:00
Abhijeet Dharmapurikar
df4521bb9f power: pm8921-bms: use shutdown_soc to force power on soc
Experiments have shown that shutdown_soc is very accurate. However
upon a restart, the battery may be unsettled, leading to a significantly
different power on soc.

Update the code to force the value of shutdown soc on the power on
soc. To do this simply update the power on OCV (open circuit voltage)
value.

Change-Id: I1015b800e559cb08422364ffc8c8b981ddd4f07e
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:57 -08:00
Abhijeet Dharmapurikar
da01932c05 power: pm8921-bms: use direct charger api instead of power supply api
The power supply api reports usb as missing if a usb wall charger
is plugged in - this is expected as a usb wall charger should be
treated as a dc charger - not a usb charger.

The bms needs to know if anything is connected to the usb port, it
does not care whether it is a usb wall charger or pc usb charger.

Use a direct api exposed by the charger that reports the USBIN_VALID
bit.

Change-Id: Ide05f7da1b14ad3b288633e887611dd5fa79276a
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:57 -08:00
Abhijeet Dharmapurikar
0cc927d169 power: pm8921-bms: periodic hkadc calibration
Introduce periodic hkadc calibration again. A bug was introduced when
periodic ccadc calibration code was moved to the ccadc driver - hkadc
calibration got dropped.

Reintroduce periodic hkadc calibration.

Change-Id: Ib22e03ce881320ca556bfbddd55e658b42363065
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:56 -08:00
Abhijeet Dharmapurikar
4ea74ee2c4 power: pm8xxx-ccadc: missing calibration at bootup
There is a bug in the sequence between when the calibration work is
scheduled and the global chip pointer is initialized. If work is
scheduled before the chip pointer is initialized it refuses to
calibrate.

Initialize the chip pointer before scheduling calibration work.

Change-Id: I333c97c005e8bc17a28fc0dac3f76e4f26fcc486
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:56 -08:00
Abhijeet Dharmapurikar
ad818ec2af power: pm8921-bms: fix rounding down state of charge
The code is rounding down state of charge value in the final step of the
calculation. Instead use a division that returns the closest integer.

Change-Id: Ia47d1c4eb684dd4c31e454dc762add0feab66b75
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:55 -08:00
Abhijeet Dharmapurikar
ac0fbe15ff power: pm8921-bms: remove reading rbatt from bms
Since battery resistance is found to be changing w.r.t. state of charge,
temperature and time since a load change happened, it is best if rbatt
is estimated using learnt tables.

Remove all the code that attempts to read battery resistance from BMS.

Change-Id: Id8d84d610df0bcca79d7e42ffae572c0898d63c6
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:55 -08:00
Abhijeet Dharmapurikar
1d78857112 power: pm8921-bms: dont use override mode if batfet is open
If the battery fet is open, the current sourced or sinked from the
battery is very low. There is a high chance that an open circuit
voltage(OCV) happens. Putting the BMS in override mode resets the timer
whose expiry causes an OCV.

Avoid putting the BMS in override mode if battery fet is open.

Change-Id: Idc463bcc55b51cf188cc8ee440a66f763654f174
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:20:54 -08:00
Rohit Vaswani
a25af3f7fd dts: 9625: Remove duplicate property
"#gpio-cells" property somehow ended up being defined
twice in the device node for gpio. Remove it

Change-Id: I555a2d23c2f11c8bb28c8797b9e71a48cb066a49
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
2013-02-27 18:20:54 -08:00
Siddhartha Agrawal
5bcec1d31d msm_fb: display: Set timing generator after register flush
Timing generator was getting started before the register flush.
Stale values were sometimes causing IOMMU page faults on bootup.

Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
Change-Id: Ia671c3603e383af94197a23a8e5e5f32274a9978
2013-02-27 18:20:53 -08:00
Shuzhen Wang
dbf1e4b004 camera: vfe32: Use vfe subdev for NOTIFY_VFE_IRQ notification.
By doing this we don't need to look up mctl instance, which is
not necessary because NOTIFY_VFE_IRQ does nothing more than
routing IRQ to VFE subdev.

If we were to look up mctl instance, for IRQs like RESET_ACK,
we won't know whether we should use PIX or RDI instance.

Change-Id: Idbecc47d7e031302cc4c03aa9936584ea10225d3
Signed-off-by: Shuzhen Wang <shuzhenw@codeaurora.org>
2013-02-27 18:20:53 -08:00
Michael Bohan
3ae7a105e9 Revert "Revert "msm: board-8974: Switch from stub to krait regulator for 8841 S5-S8""
This reverts commit ecfd56aaca9e1ed20e6eae3322c365f9d8e5cc0c.

krait-regulator is now working, so it's safe to switch over.

Change-Id: I6f52eb4b543e2f8da879bf0dc32f9237cbd318a6
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2013-02-27 18:20:52 -08:00
Rohit Vaswani
fe7c149583 ARM: arch timer: Set the TVAL before timer is enabled
Currently we enable the timer and unmask the interrupt
before setting the TVAL.
(in commit 9c642ecd6b71bb068c8a931285dc1dce043b137c)
This could cause a regression by opening a window
where TVAL can be negative (from a previous timer trigger)
and the interrupt unmasked, which would lead to an
immediate trigger, before TVAL is updated with the new value.
We need to set the TVAL after unmasking the interrupt, but
before enabling the timer.

Change-Id: I4989834f5dd50aa72e4e97f9ab15b82931bfdd1c
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
2013-02-27 18:20:52 -08:00
Naveen Ramaraj
133c77a33f msm: ocmem: Add zone initialization checks
Since OCMEM zones can vary based on the target
add an initialization flag for each zone.

Also restrict each client to only operate on
active zones.

Change-Id: Iccac64fea277f833034ddfe71cce084060cfa16d
Signed-off-by: Naveen Ramaraj <nramaraj@codeaurora.org>
2013-02-27 18:20:52 -08:00
Michael Bohan
6e75a748ce msm: krait-regulator: Change default min voltage to 0.9V
The current default min voltage value of 0.5V is inconsistent with
the PMIC default for 8841_s5 of 0.9V. This discrepancy causes
krait-regulator to incorrectly set kraits to LDO mode instead of
headswitch, despite the default hardware voltage being too high to
support LDO mode.

The bootstrap procedure is guaranteed to never to change 8841_s5
to a different voltage, so it's safe and reasonable to assume a
default value instead of reading 8841_s5's real-time value on
probe().

Change-Id: I28a222574d47c4961ebc2dee9c9f40d687cc4d55
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2013-02-27 18:20:51 -08:00
Naveen Ramaraj
504485872a msm: ocmem: Fix device addresses returned to Video subsystem.
Venus Core accesses into OCMEM via OCMEMNOC use relative
addressing mode instead of absolute addressing. Update the
OCMEM model to reflect this behavior.

Change-Id: I2c9bd63f350511720a894aefc7e044e1adf3047f
Signed-off-by: Naveen Ramaraj <nramaraj@codeaurora.org>
2013-02-27 18:20:51 -08:00
Joel King
aa1f4fe003 msm: tty: update receive room just before writing data to the ldisc
There is a corner case in the tty driver where the value of
tty->receive_room is not being updated before writing data to
the line discipline. When this happens, data is lost because
of failure to re-submit any remaining data to the ldisc.

This fix is dependent on a new tty flag that is set only when
the tty driver is used for efs sync betweem the mdm modem and
the applications processor.

CRs-Fixed: 358868
Change-Id: I0ba02980504b4d8187b8c83111c2c883d194efa2
Signed-off-by: Joel King <joelking@codeaurora.org>
2013-02-27 18:20:50 -08:00
Amy Maloche
8b6e5d26eb input: atmel_mxt_ts: add support for 336S and 1664S controllers
New controllers in the Atmel maXTouch family require support
for new objects, and the addition of their family ID's and
respective reset times.

Change-Id: I3fb9494e7cc88a6b213cbe0310d95fdb4be299aa
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2013-02-27 18:20:49 -08:00
Gagan Mac
0bfd432d9d msm: msm_bus: Avoid initializing NoCs not owned by Apps
The NoCs not owned by apps are initialized by bootloaders.
Do not touch such remote NoC registers to avoid unclocked
register accesses.

Change-Id: I8e5d36c4967daf606fdad36e2705d4daec25f060
Signed-off-by: Gagan Mac <gmac@codeaurora.org>
2013-02-27 18:20:49 -08:00
Praveen Chidambaram
33f418b26a msm: rpm-smd: Fix race conditions with SMP
When a rpm message is sent in a noirq context from Core 1, it is
possible that the ack is processed by Core 0. This would result in
the ack not getting propageted correctly to the client. Also, added a
check on error codes from a smd API.

Change-Id: Id983dc50ad85dfef8fe6971c4e5eda2e77f24d2b
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
2013-02-27 18:20:49 -08:00
Jordan Crouse
1c152d4571 msm: kgsl: Allow the wait_timeout to be disabled
With the improved hang detection we don't technically need a upper
timeout bound for a process to wait in waitfortimestamp().  Allow
for a idle_timestamp of '0' to allow the loop to wait for ever.
The infrastructure for changing the idle_timeout still exists
so it can be changed to whatever value is appropriate for debugging
or testing.

CRs-fixed: 382366
CRs-fixed: 383999
Change-Id: Ic0dedbadf2c100eb56ed2338914575061776e725
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:20:48 -08:00
Jordan Crouse
0303adb2b1 msm: kgsl: Don't use 'wait_timeout' in the idle functions
There are two distinct parts of the code that may need to loop waiting
for the GPU to complete a task: waiting for a timestamp and waiting
for the entire core to go idle. Waiting for a timestamp technically
doesn't need a timeout since the only downside is a process that sleeps
forever with an interruptible timeout. Waiting for the core to go idle
is more problematic because it is a busy wait and it is the last point
we can safely detect a GPU hang.

Beacuse we can (and will) not use a timeout in wait for timestamp, we
need to institute a new timeout value to be used in idle. Nowhere the
idle function is called uses a custom value for the timeout, so remove
that parameter from the calls and use a static timeout value in the
core specific functions.

Change-Id: Ic0dedbad9ecd2044c34e4cec551dc7f53b253f3d
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:20:48 -08:00
Vikram Mulukutla
75b5f5b38f msm: clock-8974: Add additional MMSS clocks to the debug mux
Add additional debug mux indices to the measurement mux
table to allow certain gfx3d, venus and NOC clocks to be
measured.

Change-Id: Ic16a1c45d3982d5555a25cf07acfb604d76a4fc8
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2013-02-27 18:20:47 -08:00
Vikram Mulukutla
4813d0065d msm: clock-8974: Correct the resource ID for the mmssnoc_ahb_clk
Updated documentation indicates the resource ID for the
mmssnoc_ahb_clk is 0x3. Update this in the code.

Change-Id: I245c0a787cde641b86ff96c8d9319c1e8fb57043
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2013-02-27 18:20:47 -08:00
Vikram Mulukutla
b5b1c1af51 msm: clock-8974: Activate RPM clock scaling in pre_init.
The RPM has a special resource that enables clock scaling.
Vote for this resource in pre_init. Without this vote, the
RPM will return success for any clock scaling request, but
will not actually scale the clock.

Change-Id: I4bfbace0677601f613aee7eba70131fdc69add26
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
2013-02-27 18:20:46 -08:00
Gagan Mac
c109c15a88 msm: msm_bus: Enable clocks before accessing registers
NoC/BIMC clocks should be enabled before accessing registers for
initialization and before updating bandwidth.

Change-Id: I3454852e4f7db7ed1e2740132ce921efe6f02089
Signed-off-by: Gagan Mac <gmac@codeaurora.org>
2013-02-27 18:20:46 -08:00
Michael Bohan
6f7d371668 gpio: qpnp-pin: Update MPP and GPIO subtypes based on doc change
The subtypes defined in the documentation have changed again.
Update both GPIO and MPP subtype values in the qpnp-pin driver to
reflect this.

Change-Id: I22e22414a74d724259706c927582d1573dc58875
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2013-02-27 18:20:46 -08:00
Michael Bohan
780242c7f8 gpio: qpnp-pin: Fix constraint checking for mode
GPIOs has only three modes where as MPP has seven. Change the
constraint check to check for the appropriate value based on the
pin type.

Change-Id: I53c85b4a5e852ef3b9d5dbe939a496053fa26197
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2013-02-27 18:20:45 -08:00
Michael Bohan
c13c2c690d gpio: qpnp-pin: Report erroneous value on failed param check
Print the reason why a parameter constraint check failed to
improve debug capability.

Change-Id: Icd4a6457592bb4a73df61431dfcff63358bd7064
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2013-02-27 18:20:45 -08:00
Hamad Kadmany
41ceac0540 media: dvb: mpq: Add setting of TSIF mode
TSIF interface can work in different modes, added default
setting of the mode and option to set different
modes through module parameters

Change-Id: Iaa8250d4fdcc6aaf219b268da4446d11a8f6fddc
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
2013-02-27 18:20:44 -08:00
Hanumant Singh
1aa279ba55 defconfig: 8974: Enable watchdog on msm8974
Enable the watchdog hardware module. In case of cpu hang or deadlock
the watchdog will timeout and fire an interrupt. This will help
to capture system snapshot at the time of the crash.

Signed-off-by: Hanumant Singh <hanumant@codeaurora.org>
2013-02-27 18:20:44 -08:00
Amy Maloche
0dea8022f2 qup_i2c: set up node before calling of_i2c_register_devices
Device-tree framework for I2C expects adapter of device's
of_node to be initialized before adding I2C slave devices
on the bus.

Change-Id: I64af0b6bafb71ec94ad5acfe3034e9be887ebc47
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2013-02-27 18:20:44 -08:00
Vinay Kalia
7aff3cccf4 msm: vidc: Allocate persist buffers.
Persist buffers are needed by decoder/encoder
in some cases. These buffers are mandatory and
cannot be ignored. This change allocates persist
buffers according to the requirement by video device
to avoid hangs.

Change-Id: I961bb1abe45dba1cbc770edef2277f33ea186546
Signed-off-by: Vinay Kalia <vkalia@codeaurora.org>
2013-02-27 18:20:43 -08:00
Bhalchandra Gajare
ebf2101d60 ASoC: WCD9304: Fix to enable Headphone in class G mode
Headphone path can either be in CLASS G mode or CLASS AB mode.
The class G mode in the codec hardware is used to adjust the
supply voltage of the PA's according to the signal level. This
makes the system as efficient as possible. Fix the register
sequence to enable headphone in class G mode

CRs-fixed: 380598
Change-Id: I110c4e0ea958ef55c0b407c566deb7da58f4d99a
Signed-off-by: Bhalchandra Gajare <gajare@codeaurora.org>
2013-02-27 18:20:43 -08:00
Chris Smith
a8d436d5bb genirq: Provide an accessor for IRQ_PER_CPU flag
Adds an accessor function, irq_is_per_cpu(), for the flag IRQ_PER_CPU.

This is useful if you have an IRQ that is per-cpu in some hardware
implementations, and not in others (example: ARM PMU Interrupts), and
you want to handle both cases.

Change-Id: Ic176ee5b8f9a830c1db35cb939ec659a4cf3f938
Signed-off-by: Chris Smith <chris.smith@st.com>
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
2013-02-27 18:20:43 -08:00
Shalabh Jain
9900356726 diag: Update last SSID for general category
DIAG SSID ranges are updated on modem side. Hence same
update is needed on application processor side. This
change updates the same.

We plan to implenent an algorithm which will remove the
need for manual updates.

Change-Id: I573b75fe0b88bad6f0b2fd5d1b12eb4530067912
Signed-off-by: Shalabh Jain <shalabhj@codeaurora.org>
2013-02-27 18:20:42 -08:00
Rohit Vaswani
b482854e59 defconfig: 9625: Enable SPI, SPI Ethernet and dependent NET configs
This patch enables SPI and SPI ethernet for MSM9625. Since ethernet
requires the NET configs to be enabled to function correct, enable
these configs as well.

Change-Id: I747f565805db8b889cdb8996b88d3b33dce33d82
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
2013-02-27 18:20:42 -08:00