Merge "msm: vidc: Handle SYS_IDLE interrupt concurrency"
Merge "msm: vidc: Mask interrupts from venus after receiving IDLE message."
ehci-msm2: Add boundary check in echi driver

This change adds boundary check before copying data from userspace
buffer to ehci local buffer.
The third parameter passed to copy_from_user() should be minimum of the two
values between userpsace buffer size count and (local_buffer size - 1). The
last one byte in local_buffer should be reserved for null terminator.

CRs-Fixed: 547910
Change-Id: I1cbf34068166ba26bdab58914f75b777ffff4bdf
Signed-off-by: Saket Saurabh <ssaurabh@codeaurora.org>
hsic_sysmon_test: Add check for userspace buffer size count

hsic_sysmon_test local buffer size limit is 4096 bytes. If user space
tries to write data with size greater than 4096 bytes, memory corruption
would happen. Hence, add check for userspace buffer size count before
writing data from userspace buffer to hsic_sysmon_test local buffer.

CRs-Fixed: 547489
Change-Id: I25de15b2abea44ff4cecac827d86b2da8a57c40e
Signed-off-by: Saket Saurabh <ssaurabh@codeaurora.org>
Merge "ehci-msm2: Add boundary check in echi driver"
Merge "hsic_sysmon_test: Add check for userspace buffer size count"
msm: mdss: enable vsync event during continuous splash

Currently when continuous splash screen is enabled the vsync
event reports are delayed until first frame update. This blocks
boot animation. To fix this issue, after user space enables
vsync through vsync_ctrl, mdp driver will start sending vsync
events.

CRs-fixed: 567649
Change-Id: Ifb35e3479805e595d950ab7c38c26de201aa2d16
Signed-off-by: Ray Zhang <rayzhang@codeaurora.org>
Merge "msm: mdss: enable vsync event during continuous splash"
ARM: dts: msm: Add a new device tree for msm8926 SKUG PVT

Split a common file of msm8926 QRD SKUG device tree file
to easily add new device tree for msm8926 SKUG PVT.

Change-Id: I3a67da4a6a94ed40bd73a952fb2debf858dd98bf
Signed-off-by: Maria Yu <aiquny@codeaurora.org>
Merge "ARM: dts: msm: Add a new device tree for msm8926 SKUG PVT"
hwmon: qpnp-adc: add battery thermistor mapping table for skug

Since the new values of parameters including Rs1=30.3K,
Rs2=12.8K, Tcold=-15DegC and Thot=55DegC are used for
skug device, we add a new table accordingly.

CRs-fixed: 590617
Change-Id: If9e6b1103abd0fb40e98dabb0c75c5c9deb5cacc
Signed-off-by: Wu Fenglin <fenglinw@codeaurora.org>
Merge "hwmon: qpnp-adc: add battery thermistor mapping table for skug"
msm: mdss: Enable hardware reset line based on panel setting

DSI clock and data lanes should be in LP11 state before
enabling the hardware reset line for some panels. These
panels might need initialization delay after DSI host and slave
in LP11 state to reach functional. No data traffic
is allowed for such panels during this master delay.

CRs-fixed: 572179
Change-Id: I6a004f55a117f1adfbfbfce85231ef45997e4e6f
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
csdio: Remove the driver

The driver is a legacy driver that is not used any longer
and its implementation is neither correct nor compiles.

Change-Id: I9862c0f93ccad6079a616f6997987d4e187a137c
Signed-off-by: Hamad Kadmany <hkadmany@codeaurora.org>
Merge "msm: mdss: Enable hardware reset line based on panel setting"
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>
Merge "gpu: ion: use a list instead of a tree for heap debug memory map"
Merge "gpu: ion: fix locking issues in debug code"