Merge "camera_metadata: Add partial flash state"
diff --git a/audio_route/Android.mk b/audio_route/Android.mk
index d6eff29..7470dc6 100644
--- a/audio_route/Android.mk
+++ b/audio_route/Android.mk
@@ -9,5 +9,4 @@
 LOCAL_SHARED_LIBRARIES:= liblog libcutils libutils libexpat libtinyalsa
 LOCAL_MODULE_TAGS := optional
 LOCAL_PRELINK_MODULE := false
-LOCAL_32_BIT_ONLY := true
 include $(BUILD_SHARED_LIBRARY)
diff --git a/camera/docs/docs.html b/camera/docs/docs.html
index 1693ba7..eefbe22 100644
--- a/camera/docs/docs.html
+++ b/camera/docs/docs.html
@@ -12475,7 +12475,7 @@
         
                 
           <tr class="entry" id="static_android.sensor.info.whiteLevel">
-            <td class="entry_name" rowspan="3">
+            <td class="entry_name" rowspan="5">
               android.<wbr/>sensor.<wbr/>info.<wbr/>white<wbr/>Level
             </td>
             <td class="entry_type">
@@ -12494,7 +12494,7 @@
             </td>
 
             <td class="entry_range">
-              <p>&gt; 1024 (10-bit output)</p>
+              <p>&gt; 255 (8-bit output)</p>
             </td>
 
             <td class="entry_tags">
@@ -12515,12 +12515,22 @@
 each channel is specified by the offset in the
 <a href="#static_android.sensor.blackLevelPattern">android.<wbr/>sensor.<wbr/>black<wbr/>Level<wbr/>Pattern</a> tag.<wbr/></p>
 <p>The white level is typically determined either by sensor bit depth
-(10-14 bits is expected),<wbr/> or by the point where the sensor response
+(8-14 bits is expected),<wbr/> or by the point where the sensor response
 becomes too non-linear to be useful.<wbr/>  The default value for this is
 maximum representable value for a 16-bit raw sample (2^16 - 1).<wbr/></p>
             </td>
           </tr>
 
+          <tr class="entries_header">
+            <th class="th_details" colspan="5">HAL Implementation Details</th>
+          </tr>
+          <tr class="entry_cont">
+            <td class="entry_details" colspan="5">
+              <p>The full bit depth of the sensor must be available in the raw data,<wbr/>
+so the value for linear sensors should not be significantly lower
+than maximum raw value supported,<wbr/> i.<wbr/>e.<wbr/> 2^(sensor bits per pixel).<wbr/></p>
+            </td>
+          </tr>
 
           <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
            <!-- end of entry -->
@@ -13576,7 +13586,7 @@
         
                 
           <tr class="entry" id="dynamic_android.sensor.greenSplit">
-            <td class="entry_name" rowspan="3">
+            <td class="entry_name" rowspan="5">
               android.<wbr/>sensor.<wbr/>green<wbr/>Split
             </td>
             <td class="entry_type">
@@ -13615,8 +13625,12 @@
 filter array.<wbr/></p>
 <p>The green split is calculated as follows:</p>
 <ol>
-<li>A representative 5x5 pixel window W within the active
-sensor array is chosen.<wbr/></li>
+<li>A 5x5 pixel (or larger) window W within the active sensor array is
+chosen.<wbr/> The term 'pixel' here is taken to mean a group of 4 Bayer
+mosaic channels (R,<wbr/> Gr,<wbr/> Gb,<wbr/> B).<wbr/>  The location and size of the window
+chosen is implementation defined,<wbr/> and should be chosen to provide a
+green split estimate that is both representative of the entire image
+for this camera sensor,<wbr/> and can be calculated quickly.<wbr/></li>
 <li>The arithmetic mean of the green channels from the red
 rows (mean_<wbr/>Gr) within W is computed.<wbr/></li>
 <li>The arithmetic mean of the green channels from the blue
@@ -13639,6 +13653,18 @@
             </td>
           </tr>
 
+          <tr class="entries_header">
+            <th class="th_details" colspan="5">HAL Implementation Details</th>
+          </tr>
+          <tr class="entry_cont">
+            <td class="entry_details" colspan="5">
+              <p>The green split given may be a static value based on prior
+characterization of the camera sensor using the green split
+calculation method given here over a large,<wbr/> representative,<wbr/> sample
+set of images.<wbr/>  Other methods of calculation that produce equivalent
+results,<wbr/> and can be interpreted in the same manner,<wbr/> may be used.<wbr/></p>
+            </td>
+          </tr>
 
           <tr class="entry_spacer"><td class="entry_spacer" colspan="6"></td></tr>
            <!-- end of entry -->
diff --git a/camera/docs/metadata_properties.xml b/camera/docs/metadata_properties.xml
index 7f2be52..ae04384 100644
--- a/camera/docs/metadata_properties.xml
+++ b/camera/docs/metadata_properties.xml
@@ -3894,7 +3894,7 @@
             <description>
             Maximum raw value output by sensor.
             </description>
-            <range>&amp;gt; 1024 (10-bit output)</range>
+            <range>&amp;gt; 255 (8-bit output)</range>
             <details>
             This specifies the fully-saturated encoding level for the raw
             sample values from the sensor.  This is typically caused by the
@@ -3903,10 +3903,15 @@
             android.sensor.blackLevelPattern tag.
 
             The white level is typically determined either by sensor bit depth
-            (10-14 bits is expected), or by the point where the sensor response
+            (8-14 bits is expected), or by the point where the sensor response
             becomes too non-linear to be useful.  The default value for this is
             maximum representable value for a 16-bit raw sample (2^16 - 1).
             </details>
+            <hal_details>
+            The full bit depth of the sensor must be available in the raw data,
+            so the value for linear sensors should not be significantly lower
+            than maximum raw value supported, i.e. 2^(sensor bits per pixel).
+            </hal_details>
             <tag id="DNG" />
           </entry>
         </namespace>
@@ -4196,8 +4201,12 @@
 
           The green split is calculated as follows:
 
-          1. A representative 5x5 pixel window W within the active
-          sensor array is chosen.
+          1. A 5x5 pixel (or larger) window W within the active sensor array is
+          chosen. The term 'pixel' here is taken to mean a group of 4 Bayer
+          mosaic channels (R, Gr, Gb, B).  The location and size of the window
+          chosen is implementation defined, and should be chosen to provide a
+          green split estimate that is both representative of the entire image
+          for this camera sensor, and can be calculated quickly.
           1. The arithmetic mean of the green channels from the red
           rows (mean_Gr) within W is computed.
           1. The arithmetic mean of the green channels from the blue
@@ -4218,6 +4227,13 @@
           * R &amp;gt; 1.20 will require strong software correction to produce
           a usuable image (&amp;gt;20% divergence).
           </details>
+          <hal_details>
+          The green split given may be a static value based on prior
+          characterization of the camera sensor using the green split
+          calculation method given here over a large, representative, sample
+          set of images.  Other methods of calculation that produce equivalent
+          results, and can be interpreted in the same manner, may be used.
+          </hal_details>
           <tag id="DNG" />
         </entry>
       </dynamic>