input: touchscreen: Updated TP firmware

Change-Id: I0ba16ed0fb09644befbf6da46862553fd50e0398
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Revert "Revert "Revert "input: touch: synaptics: Reset the device when blanking display"""

With the new firmware, this should finally not be needed.

This reverts commit 1ce0eaf5bc72b9f76ec44872f91b692ff2782427.

Change-Id: I2dafa35890d0de7704129e89093fe2e745a4bafa
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
drivers: video: Updated support for the truly panels

Change-Id: I85f6c5d21453cee9126a081caa6cb2ffdfae0b03
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
misc: Update kernel from SVN8864

1. update firmware to resolve fast charging ending when current is lower than 100mA

2. update touchscreen firmware to resolve when current increased when action slip change to click

Change-Id: Iccfda3d99fd00a4556c5c6bddd46f4a8281e56d2
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mm: fix prctl_set_vma_anon_name

prctl_set_vma_anon_name could attempt to set the name across
two vmas at the same time due to a typo, which might corrupt
the vma list.  Fix it to use tmp instead of end to limit
the name setting to a single vma at a time.

Change-Id: Ie32d8ddb0fd547efbeedd6528acdab5ca5b308b4
Reported-by: Jed Davis <jld@mozilla.com>
Signed-off-by: Colin Cross <ccross@android.com>
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
ASoC: qcom: qdsp6v2: fix crash due to asynchronous read/write

Whenever an async read command is issued to dsp when
the driver is not enabled, there is a crash in userspace.
The read command is disallowed in the driver and an error
is propagated to userspace which results in the crash.
The driver is re-enabled in a subsequent asynchronous write
command anyway, so the async read command can be allowed.
Ensure that read is allowed by removing a superfluous check.

CRs-Fixed: 675131
Signed-off-by: Satya Krishna Pindiproli <satyak@codeaurora.org>
Change-Id: I5d0598e37d08ac1090f98c24be49fd99c132e22f
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
asoc: msm: MBHC fixes, round 2

 * Reset the gnd-mic switch when the headset is inserted. Some
   headsets end up in a weird state otherwise.
 * Micbias does not need to be on all the time for regular headsets
   in order to detect button presses. Disable it.
 * Tweak the thresholds such that headsets which require 2.7V on
   micbias correctly start as HIGH_HPH. They will be corrected to
   headsets after the micbias is turned on in subsequent passes.

Change-Id: Ia846d95b81f2dcde1f14e77b0d69d6ab034b4bb4
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
asoc: msm: Check headset insertion for consistency

 * It's possible to get a noisy reading during polling when
   transitioning to PLUG_TYPE_HEADSET. Poll again to double
   check that it's really a headset.
 * This helps when music is at full volume and a headphone
   is inserted. Double-checking the reading vastly improves
   the case where a noisy reading causes a mic to be detected.

Change-Id: I6e0863a46cdfd5316d798bc9b8348927fa403890
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
asoc: msm: Enable spammy MBHC debugging

 * Accidentally got removed from previous patch. Enable spammy debugging
   so we can collect data about more types of headsets.

Change-Id: If65168e2fbb470562433f9738886025c51096ff6
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
asoc: msm: More MBHC tunings!

 * All day every day!
 * It seems that certain OEM handset makers who are also in the
   accessory biz have chosen resistence values which lie directly
   on the threshold of the reference design. I can only think of
   a few reasons why someone would do this.
 * Nice trolling, Xiaomi :)

Change-Id: I0ff08b0f2253f10422f16f00ef5a8911455c5348
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
asoc: msm: MBHC tunings forever!

 * Franco's Apple headset is right on the boundary for HIGH_HPH.
 * Move the threshold down to 180.

Change-Id: I487af13663cb74d55ff8a270bda917537284966f
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Implement kexec-hardboot

"Allows hard booting (i.e., with a full hardware reboot) to a kernel
previously loaded in memory by kexec.  This works around the problem of
soft-booted kernel hangs due to improper device shutdown and/or
reinitialization."
More info in /arch/arm/Kconfig.

Original author: Mike Kasick <mike@kasick.org>

Vojtech Bocek <vbocek@gmail.com>:
  I've ported it to hammerhead, it is based of my mako/grouper port, which is
  based of Asus TF201 patch ported by Jens Andersen <jens.andersen@gmail.com>

  Hammerhead is the first device I've ported this patch to which uses
  device tree binary instead of atags. It is also rather picky - its
  bootloader erases first 128MB of RAM on reboot, so following hacks had
  to be applied:
  * Copy dtb to location passed in r2 before jumping to kexecd' kernel,
    the kernel would just freeze when I left dtb above 128MB of RAM.
  * Copy kexecd' kernel to location in the first 128MB before jumping to it,
    the decompressor operates very slowly if the kernel is above the cached
    area, copying it lower and decompressing it afterwards is much faster.

  Same as my mako/flo patches, the guest kernel does not require any
  modifications, kexec-hardboot is equivalent to standard kexec.

  To support dtb, following commit was backported from the mainline:
    commit 4cabd1d9625c7d88acd143f4021fbef75394f154
    Author: Matthew Leach <matthew.leach@arm.com>
    Date:   Fri Sep 21 18:56:02 2012 +0100

      ARM: 7539/1: kexec: scan for dtb magic in segments

      This patch allows a dtb to be passed to a new kernel using the kexec
      mechinism.

      When loading segments from userspace, scan each segment's first four
      bytes for the dtb magic. If this is found set the kexec_boot_atags
      parameter to the relocate_kernel code to the phyical address of this
      segment.

