Commit Graph

50286 Commits

Author SHA1 Message Date
Pratik Patel
8aa3df2fcb coresight: fix whitespace in coresight drivers
Add/remove whitespace to improve code readability.

Change-Id: Iade3100b7eb9a57f95849d6665257cffe85b26b3
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
2013-02-27 18:20:33 -08:00
Pratik Patel
4c6ab53d5f coresight: enable stm logging for ftrace events and printk
Dup ftrace event traffic (including writes to trace_marker file from
userspace) to STM. Also dup printk traffic to STM. This allows Linux
tracing and log data to be correlated with other data transported over
STM.

Change-Id: Ieb0b856447f7667eb0005a6a884211dc46f50217
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
2013-02-27 18:20:24 -08:00
Pratik Patel
d43a9870ef coresight: implement coresight abort
Provide CoreSight abort debug api to stop the active trace sink
from any context. This is a best effort api that can be used to
abruptly stop and disable the current trace sink from anywhere
in the kernel to avoid tracing and hence polluting the trace data
after the point of interest has been executed.

Change-Id: I34c528d9febec4265088a7267dbcf0e7a1f87fcf
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
2013-02-27 18:20:24 -08:00
Pratik Patel
7cff43e968 coresight: device tree support for coresight drivers
Support for reading hardware data for CoreSight devices from device
tree.

Change-Id: I4d149991c89b458384465d163386084f500a4028
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
2013-02-27 18:20:17 -08:00
Srinivas Krovvidi
3e9123ed07 Bluetooth: Block SCO disconnect operation on BT_CLOSED state.
Have maximum blocking time for shutdown operation as DISCONNECT_TIMEOUT.
During this period when SCO connection closes, the userspace will be
updated on the close operation. Existing approach of immidiate return
on shutdown call can cause synchronization issues on SCO state between
kernel and userspace. This happens when disconnect operation takes
more time at kernel space.

Change-Id: Id9e6a61c2c3d4ba2cf6da574fc49bc6894a8f96a
Signed-off-by: Srinivas Krovvidi <skrovvid@codeaurora.org>
2013-02-27 18:20:11 -08:00
Kiran Kandi
6a05c9e1d4 msm: wcd9xxx: add device tree support for codec slimbus component
Read the codec specific data from device tree instead of board file.

Change-Id: Iad382b89692903d2434b63d34c7121fe0b4b9dda
Signed-off-by: Kiran Kandi <kkandi@codeaurora.org>
2013-02-27 18:20:08 -08:00
Terence Hampson
9ff8b5d419 msm: mpq8064: Use ION to alloc driver buffers
Since VCAP is behind IOMMU, in order to get proper address for VCAP
hw to write to driver needs to alloc buffer from ION and not
kzalloc.

Change-Id: I1f4fcc6834d0ea09ba0fc812b301219d35f40721
Signed-off-by: Terence Hampson <thampson@codeaurora.org>
2013-02-27 18:19:59 -08:00
Ido Shayevitz
caa31b4a1e usb: otg: Fix USB LPM for cable disconnect
Allow to USB clocks to remain on only for bus suspend case, but turn
off clocks for any other case, such as cable disconnect.

CRs-Fixed: 378955
Change-Id: I4d85b645cfd231126fbc160a0c14273066ce674c
Signed-off-by: Ido Shayevitz <idos@codeaurora.org>
2013-02-27 18:19:58 -08:00
Pratik Patel
f264c3258c coresight: switch to use coresight core layer code
Switch all CoreSight drivers to start using the new CoreSight core
layer code. Remove obsolete qdss code.

Change-Id: I2d4496aea0ffd918e0bfbf4b4e58ad82ea634a59
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
2013-02-27 18:19:50 -08:00
Mingcheng Zhu
f6c95fad77 msm: add new image modes to support stats buffer
Extend the image mode defines to include the stats buffers.

