Merge "Docs: Add Java 8 to home page, What's New section"
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/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