Commit graph

576286 commits

Author SHA1 Message Date
Linux Build Service Account
cd3b78c8ff Merge "ARM: dts: msm: add ion heaps for msmtriton" 2016-10-09 21:17:49 -07:00
Linux Build Service Account
8e23ae41f3 Merge "qcom-charger: update qc charger detection for PMICv2" 2016-10-09 21:17:46 -07:00
Abhimanyu Kapur
ddc2bf61b5 ARM: dts: msm: Add IMEM dload-type entry for MSM8996 and MSMCOBALT
Add IMEM dload-entry to support emmc dload feature
for msm8996 and msmcobalt SOCs.

CRs-Fixed: 993510
Change-Id: I0d26049817ce8d8172ee364b5d7a31ebdcb64194
Signed-off-by: Abhimanyu Kapur <abhimany@codeaurora.org>
2016-10-09 20:22:00 -07:00
Walter Yang
3b29155a55 ASoC: msm: create backend dailink for wcd934x MAD
To support ADSP SVA on wcd934x, dedicated backend dailink needs
to be created. Add the dailink associating the specific cpu dai
and the MAD codec dai.

CRs-Fixed: 1070327
Change-Id: I4152d81e4e951216a8ecdd93562eb1740dbb962c
Signed-off-by: Walter Yang <yandongy@codeaurora.org>
2016-10-09 19:43:51 -07:00
Olav Haugan
2508d92091 defconfig: msmcortex: Enable early random driver
Stack canary relies on getting early random values. However, the
software random number generator is initialized relatively late in the
boot process making the stack canary very predictable.

Enable the hardware supported random number generator until
the software number generator is enabled later in boot.

Change-Id: I01dc0cc0d0fc734dbf1166d88d97bcc5102788bb
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-10-09 14:30:01 -07:00
Laura Abbott
e710a23320 init: Move stack canary initialization after setup_arch
Stack canary initialization involves getting a random number.
Getting this random number may involve accessing caches or other
architectural specific features which are not available until
after the architecture is setup. Move the stack canary initialization
later to accommodate this.

Change-Id: I00b564a2c3172229a44339c061fa380c17fe7d8e
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
[ohaugan@codeaurora.org: Fix trivial merge conflict]
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-10-09 14:29:49 -07:00
Deepak Katragadda
e8fcec43cb clk: msm: clock-osm: Update droop timers
Update the droop timer settings for OSM on MSMCOBALT.

Change-Id: I9398a81738a778dfae5282ef6809a8c2174bd589
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
2016-10-09 13:56:42 -07:00
Ajay Singh Parmar
a03fd4699a msm: mdss: edid: parse dtd and proper fps and pclk check
Parse the Detailed Timing Descriptors of both EDID blocks for
resolutions. Check if the resolution is already added in local
data base. Also, add tolerance to fps and pclk variations for
a give resolution so that EDID parser can capture all the
resolutions correctly as published by the sink's EDID.

Change-Id: I113988eb21f82eef022723c421b1c1c9d4dead9f
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-10-08 23:12:30 -07:00
Linux Build Service Account
34b975e502 Merge "ARM: dts: msm: Update DCVS table for msmcobalt v2" 2016-10-08 18:29:38 -07:00
Linux Build Service Account
89fd48e0ae Merge "msm: vidc: Keep v4l2 plane count instance-specific" 2016-10-08 18:29:36 -07:00
Laura Abbott
621b81b8f3 qcom: Update early random APIs to scmv8
The scm APIs need an update for v8. Update accordingly.

Change-Id: Ia848af5bafe2337718fffdd87cd6436eb0133ece
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2016-10-08 10:43:21 -07:00
Laura Abbott
ed1a203f6f soc: qcom: Add better support for early random numbers
The existing support for generating random numbers relied on
a hacked up version of CONFIG_ARCH_RANDOM and was prone to
scheduling while atomic bugs due to needing to take a mutex.
We don't actually need the additional randomness all the time,
the pool just needs to be initialized with some amount of random
data to avoid getting the same result each time. Switch to
this method for initializing the random pool.

