Commit graph

595532 commits

Author SHA1 Message Date
Linux Build Service Account
4271fd01cd Merge "msm: vidc: Update extradata address mapping" 2017-11-23 14:01:17 -08:00
Linux Build Service Account
02f487d282 Merge "msm: camera: isp: Enable epoch2 interrupt for pipeline 47" 2017-11-23 14:01:16 -08:00
Linux Build Service Account
aa673858c8 Merge "ath10k: Enable WoWLAN for the wcn3990 snoc wlan module" 2017-11-23 14:01:14 -08:00
Linux Build Service Account
0cc98101b4 Merge "scsi: ufs: Get TX and RX fsm state in case of abort" 2017-11-23 14:01:13 -08:00
Linux Build Service Account
349c988a25 Merge "drm/msm: protect register dumps and debugfs with mutex" 2017-11-23 14:01:12 -08:00
Linux Build Service Account
7ef7dfa0e9 Merge "USB: gsi: Ring Doorbell to GSI if check for suspend fails" 2017-11-23 14:01:10 -08:00
Linux Build Service Account
2cd7146bb1 Merge "ARM: dts: msm: update the new HDMI splash address on msm8996" 2017-11-23 05:00:02 -08:00
Sriharsha Allenki
124b6cc08d defconfig: msm: Enable USB audio QMI service driver for 8996
This allows APPS USB XHCI driver to offload the USB audio
ISOC data transfer to remote processor. USB audio QMI driver
starts a QMI service to communicate with remote processor to
exchange audio stream related information.

Change-Id: If7bcd41eb5e169551f18d8ed64d38fe17fa1df91
Signed-off-by: Sriharsha Allenki <sallenki@codeaurora.org>
2017-11-23 17:45:24 +05:30
Dilip Kota
200011cad3 spi: spi_qsd: Add slave support for QUP core
The QUP core can be programmed to operate as an SPI slave. This
change modifies the existing SPI master driver and adds the slave
functionality.

Change-Id: I73189339956e0fd52449391737fb1e616a6e0bb2
Signed-off-by: Dilip Kota <dkota@codeaurora.org>
2017-11-23 17:00:38 +05:30
Rajeev Kumar Sirasanagandla
2fc630bcb7 msm: wlan: Update regulatory database
Remove 160 MHz band-width support for VN as per master sheet

CRs-Fixed: 2145374
Change-Id: Id0cda10bf3343bccda5eea08ae5369754bb40edb
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
2017-11-23 15:00:20 +05:30
Lokesh Kumar Aakulu
09a7db6cfa msm: camera: isp: Enable epoch2 interrupt for pipeline 47
Enable epoch2 interrupt and configure the line as asked
by input camif configuration from user library

Change-Id: Id4f623a907b385a17d63c35fc7746117b666d885
Signed-off-by: Lokesh Kumar Aakulu <lkumar@codeaurora.org>
2017-11-23 14:27:51 +05:30
Vasanthakumar Thiagarajan
d0ba49498c cfg80211: Make pre-CAC results valid only for ETSI domain
DFS requirement for ETSI domain (section 4.7.1.4 in
ETSI EN 301 893 V1.8.1) is the only one which explicitly
states that once DFS channel is marked as available afer
the CAC, this channel will remain in available state even
moving to a different operating channel. But the same is
not explicitly stated in FCC DFS requirement. Also, Pre-CAC
requriements are not explicitly mentioned in FCC requirement.
Current implementation in keeping DFS channel in available
state is same as described in ETSI domain.

For non-ETSI DFS domain, this patch gives a grace period of 2 seconds
since the completion of successful CAC before moving the channel's
DFS state to 'usable' from 'available' state. The same grace period
is checked against the channel's dfs_state_entered timestamp while
deciding if a DFS channel is available for operation. There is a new
radar event, NL80211_RADAR_PRE_CAC_EXPIRED, reported when DFS channel
is moved from available to usable state after the grace period. Also
make sure the DFS channel state is reset to usable once the beaconing
operation on that channel is brought down (like stop_ap, leave_ibss
and leave_mesh) in non-ETSI domain.

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qti.qualcomm.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
Git-commit: b35a51c7dd25a823767969e3089542d7478777e9
[svishnoi@codeaurora.org: removed NaN interface type from switch case in net/wireless/chan.c
as NaN interface is not supported]