Change-Id: I4c7a687cb08695d43befa15f6e18e7070d4e2976
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2013-02-27 18:19:39 -08:00
Eugene Seah
fa14860a50 thermal: msm_thermal: Define and implement device tree bindings
Define device tree bindings for MSM_THERMAL driver, and implement
matching code to make the driver abide to these bindings.

Change-Id: I6ed08a09f45f8748841cf44db601f28659e49d9c
Signed-off-by: Eugene Seah <eseah@codeaurora.org>
2013-02-27 18:19:38 -08:00
Abhijeet Dharmapurikar
c4cbe3b80c msm: krait-regulator: add regulator control for kraits
Badger kraits have a single voltage supply coming from the pmic. This
supply is provided by multiple switching regulators operating in
ganged mode.

There is a LDO and a HS (Head Switch) per core that further control the
voltage supply to that core.

This driver manages the ganged supply by calling upon the spm driver to
set phases and voltage.

Change-Id: Idc0a0ae3242729a7e0ede5962974c09b61d8d39c
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2013-02-27 18:19:37 -08:00
Jack Pham
41e5753280 usb: msm_otg: Enable VBUS MPM interrupt
When otg_control is set to OTG_PHY_CONTROL and PMIC interrupts are
not used for VBUS notification, a cable connection will fail to
wake up the device from VDD minimized low power mode. The MPM needs
to be configured to wake up the system when the USB_PHY_OTGSESSVLD
interrupt is triggered. As this interrupt may vary by SoC populate
it in the msm_otg_platform_data->mpm_otgsessvld_int member in the
various board files.

CRs-fixed: 376740
Change-Id: Ia54828f538c695ff6b28f5d7b2b49630a45cc673
Signed-off-by: Jack Pham <jackp@codeaurora.org>
2013-02-27 18:19:37 -08:00
Shimrit Malichi
8b4c3bd10a usb: gadget: Introduce qdss function driver
The QDSS function driver supports high throughput debug information
delivery from the QDSS core to the host via the USB port.

Change-Id: Ia9397944d39d767c1200ad87aac67d5627233282
Signed-off-by: Shimrit Malichi <smalichi@codeaurora.org>
2013-02-27 18:19:33 -08:00
Mingcheng Zhu
5a090e0f2d msm: add new FOURCCs for support YUV and Bayer stats buffers
Extending FOURCC to include stats buffer polling.

Change-Id: If3148ad5e654cbdfee1df4eed92b65678a46fcf3
Signed-off-by: Mingcheng Zhu <mingchen@codeaurora.org>
2013-02-27 18:19:27 -08:00
Siddartha Mohanadoss
6ded5b5ee9 hwmon: qpnp-adc: Add PMIC QPNP IADC driver
The QPNP IADC driver supports the user bank
peripheral of the current ADC(IADC).

IADC is a 16 bit ADC used for measuring current.
The single measurement mode is supported to read
current from upto seven channel configuration.

Clients can read the internal/external Rsense,
CSP_EX, CSN_RX along with gain and offset
calibraton channels.

Change-Id: I7e5ae3fc70878d16827d33705853a36bb0aa04f6
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2013-02-27 18:19:24 -08:00
Padmanabhan Komanduru
3fcd1d0f89 msm_fb: Add support for Vsync driven composition on MDP 3.03 targets
Add support for vsync notification to user space using user events.
This is to trigger frame composition based on Vsync.

Change-Id: Ie94edfcdb5e540dd2f9a4a5df4bc3b7c4eb9041c
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
2013-02-27 18:19:22 -08:00
Joonwoo Park
7ad053abe0 ASoC: wcd9xxx: Add wcd9320 codec slimbus slave support
Update slimbus slave driver to use updated address depending on discovered
The wcd9320 Taiko codec introduced a new register address map to configure
slimbus slave device.

Change-Id: I41e9ebabd1d375a1904b6033e46736b2fb6365f9
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
2013-02-27 18:19:20 -08:00
David Keitel
79f64ebc98 power: power_supply_core: add power_supply_set_supply_type API
Allow other drivers to change the supply type of a given power
supply. This is required when a USB driver determines the exact
USB connection type and needs to notify the owner of the usb power
supply struct.