Change-Id: I804ec7556cbd18ff2d9869a03069fda1dd519a79
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
[ohaugan@codeaurora.org: Fixed trivial merge conflicts]
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-10-08 10:43:21 -07:00
Laura Abbott
fb25c8b683 msm: implement ARCH_RANDOM
Currently, the software random number generator is not initialized
until relatively late in the boot process. Software that relies on
random numbers early will not be reliable. Entropy sources are
available early but not early enough for some use cases which means
that moving the software random number generation earlier is not an
option. As an alternate solution, implement the functions associated
with CONFIG_ARCH_RANDOM. These functions currently make a call into
trustzone to get reliable random numbers. The functions are disabled
once the regular random number generator is sufficiently reliable.

Change-Id: If40cfcb96b091fa26a28047c10a902287b26f6c1
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
[ohaugan@codeaurora.org: Dropped Makefile from patch set]
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-10-08 10:43:20 -07:00
Linux Build Service Account
5f659ecb42 Merge "icnss: Wait uninterruptible for unregister driver" 2016-10-08 06:35:54 -07:00
Linux Build Service Account
062b309db9 Merge "icnss: Prevent suspend while processing events" 2016-10-08 06:35:53 -07:00
Linux Build Service Account
3ffe336b5e Merge "msm: vidc: Selectively handle SYS_ERROR as FATAL" 2016-10-07 22:15:44 -07:00
Linux Build Service Account
dc9ba857fb Merge "msm: sde: Reject 0 size image for SDE rotator" 2016-10-07 22:15:43 -07:00
Linux Build Service Account
7685c7eae7 Merge "msm: kgsl: Get GPU snapshot if wait for global timestamp timeout" 2016-10-07 22:15:42 -07:00
Linux Build Service Account
49042f0e43 Merge "icnss: Provide API to check QMI support" 2016-10-07 22:15:42 -07:00
Linux Build Service Account
4eff38d585 Merge "msm: kgsl: Disable UCHE global filter" 2016-10-07 22:15:41 -07:00
Linux Build Service Account
5b3cec6473 Merge "usb: host: Flush hub workqueue before stopping controller" 2016-10-07 22:15:40 -07:00
Linux Build Service Account
eb3e44cc3f Merge "qpnp-smb2: smb-lib: add charge_done property" 2016-10-07 22:15:39 -07:00
Linux Build Service Account
8e2bd84fbe Merge "ARM: dts: msm: Add support to read FAB ID for PMICOBALT" 2016-10-07 22:15:37 -07:00
Linux Build Service Account
cd4a503c83 Merge "soc:qcom: common_log: change PMIC dump size from 4k to 64k" 2016-10-07 22:15:36 -07:00
Linux Build Service Account
c68dd38b5e Merge "power: reset: Skip emmc_dload sysfs entry creation" 2016-10-07 22:15:34 -07:00
Linux Build Service Account
b08e398913 Merge "msm: rpm-smd-debug: Remove unwanted pr_info" 2016-10-07 22:15:33 -07:00
Vidyakumar Athota
763a423ad5 soc: qcom: handle wdsp glink state notifications
When WDSP has crashed, G-link link state is updated with
GLINK_LINK_STATE_DOWN and remote side channels are closed.
Handle the link state down notification from G-link and
close the channels from local side when remote disconnect
channel event occurs.

Change-Id: Id956256fbb3ea6b18a3685a34dcd1f9b16e71e92
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
2016-10-07 17:19:29 -07:00
Praneeth Paladugu
58ec831e44 msm: vidc: Don't print message queues in error cases
While flushing debug queues, avoid touching message queues.
Bleeding message queues here can discard FW responses and
forward threads may timeout by not receiving them. This can
cause confusion about timeouts. Hence don't touch message
queues unless you process and send them to forward thread.

