Commit Graph

25521 Commits

Author SHA1 Message Date
Linux Build Service Account
23342b6268 Merge changes Ic0dedbad,Ic0dedbad into msm-3.0
* changes:
  msm: kgsl: Add timestamp events
  msm: kgsl: Reimplement the timestamp comparison function
2011-11-23 09:13:58 -08:00
Jordan Crouse
d4bc9d2e0c msm: kgsl: Add timestamp events
Add support for triggering asynchronous events when a timestamp
expires.  The infrastructure is generic enough to support different
sorts of events and callbacks.  The first user of the event
infrastructure is a way to release a genlock locks on behalf of a
user space process.

Change-Id: Ic0dedbadfe67d98a5678453cbe0ac6996ba5c68f
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2011-11-22 17:51:51 -07:00
Anirudh Ghayal
ca42c7dec9 mfd: pm8xxx-irq: Provide the IRQ base address through core data
Facilitate the driver to support PMICs (such as PM8901)
with different IRQ base address.

Change-Id: I285a9b859b795508620ea6dfd7b5ef6953e7aeb3
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-11-22 21:26:33 +05:30
Linux Build Service Account
f756be5b27 Merge "ASoC: wcd9310: add I2C\I2S support for tabla codec" into msm-3.0 2011-11-22 06:35:56 -08:00
Abhijeet Dharmapurikar
82d939848f power: pm8xxx-ccadc: Add pm8xxx ccadc subdevice
Until now only the BMS system was using the ccadc so there was
no need to create a separate ccadc driver.

However we can run in a configuration with BMS disabled
and clients won't be able to read battery current via ccadc.

Separate the ccadc from the bms, this change in is preparation
to add a ccadc api to read the battery current.

Change-Id: Ib96b146d91d01d196df9291eb23432cd430db4d0
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2011-11-21 11:21:31 -07:00
Linux Build Service Account
df0f40090a Merge "power: pm8921-charger: use resume_voltage_delta" into msm-3.0 2011-11-21 10:14:36 -08:00
Linux Build Service Account
d9ff38ad69 Merge "usb: otg: Upgrade support for PHY retention mode" into msm-3.0 2011-11-21 10:14:36 -08:00
Linux Build Service Account
121d4a7001 Merge "drivers: base: Add generic cross-process locking API" into msm-3.0 2011-11-21 05:26:28 -08:00
Anirudh Ghayal
c49157f837 msm: 8660: Add ssbi device for PM8901
Use the msm-ssbi driver for communication over
the SSBI interafce.

Change-Id: Ibc26754944c32ac8eaa939f552033974e1a7758f
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-11-21 10:06:00 +05:30
Abhijeet Dharmapurikar
d55878e749 power: pm8921-charger: use resume_voltage_delta
Since the driver will be changing the max vdd if the battery
temperature enters warm or cool zone, it should also change
the vbatdet voltage so resume of charging can begin accordingly.

Also provide a means to quickly debug is the battery is in cool/warm
zone.

Change-Id: I0fe83a4fabf76711bf86377c3ac23cceecb6e98b
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2011-11-20 19:32:40 -07:00
Amit Blay
58b3147caf usb: otg: Upgrade support for PHY retention mode
Current implementation supports PHY retention mode, when
VBUS detection is done by PMIC.
This change adds the support for PHY retention mode, for
the case where VBUS detection is done by USB PHY.
In that case, the PHY wakes up the MPM and CORE using its
High-Voltage interrupts.

Change-Id: I5fec518337413f175a8bc671897836affc55381c
Signed-off-by: Amit Blay <ablay@codeaurora.org>
2011-11-20 14:37:57 +02:00
Jordan Crouse
29f66af8a0 drivers: base: Add generic cross-process locking API
Add a generic locking API for situations where multiple user-space
processes and/or kernel drivers need to cooordinate access to a
shared resource such as a graphics buffer.

Change-Id: Ic0dedbad74b970d7bd1a6624a845b5b1b9847443
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2011-11-19 13:28:49 -07:00
Linux Build Service Account
517a34cb37 Merge "Kbuild: Export msm_audio_voicememo.h to user space" into msm-3.0 2011-11-19 06:35:27 -08:00
Linux Build Service Account
2f0ec1450b Merge "Merge remote-tracking branch 'common/android-3.0' into msm-3.0" into msm-3.0 2011-11-18 21:35:29 -08:00
Manish Dewangan
1ba4da1263 Kbuild: Export msm_audio_voicememo.h to user space
- Add msm_audio_voicememo.h in Kbuild to export to user space.
- Remove copyright and license information from audio header files
  exported to user space to avoid any licensing issues.