Change-Id: I99d377628a296704e1dcd170251ab9ceadc653ec
Signed-off-by: David Keitel <dkeitel@codeaurora.org>
2013-02-27 18:19:09 -08:00
Dixon Peterson
7948e99265 diag: Add support for sockets
diag does not support logging to sockets. Add support for
new socket logging mode to support sockets.

Change-Id: I1134859825f9e075ee911c94376a239d748e311f
Signed-off-by: Dixon Peterson <dixonp@codeaurora.org>
2013-02-27 18:19:08 -08:00
Jay Chokshi
bef5e61818 platform: msm: qpnp-pwm: Define PWM devicetree bindings
Add the PWM devicetree bindings for the PWM/LPG device present in
Qualcomm PM8941 chipset. Also make the necessary changes to the driver
to comply with the devicetree binding requirements.

Change-Id: I8124e2541028719e5b747bc85ff548ac109a9735
Signed-off-by: Jay Chokshi <jchokshi@codeaurora.org>
2013-02-27 18:19:05 -08:00
Vijayavardhan Vennapusa
5f14a8f8c4 USB: EHCI: Add remote wakeup support for HSUSB 3rd instance
Currently as part of host bus suspend handling, voting for
XO shutdown and VDD minimization due to which devices connected
to HSUSB 3rd instance will not wakeup the system from system suspend.

Add support for USB remote wakeup feature for detecting devices
connected on HSUSB 3rd instance in case of VDD minimization provided
HW rework for routing D+ line to MPM is implemented.

CRs-Fixed: 380386
Change-Id: Ie8560b99c51efc466dfd257747bbf38bec6e6ba0
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2013-02-27 18:19:03 -08:00
Shimrit Malichi
66234f6288 msm: usb_bam : Add QDSS support for usb bam mode
Add USB bam changes to support QDSS in msm-8794.

Main additions:
Support device-tree files.
Add disconnect bam pipe support.
Add new API to retrieve pipe connection: get_bam2bam_connection_info.

Change-Id: I200d44dee319b8a9efda31b238c99202efddaa07
Signed-off-by: Shimrit Malichi <smalichi@codeaurora.org>
2013-02-27 18:18:58 -08:00
Deepak Verma
98261841be msm: vidc: Add PAR value extradata support for H264 and Mpeg2
Core gives aspect ratio information for H264/Mpeg2 in a
shared memory register. This change will fetch the value
of the aspect ratio from the designated register and append
this information to the frame_info extradata which can be
used by the client.

Change-Id: Iacacaf1b1181546ba2d09362a51bbe5178a63999
Signed-off-by: Deepak Verma <dverma@codeaurora.org>
2013-02-27 18:18:57 -08:00
Kevin Chan
a3ca4db7ad msm: camera: Initial commit for VFE 4.0
Add Image Signal Processor support for 8974 chipset.

Change-Id: Id1f425e59d48e490d5e426f5d056bca7c54b54a2
Signed-off-by: Kevin Chan <ktchan@codeaurora.org>
2013-02-27 18:18:56 -08:00
Lakshmi Narayana Kalavala
c33afe48a3 msm: camera: Move ping pong buffer and bus scale logic from vfe to axi
Move the ping pong buffer configuration and bus scaling
logic from vfe to axi as for concurrent camera case,
vfe component will be turned off

Change-Id: I39b465dcc121b83f960370b25349dc941ac8c34b
Signed-off-by: Nishant Pandit <npandit@codeaurora.org>
Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2013-02-27 18:18:54 -08:00
Anantha Krishnan
d6dc85833e radio-tavarua: Validate whether the current station is good or bad
Provide mechanism to decide whether the currently tuned station
is valid or not.

CRs-Fixed: 371689
Change-Id: I1a28537d242fbb636732b120c9259ad5e7fffcc0
Signed-off-by: Anantha Krishnan <ananthk@codeaurora.org>
2013-02-27 18:18:50 -08:00
Shuzhen Wang
b24bb154c3 camera: vfe32: Add RDI reg update ack notification.
RDI and PIX have different timing characteristics.
They should not share the same START_ACK notification.
Add rdi0, rdi1, rdi2 reg update ack notifications.

