Commit Graph

25420 Commits

Author SHA1 Message Date
Amir Samuelov
d31ef501b8 power: pm8921-charger: enable external charger
The pmic 8921 charger has a limit of 2Amp of charge current. This limit
makes it inadequate to charge multi-cell batteries.

The pm8921 charger supports a configuration where an external charger
with more current capacity may be used to charge the battery while the
pm8921 itself can charge from a USB source. In such a configuration
the external charger source is connected to the DCIN pins, this makes the
pmic detect insertion and removal of the external charger source. In turn
this enables automatic switching on or off the usb charging path when an
external charger is plugged out or in respectively. The pm8921 charger
driver has to call start and stop on external charger. The internal
FSM and logic correctly indicates that it is charging from a DC source.

The resume charging of a fully charged battery when an external source
is present needs to start charging from an external source. The driver
relies on VBATDET comparator to signal a low.

Change-Id: Iab5439ac2408ab061bce477f4d41d7b6a8de9b38
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
2011-10-26 14:41:36 +02:00
Linux Build Service Account
dd346d2474 Merge changes Ibb7afffd,Ie00815ed into msm-3.0
* changes:
  msm: board-qrd7627a: Add support for synaptics touchscreen
  input: touchscreen: Add support for synaptics clearpad3000
2011-10-24 17:10:20 -07:00
Grant Likely
971a0ee566 dt/irq: add irq_domain_generate_simple() helper
irq_domain_generate_simple() is an easy way to generate an irq translation
domain for simple irq controllers.  It assumes a flat 1:1 mapping from
hardware irq number to an offset of the first linux irq number assigned
to the controller

Change-Id: I0820754314a0c15b1cc9881bc38b75b0de2509b2
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Sathish Ambley <sambley@codeaurora.org>
2011-10-24 10:42:45 -07:00
Grant Likely
6469dfb4ee irq: add irq_domain translation infrastructure
This patch adds irq_domain infrastructure for translating from
hardware irq numbers to linux irqs.  This is particularly important
for architectures adding device tree support because the current
implementation (excluding PowerPC and SPARC) cannot handle
translation for more than a single interrupt controller.  irq_domain
supports device tree translation for any number of interrupt
controllers.

This patch converts x86, Microblaze, ARM and MIPS to use irq_domain
for device tree irq translation.  x86 is untested beyond compiling it,
irq_domain is enabled for MIPS and Microblaze, but the old behaviour is
preserved until the core code is modified to actually register an
irq_domain yet.  On ARM it works and is required for much of the new
ARM device tree board support.

PowerPC has /not/ been converted to use this new infrastructure.  It
is still missing some features before it can replace the virq
infrastructure already in powerpc (see documentation on
irq_domain_map/unmap for details).  Followup patches will add the
missing pieces and migrate PowerPC to use irq_domain.

SPARC has its own method of managing interrupts from the device tree
and is unaffected by this change.

Change-Id: Ia5fa674a97c85e2fc8e30275753b1494a97bd1d9
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Sathish Ambley <sambley@codeaurora.org>
2011-10-24 10:42:45 -07:00
Linux Build Service Account
0c2b0b6ebc Merge "mfd: 8018: Add led and pwm devices" into msm-3.0 2011-10-24 01:52:03 -07:00
Taniya Das
6f0884bf86 input: touchscreen: Add support for synaptics clearpad3000
Change-Id: Ie00815ed507d81c6934ac0d4b1dfa745215ff01a
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2011-10-24 12:12:17 +05:30
Linux Build Service Account
caeef66d6d Merge changes I75900b24,Ibca9cdbf,Ic926e968 into msm-3.0
* changes:
  input: atmel_mxt_ts: Move regulators to LPM/HPM in suspend/resume
  input: atmel_mxt_ts: Add retry mechanism for I2C read/write
  input: atmel_mxt_ts: Clean up pdata and update config array
2011-10-23 16:41:13 -07:00
Linux Build Service Account
f22463f414 Merge changes Id6b5096f,Ic8bd7e13 into msm-3.0
* changes:
  eeprom_93cx6: Add write support
  eeprom_93cx6: Add data direction control.
2011-10-21 11:59:28 -07:00
Linux Build Service Account
9f5f6e5fab Merge changes Idb1e623b,I854d90ac into msm-3.0
* changes:
  msm_rq_stats: removing calculation of rq_stats
  rq_stats: Doing rq_stats calculation in the scheduler tick.
2011-10-21 11:59:28 -07:00
Jing Lin
2f863174f9 input: atmel_mxt_ts: Clean up pdata and update config array
Remove blen, tchthr, x_line, y_line, orient and voltage from platform
data to not to overwrite the config data with these values. Update
config array to have the proper values.
Turn on i2c_pull_up in platform data.

