Commit graph

591444 commits

Author SHA1 Message Date
Linux Build Service Account
560a996da5 Merge "soc: qcom: rpm-smd-debug: initialize variables and check for return value" 2017-06-20 03:20:41 -07:00
Linux Build Service Account
2305f01fc2 Merge "msm: vidc: Addition of VIDIOC_QUERY_EXT_CTRL ioctl" 2017-06-20 03:20:40 -07:00
Linux Build Service Account
3f302a6640 Merge "qpnp-fg-gen3: Move getting battery id and profile to profile_load_work" 2017-06-20 03:20:39 -07:00
Linux Build Service Account
5f0a789229 Merge "drm/msm: use 13-bit mask for h_total and v_total" 2017-06-20 03:20:31 -07:00
Linux Build Service Account
d00b4e6e09 Merge "drm/msm: start secure domain va from non-zero address" 2017-06-20 03:20:30 -07:00
Linux Build Service Account
296e2f3d7e Merge "drm/msm: Remove superfluous hang check message" 2017-06-20 03:20:28 -07:00
Linux Build Service Account
c9e6118965 Merge "drm/msm: Add a submit queue flag to disable the QoS timer" 2017-06-20 03:20:27 -07:00
Linux Build Service Account
73a0e7ea49 Merge "drm/msm: Add submit queue queries" 2017-06-20 03:20:26 -07:00
Dhoat Harpal
31d0318099 soc: qcom: ipc_router: Improve IPC attribution
Change the IPC wakelock name to include PID since
complete process name is not printed in many bugreports.
IPC wakelock are of format ipc<port_id>_<PID>_<proc_name>.

Improve debugfs logging to include port_id to service_id mapping
and the amount of transactions on each local port. This information
is helpful in associating a local port with the service ID. This
info is present in /d/dump_local_ports.

CRs-Fixed: 2063352
Change-Id: Id6406f89b3b61066399ef5660b9d2ab37bff6728
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
2017-06-20 15:43:11 +05:30
Vijaykumar Badiger
5ac124eaed ARM: dts: msm: Remove HDMI hotplug feature for msm8996 ADP
This change is required to enable 3 display support so that
the secondary displays are always ON.

Change-Id: Icbe5d20902d8795cb3479f15a415bb24c204750e
Signed-off-by: Vijaykumar Badiger <vbadig@codeaurora.org>
2017-06-20 01:52:08 -07:00
Siva Kumar Akkireddi
be32f1d527 msm: sps: Fix race condition in SPS debugfs APIs
SPS debugfs APIs can be called concurrently which can result
in dangling pointer access. This change synchronizes access
to the SPS debugfs buffer.

Change-Id: I409b3f0618f760cb67eba47b43c81d166cdae4aa
Signed-off-by: Siva Kumar Akkireddi <sivaa@codeaurora.org>
2017-06-19 23:19:19 -07:00
Amir Levy
a9517ddfbe msm: ipa3: fix compatibility with ipa_nat driver
Add several defines and structs to allow IPA nat driver compile.
Change IPA_HW_MAX to be a define instead of enum so user space
can check its existence with ifdef.

Change-Id: I33df449d18b678dca44475f04eb72318179dda11
Signed-off-by: Amir Levy <alevy@codeaurora.org>
2017-06-19 23:06:27 -07:00
Taniya Das
f530d78e83 clk: qcom: osm: Initialize ACD when the cluster is online
The OSM clock driver currently enables ACD for the silver and
gold clusters regardless of whether they've been brought up or
not. ACD requires the cluster PLLs to be running for initialization,
a requirement which would not be met if the cluster hasn't been
brought online.
Tie the ACD initialization sequence with enabling OSM for that
cluster.

Change-Id: I4a7e7176e30b26d096645dd9ce508b7af8ae6df2
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-06-20 10:26:46 +05:30
Ray Zhang
49e5049a72 drm/msm: use 13-bit mask for h_total and v_total
HDMI TX controller can output 13-bit h_total and v_total
compare to 12-bit width of previous generation chipsets.
So use 13-bit mask for these HSYNC and VSYNC settings.

