Merge "Docs: Update CTS versions for M, L-MR1, & L Bug: 26920072"
diff --git a/src/devices/tech/power/batterystats.jd b/src/devices/tech/power/batterystats.jd
index d42bc33..cd9dd99 100644
--- a/src/devices/tech/power/batterystats.jd
+++ b/src/devices/tech/power/batterystats.jd
@@ -554,10 +554,10 @@
 
   </table>
 
-<h2 id="wifi-reqs">Wi-Fi, Bluetooth, and cellular usage</h2>
+<h2 id="wifi-reqs">Bluetooth, cellular, and Wi-Fi usage</h2>
 
-<p>Support for battery usage data on Wi-Fi, Bluetooth, and cellular data
-requires that the device Wi-Fi, Bluetooth, and cellular chipsets implement radio
+<p>Support for battery usage data on Bluetooth, cellular, and Wi-Fi data
+requires the device Bluetooth, cellular, and Wif-Fi chipsets implement radio
 support and the chipset firmware passes usage data to the framework. OEMs must
 work with their chipset providers to facilitate in-field firmware updates on
 existing chipsets and compatible firmware on new chipsets.</p>
@@ -565,7 +565,9 @@
 <p>Additionally, OEMs must continue to configure and submit the power profile
 for their devices. However, when the platform detects that Wi-Fi and Bluetooth
 radio power data is available from the chipset, it uses chipset data instead of
-power profile data (cell radio power data is not yet used).</p>
+power profile data (cell radio power data is not yet used). For details, see
+<a href="{@docRoot}devices/tech/power/values.html#chipset-data">Devices with
+Bluetooth and Wi-Fi controllers</a>.</p>
 
 <p class="note"><strong>Note</strong>: Prior to Android 6.0, power use for Wi-Fi
 radio, Bluetooth radio, and cellular radio was tracked in the <em>m</em> (Misc)
diff --git a/src/devices/tech/power/values.jd b/src/devices/tech/power/values.jd
index e75d50a..61600fe 100644
--- a/src/devices/tech/power/values.jd
+++ b/src/devices/tech/power/values.jd
@@ -39,6 +39,11 @@
 computes the mAh value, which is then used to estimate the amount of battery
 drained by the application/subsystem.</p>
 
+<p>Devices with <a href="#chipset-data">Bluetooth and Wi-Fi controllers</a>
+running Android 6.0 and higher can provide additional power values obtained from
+chipset data.</p>
+
+
 <h2 id="multiple-cpus">Devices with heterogeneous CPUs</h2>
 
 <p>The power profile for devices with CPU cores of heterogeneous architecture
@@ -267,4 +272,78 @@
   <td>3000mAh</td>
   <td></td>
 </tr>
-</table>
\ No newline at end of file
+</table>
+
+<h2 id="chipset-data">Devices with Bluetooth and Wi-Fi controllers</h2>
+<p>Devices with Bluetooth and Wi-Fi controllers running Android 6.0 and
+higher can be polled for the following energy use data:</p>
+<ul>
+<li>Time spent transmitting (in milliseconds).</li>
+<li>Time spent receiving (in milliseconds).</li>
+<li>Time spent idle (in milliseconds).</li>
+</ul>
+
+<p>Time values are not measured but are instead available from respective chip
+specifications and must be explicitly stated (for details, see
+<a href="{@docRoot}devices/tech/power/batterystats.html#wifi-reqs">Wi-Fi,
+Bluetooth, and cellular usage</a>). To convert time values to power values, the
+framework expects four (4) values for each controller in a resource overlay at
+<code>/frameworks/base/core/res/res/values/config.xml</code>.</p>
+
+  <table id="chipset-energy-data">
+
+    <tr>
+      <th width="10%">Controller</th>
+      <th width="40%">Values/Resource Names</th>
+      <th width="40%">Description</th>
+    </tr>
+
+    <tr>
+      <td>Bluetooth<</td>
+      <td>android:integer/config_bluetooth_idle_cur_ma</td>
+      <td>Average current draw (mA) of the Bluetooth controller when idle.</td>
+    </tr>
+
+    <tr>
+      <td>Bluetooth</td>
+      <td>android:integer/config_bluetooth_active_rx_cur_ma</td>
+      <td>Average current draw (mA) of the Bluetooth controller when receiving.</td>
+    </tr>
+
+    <tr>
+      <td>Bluetooth</td>
+      <td>android:integer/config_bluetooth_tx_cur_ma</td>
+      <td>Average current draw (mA) of the Bluetooth controller when transmitting.</td>
+    </tr>
+
+    <tr>
+      <td>Bluetooth</td>
+      <td>android:integer/config_bluetooth_operating_voltage_mv</td>
+      <td>Average operating voltage (mV) of the Bluetooth controller.</td>
+    </tr>
+
+    <tr>
+      <td>Wi-Fi</td>
+      <td>android:integer/config_wifi_idle_receive_cur_ma</td>
+      <td>Average current draw (mA) of the Wi-Fi controller when idle.</td>
+    </tr>
+
+    <tr>
+      <td>Wi-Fi</td>
+      <td>android:integer/config_wifi_active_rx_cur_ma</td>
+      <td>Average current draw (mA) of the Wi-Fi controller when receiving.</td>
+    </tr>
+
+    <tr>
+      <td>Wi-Fi</td>
+      <td>android:integer/config_wifi_tx_cur_ma</td>
+      <td>average current draw (mA) of the Wi-Fi controller when transmitting.</td>
+    </tr>
+
+    <tr>
+      <td>Wi-Fi</td>
+      <td>android:integer/config_wifi_operating_voltage_mv</td>
+      <td>Average operating voltage (mV) of the Wi-Fi controller.</td>
+    </tr>
+
+    </table>
\ No newline at end of file
diff --git a/src/index.jd b/src/index.jd
index 42d7145..5c2dd75 100644
--- a/src/index.jd
+++ b/src/index.jd
@@ -6,7 +6,7 @@
 @jd:body
 
 <!--