Change-Id: Iba19513d1e40fe5da129d6251212c33d1361fec3
Signed-off-by: Surabhi Vishnoi <svishnoi@codeaurora.org>
2017-11-23 00:33:51 -08:00
Sayali Lokhande
8492efd5d8 scsi: ufs: Get TX and RX fsm state in case of abort
If ufshcd_print_fsm_state() is called during UIC
commands failure, mutex lockup issue is observed
for uic_cmd_mutex. To fix this, read TX and RX
FSM states for UFS aborts cases only, for debugging
purpose.

Change-Id: I716251ec90ef406d9cff1f8a6aa6bc2f8f46926d
Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
2017-11-23 13:37:49 +05:30
Linux Build Service Account
9f4c045a5c Merge "ath10k: configure the vdev listen interval before wow suspend" 2017-11-22 19:51:29 -08:00
Linux Build Service Account
05754cb5cd Merge "msm: ipa: Fix to race condition proxy clock voting" 2017-11-22 19:51:28 -08:00
Linux Build Service Account
446ed8a2e0 Merge "msm: ipa: UAPI security code changes" 2017-11-22 19:51:27 -08:00
Linux Build Service Account
7b7176c9b2 Merge "drm/msm: implement HDMI teardown sequence for DRM driver" 2017-11-22 19:51:25 -08:00
Linux Build Service Account
501dbd9ee7 Merge "mhi: core: fix sequence for new transfer" 2017-11-22 19:51:24 -08:00
Linux Build Service Account
f86c482aa8 Merge "msm: ipa3: Fix IPA aggregation force close call" 2017-11-22 19:51:23 -08:00
Linux Build Service Account
fb37a1b841 Merge "msm: sps: Update debug message format specifier" 2017-11-22 19:51:22 -08:00
Linux Build Service Account
e17b8bfc9c Merge "Revert "scsi: ufshcd: Flush exception event before suspend"" 2017-11-22 19:51:21 -08:00
Linux Build Service Account
de4072553f Merge "scsi: ufs: Fix off-by-one bug in ufs debugfs driver" 2017-11-22 19:51:20 -08:00
Linux Build Service Account
0543cba80c Merge "arm64: memory-hotplug: Add MEMORY_HOTPLUG, MEMORY_HOTREMOVE, MEMORY_PROBE" 2017-11-22 19:51:19 -08:00
Linux Build Service Account
a618c4e225 Merge "msm: sde: disable support for v4l2 event subscription" 2017-11-22 19:51:16 -08:00
Linux Build Service Account
070ac3c30f Merge "msm: mdss: hdmi: clear deep color bits in the HDMI controller" 2017-11-22 19:51:15 -08:00
Linux Build Service Account
bc51bf2f0c Merge "smb-lib: allow hvdcp if pd is disabled" 2017-11-22 19:51:14 -08:00
Linux Build Service Account
07f371daed Merge "icnss: Send early modem crash notification to wlan driver" 2017-11-22 19:51:13 -08:00
Linux Build Service Account
241229af7f Merge "usb: dwc3: Fix incorrect ep0 state on reset" 2017-11-22 19:51:12 -08:00
Sarada Prasanna Garnayak
8bb3214565 ath10k: Enable WoWLAN for the wcn3990 snoc wlan module
Register snoc bus layer suspend/resume PM ops and configure
the wakeup source for the device to adds support for WOWLAN
feature for the wcn3990 snoc wlan module.

CRs-Fixed: 2139961
Change-Id: Ic43414b965aee27564f8bbbe237c706f5262c2e4
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-11-22 21:29:30 +05:30
Sarada Prasanna Garnayak
3a9dadbfd3 net: update rdev suspend method for the wowlan suspend/resume
Pass wowlan configuration data as parameter in the rdev
suspend. The userspace wlan utility (iw, wpa_supplicant etc.)
configured the wow pattern and event through nl80211 cmd.

During the wlan system suspend the wlan device configured the
wakeup source and event as per the configuration data passed
by the wlan utility to wkae up the device from the sleep state
on wow pattern or event match.

CRs-Fixed: 2147919
Change-Id: Iaca21724e8dd5a9c18e104c44ee6fe73752594e6
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-11-22 21:17:47 +05:30
Sarada Prasanna Garnayak
1e4bd1242e ath10k: configure the vdev listen interval before wow suspend
During the WLAN WOWLAN mode the default listen interval needs
to be configured for each vdev to receive and process the WLAN
WOW pattern match found by the WLAN firmware.

Improper listen interval configuration for the vdev leads to WOW
pattern match missing by the WLAN module and a result WLAN module
failed to wakeup the target as per the WOW pattern configured
during WOWLAN suspend method.