CRs-Fixed: 2052655
Change-Id: I2421a4e0a7646d10ba9e8f427807daa6a1bc1a21
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
2017-06-20 08:57:51 +08:00
Blagovest Kolenichev
c5f247dd6d Merge branch 'android-4.4@6fc0573' into branch 'msm-4.4'
* refs/heads/tmp-6fc0573:
  Linux 4.4.71
  xfs: only return -errno or success from attr ->put_listent
  xfs: in _attrlist_by_handle, copy the cursor back to userspace
  xfs: fix unaligned access in xfs_btree_visit_blocks
  xfs: bad assertion for delalloc an extent that start at i_size
  xfs: fix indlen accounting error on partial delalloc conversion
  xfs: wait on new inodes during quotaoff dquot release
  xfs: update ag iterator to support wait on new inodes
  xfs: support ability to wait on new inodes
  xfs: fix up quotacheck buffer list error handling
  xfs: prevent multi-fsb dir readahead from reading random blocks
  xfs: handle array index overrun in xfs_dir2_leaf_readbuf()
  xfs: fix over-copying of getbmap parameters from userspace
  xfs: fix off-by-one on max nr_pages in xfs_find_get_desired_pgoff()
  xfs: Fix missed holes in SEEK_HOLE implementation
  mlock: fix mlock count can not decrease in race condition
  mm/migrate: fix refcount handling when !hugepage_migration_supported()
  drm/gma500/psb: Actually use VBT mode when it is found
  slub/memcg: cure the brainless abuse of sysfs attributes
  ALSA: hda - apply STAC_9200_DELL_M22 quirk for Dell Latitude D430
  pcmcia: remove left-over %Z format
  drm/radeon: Unbreak HPD handling for r600+
  drm/radeon/ci: disable mclk switching for high refresh rates (v2)
  scsi: mpt3sas: Force request partial completion alignment
  HID: wacom: Have wacom_tpc_irq guard against possible NULL dereference
  mmc: sdhci-iproc: suppress spurious interrupt with Multiblock read
  i2c: i2c-tiny-usb: fix buffer not being DMA capable
  vlan: Fix tcp checksum offloads in Q-in-Q vlans
  net: phy: marvell: Limit errata to 88m1101
  netem: fix skb_orphan_partial()
  ipv4: add reference counting to metrics
  sctp: fix ICMP processing if skb is non-linear
  tcp: avoid fastopen API to be used on AF_UNSPEC
  virtio-net: enable TSO/checksum offloads for Q-in-Q vlans
  be2net: Fix offload features for Q-in-Q packets
  ipv6: fix out of bound writes in __ip6_append_data()
  bridge: start hello_timer when enabling KERNEL_STP in br_stp_start
  qmi_wwan: add another Lenovo EM74xx device ID
  bridge: netlink: check vlan_default_pvid range
  ipv6: Check ip6_find_1stfragopt() return value properly.
  ipv6: Prevent overrun when parsing v6 header options
  net: Improve handling of failures on link and route dumps
  tcp: eliminate negative reordering in tcp_clean_rtx_queue
  sctp: do not inherit ipv6_{mc|ac|fl}_list from parent
  sctp: fix src address selection if using secondary addresses for ipv6
  tcp: avoid fragmenting peculiar skbs in SACK
  s390/qeth: avoid null pointer dereference on OSN
  s390/qeth: unbreak OSM and OSN support
  s390/qeth: handle sysfs error during initialization
  ipv6/dccp: do not inherit ipv6_mc_list from parent
  dccp/tcp: do not inherit mc_list from parent
  sparc: Fix -Wstringop-overflow warning
  android: base-cfg: disable CONFIG_NFS_FS and CONFIG_NFSD
  schedstats/eas: guard properly to avoid breaking non-smp schedstats users
  BACKPORT: f2fs: sanity check size of nat and sit cache
  FROMLIST: f2fs: sanity check checkpoint segno and blkoff
  sched/tune: don't use schedtune before it is ready
  sched/fair: use SCHED_CAPACITY_SCALE for energy normalization
  sched/{fair,tune}: use reciprocal_value to compute boost margin
  sched/tune: Initialize raw_spin_lock in boosted_groups
  sched/tune: report when SchedTune has not been initialized
  sched/tune: fix sched_energy_diff tracepoint
  sched/tune: increase group count to 5
  cpufreq/schedutil: use boosted_cpu_util for PELT to match WALT
  sched/fair: Fix sched_group_energy() to support per-cpu capacity states
  sched/fair: discount task contribution to find CPU with lowest utilization
  sched/fair: ensure utilization signals are synchronized before use
  sched/fair: remove task util from own cpu when placing waking task
  trace:sched: Make util_avg in load_avg trace reflect PELT/WALT as used
  sched/fair: Add eas (& cas) specific rq, sd and task stats
  sched/core: Fix PELT jump to max OPP upon util increase
  sched: EAS & 'single cpu per cluster'/cpu hotplug interoperability
  UPSTREAM: sched/core: Fix group_entity's share update
  UPSTREAM: sched/fair: Fix calc_cfs_shares() fixed point arithmetics width confusion
  UPSTREAM: sched/fair: Fix incorrect task group ->load_avg
  UPSTREAM: sched/fair: Fix effective_load() to consistently use smoothed load
  UPSTREAM: sched/fair: Propagate asynchrous detach
  UPSTREAM: sched/fair: Propagate load during synchronous attach/detach
  UPSTREAM: sched/fair: Fix hierarchical order in rq->leaf_cfs_rq_list
  BACKPORT: sched/fair: Factorize PELT update
  UPSTREAM: sched/fair: Factorize attach/detach entity
  UPSTREAM: sched/fair: Improve PELT stuff some more
  UPSTREAM: sched/fair: Apply more PELT fixes
  UPSTREAM: sched/fair: Fix post_init_entity_util_avg() serialization
  BACKPORT: sched/fair: Initiate a new task's util avg to a bounded value
  sched/fair: Simplify idle_idx handling in select_idle_sibling()
  sched/fair: refactor find_best_target() for simplicity
  sched/fair: Change cpu iteration order in find_best_target()
  sched/core: Add first cpu w/ max/min orig capacity to root domain
  sched/core: Remove remnants of commit fd5c98da1a42
  sched: Remove sysctl_sched_is_big_little
  sched/fair: Code !is_big_little path into select_energy_cpu_brute()
  EAS: sched/fair: Re-integrate 'honor sync wakeups' into wakeup path
  Fixup!: sched/fair.c: Set SchedTune specific struct energy_env.task
  sched/fair: Energy-aware wake-up task placement
  sched/fair: Add energy_diff dead-zone margin
  sched/fair: Decommission energy_aware_wake_cpu()
  sched/fair: Do not force want_affine eq. true if EAS is enabled
  arm64: Set SD_ASYM_CPUCAPACITY sched_domain flag on DIE level
  UPSTREAM: sched/fair: Fix incorrect comment for capacity_margin
  UPSTREAM: sched/fair: Avoid pulling tasks from non-overloaded higher capacity groups
  UPSTREAM: sched/fair: Add per-CPU min capacity to sched_group_capacity
  UPSTREAM: sched/fair: Consider spare capacity in find_idlest_group()
  UPSTREAM: sched/fair: Compute task/cpu utilization at wake-up correctly
  UPSTREAM: sched/fair: Let asymmetric CPU configurations balance at wake-up
  UPSTREAM: sched/core: Enable SD_BALANCE_WAKE for asymmetric capacity systems
  UPSTREAM: sched/core: Pass child domain into sd_init()
  UPSTREAM: sched/core: Introduce SD_ASYM_CPUCAPACITY sched_domain topology flag
  UPSTREAM: sched/core: Remove unnecessary NULL-pointer check
  UPSTREAM: sched/fair: Optimize find_idlest_cpu() when there is no choice
  BACKPORT: sched/fair: Make the use of prev_cpu consistent in the wakeup path
  UPSTREAM: sched/core: Fix power to capacity renaming in comment
  Partial Revert: "WIP: sched: Add cpu capacity awareness to wakeup balancing"
  Revert "WIP: sched: Consider spare cpu capacity at task wake-up"
  FROM-LIST: cpufreq: schedutil: Redefine the rate_limit_us tunable
  cpufreq: schedutil: add up/down frequency transition rate limits
  trace/sched: add rq utilization signal for WALT
  sched/cpufreq: make schedutil use WALT signal
  sched: cpufreq: use rt_avg as estimate of required RT CPU capacity
  cpufreq: schedutil: move slow path from workqueue to SCHED_FIFO task
  BACKPORT: kthread: allow to cancel kthread work
  sched/cpufreq: fix tunables for schedfreq governor
  BACKPORT: cpufreq: schedutil: New governor based on scheduler utilization data
  sched: backport cpufreq hooks from 4.9-rc4
  ANDROID: Kconfig: add depends for UID_SYS_STATS
  ANDROID: hid: uhid: implement refcount for open and close
  Revert "ext4: require encryption feature for EXT4_IOC_SET_ENCRYPTION_POLICY"
  ANDROID: mnt: Fix next_descendent