Change-Id: Ic926e96886f52cea3dad29e9a44559b26c717259
Signed-off-by: Jing Lin <jinglin@codeaurora.org>
2011-10-21 11:46:20 -07:00
Jay Chokshi
e91f55cdb5 mfd: 8018: Add led and pwm devices
Change-Id: I92b9f6956aac24cef8898ce59263dd80b5b30d3f
Signed-off-by: Jay Chokshi <jchokshi@codeaurora.org>
2011-10-21 10:39:28 -07:00
Linux Build Service Account
12c97b5651 Merge changes I7cdf8e45,Id54dcc80 into msm-3.0
* changes:
  USB: EHCI: msm: Configure GPIOs for HSIC strobe and data lines
  USB: EHCI: msm: Add support for HSIC based Host Controller
2011-10-21 06:05:40 -07:00
Linux Build Service Account
391afad386 Merge "diag: Add support for APQ8064" into msm-3.0 2011-10-21 03:06:17 -07:00
Linux Build Service Account
ab1ae85997 Merge "msm_fb: display: CSC Matrix update support is added" into msm-3.0 2011-10-20 22:35:31 -07:00
Ben Dooks
a6c514f3fb eeprom_93cx6: Add write support
Add support for writing data to EEPROM.

Change-Id: Id6b5096f2d59d21773c06ba3803151c2f3248956
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Cc: Wolfram Sang <w.sang@pengutronix.de>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Linux Kernel <linux-kernel@vger.kernel.org>
[sboyd@codeaurora.org: use usleep_range() instead of msleep()]
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2011-10-20 19:02:06 -07:00
Ben Dooks
69215d9680 eeprom_93cx6: Add data direction control.
Some devices need to know if the data is to be output or read, so add a
data direction into the eeprom structure to tell the driver whether the
data line should be driven.

The user in this case is the Micrel KS8851 which has a direction
control for the EEPROM data line and thus needs to know whether
to drive it (writing) or to tristate it for receiving.

Change-Id: Ic8bd7e13ce9bde423001ca23f3de02e76e1dbdaf
Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Cc: Wolfram Sang <w.sang@pengutronix.de>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Linux Kernel <linux-kernel@vger.kernel.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2011-10-20 19:02:06 -07:00
Siddartha Mohanadoss
5bcd20614d mfd: pm8018: Add PM8018 ADC resource
Change-Id: I6a4df32671b95070cdb719d80767f0ffde8cd40a
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2011-10-20 18:07:37 -07:00
Amar Singhal
f49d99bc41 rq_stats: Doing rq_stats calculation in the scheduler tick.
With this change, we do the average run queue statistics calculation
in the scheduler tick itself. This helps avoid any extra timers to
do the same. Also doing this calculation in the scheduler tick avoids
any bias if the calculation is done in a workqueue

Change-Id: I854d90acc05cc7a7226487be5555976826d8c837
Signed-off-by: Amar Singhal <asinghal@codeaurora.org>
2011-10-20 14:35:49 -07:00
Vijayavardhan Vennapusa
e3316a1098 USB: EHCI: msm: Configure GPIOs for HSIC strobe and data lines
As part of HSIC initialization, in addition to enabling HSIC host
mode and periodic pad calibration, need to configure GPIO150 and
GPIO151 pins for HSIC strobe and data lines respectively for
proper data communication between HSIC devices.

Change-Id: I7cdf8e4532045d813ac6c6e3f53455d0a640245b
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2011-10-21 00:15:27 +05:30
Vijayavardhan Vennapusa
39025fee42 USB: EHCI: msm: Add support for HSIC based Host Controller
This patch adds support for EHCI compliant USB Host Controller
present in MSM chips. This Controller uses an HSIC PHY which
communicates with downstream devices using STROBE/DATA lines.

HSIC is a supplement to USB 2.0 specification and is preferred
for chip-to-chip interconnect (having maximum circuit length of
10cm) as it removes the analog transceivers.

Change-Id: Id54dcc802e606e0ff7dd31bc64671a797cd8bc09
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
2011-10-21 00:14:26 +05:30
Nagamalleswararao Ganji
4b99172a1d msm_fb: display: CSC Matrix update support is added
CSC Matrix update support is added for MDP4 VG pipes
to convert  Ycbcr -> RGB format

CRs-fixed: 313601
Change-Id: Ib6fb8f2eab4b1e871a406a3a2d7274fcfdcdd9d1
Signed-off-by: Nagamalleswararao Ganji <nganji@codeaurora.org>
2011-10-20 09:33:32 +05:30
Shalabh Jain
fb8e3c1d0c diag: Add support for APQ8064
This change will add DIAG support for new target APQ8064.

