Commit graph

4846 commits

Author SHA1 Message Date
Linux Build Service Account
55b1c1cae2 Merge "input: touchscreen: add option to ignore Focaltech family-id check" 2016-08-18 23:20:36 -07:00
Linux Build Service Account
0668f977d0 Merge "Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4" 2016-08-18 23:20:31 -07:00
Trilok Soni
9d6fd2c3e9 Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4
* msm-4.4/tmp-510d0a3f:
  Linux 4.4.11
  nf_conntrack: avoid kernel pointer value leak in slab name
  drm/radeon: fix DP link training issue with second 4K monitor
  drm/i915/bdw: Add missing delay during L3 SQC credit programming
  drm/i915: Bail out of pipe config compute loop on LPT
  drm/radeon: fix PLL sharing on DCE6.1 (v2)
  Revert "[media] videobuf2-v4l2: Verify planes array in buffer dequeueing"
  Input: max8997-haptic - fix NULL pointer dereference
  get_rock_ridge_filename(): handle malformed NM entries
  tools lib traceevent: Do not reassign parg after collapse_tree()
  qla1280: Don't allocate 512kb of host tags
  atomic_open(): fix the handling of create_error
  regulator: axp20x: Fix axp22x ldo_io voltage ranges
  regulator: s2mps11: Fix invalid selector mask and voltages for buck9
  workqueue: fix rebind bound workers warning
  ARM: dts: at91: sam9x5: Fix the memory range assigned to the PMC
  vfs: rename: check backing inode being equal
  vfs: add vfs_select_inode() helper
  perf/core: Disable the event on a truncated AUX record
  regmap: spmi: Fix regmap_spmi_ext_read in multi-byte case
  pinctrl: at91-pio4: fix pull-up/down logic
  spi: spi-ti-qspi: Handle truncated frames properly
  spi: spi-ti-qspi: Fix FLEN and WLEN settings if bits_per_word is overridden
  spi: pxa2xx: Do not detect number of enabled chip selects on Intel SPT
  ALSA: hda - Fix broken reconfig
  ALSA: hda - Fix white noise on Asus UX501VW headset
  ALSA: hda - Fix subwoofer pin on ASUS N751 and N551
  ALSA: usb-audio: Yet another Phoneix Audio device quirk
  ALSA: usb-audio: Quirk for yet another Phoenix Audio devices (v2)
  crypto: testmgr - Use kmalloc memory for RSA input
  crypto: hash - Fix page length clamping in hash walk
  crypto: qat - fix invalid pf2vf_resp_wq logic
  s390/mm: fix asce_bits handling with dynamic pagetable levels
  zsmalloc: fix zs_can_compact() integer overflow
  ocfs2: fix posix_acl_create deadlock
  ocfs2: revert using ocfs2_acl_chmod to avoid inode cluster lock hang
  net/route: enforce hoplimit max value
  tcp: refresh skb timestamp at retransmit time
  net: thunderx: avoid exposing kernel stack
  net: fix a kernel infoleak in x25 module
  uapi glibc compat: fix compile errors when glibc net/if.h included before linux/if.h MIME-Version: 1.0
  bridge: fix igmp / mld query parsing
  net: bridge: fix old ioctl unlocked net device walk
  VSOCK: do not disconnect socket when peer has shutdown SEND only
  net/mlx4_en: Fix endianness bug in IPV6 csum calculation
  net: fix infoleak in rtnetlink
  net: fix infoleak in llc
  net: fec: only clear a queue's work bit if the queue was emptied
  netem: Segment GSO packets on enqueue
  sch_dsmark: update backlog as well
  sch_htb: update backlog as well
  net_sched: update hierarchical backlog too
  net_sched: introduce qdisc_replace() helper
  gre: do not pull header in ICMP error processing
  net: Implement net_dbg_ratelimited() for CONFIG_DYNAMIC_DEBUG case
  samples/bpf: fix trace_output example
  bpf: fix check_map_func_compatibility logic
  bpf: fix refcnt overflow
  bpf: fix double-fdput in replace_map_fd_with_map_ptr()
  net/mlx4_en: fix spurious timestamping callbacks
  ipv4/fib: don't warn when primary address is missing if in_dev is dead
  net/mlx5e: Fix minimum MTU
  net/mlx5e: Device's mtu field is u16 and not int
  openvswitch: use flow protocol when recalculating ipv6 checksums
  atl2: Disable unimplemented scatter/gather feature
  vlan: pull on __vlan_insert_tag error path and fix csum correction
  net: use skb_postpush_rcsum instead of own implementations
  cdc_mbim: apply "NDP to end" quirk to all Huawei devices
  bpf/verifier: reject invalid LD_ABS | BPF_DW instruction
  net: sched: do not requeue a NULL skb
  packet: fix heap info leak in PACKET_DIAG_MCLIST sock_diag interface
  route: do not cache fib route info on local routes with oif
  decnet: Do not build routes to devices without decnet private data.
  parisc: Use generic extable search and sort routines
  arm64: kasan: Use actual memory node when populating the kernel image shadow
  arm64: mm: treat memstart_addr as a signed quantity
  arm64: lse: deal with clobbered IP registers after branch via PLT
  arm64: mm: check at build time that PAGE_OFFSET divides the VA space evenly
  arm64: kasan: Fix zero shadow mapping overriding kernel image shadow
  arm64: consistently use p?d_set_huge
  arm64: fix KASLR boot-time I-cache maintenance
  arm64: hugetlb: partial revert of 66b3923a1a0f
  arm64: make irq_stack_ptr more robust
  arm64: efi: invoke EFI_RNG_PROTOCOL to supply KASLR randomness
  efi: stub: use high allocation for converted command line
  efi: stub: add implementation of efi_random_alloc()
  efi: stub: implement efi_get_random_bytes() based on EFI_RNG_PROTOCOL
  arm64: kaslr: randomize the linear region
  arm64: add support for kernel ASLR
  arm64: add support for building vmlinux as a relocatable PIE binary
  arm64: switch to relative exception tables
  extable: add support for relative extables to search and sort routines
  scripts/sortextable: add support for ET_DYN binaries
  arm64: futex.h: Add missing PAN toggling
  arm64: make asm/elf.h available to asm files
  arm64: avoid dynamic relocations in early boot code
  arm64: avoid R_AARCH64_ABS64 relocations for Image header fields
  arm64: add support for module PLTs
  arm64: move brk immediate argument definitions to separate header
  arm64: mm: use bit ops rather than arithmetic in pa/va translations
  arm64: mm: only perform memstart_addr sanity check if DEBUG_VM
  arm64: User die() instead of panic() in do_page_fault()
  arm64: allow kernel Image to be loaded anywhere in physical memory
  arm64: defer __va translation of initrd_start and initrd_end
  arm64: move kernel image to base of vmalloc area
  arm64: kvm: deal with kernel symbols outside of linear mapping
  arm64: decouple early fixmap init from linear mapping
  arm64: pgtable: implement static [pte|pmd|pud]_offset variants
  arm64: introduce KIMAGE_VADDR as the virtual base of the kernel region
  arm64: add support for ioremap() block mappings
  arm64: prevent potential circular header dependencies in asm/bug.h
  of/fdt: factor out assignment of initrd_start/initrd_end
  of/fdt: make memblock minimum physical address arch configurable
  arm64: Remove the get_thread_info() function
  arm64: kernel: Don't toggle PAN on systems with UAO
  arm64: cpufeature: Test 'matches' pointer to find the end of the list
  arm64: kernel: Add support for User Access Override
  arm64: add ARMv8.2 id_aa64mmfr2 boiler plate
  arm64: cpufeature: Change read_cpuid() to use sysreg's mrs_s macro
  arm64: use local label prefixes for __reg_num symbols
  arm64: vdso: Mark vDSO code as read-only
  arm64: ubsan: select ARCH_HAS_UBSAN_SANITIZE_ALL
  arm64: ptdump: Indicate whether memory should be faulting
  arm64: Add support for ARCH_SUPPORTS_DEBUG_PAGEALLOC
  arm64: Drop alloc function from create_mapping
  arm64: prefetch: add missing #include for spin_lock_prefetch
  arm64: lib: patch in prfm for copy_page if requested
  arm64: lib: improve copy_page to deal with 128 bytes at a time
  arm64: prefetch: add alternative pattern for CPUs without a prefetcher
  arm64: prefetch: don't provide spin_lock_prefetch with LSE
  arm64: allow vmalloc regions to be set with set_memory_*
  arm64: kernel: implement ACPI parking protocol
  arm64: mm: create new fine-grained mappings at boot
  arm64: ensure _stext and _etext are page-aligned
  arm64: mm: allow passing a pgdir to alloc_init_*
  arm64: mm: allocate pagetables anywhere
  arm64: mm: use fixmap when creating page tables
  arm64: mm: add functions to walk tables in fixmap
  arm64: mm: add __{pud,pgd}_populate
  arm64: mm: avoid redundant __pa(__va(x))
  arm64: mm: add functions to walk page tables by PA
  arm64: mm: move pte_* macros
  arm64: kasan: avoid TLB conflicts
  arm64: mm: add code to safely replace TTBR1_EL1
  arm64: add function to install the idmap
  arm64: unmap idmap earlier
  arm64: unify idmap removal
  arm64: mm: place empty_zero_page in bss
  arm64: mm: specialise pagetable allocators
  asm-generic: Fix local variable shadow in __set_fixmap_offset
  Eliminate the .eh_frame sections from the aarch64 vmlinux and kernel modules
  arm64: Fix an enum typo in mm/dump.c
  arm64: kasan: ensure that the KASAN zero page is mapped read-only
  arch/arm64/include/asm/pgtable.h: add pmd_mkclean for THP
  arm64: hide __efistub_ aliases from kallsyms
  Linux 4.4.10
  drm/i915/skl: Fix DMC load on Skylake J0 and K0
  lib/test-string_helpers.c: fix and improve string_get_size() tests
  ACPI / processor: Request native thermal interrupt handling via _OSC
  drm/i915: Fake HDMI live status
  drm/i915: Make RPS EI/thresholds multiple of 25 on SNB-BDW
  drm/i915: Fix eDP low vswing for Broadwell
  drm/i915/ddi: Fix eDP VDD handling during booting and suspend/resume
  drm/radeon: make sure vertical front porch is at least 1
  iio: ak8975: fix maybe-uninitialized warning
  iio: ak8975: Fix NULL pointer exception on early interrupt
  drm/amdgpu: set metadata pointer to NULL after freeing.
  drm/amdgpu: make sure vertical front porch is at least 1
  gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading
  nvmem: mxs-ocotp: fix buffer overflow in read
  USB: serial: cp210x: add Straizona Focusers device ids
  USB: serial: cp210x: add ID for Link ECU
  ata: ahci-platform: Add ports-implemented DT bindings.
  libahci: save port map for forced port map
  powerpc: Fix bad inline asm constraint in create_zero_mask()
  ACPICA: Dispatcher: Update thread ID for recursive method calls
  x86/sysfb_efi: Fix valid BAR address range check
  ARC: Add missing io barriers to io{read,write}{16,32}be()
  ARM: cpuidle: Pass on arm_cpuidle_suspend()'s return value
  propogate_mnt: Handle the first propogated copy being a slave
  fs/pnode.c: treat zero mnt_group_id-s as unequal
  x86/tsc: Read all ratio bits from MSR_PLATFORM_INFO
  MAINTAINERS: Remove asterisk from EFI directory names
  writeback: Fix performance regression in wb_over_bg_thresh()
  batman-adv: Reduce refcnt of removed router when updating route
  batman-adv: Fix broadcast/ogm queue limit on a removed interface
  batman-adv: Check skb size before using encapsulated ETH+VLAN header
  batman-adv: fix DAT candidate selection (must use vid)
  mm: update min_free_kbytes from khugepaged after core initialization
  proc: prevent accessing /proc/<PID>/environ until it's ready
  Input: zforce_ts - fix dual touch recognition
  HID: Fix boot delay for Creative SB Omni Surround 5.1 with quirk
  HID: wacom: Add support for DTK-1651
  xen/evtchn: fix ring resize when binding new events
  xen/balloon: Fix crash when ballooning on x86 32 bit PAE
  xen: Fix page <-> pfn conversion on 32 bit systems
  ARM: SoCFPGA: Fix secondary CPU startup in thumb2 kernel
  ARM: EXYNOS: Properly skip unitialized parent clock in power domain on
  mm/zswap: provide unique zpool name
  mm, cma: prevent nr_isolated_* counters from going negative
  Minimal fix-up of bad hashing behavior of hash_64()
  MD: make bio mergeable
  tracing: Don't display trigger file for events that can't be enabled
  mac80211: fix statistics leak if dev_alloc_name() fails
  ath9k: ar5008_hw_cmn_spur_mitigate: add missing mask_m & mask_p initialisation
  lpfc: fix misleading indentation
  clk: qcom: msm8960: Fix ce3_src register offset
  clk: versatile: sp810: support reentrance
  clk: qcom: msm8960: fix ce3_core clk enable register
  clk: meson: Fix meson_clk_register_clks() signature type mismatch
  clk: rockchip: free memory in error cases when registering clock branches
  soc: rockchip: power-domain: fix err handle while probing
  clk-divider: make sure read-only dividers do not write to their register
  CNS3xxx: Fix PCI cns3xxx_write_config()
  mwifiex: fix corner case association failure
  ata: ahci_xgene: dereferencing uninitialized pointer in probe
  nbd: ratelimit error msgs after socket close
  mfd: intel-lpss: Remove clock tree on error path
  ipvs: drop first packet to redirect conntrack
  ipvs: correct initial offset of Call-ID header search in SIP persistence engine
  ipvs: handle ip_vs_fill_iph_skb_off failure
  RDMA/iw_cxgb4: Fix bar2 virt addr calculation for T4 chips
  Revert: "powerpc/tm: Check for already reclaimed tasks"
  arm64: head.S: use memset to clear BSS
  efi: stub: define DISABLE_BRANCH_PROFILING for all architectures
  arm64: entry: remove pointless SPSR mode check
  arm64: mm: move pgd_cache initialisation to pgtable_cache_init
  arm64: module: avoid undefined shift behavior in reloc_data()
  arm64: module: fix relocation of movz instruction with negative immediate
  arm64: traps: address fallout from printk -> pr_* conversion
  arm64: ftrace: fix a stack tracer's output under function graph tracer
  arm64: pass a task parameter to unwind_frame()
  arm64: ftrace: modify a stack frame in a safe way
  arm64: remove irq_count and do_softirq_own_stack()
  arm64: hugetlb: add support for PTE contiguous bit
  arm64: Use PoU cache instr for I/D coherency
  arm64: Defer dcache flush in __cpu_copy_user_page
  arm64: reduce stack use in irq_handler
  arm64: Documentation: add list of software workarounds for errata
  arm64: mm: place __cpu_setup in .text
  arm64: cmpxchg: Don't incldue linux/mmdebug.h
  arm64: mm: fold alternatives into .init
  arm64: Remove redundant padding from linker script
  arm64: mm: remove pointless PAGE_MASKing
  arm64: don't call C code with el0's fp register
  arm64: when walking onto the task stack, check sp & fp are in current->stack
  arm64: Add this_cpu_ptr() assembler macro for use in entry.S
  arm64: irq: fix walking from irq stack to task stack
  arm64: Add do_softirq_own_stack() and enable irq_stacks
  arm64: Modify stack trace and dump for use with irq_stack
  arm64: Store struct thread_info in sp_el0
  arm64: Add trace_hardirqs_off annotation in ret_to_user
  arm64: ftrace: fix the comments for ftrace_modify_code
  arm64: ftrace: stop using kstop_machine to enable/disable tracing
  arm64: spinlock: serialise spin_unlock_wait against concurrent lockers
  arm64: enable HAVE_IRQ_TIME_ACCOUNTING
  arm64: fix COMPAT_SHMLBA definition for large pages
  arm64: add __init/__initdata section marker to some functions/variables
  arm64: pgtable: implement pte_accessible()
  arm64: mm: allow sections for unaligned bases
  arm64: mm: detect bad __create_mapping uses
  Linux 4.4.9
  extcon: max77843: Use correct size for reading the interrupt register
  stm class: Select CONFIG_SRCU
  megaraid_sas: add missing curly braces in ioctl handler
  sunrpc/cache: drop reference when sunrpc_cache_pipe_upcall() detects a race
  thermal: rockchip: fix a impossible condition caused by the warning
  unbreak allmodconfig KCONFIG_ALLCONFIG=...
  jme: Fix device PM wakeup API usage
  jme: Do not enable NIC WoL functions on S0
  bus: imx-weim: Take the 'status' property value into account
  ARM: dts: pxa: fix dma engine node to pxa3xx-nand
  ARM: dts: armada-375: use armada-370-sata for SATA
  ARM: EXYNOS: select THERMAL_OF
  ARM: prima2: always enable reset controller
  ARM: OMAP3: Add cpuidle parameters table for omap3430
  ext4: fix races of writeback with punch hole and zero range
  ext4: fix races between buffered IO and collapse / insert range
  ext4: move unlocked dio protection from ext4_alloc_file_blocks()
  ext4: fix races between page faults and hole punching
  perf stat: Document --detailed option
  perf tools: handle spaces in file names obtained from /proc/pid/maps
  perf hists browser: Only offer symbol scripting when a symbol is under the cursor
  mtd: nand: Drop mtd.owner requirement in nand_scan
  mtd: brcmnand: Fix v7.1 register offsets
  mtd: spi-nor: remove micron_quad_enable()
  serial: sh-sci: Remove cpufreq notifier to fix crash/deadlock
  ext4: fix NULL pointer dereference in ext4_mark_inode_dirty()
  x86/mm/kmmio: Fix mmiotrace for hugepages
  perf evlist: Reference count the cpu and thread maps at set_maps()
  drivers/misc/ad525x_dpot: AD5274 fix RDAC read back errors
  rtc: max77686: Properly handle regmap_irq_get_virq() error code
  rtc: rx8025: remove rv8803 id
  rtc: ds1685: passing bogus values to irq_restore
  rtc: vr41xx: Wire up alarm_irq_enable
  rtc: hym8563: fix invalid year calculation
  PM / Domains: Fix removal of a subdomain
  PM / OPP: Initialize u_volt_min/max to a valid value
  misc: mic/scif: fix wrap around tests
  misc/bmp085: Enable building as a module
  lib/mpi: Endianness fix
  fbdev: da8xx-fb: fix videomodes of lcd panels
  scsi_dh: force modular build if SCSI is a module
  paride: make 'verbose' parameter an 'int' again
  regulator: s5m8767: fix get_register() error handling
  irqchip/mxs: Fix error check of of_io_request_and_map()
  irqchip/sunxi-nmi: Fix error check of of_io_request_and_map()
  spi/rockchip: Make sure spi clk is on in rockchip_spi_set_cs
  locking/mcs: Fix mcs_spin_lock() ordering
  regulator: core: Fix nested locking of supplies
  regulator: core: Ensure we lock all regulators
  regulator: core: fix regulator_lock_supply regression
  Revert "regulator: core: Fix nested locking of supplies"
  videobuf2-v4l2: Verify planes array in buffer dequeueing
  videobuf2-core: Check user space planes array in dqbuf
  USB: usbip: fix potential out-of-bounds write
  cgroup: make sure a parent css isn't freed before its children
  mm/hwpoison: fix wrong num_poisoned_pages accounting
  mm: vmscan: reclaim highmem zone if buffer_heads is over limit
  numa: fix /proc/<pid>/numa_maps for THP
  mm/huge_memory: replace VM_NO_THP VM_BUG_ON with actual VMA check
  memcg: relocate charge moving from ->attach to ->post_attach
  cgroup, cpuset: replace cpuset_post_attach_flush() with cgroup_subsys->post_attach callback
  slub: clean up code for kmem cgroup support to kmem_cache_free_bulk
  workqueue: fix ghost PENDING flag while doing MQ IO
  x86/apic: Handle zero vector gracefully in clear_vector_irq()
  efi: Expose non-blocking set_variable() wrapper to efivars
  efi: Fix out-of-bounds read in variable_matches()
  IB/security: Restrict use of the write() interface
  IB/mlx5: Expose correct max_sge_rd limit
  cxl: Keep IRQ mappings on context teardown
  v4l2-dv-timings.h: fix polarity for 4k formats
  vb2-memops: Fix over allocation of frame vectors
  ASoC: rt5640: Correct the digital interface data select
  ASoC: dapm: Make sure we have a card when displaying component widgets
  ASoC: ssm4567: Reset device before regcache_sync()
  ASoC: s3c24xx: use const snd_soc_component_driver pointer
  EDAC: i7core, sb_edac: Don't return NOTIFY_BAD from mce_decoder callback
  toshiba_acpi: Fix regression caused by hotkey enabling value
  i2c: exynos5: Fix possible ABBA deadlock by keeping I2C clock prepared
  i2c: cpm: Fix build break due to incompatible pointer types
  perf intel-pt: Fix segfault tracing transactions
  drm/i915: Use fw_domains_put_with_fifo() on HSW
  drm/i915: Fixup the free space logic in ring_prepare
  drm/amdkfd: uninitialized variable in dbgdev_wave_control_set_registers()
  drm/i915: skl_update_scaler() wants a rotation bitmask instead of bit number
  drm/i915: Cleanup phys status page too
  pwm: brcmstb: Fix check of devm_ioremap_resource() return code
  drm/dp/mst: Get validated port ref in drm_dp_update_payload_part1()
  drm/dp/mst: Restore primary hub guid on resume
  drm/dp/mst: Validate port in drm_dp_payload_send_msg()
  drm/nouveau/gr/gf100: select a stream master to fixup tfb offset queries
  drm: Loongson-3 doesn't fully support wc memory
  drm/radeon: fix vertical bars appear on monitor (v2)
  drm/radeon: forbid mapping of userptr bo through radeon device file
  drm/radeon: fix initial connector audio value
  drm/radeon: add a quirk for a XFX R9 270X
  drm/amdgpu: fix regression on CIK (v2)
  amdgpu/uvd: add uvd fw version for amdgpu
  drm/amdgpu: bump the afmt limit for CZ, ST, Polaris
  drm/amdgpu: use defines for CRTCs and AMFT blocks
  drm/amdgpu: when suspending, if uvd/vce was running. need to cancel delay work.
  iommu/dma: Restore scatterlist offsets correctly
  iommu/amd: Fix checking of pci dma aliases
  pinctrl: single: Fix pcs_parse_bits_in_pinctrl_entry to use __ffs than ffs
  pinctrl: mediatek: correct debounce time unit in mtk_gpio_set_debounce
  xen kconfig: don't "select INPUT_XEN_KBDDEV_FRONTEND"
  Input: pmic8xxx-pwrkey - fix algorithm for converting trigger delay
  Input: gtco - fix crash on detecting device without endpoints
  netlink: don't send NETLINK_URELEASE for unbound sockets
  nl80211: check netlink protocol in socket release notification
  powerpc: Update TM user feature bits in scan_features()
  powerpc: Update cpu_user_features2 in scan_features()
  powerpc: scan_features() updates incorrect bits for REAL_LE
  crypto: talitos - fix AEAD tcrypt tests
  crypto: talitos - fix crash in talitos_cra_init()
  crypto: sha1-mb - use corrcet pointer while completing jobs
  crypto: ccp - Prevent information leakage on export
  iwlwifi: mvm: fix memory leak in paging
  iwlwifi: pcie: lower the debug level for RSA semaphore access
  s390/pci: add extra padding to function measurement block
  cpufreq: intel_pstate: Fix processing for turbo activation ratio
  Revert "drm/amdgpu: disable runtime pm on PX laptops without dGPU power control"
  Revert "drm/radeon: disable runtime pm on PX laptops without dGPU power control"
  drm/i915: Fix race condition in intel_dp_destroy_mst_connector()
  drm/qxl: fix cursor position with non-zero hotspot
  drm/nouveau/core: use vzalloc for allocating ramht
  futex: Acknowledge a new waiter in counter before plist
  futex: Handle unlock_pi race gracefully
  asm-generic/futex: Re-enable preemption in futex_atomic_cmpxchg_inatomic()
  ALSA: hda - Add dock support for ThinkPad X260
  ALSA: pcxhr: Fix missing mutex unlock
  ALSA: hda - add PCI ID for Intel Broxton-T
  ALSA: hda - Keep powering up ADCs on Cirrus codecs
  ALSA: hda/realtek - Add ALC3234 headset mode for Optiplex 9020m
  ALSA: hda - Don't trust the reported actual power state
  x86 EDAC, sb_edac.c: Repair damage introduced when "fixing" channel address
  x86/mm/xen: Suppress hugetlbfs in PV guests
  arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE permission
  arm64: Honour !PTE_WRITE in set_pte_at() for kernel mappings
  sched/cgroup: Fix/cleanup cgroup teardown/init
  dmaengine: pxa_dma: fix the maximum requestor line
  dmaengine: hsu: correct use of channel status register
  dmaengine: dw: fix master selection
  debugfs: Make automount point inodes permanently empty
  lib: lz4: fixed zram with lz4 on big endian machines
  dm cache metadata: fix cmd_read_lock() acquiring write lock
  dm cache metadata: fix READ_LOCK macros and cleanup WRITE_LOCK macros
  usb: gadget: f_fs: Fix use-after-free
  usb: hcd: out of bounds access in for_each_companion
  xhci: fix 10 second timeout on removal of PCI hotpluggable xhci controllers
  usb: xhci: fix wild pointers in xhci_mem_cleanup
  xhci: resume USB 3 roothub first
  usb: xhci: applying XHCI_PME_STUCK_QUIRK to Intel BXT B0 host
  assoc_array: don't call compare_object() on a node
  ARM: OMAP2+: hwmod: Fix updating of sysconfig register
  ARM: OMAP2: Fix up interconnect barrier initialization for DRA7
  ARM: mvebu: Correct unit address for linksys
  ARM: dts: AM43x-epos: Fix clk parent for synctimer
  KVM: arm/arm64: Handle forward time correction gracefully
  kvm: x86: do not leak guest xcr0 into host interrupt handlers
  x86/mce: Avoid using object after free in genpool
  block: loop: fix filesystem corruption in case of aio/dio
  block: partition: initialize percpuref before sending out KOBJ_ADD

