Commit Graph

45345 Commits

Author SHA1 Message Date
Abhijeet Dharmapurikar
1b8e8293b6 power: pm8921-bms: calibrate xoadc more often
Improve the values of the battery voltage read from xoadc by periodically
calibrating the xoadc.

The xoadc needs to be calibrated every time a charger is plugged in
or plugged out. This is because the reference voltage shifts a bit
when a charger is plugged in.

Provide an api to calibrate xoadc. This api will be used by the charger
driver.

CRs-Fixed: 334825
Change-Id: I09735f6e5c5d4ab8be379fe001fff81c25c95397
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2012-02-29 21:02:37 -08:00
Jay Chokshi
b0a0fa5b4f mfd: pm8xxx-pwm: Add feature to configure LPG DTEST mode
PM8921 LPG banks can be configured to connect to DTESTx.
These DTEST lines can be used to observe LPG output.
Provide a feature that allows to enable DTEST modes for
a given LPG channel.

CRs-fixed: 337902
Change-Id: If881eb089aea2a66f7324af8ac906405eef4f81a
Signed-off-by: Jay Chokshi <jchokshi@codeaurora.org>
2012-02-29 16:39:25 -08:00
Asish Bhattacharya
b86c3477a8 ASoC: wcd9304: Add driver for Sitar codec.
Add support for 5 RX and 4 TX Slimbus channel support.
Headphone/Earphone/4 DMIX/2 AMIC and IIR1 support

Change-Id: I1b7ad5e5fd9d87aab80d6533503371e63df8cc0a
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
2012-02-29 15:31:34 -08:00
Asish Bhattacharya
b1aeae22ff ASoC: wcd9xxx: Move to a generic framework for codec core driver.
The current core assumes TABLA as the only codec driver registering.
To support single binary for multiple targets its essential that
we remove this restriction and move to a generic framework
to support multiple codec. This can be done by moving all codec
specific code to dedicated codec driver and use core driver to probe
the codec based on slimbus device id and do generic setup for the
codec. This also helps to have same boards with different flavours
of codec variants.

The WCD9XXX family of codecs share the initial codec register
mapping which holds the Slimbus device id to identify the
codec existing on the target.Core driver now registers the
codec device based on this check.

Change-Id: I4c43d5f04c20696f4f5138411460681ec7879d34
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
2012-02-29 15:31:15 -08:00
Linux Build Service Account
98491ffd09 Merge "msm: camera: Fix for inline jpeg corrupted image" into msm-3.0 2012-02-28 18:14:19 -08:00
Linux Build Service Account
0ff8b32143 Merge "radio-tavarua: Add commands to configure the FM Search parameters." into msm-3.0 2012-02-28 09:08:40 -08:00
Linux Build Service Account
8b10049f72 Merge changes I2f562957,I19ff1251 into msm-3.0
* changes:
  msm: 8960/8064: robust battery detection
  power: bms: add desay calibration data
2012-02-28 09:08:40 -08:00
Linux Build Service Account
fb0e686a80 Merge "Merge remote-tracking branch 'kdorfman/emmc_base' into merge/kdorfman" into msm-3.0 2012-02-28 03:17:31 -08:00
Jignesh Mehta
bde8424c61 msm: camera: Fix for inline jpeg corrupted image
Enable IMEM clock for Inline mode. For Inline mode, VFE writes MCUs
of frame to IMEM and GEMINI reads it from IMEM and encode the image.

Sync VFE, IMEM and GEMINI clock to 228MHz. VFE and IMEM are running
at 228MHz. But Gemini was running at 158Mhz that creates bootleneck and
generat overflow irq error.

Add VFE_OUTPUTS_JPEG_AND_THUMBANIL operation mode to fix
FE overflow IRQ error in gemini.

Change-Id: Iaf20892d33d30e7cb8d6ab5fd75551aff260098f
Signed-off-by: Jignesh Mehta <jigneshm@codeaurora.org>
2012-02-27 14:23:01 -08:00
Anantha Krishnan
a3dcce4029 radio-tavarua: Add commands to configure the FM Search parameters.
Provide commands to get/set the On channel and Off channel detection
threshold search parameters to optimize the FM search performance.