Change-Id: Ic8d21dc39e42fc254f71ee62df8160641c8068f8
Signed-off-by: Shalabh Jain <shalabhj@codeaurora.org>
2011-10-19 17:29:42 -07:00
Siddartha Mohanadoss
17607d277e hwmon: pm8xxx-adc: Add PM8018 ADC Driver
PM8921 and PM8018 have a common ADC module. Difference's
are in the channel supported on individual PMIC's and
in the MPP mapping to the ADC device.
MPP configuration on PM8018 is not required. The MPP
is directly connected to the AMUX pre-mux channel.

Change-Id: I9aed3366f20e3985962119274d8b2865b7054a79
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2011-10-18 09:22:12 -07:00
Linux Build Service Account
d02d1db765 Merge "drivers: rtc-pm8xxx: Fix automatic wakeup of APPS due to RTC alarm." into msm-3.0 2011-10-17 03:47:33 -07:00
Anirudh Ghayal
9d9cdc218c msm: Add msm-ssbi devices for PM8058 on supported targets
Supported targets are msm8660, msm7x30 and fsm9xxx

Change-Id: I1d21b73ba67c6769441658e648c32204c72754d3
Acked-by: Kaushik Sikdar <ksikdar@qualcomm.com>
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2011-10-17 12:53:07 +05:30
Ashay Jaiswal
d66c9d51b2 drivers: rtc-pm8xxx: Fix automatic wakeup of APPS due to RTC alarm.
Alarm interrupt causes automatic wakeup even when the phone is in
powerdown state.

Change-Id: If3ae30304adba4f07284a3dc496956d67a1ae1b0
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2011-10-17 11:08:37 +05:30
Linux Build Service Account
61e816424b Merge "Kbuild: Add ion header file" into msm-3.0 2011-10-15 12:53:35 -07:00
Laura Abbott
cffdff5354 Kbuild: Add ion header file
Make sure the header file for Ion gets exported to userspace.
Also make sure userspace can actually use the header.

Change-Id: I44f436005a6a503811c85d4fb0f89264ba160571
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2011-10-15 11:56:54 -07:00
Linux Build Service Account
2ea4f046c5 Merge "msm: kgsl: Add idlestats sleep event notification" into msm-3.0 2011-10-14 23:04:38 -07:00
Linux Build Service Account
e69add446b Merge "msm: kgsl: make kgsl msm_bus votes more readable" into msm-3.0 2011-10-14 16:35:40 -07:00
Lucille Sylvester
3b46d001e2 msm: kgsl: Add idlestats sleep event notification
Change-Id: Ie632d3f44661575ad8c7b41f064eff5f3b068f62
Signed-off-by: Lucille Sylvester <lsylvest@codeaurora.org>
2011-10-13 15:57:20 -06:00
Suman Tatiraju
0123d183c4 msm: kgsl: make kgsl msm_bus votes more readable
Change-Id: Ia8de770d0891a078d9b2dc16b8ce541a4820b003
Signed-off-by: Suman Tatiraju <sumant@codeaurora.org>
2011-10-13 14:46:38 -07:00
Pradeep Jilagam
9b4a6be7c4 msm: rotator: Add YV12 support in the Rotator
Added changes to support YV12 input format in the Rotator.
Output will be Pseudoplanar in this case.

Change-Id: Ic77ad2b6a3aaa66ad923494fb6c96e07738d674b
Signed-off-by: Pradeep Jilagam <pjilagam@codeaurora.org>
2011-10-13 22:03:39 +05:30
Linux Build Service Account
d7cb92f929 Merge "diag: Add UART support" into msm-3.0 2011-10-12 19:55:56 -07:00
Laura Abbott
abcb6f740e gpu: ion: Add cache flushing APIs
Add ioctl to support flushing the caches of ion
buffers from userspace.

Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2011-10-11 09:59:30 -07:00
Jay Chokshi
8994e39bcd leds-pm8xxx: Pass LED flags from board file
Instead of hard coding the flag into led driver, pass it
from board file.
While at it, re-factor the code to separate led upstream
core data with board specific data.

Signed-off-by: Jay Chokshi <jchokshi@codeaurora.org>

Conflicts:

	drivers/mfd/pm8921-core.c
2011-10-11 09:59:29 -07:00
Laura Abbott
354120303a gpu: ion: Add IS_CACHED macro
Add a proper IS_CACHED macro for detecting whether or not
flags indicated a cached mapping.

Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2011-10-11 09:59:25 -07:00
Shalabh Jain
69890aa09a diag: Add UART support
DIAG traffic has been supported over USB and SD card. This
change adds capability to route DIAG traffic over UART.