Conflicts:
	include/trace/events/sched.h
	kernel/sched/Makefile
	kernel/sched/core.c
	kernel/sched/fair.c
	kernel/sched/sched.h

Change-Id: I55318828f2c858e192ac7015bcf2bf0ec5c5b2c5
Signed-off-by: Blagovest Kolenichev <bkolenichev@codeaurora.org>
2017-06-19 16:59:55 -07:00
Linux Build Service Account
0045ec6f11 Merge "drm/msm : add hdcp debugfs nodes for DRM HDMI driver" 2017-06-19 16:42:05 -07:00
Linux Build Service Account
25e509561f Merge "f_gsi: Use kernel buffer instead of user space provided buffer" 2017-06-19 16:42:05 -07:00
Linux Build Service Account
3e0ab6ba33 Merge "soc: qcom: glink: Move ctx initialization of xprt ptr" 2017-06-19 16:42:04 -07:00
Linux Build Service Account
2dc794c527 Merge "soc: qcom: glink_ssr: Remove subsystem_restart call" 2017-06-19 16:42:03 -07:00
Linux Build Service Account
61155a521f Merge "i2c-msm-v2: Print error logs in process context" 2017-06-19 16:42:01 -07:00
Linux Build Service Account
69c6a42d14 Merge "ARM: dts: msm: Enable use of 64K page pool for SDM630" 2017-06-19 16:42:00 -07:00
Linux Build Service Account
a34722136d Merge "qpnp-smb2: Fix QC_PULSE_COUNT reading logic" 2017-06-19 16:41:59 -07:00
Linux Build Service Account
ed435179ec Merge "ARM: dts: msm: Enable use of 64K page pool for SDM660" 2017-06-19 16:41:58 -07:00
Linux Build Service Account
f0d37d522b Merge "Revert "msm: kgsl: Update QoS settings for A508 VBIF as recommended"" 2017-06-19 16:41:57 -07:00
Linux Build Service Account
7223e29df4 Merge "msm: kgsl: Reset busy data after soft reset" 2017-06-19 16:41:56 -07:00
Linux Build Service Account
7d8e4243d2 Merge "clk: qcom: Check for errors during RCG read" 2017-06-19 16:41:55 -07:00
Linux Build Service Account
9e6f650f19 Merge "defconfig: Enable TIF drivers in MSM8996 auto" 2017-06-19 16:41:53 -07:00
Linux Build Service Account
b0dd74be59 Merge "msm: ba: Fix some potential risks" 2017-06-19 16:41:53 -07:00
Chris Lew
a56ba7b5ce diag: Update msg mask tables for new SSID
Update the diag headers and msg mask tables to account
for a new ssid group.