Change-Id: Id232ffe2d1231fbd44bb34b4b98263434763b7c0
Signed-off-by: Anantha Krishnan <ananthk@codeaurora.org>
2012-02-28 00:45:47 +05:30
David Keitel
35e1187ef9 msm: 8960/8064: robust battery detection
To ensure proper battery id dectection on LiQUID and MTP
use machine_is_msm8960/8064_mtp/cdp to determine which
calibration data to use for battery. If platform is
unknown fall back on regular battery id detection.

Change-Id: I2f5629572d1e5fcac0a2feb114947b91a96f3bf0
Signed-off-by: David Keitel <dkeitel@codeaurora.org>
2012-02-27 10:50:41 -08:00
David Keitel
8f2601b9af power: bms: add desay calibration data
Add the calibration data and battery ID information for the
Desay 5200 mAh battery which is used in LiQUID platform
devices.

Change-Id: I19ff1251ee3e71fa71d4fa0c83143d4b7667a80c
Signed-off-by: David Keitel <dkeitel@codeaurora.org>
2012-02-27 10:50:22 -08:00
Manu Gautam
91223e07a7 USB: EHCI: msm: Add support for EHCI based Host Controller
This patch adds support for EHCI compliant USB Host Controller
for Liquid on 8064.
This driver supports Host only mode and is different from ehci-msm
which relies on OTG driver for putting hardware in low pwer mode
and PHY initialization as well.

Change-Id: I84b63b2577311900a0b434f53df547bad62f6316
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2012-02-26 09:11:19 -08:00
Linux Build Service Account
a424739f46 Merge changes Ibad3206b,If1742378 into msm-3.0
* changes:
  of/address: add empty static inlines for !CONFIG_OF
  dt: add empty for_each_child_of_node, of_find_property
2012-02-26 04:31:41 -08:00
Linux Build Service Account
0f5c8fab77 Merge "qseecom: Add qseecom Driver" into msm-3.0 2012-02-26 04:31:41 -08:00
Linux Build Service Account
2f4846abae Merge "msm: audio: qdsp5: Add PCM-WB support for VoIP." into msm-3.0 2012-02-25 16:41:31 -08:00
Linux Build Service Account
6ba216846b Merge "radio: iris: Fix the set station issue at boundary" into msm-3.0 2012-02-25 16:41:31 -08:00
Linux Build Service Account
1ee4dbf623 Merge "msm-camera: vertical and horizontal view angle of lens added." into msm-3.0 2012-02-25 16:41:31 -08:00
Linux Build Service Account
2df94ab651 Merge "gpu: ion: Add missing argument to iommu map func" into msm-3.0 2012-02-25 12:46:51 -08:00
Linux Build Service Account
3b8582b49c Merge changes Ic0dedbad,Ic0dedbad into msm-3.0
* changes:
  msm: kgsl: A3XX: Use recommended VBIF setings for dual port access
  msm: kgsl: Program both IOMMUs at our disposal on 8064
2012-02-25 12:46:51 -08:00
Mona Hossain
2892b6bf1e qseecom: Add qseecom Driver
This driver is based of the TZCOM (planned to be deprecated soon).
It shares the same design as TZCOM with some re-organization and
new features added. QSEEcom (Qualcomm Secure Execution environment
Communicator) is named accordingly to be consistent with the
nomenclature used in the secure domain. The following additional
features (on top of current TZCOM) driver are implemented:

(1) Add support for multi-image loading.
The image that was loaded in TZCOM was hard-coded to "tzapps".
During a open() tzapps was loaded using pil driver call pil_get().
This severly limted the number of images that could be loaded to
one single application: named "tzapps". qseecom driver provides a
way to load any image on request. Client simply send the image
data in a specific format and this data is sent over to QSEE
(Qualcomm Secure Execution enviroment) to load accordingly.