CRs-Fixed: 2141933
Change-Id: I4b4e03c134ecea328bbda55748b1dd633697167a
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-11-22 07:06:38 -08:00
Arun KS
3b4fcdca62 defconfig: msm: enable memory hotplug support
Enable memory hotplug  for msm8996 on automotive targets.

Change-Id: I3cc52027e7d41384b9bfa24e858e3cf14c8940e3
Signed-off-by: Arun KS <arunks@codeaurora.org>
2017-11-22 17:13:04 +05:30
Arun KS
6fe9ef9b08 arm64: Add fallback option during memory hot add
Section mapping is good for TLB. But sometimes, when
system is low on physically continuous memory, this can
cause memory allocation failures. Add a fallback option to
allocate vmemmap pages from discontinuous pages.

Change-Id: Ide921c36c1e8980a8af047e2c991310405804858
Signed-off-by: Arun KS <arunks@codeaurora.org>
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
2017-11-22 17:13:04 +05:30
Arun KS
ea4e70e7d6 arm64: Honor limits set by bootloader
Introduce a varible to save bootloader enforced memory limits and
restricts adding beyond this boundary during a memory hotplug.

Change-Id: I28c100644b7287ec4625c4c018b5fffc865e2e72
Signed-off-by: Arun KS <arunks@codeaurora.org>
2017-11-22 17:12:55 +05:30
Jim Lin
bf6d149282 usb: gadget: f_fs: Fix kernel panic if use_os_string not set
If c->cdev->use_os_string flag is not set,
don't need to invoke ffs_do_os_descs() in _ffs_func_bind.
So uninitialized ext_compat_id pointer won't be accessed by
__ffs_func_bind_do_os_desc to cause kernel panic.

Change-Id: I7a08d683bb068c8015675a0676c4a092272e5e0b
Signed-off-by: Jim Lin <jilin@nvidia.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Git-commit: c6010c8b4d2c6e75853ca63c602c9af56fcbead5
Git-repo: https://android.googlesource.com/kernel/common/
Signed-off-by: Sai Krishna Juturi <jsaikrishna@codeaurora.org>
2017-11-22 14:22:40 +05:30
Gustavo Solaira
8294fce51d defconfig: msm: Enable CONFIG_ESOC_DRV for msm8996 auto
Enable the CONFIG_ESOC_DRV for msm8996 auto to support SSR
for external MDM modems connected via PCIe.

Change-Id: I03026351ef521e7b85af2bb47f85ff91842fe405
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
2017-11-21 23:11:55 -08:00
Gustavo Solaira
821ffbefa0 esoc: Bring mdm9x55 in sync with mdm9x45 functionality
Some options available for mdm9x45 esocs were missing from
the mdm9x55 setup hardware function. Add those to bring them
in sync. The way a power down is performed on mdm9x55 is also
changed to be similar to mdm9x45.

Change-Id: I14b0e77d08cb319581cfd02304eba8351c378306
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
2017-11-21 23:11:13 -08:00
Mohammed Javid
086021e076 msm: ipa: Fix to race condition proxy clock voting
Added code changes to fix the race condition during
proxy clock voating in IPA.

Change-Id: I1fee17836bf58d25f461643ea1e60bcd06182372
Acked-by: Ashok Vuyyuru <avuyyuru@qti.qualcomm.com>
Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
2017-11-22 11:47:45 +05:30
Mohammed Javid
a0e635c6b8 msm: ipa3: Fix IPA aggregation force close call
In IPA driver uninitialized structure causing some
garbage values result into IPA data stall.
Added code changes to reset zero uninitialized structure.

Change-Id: I3b98041f8a96ea1d571eeaa60fc84457f6309d45
Acked-by: Ashok Vuyyuru <avuyyuru@qti.qualcomm.com>
Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
2017-11-21 21:32:53 -08:00
Subhash Jadavani
d409d57f0e Revert "scsi: ufshcd: Flush exception event before suspend"
This reverts commit de406d12ef760a7536a486e19016e8e38251f1bc.

In case of a background operations exception, there could be a deadlock:
-000|__switch_to()
-001|context_switch(inline)
-001|__schedule()
-002|schedule()
-003|schedule_timeout()
-004|do_wait_for_common(inline)
-004|__wait_for_common(inline)
-004|wait_for_common()
-005|wait_for_completion()
-006|destroy_work_on_stack(inline)
-006|flush_work()
-007|ufshcd_suspend()
-008|ufshcd_runtime_suspend()
-009|ufshcd_pltfrm_runtime_suspend()
-010|pm_generic_runtime_suspend()
-011|__rpm_callback(inline)
-011|rpm_callback()
-012|rpm_suspend()
-013|rpm_idle()
-014|__pm_runtime_idle()
-015|ufshcd_exception_event_handler()
-016|__read_once_size(inline)
-016|static_key_count(inline)
-016|static_key_false(inline)
-016|trace_workqueue_execute_end(inline)
-016|process_one_work()
-017|__read_once_size(inline)
-017|list_empty(inline)
-017|worker_thread()
-018|kthread()
-019|ret_from_fork(asm)