CRs-Fixed: 2055789
Change-Id: I3abd816d5e99bff263b753fb1070a2672ecea46c
Signed-off-by: Chris Lew <clew@codeaurora.org>
2017-06-19 16:19:18 -07:00
Jordan Crouse
180cb9a578 drm/msm: Move memptrs to msm_gpu and reorganize
Since most of the heavy lifting for managing submits lives in the
msm_gpu domain it makes sense to move the memptrs so that they are
globally visible and we can use them without relying on function
pointers.

Additionally, instead of having a single struct full of per-ring
arrays, reorganize the structure and assign a sub-allocation
to each ring. This simplifies all of the various macros and other
bits and allows us to make the size of the allocation dependent
on the acutal number of rings for the implementation.

Change-Id: Ic0dedbadc18ba1dc786c82b082c5030e13ff8012
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-06-19 15:50:34 -06:00
Jordan Crouse
ae2cb03114 drm/msm: Attach the MMUs as soon as they are allocated
Currently the normal and secure MMUs are allocated when the
address space is created in msm_gpu_init() but not attached
until the end of adreno_gpu_init(). Since we can't map buffer
objects in the IOMMU without attaching it first this restricts
when we can allocate buffer objects in the sequence.

For arm-smmu based targets there isn't any reason why we can't
immediately attach the MMU after creating the address space -
this makes the whole system immediately available to map memory
and will facilitate moving around global allocations.

