ASoC: wcd9310: Correct the mixer controls for Compander switches

- Compander1 never gets enabled though the user space sets the
  corresponding mixer control.
- Compander switch kcontrols are configured wrongly as integer
  type with max value as 0.
- Correct kcontrol creation to fix the issue.

CRs-Fixed: 441091

Change-Id: Iad99b44c9226da3bcc1132e61ea989a0543ae56e
Signed-off-by: Ravi Kumar Alamanda <ralama@codeaurora.org>
msm: vidc: unsecure heaps in the right order during error handling

Unsecure MM and CP heaps in the right order in case of failure
CRs-Fixed: 445400

Change-Id: I2b5d414c5d9f109740a931b75b0cfbdb196c465f
Signed-off-by: Praveen Chavan <pchava@codeaurora.org>
gpu: ion: handle allocation error during heap protection in CP heap

Return error and do not increment ref count in case of failure to
protect the CP heap.
CRs-Fixed: 445400

Change-Id: Ia615773fe2c52386d9522de7a182edd633a66e1c
Signed-off-by: Praveen Chavan <pchava@codeaurora.org>
msm: camera: Add missing unsubscribe function in server ops.

The entry for unsubsribe_event function is missing from the server ops
table. Add this entry and point to the correct implementation of the
function.

Change-Id: I083213f546556723167a088e0c64c5a20f3295c0
CRs-Fixed: 399710
Signed-off-by: Kiran Kumar H N <hurlisal@codeaurora.org>
msm: socinfo: Add support for MSM8130 variants of MSM8930

Add the SoC ID for MSM8130, MSM8130AA and MSM8130AB (all
are variants of MSM8930).

Change-Id: I1fe89b6f75eca8064b580e52ffee4a5e2dfda9b9
Signed-off-by: David Ng <dave@codeaurora.org>
msm: vidc: Move metadata shared input mem to firmware heap.

Metadata shared input is used to communicate between the
video core and video driver. Allocate it from firmware
heap for specific targets as MFC command heap size is
limited.

CRs-Fixed: 450118
Change-Id: I3d04cf6dd498ae67adcec7a8cba513bd7932d158
Signed-off-by: Shobhit Pandey <cshopan@codeaurora.org>
Signed-off-by: Deepak Verma <dverma@codeaurora.org>
net: rmnet_usb: Use USB_DEVICE_INTERFACE_NUMBER

Use the USB_DEVICE_INTERFACE_NUMBER macro to add the supported
devices and their corresponding interface numbers. This replaces
the cumbersome per-PID bitfield used to map supported interfaces.

Change-Id: I738d79cda929a450086df8fb27247882df8bc696
Signed-off-by: Jack Pham <jackp@codeaurora.org>
msm: hsic_sysmon: Support multiple instances

Enhance the driver to support (currently up to 2) multiple sysmon
interface instances. This is done by classifying the supported PIDs
as either the first or second allowable instance. Add PID 9079 and
allow it to be instantiated as the second instance. Also make use
of the new USB_DEVICE_INTERFACE_NUMBER macro.

Change-Id: I6f9fbf37d151dcce1d0bcf5204460ce0732730f1
Signed-off-by: Jack Pham <jackp@codeaurora.org>
msm: sysmon: Add support for second USB HSIC modem

Add support for a secondary instance of an external modem over
the USB/HSIC transport.

Change-Id: I1891ccc14279dfcbcf5e3555a6d42f42049e208a
Signed-off-by: Jack Pham <jackp@codeaurora.org>
msm: 8064: add configuration to prevent asserting ap2m_errfatal

For the DSDA2 target with two external modems, independent
subsystem restart of each modem is required. This flag is
used by the mdm driver to prevent it from asserting the
ap2mdm_errfatal during subsystem shutdown for the DSDA2 target,
otherwise both modems would reset because they share the same
gpio.

Change-Id: I27aedaa2b1b8756079710e41d8a4a9572b8ff83a
Signed-off-by: Joel King <joelking@codeaurora.org>
msm: mdm: do not assert ap2mdm_errfatal gpio in some cases during SSR