Exception handler tried to suspend UFS synchronously and suspend tries to
flush the currently running exception handler work which results into
deadlock. Revert this change until we find proper fix for this.

Change-Id: I2b8efdf583d08a276b987914c1037619eb8b25f7
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
2017-11-21 21:22:39 -08:00
Rahul Sharma
c5129b317e ARM: dts: msm: update the new HDMI splash address on msm8996
HDMI continuous splash memory addrerss has been changed in bootloader.
This change updates the splash memory address to support the smooth
LK to kernel handoff.

Change-Id: If9c8f20b8215a4ea835b0e070feb2b51364772e6
Signed-off-by: Rahul Sharma <sharah@codeaurora.org>
2017-11-22 10:52:14 +05:30
Arun KS
2247011a9c mm/Kconfig: Enable MEMORY_HOTPLUG for arm64
Add arm64 to the list of architectures which supports
memory hotplug.

Change-Id: Iefeb8294bf06eaebb17a3b3aa8b33bb3b7133099
Signed-off-by: Arun KS <arunks@codeaurora.org>
Signed-off-by: Srivatsa Vaddagiri <vatsa@codeaurora.org>
2017-11-22 08:14:30 +05:30
Andrea Reale
8e3fc5893d arm64: Add "remove" probe driver for memory hot-remove
Allows to remove sections of memory that have been previously offlined
from userspace.

This is symmetric to the "memory probe" interface, as described in
Documentation/memory-hotplug.txt. It can be used to manually notify the
OS that one memory section has been removed.

Please, remind that a memory section can only be removed after it has
been logically off-lined; trying to remove a section which has not been
previously off-lined is not supported and will have undefined (but most
likely very bad) behaviour.

To offline a section one can:

To use the remove interface to remove the section:

where 0xYYYYYY is the physical address of the memory section to remove.

Change-Id: I1ab2fafe17b2697a5c667feae25c4ac0655f394e
Signed-off-by: Andrea Reale <ar@linux.vnet.ibm.com>
Signed-off-by: Maciej Bielski <m.bielski@virtualopensystems.com>
Patch-mainline: linux-kernel @ 11 Apr 2017, 18:25
Signed-off-by: Srivatsa Vaddagiri <vatsa@codeaurora.org>
2017-11-22 08:14:26 +05:30
Andrea Reale
efdbaef3e1 arm64: Hot-remove implementation for arm64
- arch_remove_memory interface
- kernel page tables cleanup
- vmemmap_free implementation for arm64

Change-Id: I8945b6b91ed7012abc1478de266302427ebeb639
Signed-off-by: Andrea Reale <ar@linux.vnet.ibm.com>
Signed-off-by: Maciej Bielski <m.bielski@virtualopensystems.com>
Patch-mainline: linux-kernel @ 11 Apr 2017, 18:25
Signed-off-by: Srivatsa Vaddagiri <vatsa@codeaurora.org>
Signed-off-by: Arun KS <arunks@codeaurora.org>
2017-11-22 08:14:21 +05:30
Maciej Bielski
9bade51dc7 arm64: Memory hotplug support for arm64 platform
This is a second and improved version of the patch previously released
in [3].

It builds on the work by Scott Branden [2] and, henceforth,
it needs to be applied on top of Scott's patches [2].
Comments are very welcome.

Changes from the original patchset and known issues:

- Compared to Scott's original patchset, this work adds the mapping of
  the new hotplugged pages into the kernel page tables. This is done by
  copying the old swapper_pg_dir over a new page, adding the new mappings,
  and then switching to the newly built pg_dir (see `hotplug_paging` in
  arch/arm64/mmu.c). There might be better ways to to this: suggestions
  are more than welcome.

- The stub function for `arch_remove_memory` has been removed for now; we
  are working in parallel on memory hot remove, and we plan to contribute
  it as a separate patch.

- Corresponding Kconfig flags have been added;

- Note that this patch does not work when NUMA is enabled; in fact,
  the function `memory_add_physaddr_to_nid` does not have an
  implementation when the NUMA flag is on: this function is supposed to
  return the nid the hotplugged memory should be associated with. However
  it is not really clear to us  yet what the semantics of this function
  in the context of a NUMA system should be. A quick and dirty fix would
  be to always attach to the first available NUMA node.