Change-Id: Ic0dedbad161396e9d095f3f3d1e4fca2d240a084
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-06-19 15:50:33 -06:00
Jordan Crouse
1db3fbd43a drm/msm: Add a helper function for in-kernel buffer allocations
Nearly all of the buffer allocations for kernel allocate an buffer object,
virtual address and GPU iova at the same time. Make a helper function to
handle the details.

Change-Id: Ic0dedbad0ecd85d360895cc0d1e418277ba44c62
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-06-19 15:50:33 -06:00
Jordan Crouse
53530e1644 drm/msm: Simplify ringbuffer cleanup
Cleanup and consolidate sanity checking on the ringbuffer
cleanup code.

Change-Id: Ic0dedbad551d36ca8ed3db56a4366a5008768791
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-06-19 15:50:32 -06:00
Jordan Crouse
d8505d8307 drm/msm: Remove superfluous hang check message
There are plenty of log messages when a hang check and/or fault
occurs there isn't any need to add one more - recovery is
pretty much a given at this point.

Change-Id: Ic0dedbad392807591b726eb9d09af3ad29d7bc30
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-06-19 15:50:31 -06:00
Jordan Crouse
b25ea02d22 drm/msm: Add a submit queue flag to disable the QoS timer
Allow priviliged (CAP_SYS_ADMIN) processes to disable the
hangcheck / quality of service timer to allow individual
submits to run for as long as they need.

Change-Id: Ic0dedbad1399ebe7c6db74ba374bfa3a6f72917a
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-06-19 15:50:30 -06:00
Jordan Crouse
b674857b83 drm/msm: Add submit queue queries
Add the capability to query information from a submit queue.
The first available parameter is to query the number of GPU
faults that have been caused by the queue. The driver can
periodically query this value to see if it has caused a fault
and take action accordingly.

Change-Id: Ic0dedbadc68d5782c0b8b71d89722742aa6aaf1a
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-06-19 15:50:26 -06:00
Akshay Chandrashekhar Kalghatgi
395ead59b6 msm: vidc: Addition of VIDIOC_QUERY_EXT_CTRL ioctl
Adding vidc support for VIDIOC_QUERY_EXT_CTRL ioctl. This ioctl will
return the details for the V4L2 control identified by the ID provided
by the user or the next supported control based upon the flags
provided by the user.