Change-Id: Id36b52ae5cf98f5f9f86e92028ec7ab0e7427a23
Signed-off-by: Shuzhen Wang <shuzhenw@codeaurora.org>
2013-02-27 18:18:49 -08:00
Shuzhen Wang
c5232358c5 vfe32: Separate AXI reset with VFE reset.
Refactor reset to axi_reset and vfe_reset. axi_reset
initializes stream off/on, irq related registers.
vfe_reset only handles stuff related to VFE components.

VFE_RESET_2 is removed. Both axi_reset and vfe_reset
are synchronous calls.

Change-Id: I274c17defbfbc56056b020c48239696b0f579b0e
Signed-off-by: Shuzhen Wang <shuzhenw@codeaurora.org>
2013-02-27 18:18:49 -08:00
Peter Liu
780d63bdab msm: camera: calculate sof_count in ISPIF instead of VFE
Instead of counting the frame id inside VFE camif,
obtain the sof count in ispif and then pass the count into VFE
also add the capability to enable the sof count in VFE

Change-Id: I90c0178d933cb4c80627eb9a5f22b4bb13b10b27
Signed-off-by: Peter Liu <pingchie@codeaurora.org>
2013-02-27 18:18:48 -08:00
David Keitel
1218989c85 power: pm8921-charger: add dc_unplug_check option
Add a configuration option to enable or disable
the reverse boost fix for the DC charging path.

Some board designs do not utilize the DC_IN path
on the PMIC, however they do use the presence
detection of DC_IN to enable the auto switching
and interrupt features. In these particular configurations
the PMIC does not control the DC OVP FETs.
Hence add an option to enable or disable the DC path workaround
and leave the workaround disabled by default.

Change-Id: I1e55bbfe37c7cc6f62581af11280a565ed648c06
Signed-off-by: David Keitel <dkeitel@codeaurora.org>
2013-02-27 18:18:38 -08:00
Sameer Thalappil
0bc9e70650 wcnss: wake lock APIs for host drivers
wcnss related host drivers can use these APIs to prevent Apps suspend.
WLAN driver uses this API to prevent suspend, when it's module
initialization routines are being executed.

Change-Id: Id072804e6ccc953c78caf6cf11c73e0ea1d71d18
Signed-off-by: Sameer Thalappil <sameert@codeaurora.org>
2013-02-27 18:18:37 -08:00
Lakshmi Narayana Kalavala
bbf55c4277 msm: Decouple VFE component from AXI
1. Move the logic to enable write masters from vfe
to axi as vfe component may not be enabled for concurrent camera
 2. Pass the vfe operation mode and port info from user space
instead of storing in the global shared variable

Change-Id: Ibe01bbe6a449afc3e4116c0a1c5f0d68662c5ee6
Signed-off-by: Nishant Pandit <npandit@codeaurora.org>
Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2013-02-27 18:18:33 -08:00
Yatin Manerkar
80098d52d5 virtio: Decouple virtqueues and vrings
Add struct virtqueue_ops back into the virtio core code to facilitate
the use of virtqueue implementations other than vrings. This allows
virtqueue implementations that use SMD drivers, USB drivers, or other
mechanisms for transport.

Add a new virtqueue operation, virtqueue_get_impl_size, to provide the
functionality of virtqueue_get_vring_size from the previous collapsed
implementation.

This commit partially reverts commit
7c5e9ed0c8.

Change-Id: I1219c4f203879658dce5800f405291bf311564b4
Signed-off-by: Yatin Manerkar <yatinm@codeaurora.org>
2013-02-27 18:18:30 -08:00
Asutosh Das
6ba48090ff mmc: block: do not query the sd card if a fault is injected
When the fault injection framework introduces an error to the data
block, the current code queries the SD card to find the number of
blocks actually programmed. This value would be as requested by the
generic block layer. So the entire request would be completed.