- In arch/arm64/mm/init.c `arch_add_memory`, we are doing a hack with the
  nomap memory block flags to satisfy preconditions and postconditions of
  `__add_pages` and postconditions of `arch_add_memory`. Compared to
  memory hotplug implementation for other architectures, the "issue"
  seems to be in the implemenation of `pfn_valid`. Suggestions on how
  to cleanly avoid this hack are welcome.

This patchset can be tested by starting the kernel with the `mem=X` flag, where
X is less than the total available physical memory and has to be multiple of
MIN_MEMORY_BLOCK_SIZE. We also tested it on a customised version of QEMU
capable to emulate physical hotplug on arm64 platform.

To enable the feature the CONFIG_MEMORY_HOTPLUG compilation flag
needs to be set to true. Then, after memory is physically hotplugged,
the standard two steps to make it available (as also documented in
Documentation/memory-hotplug.txt) are:

(1) Notify memory hot-add
 	echo '0xYY000000' > /sys/devices/system/memory/probe

where 0xYY000000 is the first physical address of the new memory section.

(2) Online new memory block(s)
    echo online > /sys/devices/system/memory/memoryXXX/state
    -- or --
    echo online_movable > /sys/devices/system/memory/memoryXXX/state

where XXX corresponds to the ids of newly added blocks.

Onlining can optionally be automatic at hot-add notification by enabling
the global flag:
	echo online > /sys/devices/system/memory/auto_online_blocks
or by setting the corresponding config flag in the kernel build.

Again, any comment is highly appreciated.

[1] https://lkml.org/lkml/2016/11/17/49
[2] https://lkml.org/lkml/2016/12/1/811
[3] https://lkml.org/lkml/2016/12/14/188

Change-Id: I545807e3121c159aaa2f917ea914ee98f38fb296
Signed-off-by: Maciej Bielski <m.bielski@virtualopensystems.com>
Signed-off-by: Andrea Reale <ar@linux.vnet.ibm.com>
Patch-mainline: linux-kernel @ 11 Apr 2017, 18:25
Signed-off-by: Srivatsa Vaddagiri <vatsa@codeaurora.org>
[arunks@codeaurora.org: fix to pass checker test]
Signed-off-by: Arun KS <arunks@codeaurora.org>
2017-11-22 08:11:50 +05:30
jiad
77dc587592 mhi: core: fix sequence for new transfer
sequence for both rddm and fw download are initialized to be 0.
They are incremented by 1 in bhi_probe() and upon real transfer
takes place.

Issue is in SSR case, sequence is incrementing in a way like 1,
3, 5 and etc as observed. The increment in bhi_probe() seems
unnecessay as there's no real transfer.

Fix is to initialize sequence to 1 and increment by 1 when real
transfer takes place in bhi_bhie_transfer().

Change-Id: I210840cd1f7fecc300ecb69da8a50fbb1d200562
Signed-off-by: Jia Ding <jiad@codeaurora.org>
CRs-Fixed: 2147433
2017-11-22 10:16:06 +08:00
Lloyd Atkinson
253b2380e4 drm/msm: protect register dumps and debugfs with mutex
Add a mutex to serialize sde debug register dumps for
back-to-back dumps, as well as any debugfs access.

Change-Id: I7f6186575df021ce48e18ea980f9c2108b756283
Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
2017-11-21 20:10:50 -05:00
Gustavo Solaira
582b961e78 ARM: dts: msm: Add support for esoc on msm8996 CV2X
Add some properties to better support esoc on msm8996 CV2X
boards. These properties correct some definition of the MDM
esoc connection on the board and support scenarios of external
SoC crashes and graceful reboot.

Change-Id: I994a2b0a3d3320b2a31fa0fc238a182497659f67
Signed-off-by: Gustavo Solaira <gustavos@codeaurora.org>
2017-11-21 13:30:34 -08:00
Alan Kwong
e3f7d2ac8a msm: sde: disable support for v4l2 event subscription
V4l2 event subscription is not used by rotator, and
default implementation on 4.9 is causing failure during
file release. Disable v4l2 event subscription for rotator
to avoid invalid file release.

Change-Id: I486f2eba7112852a1c818efeeb86033f17139b33
Signed-off-by: Alan Kwong <akwong@codeaurora.org>
2017-11-21 10:31:34 -08:00
Linux Build Service Account
f697ab3e51 Merge "msm: ba: avoid system crash in msm_ba_open()" 2017-11-21 06:44:58 -08:00