(2) Add support for multi-client.
TZcom driver did not have provisions to support multiple clients
to interface with the single tzapp image loaded on the secure
domain. The changes added in qseecom driver allows for multiple
client to interface with a single image laoded and running in
secure domain.

(3) Add support for performance tweaking in QSEE
Added capability to send requests to QSEE to set specific clocks
for optimal crypto performance. This essentially will increase
the crypto performance on the secure domain. The crypto
functionality is used extensively by the current existing qseecom
client(s).

(4) Retain legacy support for QSEOS version 1.3.
In order for the existing applications to work with old QSEE image,
qseecom also supports the old mechanism (loading tzapp image via
pil). This was a requirement for existing products that are not
yet using the latest secure code.

Change-Id: I7cf2d62c612cb4d17b33579e66bee44c9844dfda
Signed-off-by: Mona Hossain <mhossain@codeaurora.org>
2012-02-24 11:15:02 -08:00
Ayaz Ahmad
b69202b622 radio: iris: Fix the set station issue at boundary
Seek frequency at lower/upper limit is not working
if selected country is in Europe band with channel
 spacing 50Khz

Use the correct upper limit for Europe band

Change-Id: Icdcb116c24ae9840cc66b1dc2da5fa739a2f89c8
CRs-Fixed: 338137
Signed-off-by: Ayaz Ahmad <aahmad@codeaurora.org>
2012-02-24 16:52:47 +05:30
Linux Build Service Account
0564f54982 Merge "msm: vidc: Remove duplicate header files" into msm-3.0 2012-02-23 15:21:06 -08:00
Olav Haugan
9a27d4c55b gpu: ion: Add missing argument to iommu map func
There exists one definition for ion_map_iommu
function when ION is enabled and one definition when
ION is disabled. The argument list for the definition used
when ION is disabled is missing the buffer_size argument causing
compilation error for targets that call this function without
ION enabled.

Add buffer_size argument to ion_map_iommu function
for targets that does not have ION enabled.

Change-Id: Ie184e4a6dbec2bc3dff75ab3b25985fd64e2baac
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2012-02-23 09:35:16 -08:00
Linux Build Service Account
6c54991991 Merge changes I50ac40e4,Ib318497b into msm-3.0
* changes:
  slim_msm: Remove active channels of a satellite when it restarts
  slimbus: Don't allow a grouped channel to be controlled individually
2012-02-23 06:34:41 -08:00
Deva Ramasubramanian
3a7774b2d5 msm: vidc: Remove duplicate header files
- Updated the header files in /include/media/msm to mirror the
  header files in drivers/video/msm/vidc/common/.
- Deleting header files in drivers/video/msm/vidc/common/ as we
  wish to use headers in /include/media/msm going forward.

Change-Id: I58f64e6168d3cc101394414400dd79b82c429ae4
Signed-off-by: Deva Ramasubramanian <dramasub@codeaurora.org>
2012-02-22 19:01:52 -08:00
Sagar Dharia
2e7026aae0 slimbus: Don't allow a grouped channel to be controlled individually
Once client defines a group of channels, it should be only allowed to
be controlled as a group and not individually to avoid synchronization
issues between grouped channels.

Change-Id: Ib318497b2666eb5134a1cb220e5df6569c9fcc2e
Signed-off-by: Sagar Dharia <sdharia@codeaurora.org>
2012-02-22 17:44:04 -07:00
Jeyaprakash Soundrapandian
04592007f7 msm-camera: vertical and horizontal view angle of lens added.
The application layer expects the view angle of the camera lens.
The lens vertical and horizontal view angle of the sensors
imx074 and ov2720 are added.

