QCamera2: Avoid reprocess buffer limit during regular burst

 Regular burst can sometimes be left without output
 reprocess buffers if the encoder stage takes too
 long. This can lead to CPP frame drop.

Change-Id: I8508b4ee2caa026abe2c6a23831c4ed27058697a
Camera3: Some klockwork fixes

Some klockwork fixes to address index out of bounds and invalid
memory access errors
CRs-fixed: 682951

Change-Id: I7df20d9e6b6d3097f436998d4d4e4bd8fd00ff60
Camera: jpeg: Use sensor params from metadata frame

--Use Sensor params from metadata frame instead of HAL
local exif params

Change-Id: I951551a2b5b0c166e7ba3e0ba92e4df67a8177f8
QCamera2: Properly set burst number to 1 for AOST

- Burst number for AOST need to be always set to 1,
even if previous key value is already set. The reason
is that AOST is enabled a bit later and in the beginning
burst key is already set to the property from persist
- For disabling burst number the menu setting need to be
checked directly without taking into account current zoom.
The reason is that zoom is always 1x during preview start.
- Burst setting needs to be updated after AOST features
in QCameraParameters

Change-Id: I8d0e74cbb109a23e6a1356ec955f38c4b039cea5
Merge "QCamera2: Avoid reprocess buffer limit during regular burst"
Camera: Add HSR 60 and HSR 90 modes

Adding new features.

Change-Id: Ifd626455f77252712c60dfe48b6f9a764828a4ea
QCamera2: Change HFR/HSR parameters

- Removed obsolete camera parameter "video-hsr".
- Changed format of camera parameters "video-hfr" and
  "video-hfr-values" to handle not just framerate, but also
  high speed video mode. First three bytes will contain mode
  ("hsr" or "hfr"), followed by frame rate.
- Example:
    "off,hfr60,hfr90,hfr120,hfr150,hsr60,hsr90,hsr120,hsr150".
- Double values of "hfr-size-values" parameter accordingly to
  match the value count of "video-hfr" parameter.
- Depends on changes Ibf1d8557 and I7692d9b1.

CRs-Fixed: 679522
Change-Id: I9c4656e0124f376a6b8fd7cb3c0b923d96ec06c7
Merge "Camera: jpeg: Use sensor params from metadata frame"
Merge "QCamera2: Properly set burst number to 1 for AOST"
camera: Klockwork fixes for HAL1

Fixes for klockwork in HAL1.

Change-Id: I8ec091735fcc77fb66c501c7860abb40bd38cf61
CRs-Fixed: 682862
Merge "Camera3: Some klockwork fixes"
Merge "Camera: Add HSR 60 and HSR 90 modes"
Merge "QCamera2: Change HFR/HSR parameters"
QCamera2: Add initial support for Refocus

 TODO: Configure backend accordingly when
       refocus mode is enabled.

Change-Id: Ib6c807d4514aabb1bd06c55887044222db3f193f
Merge "camera: Klockwork fixes for HAL1"
Merge "QCamera2: Add initial support for Refocus"
Merge tag 'AU_LINUX_ANDROID_LNX.LA.3.6.04.04.03.062.137' into HEAD

AU_LINUX_ANDROID_LNX.LA.3.6.04.04.03.062.137 based on quic/aosp/LNX.LA.3.6

Change-Id: Ib6a355268b3bbcea2e72857406350d8c03e211d1
Merge "Merge tag 'AU_LINUX_ANDROID_LNX.LA.3.6.04.04.03.062.137' into HEAD"
Camera: Replace metadata buffer with a structure of structures

The earlier array of union of metadata structures required huge memory
due to some of the union members being large. This change replaces
such array with a super structure of metadata structures

Change-Id: Ie8681b1751e1074b22cfaa5bc678ba5cf9aef1d4
Camera: Consolidate param and metadata buffer structures

metadata_buffer_t is used as param_buffer_t structure as well.
This approach defines param_buffer_t as a structure instead of
union of param structures. This reduces the memory usage from
16mb to about 256kb per param buffer. Also this approach uses
"hash" table of valid entries providing faster way to access the
parameters without iterating through the list

Change-Id: I51e5c5adffabbcd211cd59baa6b77e4a1d95a431