summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2016-03-23input: hbtp_input: Port and add snapshot of changes from msm-3.10Himanshu Aggarwal
Port the HBTP Input driver and apply the following driver changes taken from msm-3.10 kernel branch as of msm-3.10 commit. 31773451 input: misc: add input driver for HBTP 20bf9c5f input: hbtp_input: bypass alphabetical and numeric key config e424ee72 input: misc: hbtp-input: add event type in uevents Change-Id: I122d22cf738c747bcd43ec7f90c33a239288fd9d Signed-off-by: Jing Lin <jinglin@codeaurora.org> Signed-off-by: Chun Zhang <chunz@codeaurora.org> Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-03-23drivers: atmel_maxtouch_ts: fix compilation errorsHimanshu Aggarwal
Fix compilation errors when secure touch feature is enabled. Change-Id: I9efd1aee5b9615b065d556c4a19d6bf790221db1 Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-03-23input: atmel_maxtouch_ts: squash commit from 3.14 kernelAmy Maloche
Squash and apply the following touchscreen changes taken from the msm-3.14 kernel branch as of msm-3.14 commit 8139d0b (ARM: dts: msm: Set flag to manage clks during suspend for msm8996) 421c2f3 input: touchscreen: atmel_maxtouch_ts: delay init call 48e0a07 input: atmel_maxtouch_ts: recover from bootloader b3ebb61 input: atmel_maxtouch_ts: add support for force cfg update 8467fe3 input: atmel_maxtouch_ts: fix firmware update routines c83ee59 input: atmel: Secure Touch support 1c7d5e2 input: atmel_maxtouch_ts: fix power up sequence d4c1ffc input: atmel_maxtouch_ts: add support to ignore CRC f402790 input: atmel_maxtouch_ts: add support for standard features 9374cef input: atmel_maxtouch_ts: use proper data types 0fbe83e input: atmel_maxtouch_ts: add regulator error conditions e22d100 input: atmel_maxtouch_ts: add gpio support 63d4b74 input: atmel_maxtouch_ts: add device tree support 575c2fc input: atmel_maxtouch_ts: enable compilation on 3.10 kenrel Signed-off-by: Alex Sarraf <asarraf@codeaurora.org>
2016-03-23input: touchscreen: add Kconfig & Makefile entries for atmel_maxtouch_tsAmy Maloche
Add entries so compilation can be chosen for latest Atmel touchscreen driver. Change-Id: Ib63a56215e52cc80cb8532c50b16112d39c1e6f7 Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2016-03-23input: atmel_maxtouch_ts: Add latest Atmel driver supportNick Dyer
Git-commit: 482584a6c0d863e04a03837a79c1e79b2769aaee Git-repo: git://github.com/atmel-maxtouch/maxtouch-v3.0.git Change-Id: Ifdd872d1aacd5752aab1a218e18e2cbc1582c17f Signed-off-by: Nick Dyer <nick.dyer@itdev.co.uk> Signed-off-by: Amy Maloche <amaloche@codeaurora.org> [joshc: fixed up INIT_COMPLETION() usage] Signed-off-by: Josh Cartwright <joshc@codeaurora.org>
2016-03-23input: synaptics_dsx_core: clear all outstanding completionsHimanshu Aggarwal
The secure touch ISR and the poll logic in the user space layer is going out of sync because the completion lock in the driver is getting released in some corner cases unexpectedly. Clear all outstanding completions before waiting for one helps fix the issue. Change-Id: Ia3a6d318330263e7bfd8dfc3cea71c5300ab82b4 Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-03-23input: synaptics_dsx: add reset in resume functionMao Li
Add reset in resume function to enable touch panel S332U for MSM8996 DTP. Change-Id: Id13ee3a8426cbd90692bc8a658f166c79accd7fd Signed-off-by: Mao Li <maol@codeaurora.org>
2016-03-23input: synaptics_dsx_fw_update: modify firmware upgrade procedureHimanshu Aggarwal
Modify the firmware upgrade procedure based on the following requirements: If config id of the firmware file is greater than the config id in the device and if packrat id of the firmware img file is greater than the firmware build id in the device, then during the firmware upgrade procedure, both firmware and config areas are upgraded. Otherwise, if the packrat id of the firmware img file is equal to the firmware build id in the device, then only the config area is upgraded. However, if the packrat id of the firmware img file is lesser than the firmware build id in the device, then it is considered as an error. Similarly, if config id of the firmware file is equal to the config id in the device and if packrat id of the firmware img file is greater than the firmware build id in the device, then during the firmware upgrade procedure, both firmware and config areas are upgraded. Otherwise, if the packrat id of the firmware img file is equal to the firmware build id in the device, then no upgrade is needed. However, if the packrat id of the firmware img file is lesser than the firmware build id in the device, then it is considered as an error. This is a propagated patch from 3.10 kernel commit - d9921ff0ce4024b43837d794cc261b52ae58f776 , input: synaptics_dsx_fw_update: modify firmware upgrade procedure Change-Id: I646d2c04243a30b77d48698cce76e9e183bd6db1 Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-03-23input: synaptics_dsx_fw_update: update fw based on config idHimanshu Aggarwal
Update the firmware based on strict config ID versioning, rather than the entire config ID as a 4 byte number. This will also protect against config ID major number mismatches and packrat id mismatches. This is a propagated patch from 3.10 kernel. commit - 458cbab5c53d5141a66590441f9567d67d580c6f, input: synaptics_dsx_fw_update: update fw based on config id Change-Id: I1097585d3bd8b6ab753676dc56f268c7ce52680d Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-03-23input: synaptics_dsx: Read touchscreen config-id during probeSudhakar Manapati
Add support for reading configuration ID from the touch controller during probe and print it. This is required to identify if touch controller is programmed with correct touch firmware or not. Change-Id: I155f0392ae67e5f9b184b9cef2a7bbb7666be30d Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org> Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-03-23input: synaptics_dsx: correct the debug message errorAbinaya P
Parse the panel coordinates before using it for the debug message. Change-Id: I6e893b91e9f11cf7d80602058358d8256a96726d Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-03-23input: synaptics_dsx: squash commit from 3.14 kernelMohan Pallaka
Squash and apply the following touchscreen changes taken from the msm-3.14 kernel branch as of msm-3.14 commit 3bc54cf86b (Merge "msm: camera: Add dummy sub module in sensor pipeline") b20792c2 input: synaptics_dsx: Fix security issues 4f3ec831 input: synaptics_dsx: Remove use of deprecated INIT_COMPLETION 8c5bd97f input: synaptics_dsx: change permission for sysfs secure_touch_enable b22c0b56 input: synaptics_dsx: reconfigure resolution in suspend 0ea26697 touchscreen: synaptics_dsx: set absolute axes for touchscreen 6a021e0a input: synaptics_dsx: handle all controller interrupts d3de3ed6 input: synaptics_dsx: remove query operation from reinit 2285a8dd input: synaptics_dsx: remove vkey kobject in remove 6817aed5 input: synaptics: Fix to secure touch clock unbalance 44a84a1e input: synaptics_dsx: support for pm ops 41439903 input: synaptics: add support for unprogrammed panels b029351d input: synaptics: remove outdated header d065c5e0 input: synaptics: add ability to distinguish touch part 72ca30da input: synaptics_dsx: release pinctrl resources on probe failure 0ab5f1e5 input: synaptics: add NULL pointer check ad4102c8 input: synaptics: Secure touch clocks 6a77bbed input: synaptics_dsx: fix compilation warning when !CONFIG_PM_* f3488933 input: synaptics_dsx: reorder device resume sequence 71b65447 input: synaptics_dsx: add support for 2D sensor for soft-keys 610ecdc2 input: synaptics_dsx: fix data sysfs read-write permission 06195779 input: synaptics_dsx: fix up world writable sysfs file 995ed76d input: synaptics_dsx: add ability to identify controller 69a416fe input: synaptic_dsx: configure touch panel boundary coordinates 609eb34b input: synaptics_dsx: correct sysfs permissions 59af5ffb input: synaptics_dsx: remove firmware update at boot 13b71e2f input: synaptic_dsx: stay awake the device during firmware update dccee682 input: synaptic_dsx: add sysfs entry for force firmware update a4d13992 input: synaptics: secure touch support 11c70731 input: synaptic_dsx: add debugfs support for suspend/resume 2642f2cb input: synaptics_dsx: add standard features for touch support 72f05e70 input: synaptics_dsx: add dual regulator support ab390caa input: synaptics_dsx: add device tree support 51898424 input: synaptics_dsx: fix conflicts with other drivers Signed-off-by: Alex Sarraf <asarraf@codeaurora.org>
2016-03-23input: synaptics_dsx: Add support for synaptics_dsx touchAlexandra Chin
Change-Id: I1df8a7465fdb5c18cf69e0908347fc78ce7dd07c Git-commit: 67b7a9d78725d5de2a1899095eb0026e15343a62 Git-repo: git://github.com/synaptics-touch/synaptics-dsx-v2.1 Signed-off-by: Alexandra Chin <alexandra.chin@tw.synaptics.com> Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
2016-03-23defconfig: 8996: Enable OPTIMIZE_FOR_SIZE for perf defconfigTrilok Soni
Enable OPTMIZE_FOR_SIZE for msm-perf_defconfig and also fix the forbidden warning found during the compilation. Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2016-03-23soc: qcom: Add kernel_protect library and initcallMitchel Humpherys
It's good security practice to make your executable code read-only. On hypervisor-enabled targets, this can be trivially accomplished by removing the writable attribute from all stage-2 mappings of the kernel text. Add a small library and initcall to do this. Due to constraints on the hypervisor, this needs to happen before all of the cores are brought out of reset, so make it an early_initcall. Change-Id: I2d3ee4ad69402d98f0f6a9078c58e66cd227d222 Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
2016-03-23drivers: iommu, leds, input, clk, devfreq: fix warningsRohit Vaswani
Fix some variable initializations which would otherwise cause forbidden warnings. Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org> Signed-off-by: David Keitel <dkeitel@codeaurora.org>
2016-03-23input: touchscreen: maxim_sti: set INPUT_PROP_DIRECT propertyJing Lin
Touchscreen is typical direct input device. Set the INPUT_PROP_DIRECT property to make sure that touch coordinates are mapped correctly. Change-Id: I398890c111a206baaca499d53e600a9de1d556bd Signed-off-by: Jing Lin <jinglin@codeaurora.org>
2016-03-23input: maxim_sti: move header to uapiJing Lin
Move kernel data structures to driver and keep the data structures shared between kernel and user space in the header file. Move the header to uapi to make it accesible to user space. Fix checkpatch errors to replace deprecated functions and hardcoded error return values. Change-Id: Ic3312c11ddda9f02da9807a6243206d582281995 Signed-off-by: Jing Lin <jinglin@codeaurora.org>
2016-03-23input: maxim_sti: clean up the driverMohan Pallaka
Remove unnecessary macros and fix checkpatch errors. Fix of_* apis to parse gpios and add pinctrl support. Change-Id: I0ed7e31eb490ccf950e599469ff78338cae137d4 Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2016-03-23input: touchscreen: maxim_sti: driver updateKoushik Vishwamurthy
branch specific modifications. Change-Id: Ie2b68cf91bb515428ea7e03ca379fb64bec8cc0a Git-commit: a8ffad52f8811651dbc60811923f6444998b6df2 Git-repo: https://www.codeaurora.org/cgit/quic/la/kernel/msm-3.10/log/?h=github-maxim_sti/A2 [jinglin@codeaurora.org: add subject line to commit text, remove Kbuild file] Signed-off-by: Jing Lin <jinglin@codeaurora.org>
2016-03-23input: touchscreen: maxim_sti: initial commitKoushik Vishwamurthy
Maxim SmartTouch Imager Touchscreen driver added. Change-Id: Ia570d7afa09bc081df6d79cd7a2f432867113439 Git-commit: b223650ce7eae499cf1a3474ad9a7019e1e3edf1 Git-repo: https://www.codeaurora.org/cgit/quic/la/kernel/msm-3.10/log/?h=github-maxim_sti/A2 [jinglin@codeaurora.org: add subject line to commit text] Signed-off-by: Jing Lin <jinglin@codeaurora.org>
2016-03-23Merge remote-tracking branch 'lsk-44/linux-linaro-lsk-v4.4' into 44rc2David Keitel
* lsk-44/linux-linaro-lsk-v4.4: Linux 4.4.3 modules: fix modparam async_probe request module: wrapper for symbol name. itimers: Handle relative timers with CONFIG_TIME_LOW_RES proper posix-timers: Handle relative timers with CONFIG_TIME_LOW_RES proper timerfd: Handle relative timers with CONFIG_TIME_LOW_RES proper prctl: take mmap sem for writing to protect against others xfs: log mount failures don't wait for buffers to be released Revert "xfs: clear PF_NOFREEZE for xfsaild kthread" xfs: inode recovery readahead can race with inode buffer creation libxfs: pack the agfl header structure so XFS_AGFL_SIZE is correct ovl: setattr: check permissions before copy-up ovl: root: copy attr ovl: check dentry positiveness in ovl_cleanup_whiteouts() ovl: use a minimal buffer in ovl_copy_xattr ovl: allow zero size xattr futex: Drop refcount if requeue_pi() acquired the rtmutex devm_memremap_release(): fix memremap'd addr handling ipc/shm: handle removed segments gracefully in shm_mmap() intel_scu_ipcutil: underflow in scu_reg_access() mm,thp: khugepaged: call pte flush at the time of collapse dump_stack: avoid potential deadlocks radix-tree: fix oops after radix_tree_iter_retry drivers/hwspinlock: fix race between radix tree insertion and lookup radix-tree: fix race in gang lookup MAINTAINERS: return arch/sh to maintained state, with new maintainers memcg: only free spare array when readers are done numa: fix /proc/<pid>/numa_maps for hugetlbfs on s390 fs/hugetlbfs/inode.c: fix bugs in hugetlb_vmtruncate_list() scripts/bloat-o-meter: fix python3 syntax error dma-debug: switch check from _text to _stext m32r: fix m32104ut_defconfig build fail xhci: Fix list corruption in urb dequeue at host removal Revert "xhci: don't finish a TD if we get a short-transfer event mid TD" iommu/vt-d: Clear PPR bit to ensure we get more page request interrupts iommu/vt-d: Fix 64-bit accesses to 32-bit DMAR_GSTS_REG iommu/vt-d: Fix mm refcounting to hold mm_count not mm_users iommu/amd: Correct the wrong setting of alias DTE in do_attach iommu/vt-d: Don't skip PCI devices when disabling IOTLB Input: vmmouse - fix absolute device registration string_helpers: fix precision loss for some inputs Input: i8042 - add Fujitsu Lifebook U745 to the nomux list Input: elantech - mark protocols v2 and v3 as semi-mt mm: fix regression in remap_file_pages() emulation mm: replace vma_lock_anon_vma with anon_vma_lock_read/write mm: fix mlock accouting libnvdimm: fix namespace object confusion in is_uuid_busy() mm: soft-offline: check return value in second __get_any_page() call perf kvm record/report: 'unprocessable sample' error while recording/reporting guest data KVM: PPC: Fix ONE_REG AltiVec support KVM: PPC: Fix emulation of H_SET_DABR/X on POWER8 KVM: arm/arm64: Fix reference to uninitialised VGIC arm64: dma-mapping: fix handling of devices registered before arch_initcall ARM: OMAP2+: Fix ppa_zero_params and ppa_por_params for rodata ARM: OMAP2+: Fix save_secure_ram_context for rodata ARM: OMAP2+: Fix l2dis_3630 for rodata ARM: OMAP2+: Fix l2_inv_api_params for rodata ARM: OMAP2+: Fix wait_dll_lock_timed for rodata ARM: dts: at91: sama5d4ek: add phy address and IRQ for macb0 ARM: dts: at91: sama5d4 xplained: fix phy0 IRQ type ARM: dts: at91: sama5d4: fix instance id of DBGU ARM: dts: at91: sama5d4 xplained: properly mux phy interrupt ARM: dts: omap5-board-common: enable rtc and charging of backup battery ARM: dts: Fix omap5 PMIC control lines for RTC writes ARM: dts: Fix wl12xx missing clocks that cause hangs ARM: nomadik: fix up SD/MMC DT settings ARM: 8517/1: ICST: avoid arithmetic overflow in icst_hz() ARM: 8519/1: ICST: try other dividends than 1 arm64: mm: avoid calling apply_to_page_range on empty range ARM: mvebu: remove duplicated regulator definition in Armada 388 GP powerpc/ioda: Set "read" permission when "write" is set powerpc/powernv: Fix stale PE primary bus powerpc/eeh: Fix stale cached primary bus powerpc/eeh: Fix PE location code SUNRPC: Fixup socket wait for memory udf: Check output buffer length when converting name to CS0 udf: Prevent buffer overrun with multi-byte characters udf: limit the maximum number of indirect extents in a row pNFS/flexfiles: Fix an XDR encoding bug in layoutreturn nfs: Fix race in __update_open_stateid() pNFS/flexfiles: Fix an Oopsable typo in ff_mirror_match_fh() NFS: Fix attribute cache revalidation cifs: fix erroneous return value cifs_dbg() outputs an uninitialized buffer in cifs_readdir() cifs: fix race between call_async() and reconnect() cifs: Ratelimit kernel log messages iio: inkern: fix a NULL dereference on error iio: pressure: mpl115: fix temperature offset sign iio: light: acpi-als: Report data as processed iio: dac: mcp4725: set iio name property in sysfs iio: add IIO_TRIGGER dependency to STK8BA50 iio: add HAS_IOMEM dependency to VF610_ADC iio-light: Use a signed return type for ltr501_match_samp_freq() iio:adc:ti_am335x_adc Fix buffered mode by identifying as software buffer. iio: adis_buffer: Fix out-of-bounds memory access scsi: fix soft lockup in scsi_remove_target() on module removal SCSI: Add Marvell Console to VPD blacklist scsi_dh_rdac: always retry MODE SELECT on command lock violation drivers/scsi/sg.c: mark VMA as VM_IO to prevent migration SCSI: fix crashes in sd and sr runtime PM iscsi-target: Fix potential dead-lock during node acl delete scsi: add Synology to 1024 sector blacklist klist: fix starting point removed bug in klist iterators tracepoints: Do not trace when cpu is offline tracing: Fix freak link error caused by branch tracer perf tools: tracepoint_error() can receive e=NULL, robustify it tools lib traceevent: Fix output of %llu for 64 bit values read on 32 bit machines ptrace: use fsuid, fsgid, effective creds for fs access checks Btrfs: fix direct IO requests not reporting IO error to user space Btrfs: fix hang on extent buffer lock caused by the inode_paths ioctl Btrfs: fix page reading in extent_same ioctl leading to csum errors Btrfs: fix invalid page accesses in extent_same (dedup) ioctl btrfs: properly set the termination value of ctx->pos in readdir Revert "btrfs: clear PF_NOFREEZE in cleaner_kthread()" Btrfs: fix fitrim discarding device area reserved for boot loader's use btrfs: handle invalid num_stripes in sys_array ext4: don't read blocks from disk after extents being swapped ext4: fix potential integer overflow ext4: fix scheduling in atomic on group checksum failure serial: omap: Prevent DoS using unprivileged ioctl(TIOCSRS485) serial: 8250_pci: Add Intel Broadwell ports tty: Add support for PCIe WCH382 2S multi-IO card pty: make sure super_block is still valid in final /dev/tty close pty: fix possible use after free of tty->driver_data staging/speakup: Use tty_ldisc_ref() for paste kworker phy: twl4030-usb: Fix unbalanced pm_runtime_enable on module reload phy: twl4030-usb: Relase usb phy on unload ALSA: seq: Fix double port list deletion ALSA: seq: Fix leak of pool buffer at concurrent writes ALSA: pcm: Fix rwsem deadlock for non-atomic PCM stream ALSA: hda - Cancel probe work instead of flush at remove x86/mm: Fix vmalloc_fault() to handle large pages properly x86/uaccess/64: Handle the caching of 4-byte nocache copies properly in __copy_user_nocache() x86/uaccess/64: Make the __copy_user_nocache() assembly code more readable x86/mm/pat: Avoid truncation when converting cpa->numpages to address x86/mm: Fix types used in pgprot cacheability flags translations Linux 4.4.2 HID: multitouch: fix input mode switching on some Elan panels mm, vmstat: fix wrong WQ sleep when memory reclaim doesn't make any progress zsmalloc: fix migrate_zspage-zs_free race condition zram: don't call idr_remove() from zram_remove() zram: try vmalloc() after kmalloc() zram/zcomp: use GFP_NOIO to allocate streams rtlwifi: rtl8821ae: Fix 5G failure when EEPROM is incorrectly encoded rtlwifi: rtl8821ae: Fix errors in parameter initialization crypto: marvell/cesa - fix test in mv_cesa_dev_dma_init() crypto: atmel-sha - remove calls of clk_prepare() from atomic contexts crypto: atmel-sha - fix atmel_sha_remove() crypto: algif_skcipher - Do not set MAY_BACKLOG on the async path crypto: algif_skcipher - Do not dereference ctx without socket lock crypto: algif_skcipher - Do not assume that req is unchanged crypto: user - lock crypto_alg_list on alg dump EVM: Use crypto_memneq() for digest comparisons crypto: algif_hash - wait for crypto_ahash_init() to complete crypto: shash - Fix has_key setting crypto: chacha20-ssse3 - Align stack pointer to 64 bytes crypto: caam - make write transactions bufferable on PPC platforms crypto: algif_skcipher - sendmsg SG marking is off by one crypto: algif_skcipher - Load TX SG list after waiting crypto: crc32c - Fix crc32c soft dependency crypto: algif_skcipher - Fix race condition in skcipher_check_key crypto: algif_hash - Fix race condition in hash_check_key crypto: af_alg - Forbid bind(2) when nokey child sockets are present crypto: algif_skcipher - Remove custom release parent function crypto: algif_hash - Remove custom release parent function crypto: af_alg - Allow af_af_alg_release_parent to be called on nokey path ahci: Intel DNV device IDs SATA libata: disable forced PORTS_IMPL for >= AHCI 1.3 crypto: algif_skcipher - Add key check exception for cipher_null crypto: skcipher - Add crypto_skcipher_has_setkey crypto: algif_hash - Require setkey before accept(2) crypto: hash - Add crypto_ahash_has_setkey crypto: algif_skcipher - Add nokey compatibility path crypto: af_alg - Add nokey compatibility path crypto: af_alg - Fix socket double-free when accept fails crypto: af_alg - Disallow bind/setkey/... after accept(2) crypto: algif_skcipher - Require setkey before accept(2) sched: Fix crash in sched_init_numa() ext4 crypto: add missing locking for keyring_key access iommu/io-pgtable-arm: Ensure we free the final level on teardown tty: Fix unsafe ldisc reference via ioctl(TIOCGETD) tty: Retry failed reopen if tty teardown in-progress tty: Wait interruptibly for tty lock on reopen n_tty: Fix unsafe reference to "other" ldisc usb: xhci: apply XHCI_PME_STUCK_QUIRK to Intel Broxton-M platforms usb: xhci: handle both SSIC ports in PME stuck quirk usb: phy: msm: fix error handling in probe. usb: cdc-acm: send zero packet for intel 7260 modem usb: cdc-acm: handle unlinked urb in acm read callback USB: option: fix Cinterion AHxx enumeration USB: serial: option: Adding support for Telit LE922 USB: cp210x: add ID for IAI USB to RS485 adaptor USB: serial: ftdi_sio: add support for Yaesu SCU-18 cable usb: hub: do not clear BOS field during reset device USB: visor: fix null-deref at probe USB: serial: visor: fix crash on detecting device without write_urbs ASoC: rt5645: fix the shift bit of IN1 boost saa7134-alsa: Only frees registered sound cards ALSA: dummy: Implement timer backend switching more safely ALSA: hda - Fix bad dereference of jack object ALSA: hda - Fix speaker output from VAIO AiO machines Revert "ALSA: hda - Fix noise on Gigabyte Z170X mobo" ALSA: hda - Fix static checker warning in patch_hdmi.c ALSA: hda - Add fixup for Mac Mini 7,1 model ALSA: timer: Fix race between stop and interrupt ALSA: timer: Fix wrong instance passed to slave callbacks ALSA: timer: Fix race at concurrent reads ALSA: timer: Fix link corruption due to double start or stop ALSA: timer: Fix leftover link at closing ALSA: timer: Code cleanup ALSA: seq: Fix lockdep warnings due to double mutex locks ALSA: seq: Fix race at closing in virmidi driver ALSA: seq: Fix yet another races among ALSA timer accesses ASoC: dpcm: fix the BE state on hw_free ALSA: pcm: Fix potential deadlock in OSS emulation ALSA: hda/realtek - Support Dell headset mode for ALC225 ALSA: hda/realtek - Support headset mode for ALC225 ALSA: hda/realtek - New codec support of ALC225 ALSA: rawmidi: Fix race at copying & updating the position ALSA: rawmidi: Remove kernel WARNING for NULL user-space buffer check ALSA: rawmidi: Make snd_rawmidi_transmit() race-free ALSA: seq: Degrade the error message for too many opens ALSA: seq: Fix incorrect sanity check at snd_seq_oss_synth_cleanup() ALSA: dummy: Disable switching timer backend via sysfs ALSA: compress: Disable GET_CODEC_CAPS ioctl for some architectures ALSA: hda - disable dynamic clock gating on Broxton before reset ALSA: Add missing dependency on CONFIG_SND_TIMER ALSA: bebob: Use a signed return type for get_formation_index ALSA: usb-audio: avoid freeing umidi object twice ALSA: usb-audio: Add native DSD support for PS Audio NuWave DAC ALSA: usb-audio: Fix OPPO HA-1 vendor ID ALSA: usb-audio: Add quirk for Microsoft LifeCam HD-6000 ALSA: usb-audio: Fix TEAC UD-501/UD-503/NT-503 usb delay hrtimer: Handle remaining time proper for TIME_LOW_RES md/raid: only permit hot-add of compatible integrity profiles media: i2c: Don't export ir-kbd-i2c module alias parisc: Fix __ARCH_SI_PREAMBLE_SIZE parisc: Protect huge page pte changes with spinlocks printk: do cond_resched() between lines while outputting to consoles tracing/stacktrace: Show entire trace if passed in function not found tracing: Fix stacktrace skip depth in trace_buffer_unlock_commit_regs() PCI: Fix minimum allocation address overwrite PCI: host: Mark PCIe/PCI (MSI) IRQ cascade handlers as IRQF_NO_THREAD mtd: nand: assign reasonable default name for NAND drivers wlcore/wl12xx: spi: fix NULL pointer dereference (Oops) wlcore/wl12xx: spi: fix oops on firmware load ocfs2/dlm: clear refmap bit of recovery lock while doing local recovery cleanup ocfs2/dlm: ignore cleaning the migration mle that is inuse ALSA: hda - Implement loopback control switch for Realtek and other codecs block: fix bio splitting on max sectors base/platform: Fix platform drivers with no probe callback HID: usbhid: fix recursive deadlock ocfs2: NFS hangs in __ocfs2_cluster_lock due to race with ocfs2_unblock_lock block: split bios to max possible length NFSv4.1/pnfs: Fixup an lo->plh_block_lgets imbalance in layoutreturn crypto: sun4i-ss - add missing statesize Linux 4.4.1 arm64: kernel: fix architected PMU registers unconditional access arm64: kernel: enforce pmuserenr_el0 initialization and restore arm64: mm: ensure that the zero page is visible to the page table walker arm64: Clear out any singlestep state on a ptrace detach operation powerpc/module: Handle R_PPC64_ENTRY relocations scripts/recordmcount.pl: support data in text section on powerpc powerpc: Make {cmp}xchg* and their atomic_ versions fully ordered powerpc: Make value-returning atomics fully ordered powerpc/tm: Check for already reclaimed tasks batman-adv: Drop immediate orig_node free function batman-adv: Drop immediate batadv_hard_iface free function batman-adv: Drop immediate neigh_ifinfo free function batman-adv: Drop immediate batadv_neigh_node free function batman-adv: Drop immediate batadv_orig_ifinfo free function batman-adv: Avoid recursive call_rcu for batadv_nc_node batman-adv: Avoid recursive call_rcu for batadv_bla_claim team: Replace rcu_read_lock with a mutex in team_vlan_rx_kill_vid net/mlx5_core: Fix trimming down IRQ number bridge: fix lockdep addr_list_lock false positive splat ipv6: update skb->csum when CE mark is propagated net: bpf: reject invalid shifts phonet: properly unshare skbs in phonet_rcv() dwc_eth_qos: Fix dma address for multi-fragment skbs bonding: Prevent IPv6 link local address on enslaved devices net: preserve IP control block during GSO segmentation udp: disallow UFO for sockets with SO_NO_CHECK option net: pktgen: fix null ptr deref in skb allocation sched,cls_flower: set key address type when present tcp_yeah: don't set ssthresh below 2 ipv6: tcp: add rcu locking in tcp_v6_send_synack() net: sctp: prevent writes to cookie_hmac_alg from accessing invalid memory vxlan: fix test which detect duplicate vxlan iface unix: properly account for FDs passed over unix sockets xhci: refuse loading if nousb is used usb: core: lpm: fix usb3_hardware_lpm sysfs node USB: cp210x: add ID for ELV Marble Sound Board 1 rtlwifi: fix memory leak for USB device ASoC: compress: Fix compress device direction check ASoC: wm5110: Fix PGA clear when disabling DRE ALSA: timer: Handle disconnection more safely ALSA: hda - Flush the pending probe work at remove ALSA: hda - Fix missing module loading with model=generic option ALSA: hda - Fix bass pin fixup for ASUS N550JX ALSA: control: Avoid kernel warnings from tlv ioctl with numid 0 ALSA: hrtimer: Fix stall by hrtimer_cancel() ALSA: pcm: Fix snd_pcm_hw_params struct copy in compat mode ALSA: seq: Fix snd_seq_call_port_info_ioctl in compat mode ALSA: hda - Add fixup for Dell Latitidue E6540 ALSA: timer: Fix double unlink of active_list ALSA: timer: Fix race among timer ioctls ALSA: hda - fix the headset mic detection problem for a Dell laptop ALSA: timer: Harden slave timer list handling ALSA: usb-audio: Fix mixer ctl regression of Native Instrument devices ALSA: hda - Fix white noise on Dell Latitude E5550 ALSA: seq: Fix race at timer setup and close ALSA: usb-audio: Avoid calling usb_autopm_put_interface() at disconnect ALSA: seq: Fix missing NULL check at remove_events ioctl ALSA: hda - Fixup inverted internal mic for Lenovo E50-80 ALSA: usb: Add native DSD support for Oppo HA-1 x86/mm: Improve switch_mm() barrier comments x86/mm: Add barriers and document switch_mm()-vs-flush synchronization x86/boot: Double BOOT_HEAP_SIZE to 64KB x86/reboot/quirks: Add iMac10,1 to pci_reboot_dmi_table[] kvm: x86: Fix vmwrite to SECONDARY_VM_EXEC_CONTROL KVM: x86: correctly print #AC in traces KVM: x86: expose MSR_TSC_AUX to userspace x86/xen: don't reset vcpu_info on a cancelled suspend KEYS: Fix keyring ref leak in join_session_keyring() Conflicts: arch/arm64/kernel/perf_event.c drivers/scsi/sd.c sound/core/compress_offload.c Change-Id: I9f77fe42aaae249c24cd6e170202110ab1426878 Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
2016-03-23Merge branch 'perf' into new-rc2Rohit Vaswani
2016-03-23qcom: add support for kryo CPU PMUNeil Leeder
The performance Monitor Unit on the kryo processor has additional performance events over the architected events in ARM processors. This adds support for these additional events. Change-Id: I90356b7d2cfebd9d985ec6f92c6d000be9911a7c Signed-off-by: Neil Leeder <nleeder@codeaurora.org> [satyap: trivial merge conflict resolution and remove check_event & map_event functionality to align with kernel 4.4] Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2016-03-23Perf: arm64: make debug dir handle exportableNeil Leeder
The perf debug directory is exported so that other drivers can place nodes there. Change-Id: I570f4b61267ce4ef20275852ec769464b7f68827 Signed-off-by: Neil Leeder <nleeder@codeaurora.org> [satyap: trivial merge conflict resolution and move changes in arch/arm64/kernel/perf_event.c to drivers/perf/arm_pmu.c to align with kernel 4.4] Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2016-03-23Perf: arm64: Update PMU force resetSheetal Sahasrabudhe
Bring all cores online before doing a force reset for PMU. This is required in order to handle corner case related to freeing of IRQs for offline cores. Change-Id: I091d9039e6554099ff4dd80d4a69cabe8eff3138 Signed-off-by: Sheetal Sahasrabudhe <sheetals@codeaurora.org> [satyap: trivial merge conflict resolution and move changes in arch/arm64/kernel/perf_event.c to drivers/perf/arm_pmu.c to align with kernel 4.4] Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2016-03-23Perf: arm64: Add debugfs node to clear PMUSheetal Sahasrabudhe
Create debugfs node to clear PMU and some internal variables used by Perf code. This provides the user with a recovery path in case of PMU related unexpected error scenarios. Change-Id: I4e62a51043d7dcaa21b551ce6a6715486ef46cca Signed-off-by: Sheetal Sahasrabudhe <sheetals@codeaurora.org> [satyap: trivial merge conflict resolution and move changes in arch/arm64/kernel/perf_event.c to drivers/perf/arm_pmu.c to align with kernel 4.4] Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
2016-03-23usb: gadget: f_diag: Fix check to update dload cookieMayank Rana
This change update dload cookie if cdev->desc.iSerialNumber is already available instead of trying to get string descriptors. It also adds check against possibility of string descriptors being NULL to avoid device crash. Signed-off-by: Mayank Rana <mrana@codeaurora.org>
2016-03-23msm: camera: Update camera driversLakshmi Narayana Kalavala
Add changes to update camera drivers to: 1. Update necessary Kconfig files to support camera driver compilation. 2. Support minor changes to V4L framework. 3. Export uapi headers to header_install export location. Signed-off-by: Seemanta Dutta <seemanta@codeaurora.org> Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2016-03-23msm: camera: Add all camera driversLakshmi Narayana Kalavala
Add all camera drivers by picking them up from AU_LINUX_ANDROID_LA.HB.1.3.1.06.00.00.187.056 (e70ad0cd) Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2016-03-23msm: mdss: hdmi: fix handling of panel suspend eventTatenda Chipeperekwa
Unset the HPD state on receiving a suspend event, and ignore any HPD interrupts that are signalled while panel is in a suspended state. Change-Id: I21955079522e0688cd4cee17dae32f5e6d8496ab Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2016-03-23msm: mdss: update the DSI h/w revision based checks for msm8937Padmanabhan Komanduru
The step version is different between msm8996 and msm8937 even though the major/minor versions are the same. Update the DSI PHY and clamp register programming for msm8937 by checking for the step version to avoid incorrect DSI register programming. Change-Id: Ia9582b2779f40429586e8709bb73c9a5c79bd6c5 Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23msm: mdss: use DMA_BIDIRECTIONAL for 8937Kalyan Thota
Simultaneous buffer maps with read and write permissions are possible due to the asynchronous nature of MDSS driver. Client stages the same buffer on MDP & ROTATOR. It calls the map API for both at the same time. Due to concurrency, the source buffer is mapped by MDP before and is ref-counted. ROTATOR API called later never updates the permission which is required for dst buffer. This leads to permission fault. Requesting the map with DMA_BIDIRECTIONAL flag to fix the issue. Change-Id: Ieb819820b19d163fee541dd571c5a58dc78be7d3 Signed-off-by: Kalyan Thota <kalyant@codeaurora.org> [cip@codeaurora.org: Resolved merge conflict] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23msm: mdss: fix 32 bit compilation issuesVishnuvardhan Prodduturi
Fix compilation issues with unsigned division. Also build errors are seen for 32bit compilation as local variable of mdp_overlay in function mdss_mdp_overlay_get_fb_pipe has huge size which crossing the 1024 limit. Use heap instead of stack in this case to fix the issue. Change-Id: I67e8498421d2e116e77076637716708cfc289c96 Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
2016-03-23msm: mdss: unify smmu probes for 8996 and 8937Kalyan Thota
unify smmu probes for qsmmu and arm smmu since most of the functionality is common. Change-Id: I2a3ef5c95bf0008d9e1869decb25d7e3043a0786 Signed-off-by: Kalyan Thota <kalyant@codeaurora.org>
2016-03-23msm: mdss: modularize DSC code to support 4K DSC split-panelUjwal Patel
Display Steam Compression (DSC) use-cases requires parameter calculations that affect MDP and DSI separately. Current implementation is not modular and calculates all the parameters in one big subroutine. Due to this, an issue has occurred where parameters that affect DSI relies on picture width where as DSI parameters should be calculated only based on uncompressed width to a particular DSI controller. Also current MDP driver tries to service DSC setup for all different topologies in a single subroutine and has become very error prone. Modularize MDP DSC setup so that it is easy to maintain and also add support for partial update for 4K DSC split-panel. Change-Id: I7057e6a5a22a72a9a216e5bc9f7f946675bfbbb8 Signed-off-by: Ujwal Patel <ujwalp@codeaurora.org>
2016-03-23msm: mdss: trigger frame timeout when recovery is in progressDhaval Patel
MDSS software should trigger frame timeout when command mode interface recovery is in progress. After this new place for event, there is a small window where wait4pingpong and recovery path both can trigger this event. Use atomic_add_unless api instead of read and dec so that it would add protection and avoids timeline update multiple times for same frame update. Change-Id: I412c6341ac4d547acde914409481e9b57b2b88f2 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23msm: mdss: Update MDSS caps for msm8937Krishna Chaitanya Devarakonda
Adding initialization of appropriate flags related to QoS and UBWC settings in MDSS capabilities for msm8937. Change-Id: I16aaf0dd39ce6150183f9b71d4573fdbad62a1da Signed-off-by: Krishna Chaitanya Devarakonda <kdevarak@codeaurora.org>
2016-03-23msm: mdss: delay release of splash buffer during first commitPadmanabhan Komanduru
During kernel boot up, the splash memory is unmapped and released at the beginning of first display commit during overlay start. By this time, MDP will not start fetching the new buffers that are queued as part of first commit. This can cause IOMMU page faults on the splash memory since the buffer is unmapped but IOMMU is attached as part of overlay kickoff. Hence, perform splash cleanup after waiting for a vsync during kickoff cycle. Change-Id: I0b6656f1cc2be9d96fd29e92b99b5aaed94eeb54 Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
2016-03-23msm: mdss: Update OT settings for Rotator and WFD on 8937Jayant Shekhar
Modify the Rotator and WFD OT setting as per recomendations from systems team. Change-Id: Ic523230ff0343bbac6c001080cce88acda4b3c7e Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>
2016-03-23msm: mdss: read pluggable flag from device treeVinu Deokaran
Add support to configure pluggable feature through device tree, but not hardcode inside driver. Change-Id: I1aaf8a65c1910e22bdaf678d0d02d7fe791937bf Signed-off-by: Vinu Deokaran <vinud@codeaurora.org> [cip@codeaurora.org: Resolved merge conflict] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23msm: mdss: Update phy timing structure with timing parametersJeevan Shriram
For PHY v2, the phy timing structure is different than PHY v1. This change updates the phy timing structure with the latest calculated PHY timing parameters for the given panel and refresh rate. Change-Id: Ibed32af5578a6dea5eb0f77d3bd0f102db6161dd Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org> Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
2016-03-23msm: mdss: register for recovery handler in doze modeDhaval Patel
The doze_suspend and stop state resets the recovery handler. It is required to register it again in doze mode because there can be frame update in this power state. Change-Id: I1bef7cdd63f21698aca18d326074ac3a0e4e5de4 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
2016-03-23msm: mdss: hdmi: use busy wait instead of completionAjay Singh Parmar
Use busy wait while waiting for DDC read and write to complete. Using completion APIs to wait can result in thread to schedule and waking up the thread back can cause a delay of 30 - 40 ms or more. HDCP 2.2 authentication protocol uses some strict timeouts and can be as low as 20 ms. Avoid any possible scheduling and use busy wait to complete the DDC transactions within allowed time. Change-Id: I1c12d594a6e1e671fbaa4d197e375070deedc78d Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
2016-03-23msm: mdss: add support for pluggable interfaceAjay Singh Parmar
Add pluggable information into panel info to let other modules know that this interface supports HPD (Hot Plug Detect) and can be dynamically connected or disconnected. Change-Id: I8322b60c337cd2f46a4a500ad1a6083875f6206b Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org> Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
2016-03-23msm: mdss: add support for dynamic dsi phy timing calculationJeevan Shriram
The programming of the DSI Phy timing registers are dependent on link frequency. In the current implementation, these values are pre-computed statically based on the link rate required for a particular panel. This approach does not scale very well, especially for use cases when dynamically changing the refresh rate or resolution for a panel. To address this, add support to dynamically compute the value for dsi phy timing registers based on a particular link rate. Change-Id: If1ff545318a540baee66f5357c519d7f428510c1 Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org> Signed-off-by: Sandeep Panda <spanda@codeaurora.org> Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org> Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org> [cip@codeaurora.org: Moved new file location] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23msm: mdss: Add backlight threshold for ADPing Li
Notify user space with only backlight changes that pass the backlight threshold check. Change-Id: Id2fef0a2d9c883d0e68a5ad6be699858be6898ae Signed-off-by: Ping Li <pingli@codeaurora.org>
2016-03-23msm: mdss: fix vreg pre/post on/off wait durationClarence Ip
Commit be5fd56b0dbcb6a80b0e0322e77a1d368a840746 ("msm: mdss: use usleep_range instead of msleep in mdss util") replaces the msleep with usleep_range but does not fix the sleep duration. That leads to invalid wait time after vreg pre/post on/off operation. Change-Id: I47ae12eda393fd6367e7045a9bd91add3bb4a942 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org> [cip@codeaurora.org: Resolved merge conflicts] Signed-off-by: Clarence Ip <cip@codeaurora.org>
2016-03-23msm: mdss: fix split_mode setting during mode switchVeera Sundaram Sankaran
During mode switch, split_mode was set to pp split by checking if the panel is in split_mode and MDP supports pp split. This leads to faulty configuration as pp split should be set only when the panel setting has pp split and MDP support it. Add proper checks to set the split mode correctly. Change-Id: I2f2c10bebcb3ce7d38c37ff09a25d864a89e646a Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2016-03-23msm: mdss: avoid rotator request during secure display sessionDhaval Patel
Secure display works with default orientation. Fail rotator request during secure session to avoid non-secure or invalid buffer fetching from rotator smmu. Change-Id: If99481c8a31a466166edb2b393fef19bc2a983b9 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>