Change-Id: I513fbbdf7fdfc5df0969fe54e05c7549123f6bcb
Signed-off-by: Jeyaprakash Soundrapandian <jsound@codeaurora.org>
2012-02-22 15:30:06 -08:00
Linux Build Service Account
490f9a3530 Merge "regulator: pm8xxx-regulator: Add control for boost regulators" into msm-3.0 2012-02-22 01:00:12 -08:00
Grant Likely
bad3206b20 of/address: add empty static inlines for !CONFIG_OF
As the title says, this patch adds empty implementations for the address
translation functions so that they can be used when CONFIG_OF is disabled.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Cc: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Sathish Ambley <sambley@codeaurora.org>
2012-02-21 15:10:14 -08:00
Jordan Crouse
46cf4bb5eb msm: kgsl: Program both IOMMUs at our disposal on 8064
APQ8064 has two AXI ports attached to the GPU with an IOMMU on both.
The VBIF can be programmed to use a round-robin arbitration to access
the ports equally, so we need to program both IOMMUs with the same
pagetable to make sure that the GPU can get where it needs to go.
All this involves a board file infrastructure change that affects 8960
too, but no functional changes are happening for that platform.

Change-Id: Ic0dedbad5198ed9c453711e58a3f1220ef5d5b4e
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2012-02-21 09:18:31 -07:00
Chaithanya Krishna Bacharaju
bbc2e703c6 msm: audio: qdsp6v2: Replace PMEM with ION in Audio Decoder drivers
ION is replacement for PMEM which is less complex with better
reference counting. Hence ION which is a superset of PMEM is
used to allocate memory in the audio decoder drivers.

Change-Id: I088e532a34e266bbfc3ac0a01e12acc3418c7ca6
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
2012-02-21 18:57:06 +05:30
Phani Kumar Allada
f30d6047e6 msm: audio: qdsp5: Add PCM-WB support for VoIP.
Added PCM WB mode support for  VoIP

Change-Id: Ib6e69ee0df7621ad4e85cf3d7412fa2a837a0b1e
Signed-off-by: Phani Kumar Allada <pallad@codeaurora.org>
2012-02-21 16:04:40 +05:30
Linux Build Service Account
6847bd28dc Merge "msm: camera: EVB: Add Kernel driver OV5647 & OV7692" into msm-3.0 2012-02-20 14:25:42 -08:00
Linux Build Service Account
3dd0da0800 Merge changes Ia865c101,Ib95f277e,Ic482fcb2 into msm-3.0
* changes:
  msm: 8064: Add support for isa1200 haptic chip
  mfd: pm8xxx-misc: Add function to write aux clock register
  msm: 8064: Add GSBI1 support for I2C QUP devices
2012-02-20 06:36:46 -08:00
Su Liu
6c3bb3269d msm: camera: EVB: Add Kernel driver OV5647 & OV7692
Add Initial sensor driver support for 5MP OV5647
and 1MP OV7692 on EVB 1.0 platform.

Change-Id: I8155abe1ff3c388561feed3a032c6603df892e1e
Signed-off-by: Su Liu <suliu@codeaurora.org>
Signed-off-by: Lokesh Kumar Aakulu <lkumar@codeaurora.org>
2012-02-20 18:37:39 +05:30
Amy Maloche
4c994c91e7 mfd: pm8xxx-misc: Add function to write aux clock register
This call configures the XO to the MP3 clocks. These
clocks route over PMIC gpios and are used as an independent
clock source for MP3, haptics.

Change-Id: Ib95f277eae8bcb9a7e9da12fc5fe2baec4e72493
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2012-02-20 12:14:48 +05:30
Olav Haugan
f6dc774968 gpu: ion: Move MFC heap to different address
Video hardware has the following requirements for
ION heaps:

1. MM heap must be at a higher address than FW heap.
2. MFC heap must at a higher address than FW
3. MM heap must be adjacent to FW heap.
   (There cannot be another heap between FW and MM heap)
4. MM and MFC heap cannot be more than 256MB away
   from the base address of the FW heap.

MM heap is configured as a reusable heap (FMEM heap) and FMEM
is carved out at a much higher address than the other heaps breaking
the above requirements. To support the above requirements the
MFC heap together with the FW heap must be carved out at the same
location as MM heap.

Change-Id: Ie0acb4b267d4307190ea3cd9ff23c710ffa1a538
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2012-02-19 20:26:15 -07:00
Brian Gix
20de7cfdbc Bluetooth: Use seperate socket for LE ATT Server
Because traffic between the local GATT client(s) and
remote servers are subject to different controls than
remote clients and the local server, all on the shared
fixed CID, it is important to manage the traffic on
seperate sockets.

