Commit Graph

25854 Commits

Author SHA1 Message Date
Linux Build Service Account
c4bb1f9623 Merge "Input: atmel-mxt_ts: Support firmware upgrade in bootloader mode" into msm-3.0 2012-03-07 21:33:58 -08:00
Linux Build Service Account
bbd69208f6 Merge "msm: vidc: add slice info extradata feature for encoder" into msm-3.0 2012-03-07 21:33:58 -08:00
Linux Build Service Account
6287d23fb4 Merge changes Ie6a6a8e9,I5b3624b1 into msm-3.0
* changes:
  USB: core: Fix misc OTG related bugs
  USB: gadget: composite: Process GetDescriptor(OTG) request
2012-03-07 21:33:58 -08:00
Linux Build Service Account
f4635f606f Merge "WLAN: WCN1314: Add API to enable/disable interrupts from chip." into msm-3.0 2012-03-07 19:00:01 -08:00
Vijayavardhan Vennapusa
81bda9d20e USB: core: Fix misc OTG related bugs
This patch fixes the following OTG related bugs:

1. The current code does not wait for the ongoing HNP polling work to
finish upon the device disconnection which results in a crash when
accessing the udev structure in hnp polling routine.

2. bcdOTG field is added to OTG descriptor in 2.0 revision. Check OTG
descriptor size before validating bcdOTG field.  A legacy device sends
2 bytes lesser than the size of OTG descriptor specified in 2.0 spec.

3. The host is required to execute a GetStatus() with a frequency of
THOST_REQ_POLL in order to determine the state of the Host request flag.
The limits of THOST_REQ_POLL are 1 - 2 sec. Use the average value 1.5 sec
for HNP polling to pass compliance tests.

Change-Id: Ie6a6a8e915d10c1347946f979c919d04d64823b4
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2012-03-07 16:31:34 +05:30
Vijayavardhan Vennapusa
95b650ab5d USB: gadget: composite: Process GetDescriptor(OTG) request
If gadget is OTG capable, respond to a GetDescriptor(OTG) request
with its OTG descriptor.  This patch adds a utility to function
to find and fill the requested descriptor.

Change-Id: I5b3624b1145d46179b0c4737e82a47c68604cab4
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2012-03-07 16:30:53 +05:30
Maheshwar Ajja
94626402db msm: vidc: add slice info extradata feature for encoder
One frame can have multiple slices or NAL units in the
encoded bitstream output. Core can give slices information
to the driver, if slice info metadata enabled, which inturn
will be sent to the client as extradata in output buffer.
This change will enable the core with slice information
extradata feature.

Change-Id: I52935a641dc7b4921da602b0132f0b81463b5cc8
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
2012-03-06 15:07:45 +05:30
Linux Build Service Account
fc3a6da8af Merge "msm: audio: qdsp6v2: Replace PMEM with ION in Audio Decoder drivers" into msm-3.0 2012-03-05 08:28:17 -08:00
Pavan Kumar
8832b23b20 WLAN: WCN1314: Add API to enable/disable interrupts from chip.
Add an API to enable/disable interrupts from the chip.
This API uses func0 SDIO_CCCR_IENx register to enable/disable
interrupts from the chip.

Change-Id: I2da8d569511aeff0409744a90e7daf4704fff91d
Signed-off-by: Pavan kumar <pavan@codeaurora.org>
2012-03-05 19:42:40 +05:30
Anirudh Ghayal
6c3b37b263 Input: atmel-mxt_ts: Support firmware upgrade in bootloader mode
If a firmware upgrade fails, on subsequent boot retry a firmware
upgrade based on the bootloader id. This can be initiated through
the userspace program by writing into the update_fw sysfs entry.

Change-Id: I1d428c52f2cbfff8fe572a2bc6f0cd124111b810
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2012-03-03 20:29:51 -08:00
Linux Build Service Account
4d088da993 Merge changes I2b676dbe,Ic63a24bf into msm-3.0
* changes:
  gpu: ion: Add API to do cache operations
  gpu: ion: Do not allow cached IOMMU mappings.