Change-Id: I68161ceb000a46a8e54333ab39c0229f8fbdbf72
Signed-off-by: Akshay Chandrashekhar Kalghatgi <akalghat@codeaurora.org>
2017-06-19 11:36:42 -07:00
Mayank Rana
949fbd80e1 f_gsi: Use kernel buffer instead of user space provided buffer
gsi_ctrl_dev_write() and gsi_ctrl_dev_read() API is directly using user
space provided buffer when qti_packet_debug is enabled. This can result
into using untrusted buffer pointer. Hence use cpkt->buf i.e. kernel
space buffer pointer instead of directly using user space provided buffer.

CRs-Fixed: 2061391
Change-Id: Iba6f2845dae2755446b4b8e9f3041686877d7bc4
Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2017-06-19 11:31:20 -07:00
Dhoat Harpal
bb73294fb7 soc: qcom: glink: Move ctx initialization of xprt ptr
In glink_open function, channel context initialization with transport
pointer is done quite after after its creation. This create race condition,
if parallel thread try to use transport pointer of ctx.

Ctx is initialized with transport pointer right at the time of its
creation.

CRs-Fixed: 2061645
Change-Id: Idcddf1ab10b8673a20bc1f23d8702bf870f79dbd
Signed-off-by: Dhoat Harpal <hdhoat@codeaurora.org>
2017-06-19 21:49:09 +05:30
Linux Build Service Account
6ec544aeed Merge "qdspv2: Add latency calculation support in pcm offload path" 2017-06-19 07:54:18 -07:00
Linux Build Service Account
c9ada11e43 Merge "ASoC: wsa881x: Fix GPIO leak issue" 2017-06-19 07:54:17 -07:00
Linux Build Service Account
3b61e32368 Merge "ARM: dts: msm: Early mount of vendor partition for sdm660/630" 2017-06-19 07:54:16 -07:00
Linux Build Service Account
371e1c1b54 Merge "ARM: dts: msm: Add Maxim regulator node for msm8996" 2017-06-19 07:54:15 -07:00
Linux Build Service Account
608d5ae7bc Merge "ASoC: msm: Add Compressed app type in transcode loopback driver" 2017-06-19 07:54:14 -07:00
Linux Build Service Account
f79c355176 Merge "msm:ipa: Fix to IPA static analysis constant null deferenced" 2017-06-19 07:54:13 -07:00
Jayant Shekhar
245031160b msm: mdss: Change IOMMU map sequence during splash cleanup
Currently PA to VA mapping is not working with existing
sequence. Correct the sequence as below:

- set DOMAIN_ATTR_EARLY_MAP  attr to 1
- attach iommu
- perform mapping
- set DOMAIN_ATTR_EARLY_MAP to 0

Change-Id: Id9c430efde05eb6a683a41f10cbf216102d4fa23
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2017-06-19 13:15:12 +05:30
Linux Build Service Account
d4041b86d5 Merge "defconfig: msm: Enable maxim regulator driver for msm8996-auto" 2017-06-19 00:27:06 -07:00
Linux Build Service Account
edac345d02 Merge "drm: msm: Enable asynchronous driver probing" 2017-06-19 00:27:04 -07:00
Linux Build Service Account
ea8783eb74 Merge "drm/msm : add utility function to dump HDMI registers" 2017-06-19 00:27:04 -07:00
Amit Nischal
1164f8f6ee clk: qcom: Check for errors during RCG read
There could be instances where the RCG configuration update or readback
could fail. Notify the caller of the failure. Add support to change
scope of mux_div_get_src_div() in order to use it globally.

Change-Id: Ica07c28cede695785db81697effcb40ab6b717d4
Signed-off-by: Amit Nischal <anischal@codeaurora.org>
2017-06-19 12:04:55 +05:30