Commit Graph

142538 Commits

Author SHA1 Message Date
Laura Abbott
42946c8825 gpu: ion: Reference count protect/unprotect calls
Reference count the calls to ion_{un}secure_heap. The secure SCM
call will only be made when the count goes from 0 -> 1 and the
unsecure call will only be made when the count goes from 1 -> 0.

Change-Id: Ia221b79782c9223d9853ef00c2848e1ab7a73091
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2013-02-27 18:12:09 -08:00
Laura Abbott
81303fbf94 gpu: ion: Add scm calls for content protection 2.0
The next generation of content protection has separate SCM
calls into TZ. Add these functions in a dedicated file so they
can be used by any Ion heap.

Change-Id: I197130f6a5fc33efcd6871b0f7c362fa99f18d20
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2013-02-27 18:12:09 -08:00
Harsh Vardhan Dwivedi
3581606e71 msm: kgsl: Modify kgsl_core_exit to release resources carefully.
kgsl_core_exit() should not call kgsl_sharedmem_uninit_sysfs() and
device_unregister() if those resources have not been allocated.
We check this by seeing if kgsl_driver.virtdev has been
populated or not.

CRs-fixed: 359477
Change-Id: Ic040667b29bd4e006e6f29a50809d94a2bb4b469
Signed-off-by: Harsh Vardhan Dwivedi <hdwivedi@codeaurora.org>
2013-02-27 18:12:09 -08:00
Amit Blay
223ca316e1 usb: gadget: Fix USB wake IRQ to be edge triggered
This patch fixes a possible interrupt storm condition by
the USB wake IRQ, which can cause a dog timeout crash.

The USB wake IRQ detects USB bus suspend on USB D+ line.
This can be done by a rising edge triggered interrupt,
rather than level triggered interrupt.

Change-Id: Ia5451c3847285d38dde893856680a011674bd1e3
Signed-off-by: Amit Blay <ablay@codeaurora.org>
2013-02-27 18:12:08 -08:00
Jordan Crouse
14faa7b838 msm: kgsl: Dump A3XX shader memory in the snapshot
Dump the shader memory (working memory and shadow memory) for A3XX GPUs
in the snapshot.

Change-Id: Ic0dedbadf28733b96323a680b014dbea10b1ceda
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:12:08 -08:00
Jordan Crouse
3b83c7de04 msm: kgsl: Move to snapshot header version 2
Update the snapshot header to version 2 to return the raw chipid
in the dump.

Change-Id: Ic0dedbad82bbe61395924bf49cb0144e5e2e10e3
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:12:07 -08:00
Jordan Crouse
3d42741e8e msm: kgsl: Return the raw chipid in kgsl_gpuid
There are some subtle differences between revisions of GPUs
that are not reflected in the GPU ID value. Return the raw
chipid (derived from the hardware) along with the GPU ID
when queried.

Change-Id: Ic0dedbad035a80726e6fedc066ec11b78b79da2b
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:12:07 -08:00
Wentao Xu
1a4055c77b input: change mpu3050 driver to request regulator, add poll support
Needed on 8x30 MTP/MDP platforms, where interrupt line polled up and
does not work with driver's default configuration

Change-Id: I4827c7a1f7df147245336d18523088c013381f1e
Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
2013-02-27 18:12:06 -08:00
Jordan Crouse
6a3b9fbab1 msm: kgsl: Properly handle an empty ringbuffer
The code seeking out the failing frame for a hang got confused if
the CP read and write pointers were equal resulting in missing
IBs.

Change-Id: Ic0dedbadb32e4a708d0f8ee9e8a853fdfaff10b0
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:12:06 -08:00
Ajay Singh Parmar
963700f76a Revert "msm_fb: display: Fix for HDMI bootup issue"
This reverts commit a369ce03ca048fb511642ac1cb73c1f652d70c50.

The change is no more required as pan_update is not being called
and overlay set is now being used instead.

Change-Id: I7b25c256ab57e620f319058638371e079642c448
CRs-Fixed: 367233
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2013-02-27 18:12:05 -08:00
Jordan Crouse
28f57aaa1d msm: kgsl: Clean up snapshot GPU object output
Use a iterator to cleanup how snapshot GPU objects are printed.
This removes a ton of ugly math, and allows us to do subtle
silly things like add padding at the end of a non dword
aligned object.

