Commit Graph

25742 Commits

Author SHA1 Message Date
David Collins
0c19fa8e52 regulator: pm8xxx-regulator: Add OCP control functionality for switches
Add the ability to selectively enable over current protection
(OCP) for LVS and MVS type PMIC voltage switches.  OCP is used to
automatically disable the output of a PMIC switch in hardware when
the load on the switch becomes too large.

The sequence used when enabling a switch when OCP is desired is as
follows:
1. Disable OCP.
2. Enable the switch.
3. Wait for ocp_enable_time microseconds.
4. Enable OCP.

This sequence is used to ensure that sufficient time is allowed
for inrush current to subside so that a false OCP event is not
triggered.  The delay time is board specific.

Change-Id: I0ea73d3bddd3280ff25f232ece0f1175a52d36cc
Signed-off-by: David Collins <collinsd@codeaurora.org>
2012-02-03 11:12:25 -08:00
David Collins
1b570d26b8 mfd: pmic: Add voltage switch test registers to PMIC core drivers
Specify the SSBI test register address for each of the voltage
switches in PMIC 8018, 8038, and 8921 core drivers.  This will
allow for future handling of over current protection (OCP) in
the pm8xxx-regulator driver.

Also define the OCP IRQs associated with each of the switches
on these PMICs.

Change-Id: Icfc51c01680e6e95b4348051c764f16cb91b4916
Signed-off-by: David Collins <collinsd@codeaurora.org>
2012-02-03 11:07:23 -08:00
Amy Maloche
83c385a929 input: atmel-mxt-ts: Provide max touch coordinates via platform data
The atmel_mxt_ts driver manipulates the touch coordinates
if they are < 1024. In cases when the display < 1024 and
virtual key area > 1024, there is a problem in reporting
the coordinates for the virtual key area. Add new pdata
variables which can handle this.

Change-Id: Ic31db032a1598c60c01bff31c7b36042f42c9817
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2012-02-01 14:41:01 -08:00
Linux Build Service Account
98009d81e1 Merge "mfd: pm8xxx-misc: add pm8xxx_usb_id_pullup API" into msm-3.0 2012-02-01 10:37:20 -08:00
Willie Ruan
5db1f24037 mfd: pm8xxx-misc: add pm8xxx_usb_id_pullup API
PM8921 family provides a pullup enable bit to support USB ID.
Add the API for such support.

Change-Id: Id3056af070080c1c12f27720020ae718fc6f34f6
Signed-off-by: Willie Ruan <wruan@codeaurora.org>
2012-02-01 14:11:04 +05:30
Linux Build Service Account
fa94c687e2 Merge "base: genlock: Remove genlock_release_lock and associated ioctl" into msm-3.0 2012-01-31 21:44:00 -08:00
Linux Build Service Account
30b801365a Merge "slimbus: Provide separate APIs to connect source and sink ports" into msm-3.0 2012-01-31 13:05:26 -08:00
Willie Ruan
b10be97df4 mfd: pm8xxx-pwm: add pre-divide=6 and update macros
Add pre-divide=6 and update the max period based on new pre-divide.
Also update pre-divide related macros for better readability.

Change-Id: I5298c373c78f8723dab9a735e4d94f89798800d5
Signed-off-by: Willie Ruan <wruan@codeaurora.org>
2012-01-30 11:23:49 -08:00
Linux Build Service Account
516d60e24a Merge "usb: gadget: Add HSIC Peripheral over SPS support" into msm-3.0 2012-01-29 07:55:46 -08:00
Linux Build Service Account
d023140883 Merge "msm: idle_stats: Permit GPU DCVS daemon to configure number of samples" into msm-3.0 2012-01-29 07:55:46 -08:00
Ofir Cohen
010009b830 usb: gadget: Add HSIC Peripheral over SPS support
Add support in HSIC peripheral(device)
over SPS.
Only one USB core can be use - currently HSUSB
is enabled by default.
To enable HSIC core defconfig file should be changed.

Change-Id: I256aecd9e6dfd8bfd71719c32beed8b24225e11c
Signed-off-by: Ofir Cohen <ofirc@codeaurora.org>
2012-01-29 09:03:19 +02:00
Linux Build Service Account
7927d50224 Merge changes I92fff75b,I9d7e536f,I418df8c3,I684da4bd into msm-3.0
* changes:
  Input: atmel_mxt_ts: Add a debugfs attribute to show all objects
  board: 8960: Add config data for mXT1386E touch controller
  input: atmel_mxt_ts: Add support for object PROCI_SHIELDLESS_T56
  input: atmel_mxt_ts: Support runtime selection of config data