Change-Id: Ic252c77e4fed2639546ad711ab0d2de6d6fb1453
Signed-off-by: Manish Dewangan <manish@codeaurora.org>
2011-11-18 22:54:46 +05:30
Santosh Mardi
e15e230fcf ASoC: wcd9310: add I2C\I2S support for tabla codec
Add support for I2C\I2S interface for tabla codec along
With SLIMBUS interface.

Change-Id: Ib0f2ebe62121c1e43a9bdbcaec7621e9d96ac3c4
Signed-off-by: Santosh Mardi <gsantosh@codeaurora.org>
2011-11-18 03:06:26 +05:30
Linux Build Service Account
014783ce1c Merge "Kbuild: Add msm_audio_amrnb.h and msm_audio_qcp.h" into msm-3.0 2011-11-17 09:29:49 -08:00
Bryan Huntsman
d074fa2796 Merge remote-tracking branch 'common/android-3.0' into msm-3.0
* common/android-3.0: (570 commits)
  misc: remove kernel debugger core
  ARM: common: fiq_debugger: dump sysrq directly to console if enabled
  ARM: common: fiq_debugger: add irq context debug functions
  net: wireless: bcmdhd: Call init_ioctl() only if was started properly for WEXT
  net: wireless: bcmdhd: Call init_ioctl() only if was started properly
  net: wireless: bcmdhd: Fix possible memory leak in escan/iscan
  cpufreq: interactive governor: default 20ms timer
  cpufreq: interactive governor: go to intermediate hi speed before max
  cpufreq: interactive governor: scale to max only if at min speed
  cpufreq: interactive governor: apply intermediate load on current speed
  ARM: idle: update idle ticks before call idle end notifier
  input: gpio_input: don't print debounce message unless flag is set
  net: wireless: bcm4329: Skip dhd_bus_stop() if bus is already down
  net: wireless: bcmdhd: Skip dhd_bus_stop() if bus is already down
  net: wireless: bcmdhd: Improve suspend/resume processing
  net: wireless: bcmdhd: Check if FW is Ok for internal FW call
  tcp: Don't nuke connections for the wrong protocol
  ARM: common: fiq_debugger: make uart irq be no_suspend
  net: wireless: Skip connect warning for CONFIG_CFG80211_ALLOW_RECONNECT
  mm: avoid livelock on !__GFP_FS allocations
  ...

Conflicts:
	arch/arm/mm/cache-l2x0.c
	arch/arm/vfp/vfpmodule.c
	drivers/mmc/core/host.c
	kernel/power/wakelock.c
	net/bluetooth/hci_event.c

Signed-off-by: Bryan Huntsman <bryanh@codeaurora.org>
2011-11-16 13:52:50 -08:00
Liyuan Li
d973663b4a video: msm: Adding support for MDP4 HSIC controls
Adding support for users to adjust Hue, Saturation, Intensity and
Contrast of the display.

Change-Id: I79cb69c871686ccba115798f635f768b9a50affc
Signed-off-by: Liyuan Li <liyuanl@codeaurora.org>
2011-11-16 12:44:14 -07:00
Linux Build Service Account
a07e03c349 Merge changes Icf600a63,Ib105cc94,I0a50b050 into msm-3.0
* changes:
  msm: configs: Copper: Enable HSUSB OTG, Device and android gadget
  msm: Copper: Add USB clocks to dummy clock list
  msm: Add device tree support for HSUSB
2011-11-16 10:00:17 -08:00
Praveena Pachipulusu
76891c0de2 Kbuild: Add msm_audio_amrnb.h and msm_audio_qcp.h
Change-Id: Icaec1c0d5454dc2d6c3f85cb28d88fc334829296
Signed-off-by: Praveena Pachipulusu <pveena@codeaurora.org>
2011-11-16 22:13:18 +05:30
Anirudh Ghayal
c2019339bc mfd: pm8058: Modify pm8058 subdevices to pm8xxx interface
Move the following  subdevices to use the pm8xxx interface -
mpp, irq, gpio, keypad, power-key, leds, othc, vibrator,
rtc, batt-alarm, thermal, upl, nfc, pwm, xoadc, regulators,
xo-buffers, charger.

