msm: ultrasound: Add Sync Gesture data format

A new Sync Gesture service has been added to userspace and QDSP6.
This service data format should be supported in the ultrasound
related definitions in the kernel.

Change-Id: I99dcaa74915c73ffb7329fb88226866b79a7ef73
Signed-off-by: Ravit Dennis <rdennis@codeaurora.org>
camera_v2: jpeg_10: Don't enable clock when changing rate

Only change rate, avoid two clock enables.

Change-Id: I7573bbb1b0802e000b1de80ae7c044fd642ce852
Signed-off-by: Kamen Kirov <kkirov@codeaurora.org>
input: synaptics: Correct sysfs permissions

Set correct permissions for write-only sysfs nodes. Show method of such
attributes is set to NULL since the attributes are write-only.

Change-Id: Ic37b2c5c67f9e68f9a2f06e379e0aed5cdb756bd
CRs-Fixed: 573711
Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
arm/dt: 8226: Disable otg-disable-reset flag

When switching from peripheral to host mode, usb controller reset is
not happening as otg-disable-rese flag is enabled. For the USB host
mode functionality to work it is required that usb controller reset
should happen when switching from peripheral to host mode as per
suggested by hardware designers.

Hence fixing the issue by disabling the otg-disable-reset flag which
would result in usb controller reset as part of switching from
peripheral to host mode.

Change-Id: Ide1f72d922cf43386b90778f3858dcec52489561
CRs-Fixed: 583351
Signed-off-by: Saket Saurabh <ssaurabh@codeaurora.org>
msm: ultrasound: support multiple devices, conflicting with USF

The USF input device can have a number of devices,
conflicting with it.
The first registered device (primary) is real TSC device.
Optionally, later registered devices are simulated ones.
The input events from the multiple devices should be
controlled by USF.

CR-Fixed: 583511
Change-Id: I07983546c6e70e562bdf3f833ab1ba17b2b9e399
Signed-off-by: Baruch Eruchimovitch <baruche@codeaurora.org>
Merge "msm: vidc: Return failure for unsupported codecs"
Merge "input: synaptics: Correct sysfs permissions"
Merge "leds: leds-qpnp: Set proper flash duration"
Merge "sensors: Add the class device support for mpu3050 sensor"
Merge "sensors: Add the class device support for bmp18x sensor"
Merge "sensors: Add the class device support for mma8x5x sensor"
Merge "sensors: Add the class device support for cm36283 sensor"
gpu: ion: use a list instead of a tree for heap debug memory map

Currently we use an rb tree to store information about the memory map
which gets passed to the heap print_debug functions. The reason for
using a tree instead of a simple list is to maintain sortedness as we
build the memory map. However, it can be necessary to store multiple
entries for the same address in the memory map since there can be
multiple clients with handles to the same buffer. This information is
interesting and useful but we currently can't store and display it since
the rb tree requires that the key used for sorting (the physical address
in this case) be unique. Fix this by replacing the rb tree with a linked
list. In order to maintain sorted output of the print_debug functions,
sort the list by physical address after fully building the list.

This also has the positive side-effect of simplifying the code and
making future print_debug methods less error-prone.

CRs-Fixed: 571918
Change-Id: I5b129fd809fb53c66042eab10d096238a34c2b20
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
gpu: ion: fix locking issues in debug code

There are a few places in Ion where we are iterating over volatile rb
trees without proper locking. In some places the proper locking cannot
be added since it would require us to take locks in a different order
than they are taken in other places in Ion. Fix this by re-working some
of the debug code so that we can take locks in an allowed order.

One side-effect of the re-work is that the memory maps will now show
every client that has a handle to a particular region of memory, rather
than just showing the first one that we encounter. This will allow for
more accurate accounting and will give better insight as to who is
actually using the memory.

CRs-Fixed: 571918
Change-Id: Ia43e4dbc412cd480c828173f8c20b5095d87d858
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
gpu: ion: add locking to traversal of volatile rb tree

In ion_debug_heap_show we're iterating over an rb tree (dev->clients)
that could change while we're iterating. Fix this by taking the lock
that is used to control access to this tree.

CRs-Fixed: 571918
Change-Id: I6832e1e98e2d2a69fc653451d3752d43ec3ef269
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
msm: mdss: Detach mdss iommu on static screen

Detach mdss iommu on static screen and re-attach
on next commit to allow full power collapse of MDSS.
IOMMU driver keeps its vote for bus bandwidth for as
long as the MDP driver is attached to the IOMMU.
When MDP detaches from the IOMMU, IOMMU driver will
remove its vote for bus bandwidth.

Change-Id: I1e5c5c50bc157c3ebfc63e198e4608dad820a288
Signed-off-by: Pawan Kumar <pavaku@codeaurora.org>
Signed-off-by: Shruthi Krishna <skrish@codeaurora.org>
diag: dci: Remove the cap on number of delayed rsp registrations

Currently, diag driver allows a definite number of command
registrations. This limit can be reached easily since we don't
delete delayed rsp cmd registrations. Make changes to allow
any number of cmd-rsp registrations and to remove delayed rsp
cmd registrations after receiving its corresponding last rsp.

Change-Id: Ia62bb3cf8a1359568c2579acee490ec2b246ee75
CRs-Fixed: 583922
Signed-off-by: Ravi Aravamudhan <aravamud@codeaurora.org>
Merge "ASoC: msm: update endpoint based DAP table for REMOTE_SUBMIX"
wcnss: Add TXP_STATUS register to the register logging list

Log TXP_STATUS register for debugging purpose. Also log SAW2_SPM_STS
register before Pronto common SS being collapsed as it resides within
the Pronto TOP domain.

CRs-fixed: 572661
Change-Id: I81364bf69b2e8bbaee77e1692c1e5b6153385898
Signed-off-by: Yue Ma <yuem@codeaurora.org>
mm: change freepage state correctly in __isolate_free_page

Commit 2e30abd1730751d58463d88bc0844ab8fd7112a9
(mm: cma: skip watermarks check for already isolated blocks
in split_free_page()) changed the ordering of where the watermark
checks go for isolated pages. There was already an 'enhancement'
present in __isolate_free_page to skip the watermark checks for
CMA pages to increase success. The merging of the enhancment and
the aforementioned commit was done incorrectly, resulting in
the free page state never being modified for CMA pages even if
the CMA page was removed from the free list. Add the enhancement
properly by only checking for CMA pages at the watermark level
and allow the page state to be modfied for CMA pages as well.

Change-Id: Iabea982108d98150f54e5c42b7dbf30f0743653a
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>