camera: Initial bringup of old camera driver

We have very old proprietary camera libs so we need to stay with the 2.6.35 camera driver
unless we find some working new proprietary libs
camera: add ION support to camera driver
camera: fix returned value from msm_camio_clk_enable and msm_camio_clk_disable
camera: use clock based axi qos
tenderloin: add missing camera options to kernel config
camera: fix wrong merge
camera: compilation warnings fixes
camera: enable fs_vfe
camera: typo fix in file operations handlers

I have registered msm_open_frame as open handler for config0
(instead of msm_open) and vice versa for frame0.
This commit fixes this issue.
camera: fix crash on closing preview

The client_for_ion has been initialized each time the control0,
config0 or frame0 has been opened and released when closing one
of them.
This made that the ion allocations has been made using different
ion client than when freeing them which resulted in kernel oops.
This patch creates client_for_ion once when loading module and
frees it when unloading the module.
This increases the kernel memory usage by keeping the ion client
instance for the module lifetime instead of allocating it only
when it will be needed but at least the kernel crash is being fixed.
camera: fix signedness issue in hw_exec_cmds (CVE-2013-4736)

This is part of the commit:
https://www.codeaurora.org/cgit/quic/la//kernel/msm/commit/?id=81947189009afcfac17d1106101260c660421265
camera: Fix overflow issue in ioctl_hw_cmds function (CVE-2013-4736)

This is part of commit:
https://www.codeaurora.org/cgit/quic/la//kernel/msm/commit/?id=8c5300aec8cd9882b89e9d169680221541da0d7f
Enable pmem_adsp allocator for msm camera

Change-Id: I51fbe2f1e751fb74ab48f4f2947b8d1767c0a41f
camera: do not allocate client_for_ion when ION is disabled
gemini: do not use ION in gemini driver

The proprietary libgemini.so we have does not support ION memory allocation
so until we will have a newer libgemini.so we need to disable the ION support
in gemini driver.