Change-Id: I0d6732fcbb19950700218140d581b5759e676b74
Signed-off-by: Shalabh Jain <shalabhj@codeaurora.org>
2011-10-10 13:21:41 -07:00
Stepan Moskovchenko
93d79ecd11 ks8851: Add GPIO configuration platform data
Add platform data for the KS8851 SPI Ethernet device to
enable proper GPIO configuration for the reset and
interrupt pins.

Change-Id: I79adae4628f38a2ca5bc17825258c41ab5e1623d
Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
2011-10-06 09:27:56 -07:00
Jay Chokshi
4acbdd5c37 mfd: pm8xxx-pwm: add two APIs
These new APIs allow a driver to specify its PWM period,
and raw PWM values separately using chip specific
parameters.

Change-Id: I3e9860f30a50d4f3d9c556133761d51858d2a2e3
Signed-off-by: Jay Chokshi <jchokshi@codeaurora.org>
2011-10-06 09:27:50 -07:00
Abhijeet Dharmapurikar
0f0242353f power: pm8921-charger: config cold/hot threshold
Pmic 8921, has configurable hot and cold battery thresholds as
percent of VREF_THERM. Provide means to configure these via
platform data.

One has to set the config values in the charger platform data defined
in the board file.

Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2011-10-05 10:36:45 -07:00
Abhijeet Dharmapurikar
fad7235d01 power: pm8921-bms: calculate real_fcc
real_fcc is the remaining capacity in the battery when the charger
driver indicates that the battery is fully charged. This value needs
to be calculated when charging ends with a fully charged battery.

The userspace can read this value via module parameter and preserve it
between restarts.

The real reason for calculating this is to indicate how much the battery
capacity has dropped w.r.t  the profiled battery data use this deviation
in calculations.

Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2011-10-05 10:35:51 -07:00
Shubhraprakash Das
767fdda6e1 msm: kgsl: Introduce Iommu Code
kgsl now supports the use of 2 types of MMU. One is
the GPU's internal MMU and the other is IOMMU. Both
MMU cannot be active at the same time. The MMU type
can be selected at compile time via config option.
A boot command line parameter can be used to override
the type of MMU selected at compile time.

Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
2011-10-04 17:14:34 -07:00
Siddartha Mohanadoss
77d106ea89 hwmon: pm8921-adc: Add sysfs interface
-Add sysfs interface to read PM8921 HK/XOADC
and thermistor temperature measurements mapped
through MPP's.
-Move PM8921 ADC from directory /drivers/mfd to
/drivers/hwmon for userspace clients to read ADC
through hwmon.

CRs-Fixed: 302365
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>

Conflicts:

	drivers/mfd/Kconfig
2011-10-04 17:14:12 -07:00
Siddartha Mohanadoss
0b9e51735e thermal: tsens: Add support for MDM9615
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2011-10-04 17:13:56 -07:00
Eric Holmberg
f9cfa8ebfa msm: remote_spinlock: Add support for hardware mutexes
Add support for hardware mutexes.

Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>
2011-10-04 09:50:33 -07:00
Amit Blay
02eff13c45 usb: otg: Add usb_hs_system_clk to OTG driver for MSM9615
This change add usb system clock support to OTG Driver.
System clock is a 60MHZ input clock to the USB ChipIdea core.
This clock is required starting from MDM9615.

This change also removes the enforcement for using a phy_reset_clk
for reseting the PHY. Starting from MDM9615, PHY reset is not implemented.
The core is reset together with the PHY using "usb_hs_clk" signal.

Signed-off-by: Amit Blay <ablay@codeaurora.org>
2011-10-03 16:21:35 -07:00
Sachin Shah
d7e02d4d60 tzcom: Implement abort and cleanup of driver
Add a new IOCTL call to the driver to properly
abort all threads blocked on wait queues. Updated
release call for proper cleanup.

CRs-fixed: 303637, 304152
Signed-off-by: Sachin Shah <sachins@codeaurora.org>
2011-10-03 16:21:33 -07:00
Jay Chokshi
1097519e8b mfd: pm8xxx-irq: Set unique dev id for sys device
Use device id passed from platform data to register
for sysfs.

Signed-off-by: Jay Chokshi <jchokshi@codeaurora.org>

Conflicts:

	drivers/mfd/pm8xxx-irq.c
2011-10-03 16:21:25 -07:00
Siddartha Mohanadoss
55208e6c57 thermal: tsens: Add platform information for 9615
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2011-10-03 16:21:12 -07:00