2012-03-03 15:40:48 -08:00
Ajay Singh Parmar
4c7ccb3106 msm_fb: display: Use FIR (QSEED) for upscaling.
Low resolution UI is observed on HDTV connected with HDMI.
FIR (QSEED) algorithm needs to be used instead of pixel
repetition to improve the performance in case the BYPASS
composition is not used.

CRs-fixed: 332123
Change-Id: Ib4c2b107b4ae1300458cccc7e8066d31aee50a0d
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2012-03-03 02:37:18 -07:00
Linux Build Service Account
06eb6c148d Merge "msm: kgsl: Add a new property to IOCTL_KGSL_DEVICE_GETPROPERTY" into msm-3.0 2012-03-03 00:26:25 -08:00
Olav Haugan
41f8579a79 gpu: ion: Add API to do cache operations
Clients need to be able to do cache operations
on ION buffers in the kernel. Add API to
flush, invalidate, or invalidate and flush the
cache of an ION buffer.

Change-Id: I2b676dbe32372b3c17e4aaf39f51878b105a699c
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2012-03-02 17:33:19 -08:00
Anirudh Ghayal
0bcb5b599a input: atmel-mxt-ts: Provide firmware name via platform data
This allows firmware upgrade only when a firmware name is provided.
The platform data (config data) of the latest firmware will point
to a NULL string which prevents auto firmware upgrade at boot
(if enabled by the userspace).

Change-Id: Ifef57a9dab9306cf4f1fe7a6c7e52c5e92a25d4a
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2012-03-02 15:08:17 -08:00
Shubhraprakash Das
2dfe5dd0c5 msm: kgsl: Add a new property to IOCTL_KGSL_DEVICE_GETPROPERTY
Return the reset status of the GPU unit when
IOCTL_KGSL_DEVICE_GETPROPERTY is called with
type KGSL_PROP_GPU_RESET_STAT

Change-Id: I4bb17be959eadba3ba491d94c6fd4f5824442e92
Signed-off-by: Shubhraprakash Das<sadas@codeaurora.org>
2012-03-02 13:47:28 -07:00
Linux Build Service Account
9ec5583444 Merge changes I1bfdc1f4,I09735f6e,I57f3333e,I37949113,Ic9e9ca4e into msm-3.0
* changes:
  power: pm8921-bms: add api to simultaneously read vbatt and ibatt
  power: pm8921-bms: calibrate xoadc more often
  power: pm8921-bms: add protection against divide by zero
  power: pm8921-charger: fix 10mv error on vdd_max
  power: pm8921-charger: fix reverse boosting
2012-03-02 12:21:32 -08:00
Linux Build Service Account
bbbc99ac4d Merge changes I810ffac4,If881eb08 into msm-3.0
* changes:
  msm: board-8960-pmic: Add platform data for PWM driver
  mfd: pm8xxx-pwm: Add feature to configure LPG DTEST mode
2012-03-02 12:21:32 -08:00
Abhijeet Dharmapurikar
c9857ca398 power: pm8921-bms: add api to simultaneously read vbatt and ibatt
The compensation algorithms need simultaneous readings of the battery
voltage (vbatt) and the current flowing through it (ibatt).

One needs to put the BMS in override mode to get simultaneous vbatt
and ibatt readings.

Note that since one would need to sleep for 20 milliseconds after the
BMS is put in override mode the spin_lock is changed to mutex in the bms
driver.

Change-Id: I1bfdc1f4e84d5d3c2cd6502dd66afdfba650cc0d
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2012-02-29 21:02:37 -08:00
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
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
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
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
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
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
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
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
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
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
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
Linux Build Service Account
55af88035a Merge "spmi: Linux driver framework for SPMI" into msm-3.0 2012-02-16 04:54:57 -08:00