Change-Id: Ic0dedbadabeee50f42fe9be62ea0b7dfc1f333da
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:12:05 -08:00
Jordan Crouse
1106c9ba51 msm: kgsl: Make the snapshot better at detecting packet boundaries
Enhance the logic that checks to see if the CP_RPTR is stuck
mid packet.  Ensure that when we do packet counting that we
use real type3 packets instead of regular data pretending to
be a type3 packet.

Change-Id: Ic0dedbadb502fa2790df0c6752309da300d6d1ae
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:12:05 -08:00
Jordan Crouse
bf6be4a640 msm: kgsl: Improve detection of a type3 CP packet
Currently we just check the most significant two bits of a dword
in the ringbuffer or IB are set to decide if the data is a type3
packet header.  This has proven to be problematic, as it turns out
that the top two bits are often set in nominal data.  Enhance
the type3 packet check to verify that various reserved bits in
the dword are 0 as expected.

Change-Id: Ic0dedbada5eff8353bc64da9eefd9919de127fa4
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:12:04 -08:00
Jordan Crouse
0ea992baaf msm: kgsl: snapshot: Support loading more indirect buffers
User side drivers are starting to use more indirect buffers
for CP_LOAD_STATE, so expand the snapshot to support grabbing
all of the possible combinations.

Change-Id: Ic0dedbadff743d03b5accb2a0299ab5dc0bc1a61
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:12:04 -08:00
Sunid Wilson
202279d46e msm: camera: Update gesture control commands
The control cmd structure for sending events to and from the
camera daemon has been updated for camera controls in server
node. Gesture control has been updated leading to crash since
both camera and gesture uses the same server node.
Adding the change to reflect the changes for gestures.

Change-Id: I82d20294d1026a5dce7d63f6d009c83f3f895e56
Signed-off-by: Sunid Wilson <sunidw@codeaurora.org>
2013-02-27 18:12:03 -08:00
Jack Pham
a940b9173e net: rmnet_usb: Decrease autosuspend delay to 1.2s
Override the default autosuspend delay of 4 seconds--that is, 2
seconds for device and 2 seconds for the root hub, to 1s for the
HSIC-connected MDM device and 200ms for the root hub. This should
minimize the time spent active for better power savings.

CRs-fixed: 353213
Change-Id: Idfa49928dbb7fd2508deec0b9fab25e1cbcdf078
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2013-02-27 18:12:02 -08:00
Amy Maloche
ac760faa9d cyttsp-i2c-qc: Set input property bit to indicate a direct input device
Prop bit is checked in userspace and must be set in
driver in order to be recognized correctly, since it defaults
to mouse pointer.

Change-Id: Ibc3ce400033af171b60821c2945596676107eb75
Signed-off-by: Jessica Gonzalez <jgaona@codeaurora.org>
2013-02-27 18:12:02 -08:00
Amy Maloche
c9e66d1ecb atmel_mxt_ts: Set input property bit to indicate a direct input device
Prop bit is checked in userspace and must be set in
driver in order to be recognized correctly, since it defaults
to mouse pointer.

Change-Id: Id490152174624e86e8b62b746d25baf2d544080a
Signed-off-by: Jessica Gonzalez <jgaona@codeaurora.org>
2013-02-27 18:12:02 -08:00
Pavankumar Kondeti
35269ad8b7 USB: EHCI: Fix bug in updating root hub state during suspend
commit e879990 (USB: EHCI: remove usages of hcd->state) removed the
hcd->state usage in EHCI driver.  Instead rh_state field of ehci_hcd
struct should be used. But the current code is still using
hcd->state. This bug is introduced during 3.4 kernel porting.

If rh_state field is not updated to SUSPEND during root hub suspend,
the root hub will not be resumed upon device connection or remote wakeup.

Change-Id: Id47e7c650c03cda2e7be00be4e8b92a47257fc6a
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2013-02-27 18:12:00 -08:00
Stepan Moskovchenko
7ec2efebca iommu/msm: Use more fine-grained clock control
Enable and disable the IOMMU clocks for each high-level
mapping operation rather than leaving the clocks enabled
between attach-time and detach-time even if no IOMMU
operations are being done.

Change-Id: I4cde881992b8cd77fb4ea7e8dc1c003f639d15b6
Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
2013-02-27 18:12:00 -08:00
Arun Menon
3658e5175d msm:vidc: provide support to raise afab and ebi1 clks to turbo mode.
This change provides support to raise the clks to turbo mode for mpeg4
clips with high number of slices. The firmware performance degrades if
the number of slices is more than 10. Without this fix, we see lot of
frame drops happening, causing a freeze effect.