2012-01-28 04:49:08 -08:00
Linux Build Service Account
58a3cd78f8 Merge "power: pm8921-charger: Allow setting -ve cool/warm temperature" into msm-3.0 2012-01-27 21:57:57 -08:00
Linux Build Service Account
cf9ddedcce Merge "slimbus: Support more than 1 clients to use a channel" into msm-3.0 2012-01-27 21:57:57 -08:00
Sagar Dharia
29f35f08b9 slimbus: Provide separate APIs to connect source and sink ports
Source and sink ports for a channel may be connected from different
clients.
Multiple sink ports and 1 source port can be connected to a channel.
Ports are freed/zeroed when channel is removed.

Change-Id: I165bb9db4fb43a9a884ea14ffed08f8d11b65c39
Signed-off-by: Sagar Dharia <sdharia@codeaurora.org>
2012-01-27 14:57:41 -07:00
Jordan Crouse
4df70a254d base: genlock: Remove genlock_release_lock and associated ioctl
Allowing a lock to be asynchronously released while a handle
was still active turned out to be too dangerous to use in a
multi-threaded environment and it served no pratical
purpose anyway.  Handles now hold an attached lock until they
are destroyed.

CRs-fixed: 333141
Change-Id: Ic0dedbad8050ff01927ddb165c65a939bf297c10
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2012-01-27 09:44:39 -07:00
Jing Lin
dc4413c370 input: atmel_mxt_ts: Support runtime selection of config data
Add support for dynamic configuration data update if the target can
support more than one Atmel chip. Platform data contains an array of
supported config data along with family ID, variant ID and firmware
version. Driver searches for matching family ID, variant ID and
firmware version, and uses the corresponding config data to program.

Change-Id: I684da4bdef56a3445acab3bb8fe47dd5279bebe5
Signed-off-by: Jing Lin <jinglin@codeaurora.org>
2012-01-27 08:40:53 -08:00
Linux Build Service Account
d2064cfab2 Merge "diag: Add support for 9615, 8260A, and 8974 targets" into msm-3.0 2012-01-26 16:02:11 -08:00
Linux Build Service Account
530d7b0643 Merge "mfd: pm8921-core: Add support for PMIC PM8917 chip" into msm-3.0 2012-01-26 16:02:11 -08:00
Abhijeet Dharmapurikar
bc38f636fa power: pm8921-charger: Allow setting -ve cool/warm temperature
The current code assumes that the cool or warm battery temperature
can only be +ve numbers. Remove this restriction by allowing -ve
temperature settings.

Change-Id: I3c54b854a8fdf934efcf1ff21b36c7a0f763692a
CRs-Fixed: 320660
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2012-01-26 12:10:52 -08:00
Sagar Dharia
4ec2ff4a32 slimbus: Support more than 1 clients to use a channel
There is a possibility that 2 or more clients can use the same
channel, one as producer and the other(s) as sink.
The slim_query_ch API gives the ability for a client to specify
channel number it needs to use.
Reference counting is used to make sure channel is not deallocated
until the last caller deallocates it.
Another counter (def) is used to keep track of channel definition and
removal. Channel definition is sent to hardware when the producer
and/or consumer(s) connects ports to the channel. Channel is only
removed when all clients indicate they want to remove channel.

Change-Id: Ic5084680419e16ee238d2e62c02e5430170b387d
Signed-off-by: Sagar Dharia <sdharia@codeaurora.org>
2012-01-26 11:24:09 -07:00
Shalabh Jain
10f5f4351b diag: Add support for 9615, 8260A, and 8974 targets
Also re-structures the code so that adding new target
support will be easier.

Change-Id: I5ad9100932da5454afbf1c996d71a6338dc59dbb
Signed-off-by: Shalabh Jain <shalabhj@codeaurora.org>
2012-01-25 15:34:38 -08:00
Willie Ruan
5106035d9a mfd: pm8921-core: Add support for PMIC PM8917 chip
The PMIC PM8917 chip is very similar to the PM8921 chip. Modify
the pm8921-core driver so that it can also handle PM8917 chip
which has different number of gpios and mpps, and no LPG/PWM,
no LEDs and no vibrator.

Change-Id: I252adc2ddc4bcd9bb8b8fb5113444356ba7c969e
Signed-off-by: Willie Ruan <wruan@codeaurora.org>
2012-01-25 14:21:54 -08:00
Linux Build Service Account
240fc0f57b Merge changes I8a26c5d2,Ia93a8940,Ibc48a0f7 into msm-3.0
* changes:
  board: 7x30: Specify the correct min/max touch coordinates
  input: tsc2007: Specify max/min coordinates from platform data
  board: 7x30: Specify the correct min/max touchscreen coordinates