This allows usage of a common driver for modules which are same
across multiple PM8XXX PMICs. It also provides flexibility
to add/remove subdevices for multiple board configurations.

Change-Id: Id9795552fc9f4a2c920c070babfaef1f4cd6ca61
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-11-16 19:06:11 +05:30
Linux Build Service Account
e33ed0a154 Merge "USB: OTG: msm: Fix ACA implementation" into msm-3.0 2011-11-16 02:54:52 -08:00
Linux Build Service Account
cca8a2f2cb Merge "slim:msm: Add runtime PM to MSM slimbus controller" into msm-3.0 2011-11-16 02:54:52 -08:00
Pavankumar Kondeti
eaea7fe54a msm: Add device tree support for HSUSB
Add device tree support for MSM HSUSB.  The OTG driver registers
gadget and host platform devices based on the operational mode.
This patch also updates the copper device tree source file with
HSUSB device specifics.

Change-Id: I0a50b0500d15f32ff65468cdb411398a80a20329
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2011-11-16 08:37:59 +05:30
Pavankumar Kondeti
aa449e1efb USB: OTG: msm: Fix ACA implementation
Synopsis 28nm PHY has two different circuits for detecting changes on
ID line.  ID_DIG is designed for detecting ID_float vs ID_gnd.  ID_ACA
is designed for detecting RID_A, RID_B, RID_C states.  These are mutually
exclusive and enabling both circuits has undefined behavior.  Enable
ID_ACA upon VBUS high or ID_gnd events to detect further ACA states.

ACA ID_GND threshold range is overlapped with OTG ID_FLOAT threshold range.
Hence PHY ID_DIG circuit can not be used for detecting ACA ID_GND.  Use
PMIC ID circuit for detecting both OTG and ACA ID_GND.

Link controller can not generate PHY_ALT interrupt in host mode. But the
corresponding PHY register reflects the actual ID state.  Hence implement
polling to read PHY register to detect ID_GND --> ID_A, ID_A --> ID_B
transitions.  That means low power mode can not be allowed in host mode.
Also disallow suspending the device attached on the root hub.  Otherwise
PHY is put into suspend state automatically upon setting SUSP bit in PORTSC
register.

Link controller can not generate asynchronous interrupt for ID_ACA changes
in low power mode.  Hence disallow low power mode in ID_B and ID_C states.

USB_MSM_ACA is not selected by default. If it selected, ACA states can be
detected and low power mode is not allowed in host mode.  Writing "enable"
to <debugfs>/msm_otg/aca enables ACA irrespective of USB_MSM_ACA selection.
This is meant for debugging only.

Change-Id: I51e80d803a583c5bdffc8111696943c04958f604
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2011-11-15 13:20:12 +05:30
Sagar Dharia
45ee38a45b slim:msm: Add runtime PM to MSM slimbus controller
Runtime PM is used to turn clocks on and off when the controller is
not in use. There are 2 use-cases for the controller:
When the controller is used for messaging, pm_runtime_get is called
before sending the message. pm_runtime_put is called when message is
sent and/or response is received.
When the controller is used for data channels, pm_runtime_get is
called when data channel slot usage goes from 0 to non-zero.
pm_runtime_put can't be just called when data channel is scheduled
since data channel activity is going on until the data channel is
explicitly taken down. In that case, pm_runtime_put is called when
data channels are no longer using any slots on the bus.
pm_runtime_autosuspend is used to ensure that runtime_suspend doesn't
happen right after runtime enters idle state. This serves 2 purposes:
1. Resources aren't turned on/off too frequently.
2. There is a use case from audio where it does read/write to some
registers and the following data-channel setup happens from the LPASS
(satellite side). The timer ensures that there is no runtime_suspend
between these 2 activities.

Change-Id: I282e779380ae76058198e63c088aabfa3f1686fd
CRs-Fixed: 318901
Signed-off-by: Sagar Dharia <sdharia@codeaurora.org>
2011-11-14 23:16:37 -07:00
Dima Zavin
9ab6a29787 misc: remove kernel debugger core
The current split between this and the fiq debugger is awkward and does
not have any benefit (the interface between the two is also too simplistic).
The fiq debugger code itself needs a lot of refactoring, part of which
would be to split out some components that are arch indpendent.