Change-Id: Ia897854ef6d30bb97cd37810b22eb1ab5ad818fb
CRs-Fixed: 358615
Signed-off-by: Arun Menon <menon@codeaurora.org>
2013-02-27 18:11:59 -08:00
Jordan Crouse
9607bc6227 msm: kgsl: Check that the adreno drawctxt is valid before destroying it
If there is a failure in drawctxt create, then the KGSL core will call
drawctxt destroy to free the memory.  If the failure happened soon
enough, there might not a drawctxt to free.

CRs-Fixed: 371852
Change-Id: Ic0dedbad629090ae1827e354b9b94bbd3c5efcdd
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2013-02-27 18:11:59 -08:00
Sathish Ambley
c0b01269ce iommu/msm: Program global address space on first attach
SMMU global address space programming need to be performed
each time the device comes out of power collapse, move the
programming of global address space from driver initialization
to the point where the attach is initiated by the clients.

When the first context is attached, the global address space
is programmed prior to the programming the context.

Change-Id: I36e4f161861823aa43d15c3271f8d9b26214cb84
Signed-off-by: Sathish Ambley <sambley@codeaurora.org>
2013-02-27 18:11:58 -08:00
Ravi Kumar V
fc7b41b33d media: rc: Add Samsung remote keymaps for source, tv, media, info keys
Add keymaps for source, tv, media select, info, red, green, yello, blue,
aux keys on Samsung remote.

Change-Id: Icc37eb8f29a930df30bd30aa2a50752a1dfd9c8a
Signed-off-by: Ravi Kumar V <kumarrav@codeaurora.org>
2013-02-27 18:11:57 -08:00
Ravi Kumar V
f17f737645 media: rc: Add UE RF4CE remote keymaps for PC & numeric keys
Add keymaps for PC & numeric keys on UE RF4CE remote.

Change-Id: I14e43be544774cb2558d7ed5c48ce3bbdd226495
Signed-off-by: Ravi Kumar V <kumarrav@codeaurora.org>
2013-02-27 18:11:57 -08:00
Ravi Kumar V
053869805f media: rc: Add support to decode Samsung remote IR protocol
Samsung remote is using NECx IR protocol to send remote control key
events. Present nec decoder in rc framework is assuming to have 2 stop
bits (pulse width of 560us & space width 5600us) in NECx, but in
reality NECx sends only pulse of 560us and space untill next frame.So
here we can ignore the space width in stop bit as it is variable.

CRs-Fixed: 359885
Change-Id: I297343b22039a9a4b899ec945a8b103390dcca13
Signed-off-by: Ravi Kumar V <kumarrav@codeaurora.org>
2013-02-27 18:11:54 -08:00
Ravi Kumar V
195c67a37e media: rc: Fix Kernel bug message from gpio_ir_recv driver
Getting invalid context warning message from gpio_ir_recv driver when
remote is operated, gpio_get_value_cansleep function is called from
interrupt context, check gpio_cansleep and use appropriate context API's

Change-Id: I1bcfbbce5e9737eecb9ebc46553f9121b4ee779a
Signed-off-by: Ravi Kumar V <kumarrav@codeaurora.org>
2013-02-27 18:11:54 -08:00
Anantha Krishnan
a5c636459d radio-tavarua: Add IOCTL commands to configure the SPUR Table
Provide interfaces to allow host to update the SPUR Table
with newly found spur frequencies and their RMSSI values.

CRs-Fixed: 352591
Change-Id: I84f296ea313971cc1995c644d604f96581be5f7f
Signed-off-by: Anantha Krishnan <ananthk@codeaurora.org>
2013-02-27 18:11:54 -08:00
Amir Samuelov
987d4f11e5 msm_fb: display: Fix D2L register I2C driver more than once
Fix error message seen on kernel log after suspend/resume

Change-Id: I908efec9fde6e9de838e28d2c778fa4b3567e4f6
Signed-off-by: Amir Samuelov <amirs@codeaurora.org>
2013-02-27 18:11:51 -08:00
Kevin Chan
a8a9bd9873 msm: camera: Fix compilation for 7630
Enable camera on 7630