2012-01-25 12:21:14 -08:00
Linux Build Service Account
0b6f5655dd Merge "ssbi: add remote spinlock support" into msm-3.0 2012-01-25 04:54:51 -08:00
Linux Build Service Account
4cb59a8ebf Merge "msm: board-9615: Return result from vbus power routine" into msm-3.0 2012-01-25 04:54:51 -08:00
Linux Build Service Account
750754a8ab Merge "video: msm: Adding CSC support for other MDP blocks" into msm-3.0 2012-01-25 02:20:43 -08:00
Anirudh Ghayal
482ccccd1f input: tsc2007: Specify max/min coordinates from platform data
Provides flexibility to specify max/min x and y coordinates from
platform data. Useful in cases where the TS controller reports
coordinates at an offset from the predefined min/max values
(0 and 4096 respectively).

Change-Id: Ia93a8940078aa5960d1d900ac56b0b3354c82e40
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2012-01-25 13:48:04 +05:30
Mayank Rana
8549e63277 msm: board-9615: Return result from vbus power routine
USB OTG driver maintains the state of VBUS using vbus_is_online flag
for pdata based vbus power routine. Hence remove the used vbus_is_online
flag here and return the result of VBUS power sequence to update the
vbus_is_online flag in OTG driver.

Change-Id: I8bea42d5ebc27fab6fc2ae8a0b9fb58bdbaf854a
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2012-01-25 09:38:43 +05:30
Lynus Vaz
fdecd1e91f msm: idle_stats: Permit GPU DCVS daemon to configure number of samples
Add a struct member to allow GPU DCVS daemon to configure the number
of samples collected at runtime. This increases the responsiveness
of the daemon in low fps use cases.

Change-Id: Ibbf17c8a81c9bd819d96c16af2f17bc60c999df9
Signed-off-by: Lynus Vaz <lvaz@codeaurora.org>
2012-01-24 13:32:27 +05:30
Carl Vanderlip
fa1de67dba video: msm: Adding CSC support for other MDP blocks
Adding support for VG1, VG2, DMA_S and Overlay Mixer 1.

Change-Id: I95a5832a70fd893970e82dadcec1e11ed608d79c
Signed-off-by: Carl Vanderlip <carlv@codeaurora.org>
2012-01-23 13:23:12 -08:00
Lynus Vaz
31b5290e0f msm: kgsl: Introduce a KGSL_USER_MEM_TYPE_MAX enum
Introduce an enum for the max memory type supported by kgsl. This is
used by kgsl_test to pass the correct parameters to kgsl.

CRs-fixed: 331563
Change-Id: I9d9ab813148234ff23da557b92f24e9f71a7cab8
Signed-off-by: Lynus Vaz <lvaz@codeaurora.org>
2012-01-23 18:14:23 +05:30
Linux Build Service Account
04d2815859 Merge "thermal: msm8960_tsens: Read TSENS temperature" into msm-3.0 2012-01-22 16:18:53 -08:00
Linux Build Service Account
c362a4e18a Merge changes I84b3ca1e,I41db99f8 into msm-3.0
* changes:
  ASoc: msm: Add support for adie RX & TX calibration
  Revert "msm: audio: qdsp6v2: Support for out-of-band calibration"
2012-01-21 14:43:02 -08:00
Linux Build Service Account
279e22cf54 Merge "mfd: pm8xxx-misc: add an API to preload the dVdd regulator" into msm-3.0 2012-01-21 13:03:00 -08:00
Ben Romberger
b760323c5c ASoc: msm: Add support for adie RX & TX calibration
Add support for adie RX & TX calibration. This calibration
is used for RMC and speaker protection. A non-blocking
function was created for AFE memory map since it is now
being called from an atomic process and the acdb driver
was changed to use to use atomic variables.

Change-Id: Id6c6ca7a303ef5ee5d23a9932e910e6a7a08805d
Signed-off-by: Ben Romberger <bromberg@codeaurora.org>
2012-01-20 17:10:55 -08:00
Siddartha Mohanadoss
ccd49854a0 thermal: msm8960_tsens: Read TSENS temperature
Add kernel API to read TSENS temperature for clients
in the kernel space. Currently the TSENS driver only
supports reading the TSENS temperature from the
thermal sys.

Split the TSENS initialization into two parts.
First is to perform the initial calibration that is
used to convert the raw ADC code to Degrees Celcius
and initialize the TSENS HW. Second is to register the
TSENS driver to the linux thermal framework and create
the temperature zones that will be accessed by the
Thermal daemon to set thresholds, read the temperature
and receive notifications.