So, for now, move this very small piece back into the fiq_debugger.

Change-Id: Ie4ec2a2f5d907be1691a0eb6ae9304aad29ecd14
Signed-off-by: Dima Zavin <dima@android.com>
2011-11-14 10:27:10 -08:00
Anirudh Ghayal
51e947f6f5 mfd: pm8xxx-misc: Add pm8xxx stay on API
The API configures the PMIC to ignore the PS_HOLD low
signal, which can be used during debugging.

Change-Id: I162657934e34da081eb897d64ffed36ad48e4eff
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-11-14 08:19:17 +05:30
Anirudh Ghayal
a4262a3821 mfd: pm8xxx-misc: Add pm8xxx hard reset config API
The API configures PMIC for different behaviour on hard reset.
The different options are to disable hard reset, shutdown or
restart on hard reset.

Change-Id: I214d563e904dd7e73c98a454866718a60a11b6dd
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-11-14 08:19:05 +05:30
Linux Build Service Account
27e8d53719 Merge changes I75853196,I9e677ebd,Id3802e37,Ic3fe2733 into msm-3.0
* changes:
  mfd: pm8xxx-misc: Add pm8xxx watchdog reset control API
  mfd: pm8xxx-misc: Add pm8xxx smpl based API's
  mfd: pm8xxx-misc: Add the pm8xxx coincell chg API
  mfd: pm8xxx-misc: Add a ISR to handle 32 kHz OSC halt
2011-11-13 13:30:25 -08:00
Linux Build Service Account
72a2b5ddf5 Merge "hwmon: pm8xxx-adc: Merge pm8921-adc and pm8xxx-adc" into msm-3.0 2011-11-11 21:45:05 -08:00
Anirudh Ghayal
a23c1cabcc mfd: pm8xxx-misc: Add pm8xxx watchdog reset control API
The API configures PMIC to either shutdown or reset
when the PS_HOLD line goes low.

Change-Id: I758531966c08ec5acafaeedea13b59019aafa8bc
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-11-12 06:14:34 +05:30
Anirudh Ghayal
bfbaf82d21 mfd: pm8xxx-misc: Add pm8xxx smpl based API's
Add APIs to:
1. Configure PMIC to reset/shutdown on a SMPL event
2. Set SMPL delay time

Change-Id: I9e677ebd5b4339b50e7d18e2ba0eb3af694c2d20
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-11-12 06:14:14 +05:30
Anirudh Ghayal
7b3822911a mfd: pm8xxx-misc: Add the pm8xxx coincell chg API
The API enables/disables the coincell charger. It also configures
the coincell charger's voltage and register settings.

The charger allows the coincell (connected to VCOIN) to charge
from VBAT.

Change-Id: Id3802e37d8100e6a72de9fd263e7d201a7a346d2
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-11-12 06:13:39 +05:30
Linux Build Service Account
ab12ea460a Merge changes Iccd3819c,If5856ead into msm-3.0
* changes:
  ASoC: msm8960: add headphone over current protection type
  ASoC: wcd9310: add headphone over current protection feature
2011-11-10 19:31:34 -08:00
Linux Build Service Account
94583edbd4 Merge "ALSA: add headphone over current switches" into msm-3.0 2011-11-10 16:32:29 -08:00
Alex Bird
27ca661bda msm: Add SMI callbacks to ION platform data.
As part of the transition from PMEM to ION, the interface for accessing
SMI memory needs to be accessible from ION as it was from PMEM.

Change-Id: Ia6f9475dc030bbb0dafdcc1b6dbe93c7cdeca268
Signed-off-by: Alex Bird <alexbird@codeaurora.org>
2011-11-10 10:43:24 -08:00
Linux Build Service Account
fd72eef7e2 Merge changes Id8440508,If012dcdb into msm-3.0
* changes:
  msm: rotator: ion support in rotator driver
  msm-fb: display: ion framework support
2011-11-10 01:11:51 -08:00
Linux Build Service Account
89d5d6c47c Merge "hwmon: msm_adc: Calibrate HK/XOADC" into msm-3.0 2011-11-10 01:11:51 -08:00
Siddartha Mohanadoss
ae39c90df6 hwmon: pm8xxx-adc: Merge pm8921-adc and pm8xxx-adc
Merge changes from pm8921-adc to pm8xxx-adc. The
changes are modification to the BTM lookup table
to map voltage vs temperature instead of A/D word
vs temperature and reverse calibration on the
input voltage read for BTM. Fix setting the
mpp_scale value to avoid compile error.

