TouchPad: Register footswitch devices

The "fs_vfe" regulator (registered here) is needed for camera VFE to
work.
TouchPad: revert axi qos to use pm qos requests

We don't have the ebi1_vfe_clk so the add_axi_qos always fails.
TouchPad: retry waiting for config status if wait_event_interruptible_timeout
has been interrupted

Sometimes happends that the wait_event_interruptible_timeout is
interrupted
before we receive the config status.

This change is ported from:
http://git.tiamat-dev.com/7x30/htc-kernel-msm7x30/commit/?id=319b6e21a65a364e1565904bd6dd6d8951bbcb7a
media: camera: Fix for kernel lock up issue on VFE 3.1

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=7182d2da00315126b9443f6b5427970cf421ce31
msm: camera: Fix snapshot failure issue for multi-frame capture

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=f157bbd3af991b05f9b4551f44a125a5f8af5826
msm: camera: Release sensor and clock in error case.

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commitdiff;h=fd66e844777bee85b037fe16bfb3aca27e478ee2
msm: camera: Clean up during open failure

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commitdiff;h=9970df82452c38889851ce6b2b7cdfee67ae45a9
Turn off MIPI Clk Phy and MIPI Data Phy while exitting

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commitdiff;h=4c92fee7a486dc85626418d91f99cede7911af64
msm: camera: Handle event queue overflow error

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=patch;h=bdf7b93f77e67974f5c6a2b6d91b9818e40cbb36
msm: camera: Free buffers from frame queue at open

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=504cb98b3ff613efff254521b32a6611d33a9c84
msm: camera: Remove additional check in msm_queue_drain

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=d920c01734818be2daecf5b5bff91a2404d534a1
msm: camera: Update IO memory access ordering
msm: camera: Update memory barriers

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=6f14a0528099be906d6fc3fca513813a62f88367
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=efaf41295aa5f1270da8a3d8ae052d875cf24f28
msm: camera: Fix for pmem lookup error due to buffer mismatch

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=2d68c50a8d02505ed2ae7128f10b7c67d04e5ed0
msm: jpeg: Reset buffer status when output buffer queue is empty

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=555568e58439212f732f6be2edfd41142c6d5896
msm: gemini: Remove PMEM reference for input buffer

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=7c3fe65658aa9d19ecf7bff841a66603581d9629
TouchPad: Port HP camera changes from leaked Froyo kernel

This stuff adds usage of some regulators that have been used for
Topaz/Opal projects
msm: camera: Handle event queue overflow error

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=bdf7b93f77e67974f5c6a2b6d91b9818e40cbb36
mm-camera: configure the mipi csi based on lanecount

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=4435d190d17b2cbd7ce099cebbff4430eeb86a5f

Change-Id: I76558e2ecdc0656cd32e95de78e66a3d4b98e654
msm: camera: Update csi interrupt trigger conditon

This is port of:
https://www.codeaurora.org/gitweb/quic/la/?p=kernel/msm.git;a=commit;h=355bb2ede6e1c91eb1f31227d159e91621fc3df2
Delete sync->event_q on timeout in __msm_control