Change-Id: I62385143c86522f4b123b32592b69f2a0ae6dc76
CRs-fixed: 336029
Signed-off-by: Brian Gix <bgix@codeaurora.org>
2012-02-18 17:54:40 -08:00
Brian Gix
8217b26988 Bluetooth: Fix ATT MTU size to 23
We only support a 23 octet MTU, so auto-respond to all
MTU change requests with the 23 octet response.

Change-Id: Ic69d5f068759d983f8cd98b329acbb9d3a481c49
CRs-fixed: 336025
Signed-off-by: Brian Gix <bgix@codeaurora.org>
2012-02-18 17:54:39 -08:00
Brian Gix
80fb3a9e8c Bluetooth: Fix LE Connection refcnts
Some rebalancing of refcnts due to issues found during testing:

Refcnt was not being released on security completion, if local side
was paired but the remote side had deleted the pairing info, and then
the re-pair failed to complete successfully.

Additionally, the refcnt was not held-released properly if pairing
was initiated due to the client socket being opened with security
level elevated from the start.

Change-Id: I120fed4dc74035d280781ca949a23d4cbcfa3f3e
CRs-fixed: 335993
Signed-off-by: Brian Gix <bgix@codeaurora.org>
2012-02-18 11:40:33 -07:00
Linux Build Service Account
7de67f7399 Merge "mtd: Collect bad block count for ecc stats lazily." into msm-3.0 2012-02-17 06:33:57 -08:00
Linux Build Service Account
c7be8dcc70 Merge changes I5d35dbab,Id1fc19e2 into msm-3.0
* changes:
  msm: Add new partition for IOMMU video domain
  gpu: ion: Lower IOMMU heap priority
2012-02-17 06:33:57 -08:00
Linux Build Service Account
cbd33877fa Merge "msm: camera: Correct the IOCTL numbers." into msm-3.0 2012-02-16 16:18:40 -08:00
Linux Build Service Account
73b9937715 Merge "thermal: msm8960_tsens: Add APQ8064 support" into msm-3.0 2012-02-16 13:55:27 -08:00
Olav Haugan
9e123f98ea gpu: ion: Lower IOMMU heap priority
Video requires the IOMMU heap to be at a lower
priority so that video can try to allocate from
its MM carveout heap first and then if video needs
more memory and the MM heap is exhausted it will
automatically fall back on IOMMU heap.

Change the priority of the IOMMU heap so video
can fall back on IOMMU heap.

Change-Id: Id1fc19e2c3af18ced028132d1a1bdb6a3935380f
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2012-02-16 10:22:47 -08:00
Kiran Kumar H N
de2d0ee764 msm: camera: Correct the IOCTL numbers.
Two camera IOCTL types are enumerated using
the same number by mistake. Rectify the mistake.

Change-Id: I48ee8d0ca543c19a3f692ed2ca5baa950edacdf2
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
2012-02-16 07:45:20 -07:00
Linux Build Service Account
55af88035a Merge "spmi: Linux driver framework for SPMI" into msm-3.0 2012-02-16 04:54:57 -08:00
Linux Build Service Account
5b25cfe9ad Merge "radio: iris: Add support for FM Subsystem Restart" into msm-3.0 2012-02-16 00:08:24 -08:00
Murali Palnati
3e8c3bf6cb mtd: Collect bad block count for ecc stats lazily.
Normally bad block counts for ECC stats are collected during boot time.
This can be done lazily when the ECCGETSTATS ioctl is invoked on the
partition. This can significantly decrease boot time, depending on the
size of the partition. Also rescanning on every ioctl invocation helps
in having the latest bad block count rather than depending on the count
that is collected during boot.

Change-Id: I43d7a769a1d4ef769823d0b5bbe132adb474f892
Signed-off-by: Murali Palnati <palnatim@codeaurora.org>
2012-02-16 09:30:15 +05:30