CRs-Fixed: 1066658
Change-Id: I7a5a89c32dc4b1284895d01202dcfdd8a90ccda0
Signed-off-by: Praneeth Paladugu <ppaladug@codeaurora.org>
2016-10-07 15:19:03 -07:00
Ping Li
ceb0faf9e3 msm: mdss: Update memory retention and periph control setting
Previously memory retention and preiph control are only set when
device enters/exits idle power collapse mode. The memory retention
and periph setting will remain ON when device is actually in
suspend state, which will cause unnecessary power consumption.
This change updates those setting for both idle power collapse cases
and suspend/resume case. With this change, the memory retention and
periph will be set to OFF in suspend case to optimize power consumption.

Change-Id: I1598dbc97cb9d02b946de5c9803a49d923c7edc1
Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-10-07 15:13:44 -07:00
Oleg Perelet
7ef8974606 msm: kgsl: Remove GPU BCL and LMH support
a540 hardware does not support BCL and LMH after all.

CRs-Fixed: 1075694
Change-Id: I09808145d20ded63b5043cae6510429560cb599e
Signed-off-by: Oleg Perelet <operelet@codeaurora.org>
2016-10-07 14:45:26 -07:00
Sunil Paidimarri
38b227b0c2 msm: ipa: Add guard around nat entries read
Add mutext lock protection around nat read
functino in debugfs to avoid nat table delete
during read.

Change-Id: Id38737dad70853ccd83685841d0c2498ee722ff2
CRs-Fixed: 1075605
Signed-off-by: Sunil Paidimarri <hisunil@codeaurora.org>
2016-10-07 14:36:02 -07:00
David Collins
7ff3a4cc82 regulator: correct name used in debug consumer regulator_get call
Call rdev_get_name() to obtain the name to use in the debug
consumer's regulator_get() call so that the debug consumer finds
the correct regulator when the name differs in the constraints
and desc structs.

Change-Id: Id6a47467cd118c89c8f58d1120381d4c64f8efee
CRs-Fixed: 1075693
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-10-07 13:59:18 -07:00
Siddartha Mohanadoss
0b3b8868b2 ARM: dts: msm: Add revid phandle to read FAB ID
Temperature compensation is needed for charger die
temperature. Offset and slope coefficients are applied
based on the FAB ID read from the REVID peripheral.

Change-Id: I8516a8109b8c9316dafbd547635d4c97bd50be0c
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-10-07 13:36:33 -07:00
Siddartha Mohanadoss
a6a12dfeff iio: rradc: Add temperature compensation for die temperature
Add charger die temperature scaling coefficients based
on FAB ID. If FAB ID support is not available from the
REVID peripheral the driver does not report scaled
temperature for charger die temperature. Update temperature
compensation for PMIC die temperature.

Change-Id: I8864dccc1b53e70dac5d54129339e7224ec8ba67
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-10-07 13:36:25 -07:00
Prasad Sodagudi
4e38f843b6 genirq: Avoid race between cpu hot plug and irq_desc() allocation paths
One of the core might have just allocated irq_desc() and other core
might be doing irq migration in the hot plug path. In the hot plug path
during the IRQ migration, for_each_active_irq macro is trying to get
irqs whose bits are set in allocated_irqs bit map but there is no return
value check after irq_to_desc for desc validity.