This keeps the pm8xxx-adc and pm8921-adc
functional code as the same except for the name
change allowing future patch to remove the
pm8921-adc driver.

Change-Id: I03a0b809cd232f7fe8dff86248651c9a2593be29
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2011-11-09 22:07:10 -08:00
Nagamalleswararao Ganji
e69bed86ff msm-fb: display: ion framework support
Add support for the ION memory manager
to the framebuffer driver

Change-Id: If012dcdbbc71eb0f7d4d429ad4789b3276d34a58
Signed-off-by: Nagamalleswararao Ganji <nganji@codeaurora.org>
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
2011-11-09 15:19:07 -08:00
Lucille Sylvester
596d4c2954 msm: kgsl: Count a percentage of _io time
Count different percentages based upon GPU frequency.

Change-Id: Ia579f6705ff9858263f507bd4f3ba0f84b772554
Signed-off-by: Lucille Sylvester <lsylvest@codeaurora.org>
2011-11-09 14:13:15 -07:00
Patrick Lai
49efeaccb1 ASoC: wcd9310: add headphone over current protection feature
wcd9310 CODEC supports notification of excessive current
drawn by headphone power amplifiers. When receiving notification
from CODEC through interrupt, this driver reports this event
through soc jack framework. At this point, power amplifiers will
be locked hence no audio can be heard. Locking would be removed
once user-space application deroutes playback out of headphone path.

Change-Id: If5856ead31c9a6b8d918c09f1fdc517a69d4fa26
Signed-off-by: Patrick Lai <plai@codeaurora.org>
2011-11-09 10:19:16 -08:00
Vijayavardhan Vennapusa
fc464f0f66 usb: msm_otg: Vote for EXT_3P3V regulator for MHL connector
In case of 8960 Liquid, need to vote for EXT_3P3V regulator
to avoid usb connection lost as MHL analog switch is powered
by this regulator.

Change-Id: Ifc36d7916a5407801fdf43357176efa264d160bd
CRs-fixed: 315979
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2011-11-09 04:48:15 -07:00
Dima Zavin
050c06eed4 input: gpio_input: don't print debounce message unless flag is set
Change-Id: I29ccb32e795c5c3e4c51c3d3a209f5b55dfd7d94
Signed-off-by: Dima Zavin <dima@android.com>
2011-11-08 22:53:00 -08:00
Linux Build Service Account
363899275c Merge "msm: audio: qdsp6v2: Add 4GV wb/nb support in mvs driver" into msm-3.0 2011-11-08 18:03:38 -08:00
Vijayakumar Muthuvel Manickam
2d2a2c595a hwmon: msm_adc: Calibrate HK/XOADC
Calibration for HK/XOADC is done once at init by
msm_adc before the first ADC reading is processed.

Calibration performed for every ADC read is expensive
and not recommended. Remove support to request
calibration by ADC clients.

Add stubs for pmic8058 xoadc functions to fix
featurization

Change-Id: I7f0e165bddaa49c5daf33df5ed77428ccc1434c5
Signed-off-by: Vijayakumar Muthuvel Manickam <vmuthuve@codeaurora.org>
2011-11-08 15:52:36 -08:00
Patrick Lai
ac510b92be ALSA: add headphone over current switches
Some CODECs monitor current drawn by headphone power amplifer.
If current consumed goes over pre-defined threshold, CODEC would
communicate to host processor. Then, CODEC driver would propagate
the event so user-space application can react accordingly.
Add support to propagate over current events for both
left headphone and right headphone through ALSA jack framework.

Change-Id: Ieef36f070a4478a5a80ec4c8b0cc81464abd75ad
Signed-off-by: Patrick Lai <plai@codeaurora.org>
2011-11-07 14:33:45 -08:00
Vinay Kalia
27020d1b5d video: msm: Writeback support in mdp for WFD.
Adds writeback mode in mdp for wifi-display(WFD).
This mode can be used to get the captured
frames from mdp. This is added to support
wifi-display capture device.

Change-Id: Iae30cac65af181d8df4b514a128cd876fe7dda1c
Signed-off-by: Vinay Kalia <vkalia@codeaurora.org>
2011-11-05 17:33:26 -06:00