Say, request 0 is pulled from queue and submitted. When this is being
processed, request 1 is pulled from queue and prepared. Request 0
though is successful, fault-injection framework injects an error
and modifies the bytes_xferred variable to a random value less than
requested transfer. Request 1 is not processed and during the handling
of error, the SD card is queried for the actual bytes programmed. This
would be the correct value. Thus blk_end_request would complete
this request and the control would return to fetch request 2. In this
process, request 1 is not processed at all and the application waits
indefinitely for request 1 to be processed. No further requests are
issued to the queue.

This patch identifies, if the fault injection-framework has inserted an
error to this request and doesn't query the card and uses
bytes_xferred to complete the request.

Change-Id: I496802e244745bc7550402027a594d967cf7b756
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
2013-02-27 18:18:20 -08:00
Shuzhen Wang
8e6db721ed camera: vfe32: Create synchronous version of VFE reset cmd.
Logically from RESET to RESET_ACK, no interrupt should be
generated from hardware. Synchronous RESET call makes
code flow simpler.

Create a new ISP command VFE_CMD_RESET_2 which blocks
until RESET_ACK irq fires.

Change-Id: I1c1974c01d7037f457ab767a83f5cece3fe23705
Signed-off-by: Shuzhen Wang <shuzhenw@codeaurora.org>
2013-02-27 18:18:19 -08:00
Sreesudhan Ramakrish Ramkumar
ad115580e3 msm: camera: CCI driver for 8974
Add Camera Control Interface (CCI) driver based on V4L2
architecture. Add probe sequence, subdevice creation,
hardware registers and configuration through V4L2
subdev call mechanism. This driver is responsible for
communicating with sensors, actuators and EEPROM
connected on I2C bus.

Change-Id: I2f135798e26348740f58da223caafdd8dfbbd098
Signed-off-by: Hody Hung <hhung@codeaurora.org>
Signed-off-by: Sreesudhan Ramakrish Ramkumar <srramku@codeaurora.org>
2013-02-27 18:18:18 -08:00
Nagamalleswararao Ganji
c4015c723a msm: display: use the fb reserved fields same as kernel 3.0
Reserved fields of fb structure used for various use cases
in qcom fb driver. Reducing the reserved fields caused lot
of side effects and it will change the reserved fields same
as kernel 3.0.

Change-Id: I7bf82a9b5667cb5c84b54e428bbfcb6869157bd7
Signed-off-by: Nagamalleswararao Ganji <nganji@codeaurora.org>
2013-02-27 18:18:12 -08:00
Sreesudhan Ramakrish Ramkumar
78131cf85a msm: camera: ISPIF changes for 8974.
ISPIF changes on 8974 to include VFE interface. Pass VFE interface
from user space ISPIF module and configure accordingly. Add support
to configure extra PIX and RDI interfaces.

Change-Id: Idb840fa3d1ef2d1a7242fc2175b8fa64f75aa14b
Signed-off-by: Sreesudhan Ramakrish Ramkumar <srramku@codeaurora.org>
2013-02-27 18:18:08 -08:00
Eugene Seah
1e1403391d msm: Add frequency backoff to thermal monitor
Make thermal monitor performance hit more gradual by stepping down
limit frequency instead of jumping directly to that frequency.
The monitor now steps down to the lowest available cpufreq
frequency, instead of fixing the limit frequency to 918MHz. Also
update the polling frequency to 250ms to improve responsiveness.

Change-Id: I6edb0cfc057284023978de04d7835e9783da5ebd
Signed-off-by: Eugene Seah <eseah@codeaurora.org>
2013-02-27 18:18:02 -08:00
Joonwoo Park
1238a07489 msm: q6dspv2: Add slimbus data path support
Register slimbus CPU dai link to support slimbus data path.