Conflicts:
	arch/arm64/Kconfig
	arch/arm64/include/asm/cputype.h
	arch/arm64/include/asm/hardirq.h
	arch/arm64/include/asm/irq.h
	arch/arm64/kernel/cpu_errata.c
	arch/arm64/kernel/cpuinfo.c
	arch/arm64/kernel/setup.c
	arch/arm64/kernel/smp.c
	arch/arm64/kernel/stacktrace.c
	arch/arm64/mm/init.c
	arch/arm64/mm/mmu.c
	arch/arm64/mm/pageattr.c
	mm/memcontrol.c

CRs-Fixed: 1054234
Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
Change-Id: I2a7a34631ffee36ce18b9171f16d023be777392f
2016-08-18 14:50:45 -07:00
Linux Build Service Account
506ab3cee1 Merge "input: touchscreen: correct the return value in ITE tech touch driver" 2016-08-18 12:04:15 -07:00
Linux Build Service Account
ebbe5c8d48 Merge "input: touchscreen: remove PRESSURE event from ft5x06 driver" 2016-08-18 12:03:57 -07:00
Linux Build Service Account
c3afa9bef9 Merge "input: ft5x06_ts: Upgrade firmware based on version" 2016-08-18 12:03:56 -07:00
Linux Build Service Account
cfa9893e4a Merge "input: ft5x06_ts: Parse board specific parameters from pdata" 2016-08-18 12:03:55 -07:00
Linux Build Service Account
6e22b01c91 Merge "input: touchscreen: Goodix gt915 driver cleanup" 2016-08-18 12:03:54 -07:00
Linux Build Service Account
a18fa34ff2 Merge "input: msg21xx_ts: Mstar touch driver optimization" 2016-08-18 12:03:54 -07:00
Bingzhe Cai
8ac5a9e361 input: touchscreen: add option to ignore Focaltech family-id check
Focaltech touchscreen ICs may use different chip IDs for same module.
Add support to ignore ID check for such cases.