Davide Pianca <kingbabasula@gmail.com>:
  Ported from https://gist.github.com/Tasssadar/7833796
  Adapted for bacon

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Revert some sched patches

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
sched: Rollback upstream backport

 * There are some stability issues under certain loads with this
   patchset. Rollback until we can revisit.

Revert "[backport] sched_rt: Upstream fixes"

This reverts commit 3aef4fdd36c3db6f5df88629ab0a9d6c42bae26c.

Revert "[backport] sched: Misc upstream scheduler improvements"

This reverts commit fa16d20f1c90bb0d7955b194d450891de680494e.

Revert "[backport]: sched: Load-based CPU boosting"

This reverts commit 54d5731ffe5a109691de3f61eeda14bd42942325.

Revert "sched: Remove get_online_cpus() usage"

This reverts commit 86b047357013e1d5c5547fd6d466dd75b90afc81.

Change-Id: I8bb638023a95df7ae7a44b06017c0190985e3f22
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
sched: fix race between try_to_wake_up() and move_task()

Until a task's state has been seen as interruptible/uninterruptible
and it is no longer on_cpu, it is possible that the task may move
to another CPU (load balancing may cause this). Here is an example
where the race condition results in incorrect operation:

- cpu 0 calls put_prev_task on task A, task A's state is TASK_RUNNING
- cpu 0 runs task B, which attempts to wake up A
- cpu 0 begins try_to_wake_up(), recording src_cpu for task A as cpu 0
- cpu 1 then pulls task A (perhaps due to idle balance)
- cpu 1 runs task A, which then sleeps, becoming INTERRUPTIBLE
- cpu 0 continues in try_to_wake_up(), thinking task A's previous
  cpu is 0, where it is actually 1
- if select_task_rq returns cpu 0, task A will be woken up on cpu 0
  without properly updating its cpu to 0 in set_task_cpu()

Change-Id: I870f7ffefe30ba2aae1114fd5e66d1a73e6a54fb
CRs-Fixed: 665958
Signed-off-by: Steve Muckle <smuckle@codeaurora.org>
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
video: mdss: Sunlight readability enhancement support

 * This hardware supports a postprocessing mode which improves
   readbility in bright sunlight. Add support for enabling
   this mode when the backlight value crosses a threshold.
 * Enable the feature using /sys/class/graphics/fb0/sre
 * Also add a max backlight level for using CABC. It's not
   effective at full brightness and causes too much visible
   distortion with many images.

Change-Id: I213eb5d91e526c80a0dc88e6e05e6d6f35841fdf

Conflicts:

	arch/arm/boot/dts/msm8974-oppo/msm8974-oppo-panel.dtsi
	drivers/video/msm/mdss/mdss_dsi_panel.c
	drivers/video/msm/mdss/mdss_fb.c
	drivers/video/msm/mdss/mdss_panel.h

[francisco: fixed conflicts, which diverge from the original patch]
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mako_hotplug: lets try this fix for the crippling sound when changing networks.

Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
mmc: core: Optimize entering HS400 mode

In the current HS400 selection sequence high speed mode is entered
twice unnecessarily. Skip the first hs selection as it is also done
as part of entering high speed DDR mode.

CRs-fixed: 707453
Change-Id: Id027af977fe416056a6fbef39da1a84e41d89e53
Signed-off-by: Venkat Gopalakrishnan <venkatg@codeaurora.org>
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Revert "qseecom: Add support to handle multiple app load & unload"

This reverts commit f856ce3045a68e12089c7dc2152f5c53bb259305.

Change-Id: I31b5994fb42118edd46e453b0d453225c92000a1
Signed-off-by: franciscofranco <franciscofranco.1990@gmail.com>
Revert "msm_serial_hs: wait for clock-off to complete before shutdown"

This reverts commit fbf3bf5c1ee6d3f1601bf7af8d634e126fba7f79.

Revert "msm_serial_hs: Avoid potential unclocked access by clients"

This reverts commit 1c9ce33fe3c39d0a1742598681c0e6218ace0a10.

Revert "msm_serial_hs: remove unused code"

This reverts commit 8a3453659adc5a7bfed42ac7d8c659f20aede8e3.

Revert "msm_serial_hs: Manage wake unlock delay"

This reverts commit cb1e5e2c77405b48a77ea79e50ad7cf5f41674b8.

Revert "msm_serial_hs: Fix return value handling from platform_get_irq_by_name"

This reverts commit a1bc40d88e2fc986b7e0c7d259b35de8f089ecd3.

Revert "msm_serial_hs: Fix the logic for numbering the serial device"

This reverts commit db603fa8545698aae0ef487137d9d5d4bcd9a36d.