Change-Id: I908edcb2801bca621e2f39aea2b4e09106876456
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2013-02-27 18:11:50 -08:00
Arun Menon
8d98510db4 vidc: Move prediction scratch buffer to FW Heap.
The encoded output was corrupted for wvga and lower resolutions
during HFR. Moving the prediction scratch buffer from MM Heap to
FW Heap avoids this corruption.

CRs-Fixed: 353979
Change-Id: Ife3be7ccd9f19bb285c6c348721a1d54bbbd4734
Signed-off-by: Arun Menon <menon@codeaurora.org>
2013-02-27 18:11:49 -08:00
Amy Maloche
cdafa428bc ft5x06: Set input property bit to indicate a direct input device
Prop bit is checked in userspace and must be set in
driver in order to be recognized correctly, since it defaults
to mouse pointer.

Change-Id: Ibdc78547e6376e6db54db75b1423718d13afaaa7
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2013-02-27 18:11:49 -08:00
Amy Maloche
c9ff1f133a atmel_maxtouch: Set input property bit to indicate a direct input device
Prop bit is checked in userspace and must be set in
driver in order to be recognized correctly, since it defaults
to mouse pointer.

Change-Id: I8432716573a365c11b6837d1ce756364d2b98946
Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2013-02-27 18:11:48 -08:00
Ram Mohan Korukonda
273c1cd0ae Bluetooth: Voting UART clocks in non atomic context.
As per the latest clock design, we should not vote for the clocks
in the atomic context.

CRs-fixed: 363013
Change-Id: I0f855f47bc3553501a5523a1997be34890696415
Signed-off-by: Ram Mohan Korukonda <rkorukon@codeaurora.org>
2013-02-27 18:11:47 -08:00
Rajkumar Raghupathy
51ef44251c USB: u_ether: Configure the endpoints before enabling them in eth_stop()
The endpoints fail to enable if they are not configured. Hence configure
the IN and OUT endpoints in eth_stop() function before enabling them.

Change-Id: I936c5c492054cbc16bde6f1d0414712d8a0048d7
Signed-off-by: Rajkumar Raghupathy <raghup@codeaurora.org>
2013-02-27 18:11:47 -08:00
Sujit Reddy Thumma
3de43b3e2a msm: msm_sdcc: Set default clock gating timeout to 200msecs
With commit c84f15ae, the default clock gating delay in mmc host
init is set to zero. For MSM targets this can cause huge
performance hit as sometimes the clocks are non-local and
requires a request to other subsystem leading to significant
roundtrip delay.

Fix this to have atleast 200msecs delay in turning off the sdcc
clocks after a request is completed.

Change-Id: I5f434cf98373154d817735dba8f5bc8810d27611
Signed-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>
2013-02-27 18:11:46 -08:00
Carl Vanderlip
b813b9eafb video: msm: Resolve post processing memory leaks
Allocate memory for post processing only once. Free post processing memory
when MDP is removed.

CRs-fixed: 366325
Change-Id: I244f4e10a6933e2acaf69a83d8b91ee5f6e27557
Signed-off-by: Carl Vanderlip <carlv@codeaurora.org>
2013-02-27 18:11:46 -08:00
Hemant Kumar
8d1efcd1c2 net: usb: Fix premature auto suspend on Rx control path
RMNET QMI driver does not prevent auto suspend while submitting
the URB on rx control path. This causes the usb device to go to
low power mode after receiving QMI notification as the auto suspend
timer does not get reset by the driver while submitting the URB
and it expires.

CRs-Fixed: 372251
Change-Id: Idb5c377c09d39ff53d4fac32599d6515ceb3da51
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2013-02-27 18:11:45 -08:00
Amit Blay
f7b891b01e usb: gadget: hsic: Add support for VDDCX corner voting
This change add support in ci13xxx_msm_hsic driver and
ehci-msm-hsic driver for VDDCX corner voting.
In case a VDDCX corner resource is supported by the platform,
it will be used. Else, the legacy voting for specific voltage
level will be used.

Change-Id: Iae91d1c945f9b61340628b2fc7c7727e4cca6a1e
CRs-Fixed: 354458
Signed-off-by: Amit Blay <ablay@codeaurora.org>
Signed-off-by: David Collins <collinsd@codeaurora.org>
2013-02-27 18:11:43 -08:00
Suresh Vankadara
e140e5e249 msm: camera: Ignore STOP command in snapshot mode
Ignore VFE(Video Front End) STOP command if camera
is in snapshot mode and send STOP_ACK as part of
STOP command processing.