-    Copyright 2015 The Android Open Source Project
+    Copyright 2016 The Android Open Source Project
 
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
@@ -43,6 +43,16 @@
   <div class="landing-docs">
     <div class="col-8">
     <h3>What's New</h3>
+<a href="{@docRoot}source/initializing.html">
+        <h4>JDK 8 for Latest Platform Development</h4></a>
+        <p>The master branch of Android now requires JDK 8 to build. See <strong><a
+        href="{@docRoot}source/requirements.html">Requirements</a></strong>
+        for a summary of Java versions by Android release. See <strong><a
+        href="{@docRoot}source/initializing.html#installing-the-jdk">Setting up
+        a Linux build environment</a></strong> or <strong><a
+        href="{@docRoot}source/initializing.html#installing-the-mac-jdk">Setting up a
+        Mac OS build environment</a></strong> for update instructions by operating system.</p>
+
 <a href="{@docRoot}source/read-bug-reports.html">
         <h4>Reading Bug Reports</h4></a>
         <p>Android Engineering has written a detailed guide for <strong><a
@@ -80,12 +90,6 @@
         <h4>6.0 CTS Downloads</h4></a>
         <p>Android 6.0 R2 Compatibility Test Suite (CTS) and CTS Verifier are available for <strong><a
         href="{@docRoot}compatibility/downloads.html#android-60">Download</a></strong>.</p>
-
-<a href="{@docRoot}source/community.html">
-        <h4>Android Resources</h4></a>
-        <p>Android Community now includes a collection of <strong><a
-        href="{@docRoot}source/community.html#resources">Resources</a></strong>
-        for contributors, developers, users, and security experts.</p>
     </div>
 
     <div class="col-8">
diff --git a/src/security/bulletin/2016-02-01.jd b/src/security/bulletin/2016-02-01.jd
index 3effe07..f76b556 100644
--- a/src/security/bulletin/2016-02-01.jd
+++ b/src/security/bulletin/2016-02-01.jd
@@ -383,9 +383,6 @@
 </table>
 
 
-<p>
-</p>
-
 <h3 id=elevation_of_privilege_vulnerability_in_mediaserver>Elevation of Privilege Vulnerability in Mediaserver </h3>
 
 
@@ -468,11 +465,7 @@
  </tr>
 </table>
 
-
-<p>
-</p>
-
-<p><strong>Common Questions and Answers</strong></p>
+<h3 id=common_questions_and_answers>Common Questions and Answers</strong></h3>
 
 <p>This section reviews answers to common questions that may occur after reading
 this bulletin.</p>
diff --git a/src/source/build-numbers.jd b/src/source/build-numbers.jd
index 30acf35..e7305ff 100644
--- a/src/source/build-numbers.jd
+++ b/src/source/build-numbers.jd
@@ -183,6 +183,30 @@
 <th>Supported devices</th>
 </tr>
 <tr>
+  <td>MXB48T</td>
+  <td>android-6.0.1_r16</td>
+  <td>Marshmallow</td>
+  <td>Pixel C</td>
+</tr>
+<tr>
+  <td>MMB29U</td>
+  <td>android-6.0.1_r13</td>
+  <td>Marshmallow</td>
+  <td>Nexus Player</td>
+</tr>
+<tr>
+  <td>MMB29R</td>
+  <td>android-6.0.1_r12</td>
+  <td>Marshmallow</td>
+  <td>Nexus 9 (volantis/volantisg)</td>
+</tr>
+<tr>
+  <td>MMB29Q</td>
+  <td>android-6.0.1_r11</td>
+  <td>Marshmallow</td>
+  <td>Nexus 5, Nexus 5X, Nexus 6, Nexus 6P, Nexus 7 (flo/deb)</td>
+</tr>
+<tr>
   <td>MMB29T</td>
   <td>android-6.0.1_r10</td>
   <td>Marshmallow</td>
@@ -309,6 +333,12 @@
   <td>Nexus 5, Nexus 6, Nexus 7 (flo/deb), Nexus 9 (volantis/volantisg), Nexus Player</td>
 </tr>
 <tr>
+  <td>LMY49G</td>
+  <td>android-5.1.1_r34</td>
+  <td>Lollipop</td>
+  <td>Nexus 10</td>
+</tr>
+<tr>
   <td>LMY49F</td>
   <td>android-5.1.1_r33</td>
   <td>Lollipop</td>
diff --git a/src/source/code-style.jd b/src/source/code-style.jd
index 364b0e9..47ac191 100644
--- a/src/source/code-style.jd
+++ b/src/source/code-style.jd
@@ -645,7 +645,7 @@
 <li>Invalid data coming from any untrusted source (including any
 file on shared storage, or data coming through just about any network
 connections) is considered expected and should not trigger any logging at a
-level higher then DEBUG when it's detected to be invalid (and even then
+level higher than DEBUG when it's detected to be invalid (and even then
 logging should be as limited as possible).</li>
 <li>Keep in mind that the <code>+</code> operator, when used on Strings,
 implicitly creates a <code>StringBuilder</code> with the default buffer size (16