This patch is propagated from msm-3.10 kernel
'commit d6e831bdf2af ("input: touchscreen: add option to ignore
Focaltech family-id check")'

Also fix the checkpatch errors.

Change-Id: I0fe8da6a5e687317b4878b59ac5d1a4a4b620e1d
Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-08-17 17:13:46 +05:30
Bingzhe Cai
07d93257c6 input: touchscreen: remove PRESSURE event from ft5x06 driver
There is no need to send ABS_MT_PRESSURE event when contact is
removed from touchscreen, this redundant event will confuse some
APP and cause malfunction.

This patch is propagated from msm-3.18 kernel
'commit 75184ddcf2d1 ("input: touchscreen: remove PRESSURE event
from ft5x06 driver")'

CRs-Fixed: 537993
Change-Id: Ie2aef79f99cb80c10706f832cfab583ba742fdf1
Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
2016-08-17 17:07:57 +05:30
Mohan Pallaka
bf71f01cc7 input: ft5x06_ts: Upgrade firmware based on version
Upgrade firmware on the controller only when a new
version of firmware is available.

This patch is propagated from msm-3.18 kernel
'commit 88d102ef081f ("input: ft5x06_ts: Upgrade
firmware based on version")'

Change-Id: I4cf75b3c5efb90f151da09ed73b1ba62b9b5bb1c
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2016-08-17 16:59:15 +05:30
Mohan Pallaka
72436be454 input: ft5x06_ts: Parse board specific parameters from pdata
To support all models supported by focaltech push necessary
parameters to platform data.

