Disable UCHE global filter for invalidate/flush,
SP will handle the invalidate/flush for each SP
independently on A5XX GPUs.
CRs-Fixed: 1073853
Change-Id: I3daf3722cfbdfff080161f9a0248fd8096550328
Signed-off-by: Sunil Khatri <sunilkh@codeaurora.org>
MSMfalcon requires to use COMMON_CLK and COMMON_CLK_QCOM as the clock
framework. Fix the following for CLK_QCOM
- Add new configs for common clock framework.
- Remove compilation of audio-ext for COMMON_CLK.
- Remove ARCH hamster and cobalt from falcon defconfig.
- Remove ARCH falcon from cobalt defconfig.
Change-Id: I560d62f9698ddf73848186a6740632735d574b0f
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Update the frequency table for the cpp_clk_src RCG to support
running it at 384 MHz and 404 MHz.
Change-Id: I288f3ae985d27a563daff56eca5dda0e72021272
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
Using memory barriers does not guarantee that the writes will
be completed before moving further unless the memory is marked
as strongly ordered. Use a read instead to make sure that the
previous writes take effect before the read can be processed
and we continue further.
CRs-Fixed: 1074277
Change-Id: Id1ec59664fb457c37dd63df008fbd6c540dffd67
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
RNDIS IAD descriptor needs to get updated to support auto detection
of RNDIS device so that windows OS can load the RNDIS driver without
manually loading the driver.
Change-Id: Ia0cb418d886d6dd066d956c359a39af3ab47c9f2
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
When WLAN driver calls unregister driver, an event is posted to
event work queue and the calling thread waits for the event to
complete. In some cases like during suspend, calling thread gets
interrupted and wait_for_completion returns. Once it is returned,
WLAN module resources are freed including code segments and work
queue gets into Synchronous Abort.
Fix the issue by making unregister uninterruptible to make sure
WLAN driver clean-up happens gracefully without interrupted by
user space.
CRs-fixed: 1073854
Change-Id: Id0f8634641fa2be12ffe00ddbc96a9e400e40739
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
Power collapsing while processing events posted to work queue
causes stability issues because of suspending while in the
process of bring-up, bring-down or recovery. Prevent suspend
while processing events by calling pm_stay_awake().
CRs-fixed: 1073854
Change-Id: I6c7ae3b6e52529b14075fb2212bc2c5f76ae5730
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
The current (CFS) scheduler implementation does not allow "to boost"
tasks performance by running them at a higher OPP compared to the
minimum required to meet their workload demands.
To support tasks performance boosting the scheduler should provide a
"knob" which allows to tune how much the system is going to be optimised
for energy efficiency vs performance.
This patch is the first of a series which provides a simple interface to
define a tuning knob. One system-wide "boost" tunable is exposed via:
/proc/sys/kernel/sched_cfs_boost
which can be configured in the range [0..100], to define a percentage
where:
- 0% boost requires to operate in "standard" mode by scheduling
tasks at the minimum capacities required by the workload demand
- 100% boost requires to push at maximum the task performances,
"regardless" of the incurred energy consumption
A boost value in between these two boundaries is used to bias the
power/performance trade-off, the higher the boost value the more the
scheduler is biased toward performance boosting instead of energy
efficiency.
Change-Id: I59a41725e2d8f9238a61dfb0c909071b53560fc0
cc: Ingo Molnar <mingo@redhat.com>
cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
Git-commit: 63c8fad2b06805ef88f1220551289f0a3c3529f1
Git-repo: https://source.codeaurora.org/quic/la/kernel/msm-4.4
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
This ensures that the load balancer always works correctly even
without compiler optimizations.
Change-Id: I36408ae65833b624401e60edfb50c19cc061d7bf
Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>
Rename all cmdbatch to drawobj. This forms a platform
for future changes where cmdbatch is split into different
types of drawobjs.
CRs-Fixed: 1054353
Change-Id: Ib84bee679e859db34e0d1f8a0ac70319eabddf53
Signed-off-by: Tarun Karra <tkarra@codeaurora.org>
Instead of using MTP dtsi, add a separate file for
msmcobalt QRD device.
CRs-fixed: 1069735
Change-Id: I8421d4a6ffef7657d3808de0fef95bdea400fe20
Signed-off-by: Xu Han <hanxu@codeaurora.org>
Update the diag header with latest log, message
and event information to match the list maintained
by the peripherals.
CRs-Fixed: 1074803
Change-Id: I2df3304029a05ce0f4cb11551e9ed768cd89f8b5
Signed-off-by: Chris Lew <clew@codeaurora.org>
Add support to read the initial CPR aging sensor skew fuse value
and to perform an aging measurement and subsequent voltage
adjustment.
Change-Id: I51a6762d026e7b5a4e39e957144f1b21c5ef121a
CRs-Fixed: 1048890
Signed-off-by: David Collins <collinsd@codeaurora.org>
Add support to perform a CPR aging measurement and subsequent
target quotient and open-loop voltage adjustments for CPRh
controllers at registration time.
Change-Id: I3a48a912fb9dea37a6197c1a13c2b41454d2dcff
CRs-Fixed: 1048890
Signed-off-by: David Collins <collinsd@codeaurora.org>
Potential use after free possibility when trying to access qmi client
data in the ssr notification and root pd_down notification handling.
CRs-Fixed: 1074483
Change-Id: I5390810861dbc1da368757df2b20e5daa35bd081
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
The CPU controller hasn't kept up with the various changes in the whole
cgroup initialization / destruction sequence, and commit:
2e91fa7f6d ("cgroup: keep zombies associated with their original cgroups")
caused it to explode.
The reason for this is that zombies do not inhibit css_offline() from
being called, but do stall css_released(). Now we tear down the cfs_rq
structures on css_offline() but zombies can run after that, leading to
use-after-free issues.
The solution is to move the tear-down to css_released(), which
guarantees nobody (including no zombies) is still using our cgroup.
Furthermore, a few simple cleanups are possible too. There doesn't
appear to be any point to us using css_online() (anymore?) so fold that
in css_alloc().
And since cgroup code guarantees an RCU grace period between
css_released() and css_free() we can forgo using call_rcu() and free the
stuff immediately.
Change-Id: I51af3d4f0e5dd1c9df6375cce4bb933f67f1022e
Suggested-by: Tejun Heo <tj@kernel.org>
Reported-by: Kazuki Yamaguchi <k@rhe.jp>
Reported-by: Niklas Cassel <niklas.cassel@axis.com>
Tested-by: Niklas Cassel <niklas.cassel@axis.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Tejun Heo <tj@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Fixes: 2e91fa7f6d ("cgroup: keep zombies associated with their original cgroups")
Link: http://lkml.kernel.org/r/20160316152245.GY6344@twins.programming.kicks-ass.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Git-commit: 2f5177f0fd7e531b26d54633be62d1d4cb94621c
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
When a cgroup's CPU runqueue is destroyed, it should remove its
remaining load accounting from its parent cgroup.
The current site for doing so it unsuited because its far too late and
unordered against other cgroup removal (->css_free() will be, but we're also
in an RCU callback).
Put it in the ->css_offline() callback, which is the start of cgroup
destruction, right after the group has been made unavailable to
userspace. The ->css_offline() callbacks are called in hierarchical order
after the following v4.4 commit:
aa226ff4a1ce ("cgroup: make sure a parent css isn't offlined before its children")
Change-Id: Ice7cbd71d9e545da84d61686aa46c7213607bb9d
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Li Zefan <lizefan@huawei.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20160121212416.GL6357@twins.programming.kicks-ass.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Git-commit: 6fe1f348b3dd1f700f9630562b7d38afd6949568
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
There is possibility where any control request for USB GSI endpint
e.g. CLEAR_FEATURE racing against USB GSI endpoint operation. Hence
acquire lock for USB GSI endpoint related operations which involves
sending required USB commands for the endpoint operation.
Change-Id: If14af809c443e12bd64e54910602c4aeeca4f0df
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Allow for easy track of step charging. Show step charging
status (enable/disable) and phases.
CRs-Fixed: 1052854
Change-Id: I525fcedda71c4928c61825faeea519355675457a
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Interrupts are subject to storming in bad or unexpected circumstances.
Add the necessary structures to detect interrupt storms using storm watch.
Change-Id: Id3491b6f8927cb1ae7cbc8260defa697ca555765
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Storm watch provides a simple API for tracking the occurrence of event
storms.
An event storm is defined as a cluster of events where there are
X events with no more than Y milliseconds between them, where X and Y
are configurable per event.
Querying whether a storm has occurred marks a new event.
Change-Id: Idf4bb1421d0dbec295f92f84174cd4bbc6130250
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
CC_OUT is the signal/status to the PD that indicates which of
the CC line is active. When its low CC1 is active and when
high CC2 is active.
During Source -> Sink Power Role Swap, CC_OUT is reset default
low (CC1 = CC) when SW sets the UFP/SNK_EN_CMD bit, losing the
plug orientation info and causing USB PD message error if CC2
was the CC pin.
Fix this by ensuring that s/w overrides the CC_OUT signal to
reflect the actual one, in preparation for a possible upcoming
power
CRs-Fixed: 1050738
Change-Id: I5877666c39ac9cad713a5802521527dd8552440c
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Currently we have a workaround for A540 which inserts
WFI after every direct-render 3D mode and every 2D
mode draw. Add a check to enable this only on A540v1
as this workaround is not required for A540v2.
CRs-Fixed: 1072767
Change-Id: I679bbf68ee3dcc1aee30d56a646a42b6ff09fb6f
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Upstream kernel has deprecated the use of arch_counter_get_cntpct() and the
drivers are expected to switch to arch_counter_get_cntvct.
Switch to using arch_counter_get_cntvct().
Change-Id: I3eeefff492889b57837a8334eb933c22d0e4917a
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
Specify the GPU temperature sensor name in the device tree.
This name is used to get the sensor's temperature by querying the
thermal driver API.
CRs-Fixed: 1064728
Change-Id: Ia93d93a442aa848cbd42a5fb8ecad5ef875f9abf
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Add new sysfs nodes which satisfy a generic format requested
by customer. Also add a new node to track GPU temperature.
Create links to these nodes at a generic location:
/sys/kernel/gpu/
CRs-Fixed: 1064728
Change-Id: I414a07ff4f9ee14b8f882d15644b06a73d5fcf76
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
All the buffers allocated for TZ related communication are not page
aligned. Make all the buffers page aligned.
Change-Id: I2640b20f35339449b9bf44c885e8baf9651596bc
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
Update msmcobalt machine driver to support S32LE format.
Also add support of 384Khz for USB_AUDIO_RX.
Change-Id: I576bd9c3c776ad5c24a15adf1447a9206dc61b89
Signed-off-by: Ashish Jain <ashishj@codeaurora.org>