Some platforms have the ap2mdm_errfatal line shared between
two external modems. Current implementation is to assert that
gpio during the SSR shutdown callback but that does not allow
for independent restart of each modem. On most platforms it is
actually not necessary to assert the ap2mdm_errfatal during
restart of the mdm. It is necessary during kernel panic of the
apps processor but that is already done in the panic handler.
The use case where it is necessary to assert the errfatal gpio
is where the mdm needs to be restarted by the SSR module, for
example on platforms where the internal and external modems need
to be restarted together. This patch adds a platform data parameter
to identify those platforms.

Change-Id: Ie4f5cbed752a04a80f1e4bfb50da03f52e010045
Signed-off-by: Joel King <joelking@codeaurora.org>
msm: mdm: Shutdown specific external modem

The shutdown ioctl now gets the system monitor id for the modem to shutdown
from the platform data structure rather than using a hardcoded value.

Change-Id: Ibe7666075903258932014bcf4c79aba0f71184fd
Signed-off-by: Ameya Thakur <ameyat@codeaurora.org>
wcnss: new SMD control channel with WCNSS

A new SMD control channel is opened with WCNSS, currently only the
version information is exchanged thru this channel. WCNSS version is
exposed thru /sys interface.

Conflicts:

	drivers/net/wireless/wcnss/wcnss_wlan.c

Change-Id: I45638bdd992846fa6087b6131180684d30805002
Signed-off-by: Sameer Thalappil <sameert@codeaurora.org>
video: msm: Calibration config implementation

Allow software to selectively read/write MDP color calibration registers.
This is needed to allow calibration tool to individually configure
registers.

Change-Id: I5db2dcbca0b3433c7fedf9033ceff0cf6a5e0e1f
Signed-off-by: Carl Vanderlip <carlv@codeaurora.org>
(cherry picked from commit afc6fbf054d079761d5c2ee85242e56d640ee409)
Signed-off-by: Pravin Tamkhane <pravint@codeaurora.org>
msm: acpuclock-8930ab: Lower VDD_DIG voltage vote for L2 at 384MHz

New characterization data shows that vdd_dig voltage for L2@384MHz
can be lowered to the low level. Update the data in this patch.

Change-Id: Ia80ee9397b3b433b96f2bce49a86d5ef7b024fc5
Signed-off-by: Tianyi Gou <tgou@codeaurora.org>
(cherry picked from commit f684b386cbe45229e12a0eb778b933c69bceb0d4)
Signed-off-by: Neha Pandey <nehap@codeaurora.org>
net: rmnet_usb: Support multiple instances

Currently rmnet_usb supports a maximum of 4 net interfaces on a
single device at a time. This change allows the possibility of
multiple concurrent USB devices with RmNet interfaces to be
supported. The number and names of devices supported are now
specified by the following new module parameters:

* no_rmnet_devs - default: 1
* no_rmnet_insts_per_dev - default: 4
* rmnet_dev_names - default: "hsicctl"
* rmnet_data_init - initializes device nodes with above params

Userspace must now write to "rmnet_data_init" in order for the
control device nodes to be created.

Change-Id: I1e36d85b7fab4290ef64ef635162eb6e4de84e50
Signed-off-by: Jack Pham <jackp@codeaurora.org>
net: rmnet_usb: Add support for PID 0x9079

PID ID 9079 is a clone of 9048 intended for use over HSUSB
connection. The net device name for its interfaces will be
prefixed "rmnet2_usbX". The number and names of its control
interfaces will need to be initialized from userspace.

Change-Id: I98d25f23246c93f96a934dcfc2411c4b6d970b15
Signed-off-by: Jack Pham <jackp@codeaurora.org>
Merge "msm: vidc: Move metadata shared input mem to firmware heap."
Merge "video: msm: Calibration config implementation"
Merge "wcnss: new SMD control channel with WCNSS"