[   24.566381] msm_thermal:do_core_control Set Offline: CPU4 Temp: 73
[   24.568821] Unable to handle kernel NULL pointer dereference at virtual address 000000a4
[   24.568931] pgd = ffffffc002184000
[   24.568995] [000000a4] *pgd=0000000178df5003, *pud=0000000178df5003, *pmd=0000000178df6003, *pte=0060000017a00707
[   24.569153] ------------[ cut here ]------------
[   24.569228] Kernel BUG at ffffffc0000f3060 [verbose debug info unavailable]
[   24.569334] Internal error: Oops - BUG: 96000005 [#1] PREEMPT SMP
[   24.569422] Modules linked in:
[   24.569486] CPU: 4 PID: 28 Comm: migration/4 Tainted: G        W       4.4.8-perf-9407222-eng #1
[   24.569684] task: ffffffc0f28f0e80 ti: ffffffc0f2a84000 task.ti: ffffffc0f2a84000
[   24.569785] PC is at do_raw_spin_lock+0x20/0x160
[   24.569859] LR is at _raw_spin_lock+0x34/0x40
[   24.569931] pc : [<ffffffc0000f3060>] lr : [<ffffffc001023dec>] pstate: 200001c5
[   24.570029] sp : ffffffc0f2a87bc0
[   24.570091] x29: ffffffc0f2a87bc0 x28: ffffffc001033988
[   24.570174] x27: ffffffc001adebb0 x26: 0000000000000000
[   24.570257] x25: 00000000000000a0 x24: 0000000000000020
[   24.570339] x23: ffffffc001033978 x22: ffffffc001adeb80
[   24.570421] x21: 000000000000027e x20: 0000000000000000
[   24.570502] x19: 00000000000000a0 x18: 000000000000000d
[   24.570584] x17: 0000000000005f00 x16: 0000000000000003
[   24.570666] x15: 000000000000bd39 x14: 0ffffffffffffffe
[   24.570748] x13: 0000000000000000 x12: 0000000000000018
[   24.570829] x11: 0101010101010101 x10: 7f7f7f7f7f7f7f7f
[   24.570911] x9 : fefefefeff332e6d x8 : 7f7f7f7f7f7f7f7f
[   24.570993] x7 : ffffffc00344f6a0 x6 : 0000000000000000
[   24.571075] x5 : 0000000000000001 x4 : ffffffc00344f488
[   24.571157] x3 : 0000000000000000 x2 : 0000000000000000
[   24.571238] x1 : ffffffc0f2a84000 x0 : 0000000000004ead
...
...
...
[   24.581324] Call trace:
[   24.581379] [<ffffffc0000f3060>] do_raw_spin_lock+0x20/0x160
[   24.581463] [<ffffffc001023dec>] _raw_spin_lock+0x34/0x40
[   24.581546] [<ffffffc000103f10>] irq_migrate_all_off_this_cpu+0x84/0x1c4
[   24.581641] [<ffffffc00008ec84>] __cpu_disable+0x54/0x74
[   24.581722] [<ffffffc0000a3368>] take_cpu_down+0x1c/0x58
[   24.581803] [<ffffffc00013ac08>] multi_cpu_stop+0xb0/0x10c
[   24.581885] [<ffffffc00013ad60>] cpu_stopper_thread+0xb8/0x184
[   24.581972] [<ffffffc0000c4920>] smpboot_thread_fn+0x26c/0x290
[   24.582057] [<ffffffc0000c0f84>] kthread+0x100/0x108
[   24.582135] Code: aa0003f3 aa1e03e0 d503201f 5289d5a0 (b9400661)
[   24.582224] ---[ end trace 609f38584306f5d9 ]---

CRs-Fixed: 1074611
Change-Id: I6cc5399e511b6d62ec7fbc4cac21f4f41023520e
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
2016-10-07 13:07:10 -07:00
Chinmay Sawarkar
5a9807e133 msm: vidc: Fix the condition to check dcvs support
DCVS limit check fails due to coding error in the condition.
With this change, dcvs-limit is correctly interpreted.

CRs-Fixed: 1074911
Change-Id: I38689d490a31a8e02688d0cacaa6f6028f6f79c8
Signed-off-by: Chinmay Sawarkar <chinmays@codeaurora.org>
2016-10-07 12:24:44 -07:00
Linux Build Service Account
abdd37fc4b Merge "qpnp-smb2: do not configure BATT_OV to end charging cycle" 2016-10-07 12:20:04 -07:00
Linux Build Service Account
4a8282128c Merge "clk: msm: clock-osm: Update OSM timers and enable PLL droop override" 2016-10-07 12:20:02 -07:00
Linux Build Service Account
7678f2b56b Merge "uapi: sound: add new ready packet type" 2016-10-07 12:20:01 -07:00
Linux Build Service Account
5dd11b0fad Merge "ARM: dts: msm: Add and update the dummy clocks for MSMfalcon/MSMtriton" 2016-10-07 12:20:01 -07:00
Linux Build Service Account
44fc68eb86 Merge "clk: qcom: Add support for GPU clocks for MSMFalcon" 2016-10-07 12:20:00 -07:00
Siddartha Mohanadoss
050e3371eb ARM: dts: msm: Add support to read FAB ID for PMICOBALT
REVID peripheral supports reading FAB ID value. Add property
qcom,fab-id-valid to allow clients to access the FAB ID data
for PMICOBALT.

Change-Id: I66463cf3fa7b0fdeba4cb5ee1e34d27b5e736cfb
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-10-07 12:15:07 -07:00
Siddartha Mohanadoss
f1fe90b2f8 qpnp: revid: Add support to read FAB ID for PMICOBALT
PMICOBALT supports reading the FAB ID from the REVID
peripheral. Add an optional property qcom,fab-id-valid
to check if support for FAB ID is available in the
REVID peripheral for the PMIC.

Change-Id: If8212618baa7533b008228a71740acf1d6c72a52
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
2016-10-07 12:15:07 -07:00
Abhijit Kulkarni
ccb43e3308 msm: mdss: Fix the cursor max size for msmcobalt
On msmcobalt the max size supported for cursor pipes is
512x512 pixels. This change fixes the size of the cursor.

CRs-Fixed: 1070248
Change-Id: Iaf0490370f2469e80be0d949957906faed40abb7
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
2016-10-07 11:56:36 -07:00
Ajay Singh Parmar
c5a71f2da3 msm: mdss: displayport: replace delayed work with work
The delay is not needed while processing the events from USB.
Replace the delayed work with work to avoid unnecessary delays.

Change-Id: Ia9f26e8cf9a86c34d7fee3afee599d9924dd9835
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-10-07 11:14:43 -07:00
Ajay Singh Parmar
c176ecacfb msm: mdss: displayport: fix edid read
On current hardware, different edid blocks can be read at
same edid address or it can be different. Add support to
read all edid block correctly.

Change-Id: I703dc38bf7961291d40044f6517cdfa7cc69d85a
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-10-07 11:14:35 -07:00
Ajay Singh Parmar
371daecd2b msm: mdss: displayport: fix alt mode pin configurations
Correct the pin configuration selection logic during alt mode.
Also, fix the message to be sent to usb to avoid sink or dongle
reporting error or nack.

Change-Id: I6c6f9e0c9738af4766a7ff8acb3c932be55935de
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-10-07 11:14:28 -07:00
Ajay Singh Parmar
d82b3f3565 msm: mdss: displayport: fix link training 2 for dp dongles
Fix the link training sequence so that dp dongle or sink
can be correctly programmed with link pattern and drive
settings.

Change-Id: I71139c504d9031839ff3c14cdd8cd6fdd885719d
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-10-07 11:14:16 -07:00
Chandan Uddaraju
76f4f7c532 mdss: DisplayPort: add support for multiple resolutions
Add table to store transfer unit settings for different
resolutions. The table is used for mapping the resolution
with the lane count and Display-port link rate.

Change-Id: I93cc489cdbde21680f8c05311be60ecba053c1db
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
2016-10-07 11:10:18 -07:00
David Collins
c3c3ecdc5e ARM: dts: msm: add VDD_APC0/1 CPR aging configurations for msmcobalt
Add all of the properties required to allow CPR aging
measurements to take place for VDD_APC0 and VDD_APC1.

Change-Id: Icd5a66130178c3cde7a10ebdd30d475950fd1c68
CRs-Fixed: 1048890
Signed-off-by: David Collins <collinsd@codeaurora.org>
2016-10-07 10:54:42 -07:00