Change-Id: Ib9e6af9c6f19d47a873ece9b9916c5ae262a4bfa
CRs-Fixed: 369336
Signed-off-by: Suresh Vankadara <svankada@codeaurora.org>
2013-02-27 18:11:39 -08:00
David Keitel
d0d1363952 power: bms/ccadc: move ccadc calibration to ccadc driver
There is a dependency for the CCADC calibration work on the BMS
driver. This prevents some devices that do not use the BMS
to utilize the CCADC.

Remove this dependency by moving the ccadc calibration
work to the CCADC driver to avoid this.

Change-Id: If43c781d6d2bc27f64dbbe594b6e81c5a5642f0b
Signed-off-by: David Keitel <dkeitel@codeaurora.org>
2013-02-27 18:11:38 -08:00
Adrian Salido-Moreno
02d2604cc5 mdss: display: add overlay ioctl apis to mdss driver
- Add support for overlay IOCTL APIs defined in linux/msm_mdp.h
- Support for ion client buffers and framebuffer memory

Change-Id: I0418ecab9aacf826d900f82f179fa20688fc763e
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2013-02-27 18:11:37 -08:00
Adrian Salido-Moreno
40c4d9f2d3 mdss: display: implement writeback interface for mdss
Add writeback interface support, using one page of framebuffer memory
for writeback output.

Change-Id: I0a44c6907cbc10d97c78642f45dc018dfb2d1750
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2013-02-27 18:11:36 -08:00
Adrian Salido-Moreno
145cc2b53c mdss: display: Add Mobile Display SubSystem driver
- Implements Linux frame buffer interface to interact with userspace
  libraries and applications, based on msm_fb frame buffer.
- Implement MDP driver which handles MDP core data path setup and
  hardware blocks programming.
- Support for UI through Linux frame buffer FBIOPAN_DISPLAY ioctl.

Change-Id: Ib98677b8d81d74283b27dea08a9f1a705c101bce
Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
2013-02-27 18:11:36 -08:00
Shashank Mittal
5cc362beb1 power: Fix compiler warning.
Fix compiler warning for a variable not initialized

Change-Id: I1fa466bda4e03b60282d6ddc4d9d88666608d916
Signed-off-by: Jessica Gonzalez <jgaona@codeaurora.org>
2013-02-27 18:11:36 -08:00
Ashray Kulkarni
1c7bd554f6 msm: video: Fix compiler warnings
changed array definitions, #defines and variable repetition to resolve
warnings in compilation.

Change-Id: Ic26f1924da389f4a8638728963c6a4c8b2f859d0
Signed-off-by: Jessica Gonzalez <jgaona@codeaurora.org>
2013-02-27 18:11:35 -08:00
Yan He
139a71ef87 msm: sps: Add SPS support for MDM 9x25
Enable SPS functionalities (including BAM, BAM DMA and pipe memory)
on MDM 9x25.

Change-Id: Id5295922dd87ebad5e87efa27eff0dc4b2b837ae
Signed-off-by: Yan He <yanhe@codeaurora.org>
2013-02-27 18:11:35 -08:00
Nishant Pandit
1741a46960 msm: camera: Decouple the ISPIF component from sensor
Ispif is a separate hardware block. Decouple
it from sensors so that it can be controlled for various
camera usecases.

Change-Id: I539fcb4166edc7a14d15a94c2f7f56b2f196a971
Signed-off-by: Nishant Pandit <npandit@codeaurora.org>
2013-02-27 18:11:34 -08:00
Zhoulu Luo
d760b2ccd2 Revert "msm: kgsl: Fix conditional GPU interrupts to fire only for waiting context"
This reverts commit 609467077ae6b794af47613e05949e8b2fb3a842.

Change-Id: I457634982603c957788b749198219d0974bd1de5
Signed-off-by: Zhoulu Luo <zluo@codeaurora.org>
2013-02-27 18:11:32 -08:00
Ajay Singh Parmar
3a2bc77249 msm_fb: display: Fix compilation error for non-HDMI builds
HDMI dependent functions need to be guarded under HDMI panel
macro to avoid non HDMI builds complilation errors.

CRs-Fixed: 366864
Change-Id: Ib2a9f6db4eb511b2a170fcc7ac979f6c41046baf
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2013-02-27 18:11:31 -08:00