This patch is propagated from msm-3.18 kernel
'commit 473f8cd84f93 ("input: ft5x06_ts: Parse board specific
parameters from pdata")'

Also fix the below checkpatch warnings on 3.18 Kernel.
WARNING: Possible unnecessary 'out of memory' message
+       if (!data) {
+               dev_err(&client->dev, "Not enough memory\n");

WARNING: Possible unnecessary 'out of memory' message
+       if (!data->ts_info) {
+               dev_err(&client->dev, "Not enough memory\n");

Change-Id: I00b0e8ba7cfc8d8fbd48aa910bd3d0010283ed00
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-08-17 16:53:44 +05:30
Mohan Pallaka
cb040c2f61 input: ft5x06_ts: Add firmware upgrade support for ft6x06
Focaltech 6x06 controller series uses a different reset
register compared to earlier supported controllers. Use
appropriate reset registers based on controller's id.

This patch is propagated from 3.18 kernel
'commit 88dd4c27a3f6 ("input: ft5x06_ts: Add firmware
upgrade support for ft6x06")'

Change-Id: Ia72fa9c256f9e6e2db79388b0152f4d6724ec457
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2016-08-17 16:47:23 +05:30
Figo Wang
8f5d6d8fd0 input: touchpanel: fix the number of touch events detection
Focaltech controllers can reports the number of touch points by read
"TD_STATUS" register. Read this register to avoid always looping
through maximum number of touches supported.

This patch is propagated from 3.18 kernel
'commit 4c142d16fced ("input: touchpanel: fix the number of touch
events detection")'

Change-Id: I8ab111b56b2074cb52cb021d37e9e6505c8b7c72
Signed-off-by: Figo Wang <figow@codeaurora.org>
Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
2016-08-17 16:41:53 +05:30
Mohan Pallaka
e6d2a8e4bb input: ft5x06_ts: Disable regulators in suspend
Disable/enable the regulators in suspend/resume to
have better power savings.

This patch is propagated from 3.18 kernel
'commit 550c106ea1a3 ("input: ft5x06_ts: Disable
regulators in suspend")'

Change-Id: I8aa7e941f20040955d6cc177e70ed38dbd28af8c
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
2016-08-17 16:36:42 +05:30
Shantanu Jain
faca745b0b input: ft5x06_ts: Handle error if i2c read fails
Handle error if i2c read fails and undo other
probe initializations.

This patch is propagated from 3.18 kernel
'commit 0123456789ab ("input: ft5x06_ts: Handle error if
i2c read fails")'

Change-Id: I26180b057b45f4dad123dd3581e5c5f2b33a32aa
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-17 16:32:08 +05:30
Figo Wang
849d4f3c1c input: touchpanel: Release all touches during suspend
Release all the touches before going to suspend to avoid
sticky touches and correct multitouch ID error.

This patch is propagated from 3.18 kernel 'commit 8a123ff1f64b
("input: touchpanel: Release all touches during suspend")'

Change-Id: I5dd84d44478291e16fd577aad5cf06503e44fbde
Signed-off-by: Figo Wang <figow@codeaurora.org>
2016-08-17 15:58:56 +05:30
Mohan Pallaka
c72652e02f input: ft5x06_ts: Add debugfs entry for dump info
Add a debugfs entry to display information about controller to the user.
Also have cleared the checkpatch errors on 3.18

This patch is propagated from 3.18 kernel 'commit 71e8bfde1da8 ("input:
ft5x06_ts: Add debugfs entry for dump info")'

Change-Id: I075501fefe1984533139ecca65af92f3c0ab8b97
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-08-17 15:48:34 +05:30
Shantanu Jain
aee223238b input: touchscreen: correct the return value in ITE tech touch driver
Correct the return value of it7260_ts_chip_low_power_mode function
in ITE tech touch driver.

This is a propagation patch from 3.18 kernel 'commit b1e998b971d9
("input: touchscreen: correct the return value in ITE tech touch driver")'

CRs-Fixed: 1020680
Change-Id: Iaaeb4ae22fadefd976906fdf8a995cd7cfe12d33
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-17 02:14:32 -07:00
Shantanu Jain
61f82846e0 input: touchscreen: send WAKEUP event properly in ITE Tech driver
Send WAKEUP event properly in ITE Tech touch driver when device
is in suspend mode.
The driver maintins a boolean state for sending the WAKEUP event.
When user taps the screen for touch-to-wake feature, the irq
handler for ITE Tech touch driver is scheduled after the ITE tech
resume function. Due to this the boolean state gets reset.
So this change handles this use case properly.

This is a propagation patch from 3.18 kernel  'commit 25af9ff9bc39
("input: touchscreen: send WAKEUP event properly in ITE Tech driver")'

CRs-Fixed: 1020680
Change-Id: Ifc1d00a42ecffe7aad65d99dadcdf170c56129a7
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-17 14:41:46 +05:30
Mohan Pallaka
19bdb8e2d1 input: ft5x06_ts: Add support for protocol B
Focaltech touchscreen chips can use MT protocol B
because they can assign unique id to ABS_MT_TRACKING_ID
from finger id provided by hardware.

This patch is propagated from 3.18 kernel
'commit 836a4745d978 ("input: ft5x06_ts: Add support
for protocol B")'

Change-Id: I7f236d819eb805934e12faedaf84407b9de95c0e
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-16 22:12:04 -07:00
Mohan Pallaka
a5b633b984 input: ft5x06_ts: Add debugfs support
Add debugfs support to provide addr and data
entries to read registers from controller.
Writing into the registers is not supported
as it might corrupt controller. Also add suspend
entry to dynamically test suspend and resume.

This patch is propagated from 3.18 kernel
'commit 0804395c18d8 ("input: ft5x06_ts: Add
debugfs support")'
Change-Id: If61bbbefdbf624f62b07c2a96d28c8338bd948c1
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-16 04:26:53 -07:00
Linux Build Service Account
ce5a4b5fcc Merge "input: msg21xx_ts: add support for firmware upgrade" 2016-08-11 12:48:47 -07:00
Linux Build Service Account
ea85807058 Merge "input: ft5x06: Add support for firmware upgrade" 2016-08-11 12:48:44 -07:00
Linux Build Service Account
f3c95d6021 Merge "input: ft5x06_ts: Add DT support" 2016-08-11 12:48:44 -07:00
Mohan Pallaka
fad9dc0827 input: ft5x06: Add support for firmware upgrade
Add sysfs entries to upgrade firmware from userspace.
Firmware upgrade is triggered when the device's firmware
version mismatches with userspace's firmware file.
Force firmware upgrade sysfs entry is added to force
the firmware upgrade even when the firmware versions
match.

Change-Id: I48189abe60b4bd9d54a1bbc4657707213d8eb166
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-11 03:21:01 -07:00
Shantanu Jain
d80c9df9bc input: touchscreen: Goodix gt915 driver cleanup
Cleanup the gt915 goodix driver from checkpatch failures.
Also have cleared the checkpatch errors on 4.4

This patch is propagated from 3.18 kernel
'commit 9ccc3ab159ba ("input: touchscreen: Goodix gt915
driver cleanup")'

Change-Id: Id841423f229b6abc674cc1e3c6441d55062b6ab4
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
[abinayap@codeaurora.org: fix checkpatch errors for 4.4 kernel
Use of the '__DATE__' macro makes the build non-deterministic
Also including it in the output does not provide any value.
So remove its usage.]
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-08-10 13:33:31 +05:30
Mao Li
fe7a0cf51a input: msg21xx_ts: Mstar touch driver optimization
Mstar driver uses the ic-type DT property for dynamic detection
support. Driver reads a register from the controller and compares
both the values to check if connected touch controller is of
Mstar or not.
Remove all DBG messages and convert them to dev_dbg/info.
Add a debugfs entry for suspend/resume.
Remove ts_data/pdata global declaration and use dev_get_drvdata()
and input_set_drvdata()/dev_set_drvdata() instead.

This patch is propagated from 3.18 kernel 'commit adbc104e3cb8
("input: msg21xx_ts: Mstar touch driver optimization")'

Change-Id: Ia053745d48faf68b946fbb0cf16d392cbfdd2a3c
Signed-off-by: Mao Li <maol@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-08-09 15:46:07 +05:30
Mao Li
3c789f68d9 input: msg21xx_ts: add support for firmware upgrade
Add sysfs entries to upgrade the firmware from userspace. Update_fw
sysfs entry upgrades the firmware inside the touch controller only
when the controller's firmware version is lesser than that in
userspace's firmware file. Force firmware upgrade sysfs entry
forcefully upgrades the firmware inside the touch controller even
when the controller's firmware version matches that of the firmware
file in userspace.

This patch is propagated from 3.18 kernel 'commit 580ca1a4437e
("input: msg21xx_ts: add support for firmware upgrade")'

Change-Id: Ib6046de5230c395b48818d01f26eb9394046808b
Signed-off-by: Mao Li <maol@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-08-09 13:12:23 +05:30
Mao Li
48e4d67c6e input: msg21xx_ts: release touch when finger leaves the panel
When fingers on the panel decrease, release corresponding touches.

This patch is propagated from 3.18 kernel  'commit 24e3a5036d3c
("input: msg21xx_ts: release touch when finger leaves the panel")'

Change-Id: Iafc3a9dda252417fcd06e3d9d24fb73b4d6f8e58
Signed-off-by: Mao Li <maol@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-08-09 13:00:25 +05:30
Mohan Pallaka
3274081bed input: ft5x06_ts: Add support for FB notifications
Add support for FB notifications to trigger suspend/resume
based on FB blank/unblank events.

Change-Id: I79abc586ad8c14a25afd56559c579a1415df9f0e
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-05 08:27:46 -07:00
Shantanu Jain
96b8c89a7c input: touchscreen: correct function and variable names in ITE tech driver
Correct function and variable names in ITE tech driver from upper case
to lower case, and use underscore instead of camel-case in their names.
This change makes the driver as per kernel coding standards and similar
to other touch drivers.

This is a propagation patch from 3.18 kernel 'commit c1fe9ac38d93 ("input:
touchscreen: correct function and variable names in ITE tech driver")'

CRs-Fixed: 982219
Change-Id: Ic8b66317f414fe3bfcd0f9c5b03369cc304edb55
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-05 20:46:21 +05:30
Shantanu Jain
44965431f6 input: touchscreen: correct return values in ITE tech driver
Correct return values of the functions in ITE tech driver.
Use valid integer error and success values instead of boolean
values.

This is a propagated patch from 3.18 kernel 'commit a68ff7e23d20
("input: touchscreen: correct return values in ITE tech driver")'

CRs-Fixed: 982219
Change-Id: Iba07517fd32dbeb3079df9c0346ea0c044b88f63
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-05 20:41:30 +05:30
Shantanu Jain
6f2d5a5fc1 input: touchscreen: remove global variable from ITE tech touch driver
Remove the use of global variable from ITE tech touch driver,
and use the internal driver structure passed as function argument.
This change makes the driver complied to kernel coding standards
and similar to other touch driver.

This is a propagated patch from 3.18 patch 'commit 041f90ddeb5e ("input:
touchscreen: remove global variable from ITE tech touch driver")'

CRs-Fixed: 982219
Change-Id: Ib609d6e76ea70cd3b49c4ea6f09c75bf52521aa8
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-05 20:36:37 +05:30
Shantanu Jain
f8168ee5bf input: touchscreen: identify ITE tech controller until ready
Identify the ITE tech controller until it is ready to do any
i2c transaction. This is needed for dynamic detection and to check
if ITE tech controller is connected or not.

This is a propagated patch from 3.18 kernel 'commit eb37d1174948
("input: touchscreen: identify ITE tech controller until ready")'

CRs-Fixed: 980427
Change-Id: I9f69eb541e31de6a04db7468ca12a04a837d2b40
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-05 20:30:50 +05:30
Shantanu Jain
fdcb967e7e input: touchscreen: correct condition checks in ITE tech touch driver
Correct the return value check of kstrtoint function.
Also correct the platform_data parsing check in ITE tech
touch driver.

This is a propagated patch from 3.18 kernel
'commit 9a1496537aeb ("input: touchscreen: correct condition checks
in ITE tech touch driver")'

Change-Id: I792c043ca4d85e236c209605e80392a05d26b983
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-05 20:26:29 +05:30
Shantanu Jain
28181fbc4c input: touchscreen: don't allow ITE tech driver to do infinite i2c checks
Don't allow ITE tech driver to check the status of the controller forever
before any i2c read/write, instead make it to 10 times only.
In case of firmware flashing and external calibration features, this is
made to 500 times.

This is a propagated patch from 3.18 kernel
'commit 5e8c98c6705b ("input: touchscreen: don't allow ITE tech driver
to do infinite i2c checks")'

Change-Id: I88e024700de43cc9f712fd7fa509fcb387f9cd21
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-05 20:22:47 +05:30
Mohan Pallaka
95c648643d input: ft5x06_ts: Add DT support
Add device tree support for focaltech controller driver.
The data is represented in device tree format and parsed
by the driver using of framework apis.

This patch is a propagated patch from 3.18 kernel
'commit 83310a9a151e ("input: ft5x06_ts: Add DT support")'

Change-Id: Ibcdd8c3579f401ac0632d670e1b7c674aa67ba8d
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
[abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel
struct of_device_id should normally be const]
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-08-05 07:29:28 -07:00
Shantanu Jain
fb07736a10 input: touchscreen: increase number of checks for touch controller status
Before doing any i2c read/write, driver needs to check the value
of QUERY buffer to know if the controller is in ready or busy state.
Sometime, it takes more number of checks to know the status.
So this change increases the number of checks to know the ITE tech
touch controller status.

This is a propagated patch from 3.18 kernel 'commit 60589278b8e7 ("input:
touchscreen: increase number of checks for touch controller status")

Change-Id: I30dd0cf0b15538e67f50725754d5059e2fe721d0
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-08-05 17:09:43 +05:30
Mao Li
5218b8f9f8 input: msg21xx_ts: update mstar driver to enable msg2138A
Mstar reference driver is being cleaned up to be checkpatch
compliant. Add Kconfig and Makefile changes to enable Mstar
driver's compilation. And following new features are added to
the driver:
1. Pinctrl support
2. Threaded irq support
3. Release all touches in suspend
4. Protocol B compliance
5. Explicit suspend/resume function
6. Configure gpios in suspend/resume function
7. Add device tree parser function
8. Add dtsi support for gpio, regulator, I2C address, display coords

This patch is propagated from 3.18 kernel
'commit 091a01709e12 ("input: msg21xx_ts: update mstar
driver to enable msg2138A")'

Change-Id: Ic49a18de64ec210a0636405394ba7a8f52f336a9
Signed-off-by: Mao Li <maol@codeaurora.org>
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
[abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel
- Block comments use a trailing */ on a separate line
- Comparisons should place the constant on the right side of the test
- struct of_device_id should normally be const
- DT compatible string vendor "mstar" appears un-documented]
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-08-05 04:35:02 -07:00
Linux Build Service Account
5c66997cc1 Merge "input: touchpanel: Goodix GT915 driver cleanup" 2016-08-04 21:39:41 -07:00
Bingzhe Cai
b1bafc4fd8 input: touchpanel: Goodix GT915 driver cleanup
Code clean up that makes the driver more like a linux driver.
Add some error recovery to make sure driver will not crash when
error is occurs. Also have cleared the checkpatch errors on 4.4.

This patch is propagated from 3.4 kernel 'commit c2fcdcda743f
("input: touchpanel: Goodix GT915 driver cleanup")'

Change-Id: I3af425f5f0251ec576168f72a2059f85c3be4358
Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
[abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel
- check for sizeof(p_cfg_grp)/sizeof(p_cfg_grp[0]) that could
be ARRAY_SIZE(p_cfg_grp)
- check for sizeof(touch_key_array)/sizeof(touch_key_array[0])
that could be ARRAY_SIZE(touch_key_array)
- Comparisons should place the constant on the right side
of the test]
Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-08-03 20:45:25 +05:30
Shantanu Jain
0e3bb05bcb input: touchscreen: reduce lpm current of avdd reg for ITE tech
Reduce lpm current of avdd regulator for ITE tech touch controller
to save power dissipation in lpm state.

Change-Id: I4b0c532096f1555561ad33e937cb947e85f987cd
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-03 13:02:50 +05:30
Shantanu Jain
7233392578 input: touchscreen: add delay after enabling regulators
ITE tech touch controller needs a delay to come to an active
state after regulators are enabled and do any i2c transactions.
So this change adds a delay for the same.

Change-Id: Ifd7c936d8f5d364b78c64aeebd1517d49a5b8936
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-03 12:27:41 +05:30
Shantanu Jain
ee2823ff32 input: touchscreen: Change touch driver suspend code flow for XO shutdown
ITE tech touch driver puts the controller to IDLE state in suspend
function through an i2c write into controller register space. But
due to multiple triggers of fb blank events, the suspend
function is called repeatatively without resume, and the driver
causes i2c nacks in suspend function while again putting the
controller is IDLE state. This keeps the QUP5 clock ON and XO shutdown
doesn't happen.
This change prevents the touch driver to execute the i2c write, to
put the controller in IDLE state, by repeatative fb blank events,
and causes XO shutdown to happen within time limits.

Change-Id: Ie3ee6b861c10ae901dea54f252f6a799d688f02a
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-03 12:24:04 +05:30
Shantanu Jain
3d4fb6fef8 input: touchscreen: correct probe error path for ITE tech driver
ITE tech touch driver dynamically detects the controller attached
to the device in its probe. And if the driver fails to identify
the controller, it exits the probe with the error code. But in the
probe error path, it doesn't retain the error code, replace it
with zero and registers the device instead of failing.
This change corrects the probe error path of ITE tech touch driver
and makes sure it returns the error code if it fails.

Change-Id: I8f193ee10076b6cf058b0a6940db54f71f70b758
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-03 12:19:37 +05:30
Shantanu Jain
aacc5edd8c input: it7258_ts_i2c: add gpio configuration support
Add gpio configuration support for ITE tech touchscreen
driver.

Change-Id: I261db5723a19a7084072487527b350d155a54e78
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-02 23:27:56 -07:00
Shantanu Jain
2de9ec04f2 input: it7258_ts_i2c: add regulator framework support
Add regulator framework support for ITE tech driver.

Change-Id: Ib666f406442ad5f323a08e4624832fba5e2546e2
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-03 11:54:49 +05:30
Shantanu Jain
6cb6901ff0 input: it7258_ts_i2c: add low reset and reset delay support
Add low reset gpio and delay reset support for ITE tech
driver.
ITE tech controller support low reset gpio configuration. This
property is parsed from the DT, and reset gpio is set to low.
Reset delay value is also parsed from DT which is required by the
ITE tech controller.

Change-Id: I314677747e8bbbcb273cd898376bbe03197c8c25
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-08-03 11:50:18 +05:30