Change-Id: Id2305a7aa755e1e9cfaecd8b5c1870ed05d9b5e9
Signed-off-by: Praveen Chidambaram <pchidamb@codeaurora.org>
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2012-01-20 15:36:59 -08:00
Linux Build Service Account
3074cc33aa Merge "USB: OTG: msm: Implement data contact detection based on timeout" into msm-3.0 2012-01-20 14:12:37 -08:00
David Collins
4724272b4b mfd: pm8xxx-misc: add an API to preload the dVdd regulator
Add a new API, pm8xxx_preload_dVdd, which will preload the dVdd
regulator on PMIC PM8901 chips during off state. This can help
to reduce fluctuations in the dVdd voltage during startup at the
cost of additional off state current draw.

This API should only be called if dVdd startup issues are
suspected.

Change-Id: Ic7ee60539de37a761bb9ca6c5200327a7b99da89
CRs-Fixed: 326086
Signed-off-by: David Collins <collinsd@codeaurora.org>
2012-01-20 11:34:58 -08:00
Linux Build Service Account
87c8d39d24 Merge "regulator: Add devm_regulator_get()" into msm-3.0 2012-01-20 04:12:37 -08:00
Pavankumar Kondeti
2d09e5fe33 USB: OTG: msm: Implement data contact detection based on timeout
Data contact can be detected by either current source or timeout
methods.  The current source method is not working for an unknown
reason.  Implement timeout based data contact detection.  The spec
allows any timeout between 300msec to 900msec.  Use 600msec.

CRs-fixed: 330217
Change-Id: I67151d1412f43ba974cc1afb164d6473f89d2dbf
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2012-01-20 08:38:57 +05:30
Linux Build Service Account
87b57c9b86 Merge "input: atmel_mxt_ts: Add support for keyarray object" into msm-3.0 2012-01-19 17:33:48 -08:00
Linux Build Service Account
1980cb37f5 Merge changes Icc844d30,I527768f0,If1cd6dda,I8cc87d5a into msm-3.0
* changes:
  msm: board: Add ION heap for Audio
  msm: board: Increase ION MM heap size
  msm: board: Restore SF and MM heap to PMEM sizes
  gpu: ion: Add new heap for qse comm
2012-01-19 13:23:10 -08:00
Linux Build Service Account
32a110abce Merge changes Iab2aff3d,I5ff76c3a into msm-3.0
* changes:
  of/irq: of_irq_init: add check for parent equal to child node
  of/irq: introduce of_irq_init
2012-01-19 11:52:58 -08:00
Linux Build Service Account
ca6a61e107 Merge changes I4917de40,Id64bc384,Iae5182ff into msm-3.0
* changes:
  mfd: pm8038-core: enable bms and charger devices
  msm: 8930: enable charger, bms and ccadc
  mfd: pm8xxx: add charger, bms and ccadc devices on PM8038
2012-01-19 01:54:26 -08:00
Mohan Pallaka
382d3ce841 input: atmel_mxt_ts: Add support for keyarray object
Keyarray(T15) object is used for handling capactive keys.
It can handle 32 keys and the keys supported are passed
from platform data as key_codes.

Change-Id: Iac589afb59e8ff69b6e1eb86bafdc0b5382c3edd
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2012-01-19 12:27:21 +05:30
Olav Haugan
80854eb491 gpu: ion: Add new heap for qse comm
Add new 1MB carveout heap for Qualcomm Secure Executive (QSE)
communications.

Change-Id: I8cc87d5af68e9fd4f775770b16638ee01ef88e05
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2012-01-18 17:44:32 -08:00
Olav Haugan
42ebe71efc gpu: ion: Add support for adjacent heaps
ION has to guarantee that two of the heaps are
adjacent to each other. This is due to a limitation
in the hardware. Add code to ensure these heaps
are adjacent.

Change-Id: Icc18437a50e1d872112468d02b61ab47fd70acc9
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2012-01-18 16:40:39 -08:00
Linux Build Service Account
3110d3fbe0 Merge "tzcom: Add support for modifying specific fields in cmd_buf" into msm-3.0 2012-01-18 15:18:40 -08:00
Rob Herring
54dca2dd09 of/irq: introduce of_irq_init
of_irq_init will scan the devicetree for matching interrupt controller
nodes. Then it calls an initialization function for each found controller
in the proper order with parent nodes initialized before child nodes.

Based on initial pseudo code from Grant Likely.

Changes in v4:
- Drop unnecessary empty list check
- Be more verbose on errors
- Simplify "if (!desc) WARN_ON(1)" to "if (WARN_ON(!desc))"

Changes in v3:
- add missing kfree's found by Jamie
- Implement Grant's comments to simplify the init loop
- fix function comments

Changes in v2:
- Complete re-write of list searching code from Grant Likely

Change-Id: I5ff76c3aa0f7bdf66577970dd9506336cd5712dd
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Reviewed-by: Jamie Iles <jamie@jamieiles.com>
Tested-by: Thomas Abraham <thomas.abraham@linaro.org>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
2012-01-18 11:01:40 -08:00