Change-Id: I3584306ac1e0ad6561a19cecfe71f2a63aadafa9
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
2013-02-27 18:17:57 -08:00
Kuogee Hsieh
1299d2f5a3 msm_fb: display: vsync driven screen update
This patch will queue multiple surfaces and commit those
surfaces into mdp at same instance so that surfaces will
be blended and displayed at same time. Hardware vsync event
is delivered to the user space frame work via uevent. Both
queue and commit are controlled by frame work and synchonized
with vsync event. Therefore frame rate will match with vsync rate.

Change-Id: If630a6d94fd38483ee313f575b1a71ed8bd65a52
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
2013-02-27 18:17:53 -08:00
Carl Vanderlip
a2f86cc692 video: msm: Add CSC and QSEED support to Overlay API
Add support for CSC and QSEED configuration through MSMFB_OVERLAY_SET and
MSMFB_OVERLAY_PLAY ioctls. Provide better integration than previous attempt
with the existing Overlay and PostProcessing APIs.

CRs-Fixed: 380750
Change-Id: If895391074ef1e7d7a6824d289e1ed9da6a52180
Signed-off-by: Carl Vanderlip <carlv@codeaurora.org>
2013-02-27 18:17:51 -08:00
Carl Vanderlip
90bf348a06 video: msm: Remove old post processing overlay integration
Remove old implementation of HSIC and QSEED smoothing/sharpening overlay
integration. Need to replace with new implementation that better integrates
the existing functions of the two APIs.

CRs-Fixed: 380750
Change-Id: Id3469fad16764ed88e74a8da75bb873f726ba366
Signed-off-by: Carl Vanderlip <carlv@codeaurora.org>
Signed-off-by: Pravin Tamkhane <pravint@codeaurora.org>
2013-02-27 18:17:51 -08:00
Carl Vanderlip
daefca8ffc video: msm: Add QSEED Table reading support
Add support to read the tables of QSEED values. When the values of the
QSEED tables are able to be written to, it is beneficial to be able to read
what's there as well.

CRs-Fixed: 380315
Change-Id: I3110721906424f70a12bf5736de7875dec03f4c6
Signed-off-by: Carl Vanderlip <carlv@codeaurora.org>
2013-02-27 18:17:50 -08:00
Laura Abbott
4e9674c373 gpu: ion: Add dummy msm_ion header file
The msm specific parts of ion.h are being moved into a new header
file. For now, add a dummy header file to get clients transitioned
over.

Change-Id: Iac039678e1c3f15d87e67aa667f7e9883ca16669
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2013-02-27 18:17:46 -08:00
Pratik Patel
fcc2ed9263 coresight: sink switching support for coresight core layer code
This allows users to switch between available trace sinks thus
providing user to choose the best switch for the debug use case.

Change-Id: I0c90396010cfcd9f3ab9d3c6d4c1cc7230632c42
Signed-off-by: Pratik Patel <pratikp@codeaurora.org>
2013-02-27 18:17:43 -08:00
Sameer Thalappil
b408c27f66 wcnss: cancel any pending APPS votes from coldboot before SSR
APPS vote from coldboot may be still pending when SSR is invoked;
so make sure that the APPS votes from coldboot are cancelled before
SSR votes for these Riva regulators.

Change-Id: I975be7470ce08e941c5846642a9379f23574915b
CRs-fixed: 380434
Signed-off-by: Sameer Thalappil <sameert@codeaurora.org>
2013-02-27 18:17:40 -08:00
Lakshmi Narayana Kalavala
888afe822b msm: camera: Add support for Bayer stats
Add support for Bayer stats

Change-Id: I69b408af91565581c925540bccb04708278bda05
Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2013-02-27 18:17:36 -08:00
Hemant Kumar
1212bea9dd net: usb: Using workqueue as bottom half handler
usbnet driver uses tasklet as bottom half handler. Since tasklet
runs in interrupt context in case of high throughput driver is
spending more time in interrupt context to process rx buffers
this is causing watch dog reset. Hence replace the tasklet with
workqueue to avoid watchdog reset.

CRs-Fixed: 378526
Change-Id: I8eac339e37d734dbaaf7a2e874d3974f562e8680
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2013-02-27 18:17:33 -08:00