Update s.a.c for JB

Change-Id: I0b745b11860a906b79026d1705cb258334eb5fc9
diff --git a/src/index.md b/src/index.md
index 0ebaad9..044e60e 100644
--- a/src/index.md
+++ b/src/index.md
@@ -20,9 +20,9 @@
 
 ## News ##
 
-### Source Code Available for Android 4.0 ###
+### Source Code Available for Android 4.1 ###
 
-The source code for the Android 4.0 platform and software stack has been
+The source code for the Android 4.1 platform and software stack has been
 released! This release allows OEMs to begin preparing Android 4.0 for
 installation on new and existing devices, and allows hobbyists, enthusiasts,
 and researchers to develop custom builds. For information on how to obtain the
diff --git a/src/source/build-numbers.md b/src/source/build-numbers.md
index 06a9559..807152f 100644
--- a/src/source/build-numbers.md
+++ b/src/source/build-numbers.md
@@ -40,8 +40,9 @@
 Honeycomb        | 3.0           | API level 11
 Honeycomb        | 3.1           | API level 12, NDK 6
 Honeycomb        | 3.2.x         | API level 13
-IceCreamSandwich | 4.0.1 - 4.0.2 | API level 14, NDK 7
-IceCreamSandwich | 4.0.3 - 4.0.4 | API level 15
+Ice Cream Sandwich | 4.0.1 - 4.0.2 | API level 14, NDK 7
+Ice Cream Sandwich | 4.0.3 - 4.0.4 | API level 15, NDK 8
+Jelly Bean       | 4.1.x         | API level 16
 
 Starting with Cupcake, individual builds are identified with a short
 build code, e.g. FRF85B.
@@ -104,7 +105,7 @@
 GRK39C | android-2.3.6_r0.9 | Nexus S
 GRK39F | android-2.3.6_r1   | Nexus One, Nexus S
 GWK74  | android-2.3.7_r1   | latest Gingerbread version, Nexus S 4G
-ITL41D | android-4.0.1_r1   | earliest IceCreamSandwich version, Galaxy Nexus
+ITL41D | android-4.0.1_r1   | earliest Ice Cream Sandwich version, Galaxy Nexus
 ITL41D | android-4.0.1_r1.1 | Galaxy Nexus
 ITL41F | android-4.0.1_r1.2 | Galaxy Nexus
 ICL53F | android-4.0.2_r1   | Galaxy Nexus
@@ -114,9 +115,15 @@
 IMM76D | android-4.0.4_r1.1 | Nexus S, Nexus S 4G, Galaxy Nexus
 IMM76I | android-4.0.4_r1.2 | Galaxy Nexus
 IMM76K | android-4.0.4_r2   | Galaxy Nexus
-IMM76L | android-4.0.4_r2.1 | latest IceCreamSandwich version
+IMM76L | android-4.0.4_r2.1 | latest Ice Cream Sandwich version
+JRO03C | android-4.1.1_r1   | earliest Jelly Bean version, Galaxy Nexus
+JRO03D | android-4.1.1_r1.1 | Nexus 7
+JRO03E | android-4.1.1_r2   | Nexus S
+JRO03H | android-4.1.1_r3   |
+JRO03L | android-4.1.1_r4   | latest Jelly Bean version, Nexus S
 
-The branches froyo, gingerbread, ics-mr0, ics-mr1, represent development
+The branches froyo, gingerbread, ics-mr0, ics-mr1, jb-dev,
+represent development
 branches that do not exactly match configurations that were tested
 by Google. They might contain a variety of changes in addition to
 the official tagged releases, and those haven't been as thoroughly
diff --git a/src/source/building-devices.md b/src/source/building-devices.md
index 7615857..9c2ab82 100644
--- a/src/source/building-devices.md
+++ b/src/source/building-devices.md
@@ -19,32 +19,42 @@
 This page complements the main page about [Building](building.html) with
 information that is specific to individual devices.
 
-The supported devices with the current release are the Galaxy Nexus, Motorola
-Xoom, Nexus S and Nexus S 4G.
+With the current release, it is possible to build for Nexus 7, for some
+variants of Galaxy Nexus, for a variant of the Motorola Xoom, and for
+all variants of Nexus S and Nexus S 4G. The exact level of functionality
+for each device depends on the availability of the relevant proprietary
+hardware-specific binaries.
 
-Galaxy Nexus is supported only in GSM/HSPA+ configuration "maguro" and only
-if it was originally sold with a "yakju" or "takju" operating system.
+All variants of Nexus 7 can be used. On Nexus 7, graphics and audio are
+functional, as well as WiFi and Bluetooth.
 
-The Motorola Xoom is supported in the Wi-fi configuration "wingray"
-sold in the USA.
+The variants of Galaxy Nexus that be used are the GSM/HSPA+ configuration
+"maguro" (only if it was originally sold with a "yakju" or "takju" operating
+system) and the VZW CDMA/LTE configuration "toro". On those devices, graphics
+and audio are functional, as well as WiFi, Bluetooth, and access to the
+respective cellular networks. The orientation sensors are functional.
 
-Nexus S is supported in all configurations. Nexus S 4G is supported.
+The Motorola Xoom is can be used in the Wi-Fi configuration "wingray"
+sold in the USA. Graphics and audio are functional as well as WiFi and
+Bluetooth and the orientation sensors.
 
-In addition, [PandaBoard](http://pandaboard.org) a.k.a. "panda" is supported
-in the master branch only, but is currently considered experimental.
+All configurations of Nexus S and Nexus S 4G can be used, and on those
+devices all the peripherals are functional: graphics, audio, Wifi, Bluetooth,
+cell networks, sensors, camera, hardware codecs, NFC, GPS.
+
+In addition, [PandaBoard](http://pandaboard.org) a.k.a. "panda" can be used
+in the master branch, but is considered experimental.
 The specific details to use a PandaBoard with the Android Open-Source Project
 are in the file `device/ti/panda/README` in the source tree.
 
-Nexus One a.k.a. "passion" is obsolete, was experimental in gingerbread and
-unsupported, and can't be used with newer versions of the Android Open-Source
+Nexus One a.k.a. "passion" is obsolete, was experimental in gingerbread,
+and can't be used with newer versions of the Android Open-Source
 Project.
 
 Android Developer Phones (ADP1 and ADP2, a.k.a. "dream" and "sapphire") are
-obsolete, were experimental and unsupported in froyo, and can't be used with
+obsolete, were experimental in froyo, and can't be used with
 newer versions of the Android Open-Source Project.
 
-No CDMA devices are supported in the Android Open-Source Project.
-
 ## Building fastboot and adb ##
 
 If you don't already have those tools, fastboot and adb can be built with
@@ -60,16 +70,18 @@
 
 Device   | Keys
 ---------|------
+grouper  | Press *Power* for a second, and press *Volume Down* when the bootloader logo appears
 maguro   | Press and hold both *Volume Up* and *Volume Down*, then press and hold *Power*
+toro     | Press and hold both *Volume Up* and *Volume Down*, then press and hold *Power*
 panda    | Press and hold *Input*, then press *Power*
 wingray  | Press and hold *Volume Down*, then press and hold *Power*
 crespo   | Press and hold *Volume Up*, then press and hold *Power*
+crespo4g | Press and hold *Volume Up*, then press and hold *Power*
 passion  | Press and hold the trackball, then press *Power*
 sapphire | Press and hold *Back*, then press *Power*
 dream    | Press and hold *Back*, then press *Power*
 
-Also, on devices running froyo or later where adb is enabled,
-the command `adb reboot bootloader` can be used to reboot from
+Also, the command `adb reboot bootloader` can be used to reboot from
 Android directly into the bootloader with no key combinations.
 
 ## Unlocking the bootloader ##
@@ -78,7 +90,7 @@
 
 This is the default setup on ADP1 and ADP2.
 
-On Nexus One, Nexus S, Nexus S 4G, Xoom, and Galaxy Nexus,
+On Nexus One, Nexus S, Nexus S 4G, Xoom, Galaxy Nexus, and Nexus 7,
 the bootloader is locked by default. With the device in fastboot mode, the
 bootloader is unlocked with
 
@@ -87,7 +99,8 @@
 The procedure must be confirmed on-screen, and deletes the user data for
 privacy reasons. It only needs to be run once.
 
-Note that on the Nexus S, Nexus S 4G, Motorola Xoom and on Galaxy Nexus,
+Note that on the Nexus S, Nexus S 4G, Motorola Xoom, Galaxy Nexus,
+and on Nexus 7,
 all data on the phone is erased, i.e. both the applications' private data
 and the shared data that is accessible over USB, including photos and
 movies. Be sure to make a backup of any precious files you have before
@@ -95,7 +108,7 @@
 
 On Nexus One, the operation voids the warranty and is irreversible.
 
-On Nexus S, Nexus S 4G, Xoom, and Galaxy Nexus,
+On Nexus S, Nexus S 4G, Xoom, Galaxy Nexus, and Nexus 7,
 the bootloader can be locked back with
 
     $ fastboot oem lock
@@ -104,20 +117,20 @@
 
 ## Obtaining proprietary binaries ##
 
-Starting with IceCreamSandwich, the Android Open-Source Project can't be used
+Starting with Ice Cream Sandwich, the Android Open-Source Project can't be used
 from pure source code only, and requires additional hardware-related proprietary
 libraries to run, specifically for hardware graphics acceleration.
 
-Official binaries for Nexus S, Nexus S 4G, Galaxy Nexus, and PandaBoard can be
-downloaded from
+Official binaries for Nexus S, Nexus S 4G, Galaxy Nexus, Nexus 7, and PandaBoard
+can be downloaded from
 [Google's Nexus driver page](https://developers.google.com/android/nexus/drivers),
 which add access to additional hardware capabilities with non-Open-Source code.
 
-When a device is suppoted in the master branch, the binaries for the most
+When using the master branch for a device, the binaries for the most
 recent numbered release are the ones that should be used in the master
 branch.
 
-There are no official binaries for Nexus One, ADP2 or ADP1.
+There are limited binaries for Nexus One, and none for ADP2 or ADP1.
 
 ### Extracting the proprietary binaries ###
 
@@ -145,10 +158,13 @@
 
 Device   | Branch                       | Build configuration
 ---------|------------------------------|------------------------
-maguro   | android-4.0.4_r2.1 or master | full_maguro-userdebug
+grouper  | android-4.1.1_r4 or master   | full_grouper-userdebug
+maguro   | android-4.1.1_r4 or master   | full_maguro-userdebug
+toro     | android-4.1.1_r4 or master   | full_toro-userdebug
 panda    | master                       | full_panda-userdebug
-wingray  | android-4.0.4_r2.1 or master | full_wingray-userdebug
-crespo   | android-4.0.4_r2.1 or master | full_crespo-userdebug
+wingray  | android-4.1.1_r4 or master   | full_wingray-userdebug
+crespo   | android-4.1.1_r4 or master   | full_crespo-userdebug
+crespo4g | android-4.1.1_r4 or master   | full_crespo4g-userdebug
 passion  | android-2.3.7_r1             | full_passion-userdebug
 sapphire | android-2.2.3_r1             | full_sapphire-userdebug
 dream    | android-2.2.3_r1             | full_dream-userdebug
@@ -157,21 +173,11 @@
 
 Set the device in fastboot mode if necessary (see above).
 
-Because user data is typically incompatible between builds of Android,
-it's typically better to delete it when flashing a new system.
-
-    $ fastboot erase cache
-    $ fastboot erase userdata
-
 An entire Android system can be flashed in a single command: this writes
 the boot, recovery and system partitions together after verifying that the
 system being flashed is compatible with the installed bootloader and radio,
-and reboots the system.
-
-    $ fastboot flashall
-
-On all devices except passion,
-the commands above can be replaced with a single command
+and reboots the system. This also erases all the user data, similarly to
+`fastboot oem unlock` mentioned earlier.
 
     $ fastboot -w flashall
 
@@ -183,92 +189,13 @@
 Once in recovery, open the menu (press Power + Volume Up), wipe the cache
 partition, then wipe data.
 
-### Nexus S, Nexus S 4G and Galaxy Nexus Bootloader and Cell Radio compatibility ###
-
-On Nexus S, Nexus S 4G and Galaxy Nexus, each version of Android has only
-been thoroughly tested with on specific version of the underlying bootloader
-and cell radio software.
-However, no compatibility issues are expected when running newer systems
-with older bootloaders and radio images according to the following tables.
-
-Nexus S (worldwide version "XX", i9020t and i9023):
-
-Android Version | Preferred Bootloader | Preferred Radio | Also possible
-----------------|----------------------|-----------------|--------------
-2.3 (GRH55)     | I9020XXJK1           | I9020XXJK8
-2.3.1 (GRH78)   | I9020XXJK1           | I9020XXJK8
-2.3.2 (GRH78C)  | I9020XXJK1           | I9020XXJK8
-2.3.3 (GRI40)   | I9020XXKA3           | I9020XXKB1      | All previous versions
-2.3.4 (GRJ22)   | I9020XXKA3           | I9020XXKD1      | All previous versions
-2.3.5 (GRJ90)   | I9020XXKA3           | I9020XXKF1      | All previous versions
-2.3.6 (GRK39F)  | I9020XXKA3           | I9020XXKF1      | All previous versions
-4.0.3 (IML74K)  | I9020XXKL1           | I9020XXKI1      | All previous versions
-4.0.4 (IMM76D)  | I9020XXKL1           | I9020XXKI1
-4.0.4 (IMM76I)  | I9020XXKL1           | I9020XXKI1
-4.0.4 (IMM76K)  | I9020XXKL1           | I9020XXKI1
-4.0.4 (IMM76L)  | I9020XXKL1           | I9020XXKI1
-
-Nexus S (850MHz version "UC", i9020a):
-
-Android Version | Preferred Bootloader | Preferred Radio | Also possible
-----------------|----------------------|-----------------|--------------
-2.3.3 (GRI54)   | I9020XXKA3           | I9020UCKB2
-2.3.4 (GRJ22)   | I9020XXKA3           | I9020UCKD1      | All previous versions
-2.3.5 (GRJ90)   | I9020XXKA3           | I9020UCKF1      | All previous versions
-2.3.6 (GRK39C)  | I9020XXKA3           | I9020UCKF1      | All previous versions
-2.3.6 (GRK39F)  | I9020XXKA3           | I9020UCKF1      | All previous versions
-4.0.3 (IML74K)  | I9020XXKL1           | I9020UCKF1      | All previous versions
-4.0.4 (IMM76D)  | I9020XXKL1           | I9020UCKJ1
-4.0.4 (IMM76I)  | I9020XXKL1           | I9020UCKJ1
-4.0.4 (IMM76K)  | I9020XXKL1           | I9020UCKJ1
-4.0.4 (IMM76L)  | I9020XXKL1           | I9020UCKJ1
-
-Nexus S (Korea version "KR", m200):
-
-Android Version | Preferred Bootloader | Preferred Radio | Also possible
-----------------|----------------------|-----------------|--------------
-2.3.3 (GRI54)   | I9020XXKA3           | I9020KRKB3
-2.3.4 (GRJ22)   | I9020XXKA3           | M200KRKC1       | All previous versions
-2.3.5 (GRJ90)   | I9020XXKA3           | M200KRKC1       | All previous versions
-2.3.6 (GRK39F)  | I9020XXKA3           | M200KRKC1       | All previous versions
-4.0.3 (IML74K)  | I9020XXKL1           | M200KRKC1       | All previous versions
-4.0.4 (IMM76D)  | I9020XXKL1           | M200KRKC1
-4.0.4 (IMM76I)  | I9020XXKL1           | M200KRKC1
-4.0.4 (IMM76K)  | I9020XXKL1           | M200KRKC1
-4.0.4 (IMM76L)  | I9020XXKL1           | M200KRKC1
-
-Nexus S 4G (CDMA/WiMAX version, d720):
-
-Android Version | Preferred Bootloader | Preferred Radio | Also possible
-----------------|----------------------|-----------------|--------------
-4.0.4 (IMM76L)  | D720SPRKE1           | D720SPRLC1
-
-Galaxy Nexus (GSM/HSPA+):
-
-Android Version | Preferred Bootloader | Preferred Radio | Also possible
-----------------|----------------------|-----------------|--------------
-4.0.1 (ITL41D)  | PRIMEKJ10            | I9250XXKK1
-4.0.2 (ICL53F)  | PRIMEKK15            | I9250XXKK6      | All previous versions
-4.0.3 (IML74K)  | PRIMEKL01            | I9250XXKK6      | All previous versions
-4.0.4 (IMM76D)  | PRIMELA03            | I9250XXLA02
-4.0.4 (IMM76I)  | PRIMELA03            | I9250XXLA02
-4.0.4 (IMM76K)  | PRIMELA03            | I9250XXLA02
-4.0.4 (IMM76L)  | PRIMELA03            | I9250XXLA02
-
-If you're building a new version of Android, if your Nexus S, Nexus S 4G or
-Galaxy Nexus has
-an older bootloader and radio image that is marked as being also possible in
-the table above but is not recognized by fastboot, you can locally
-delete the `version-bootloader` and `version-baseband` lines in
-`device/samsung/crespo/board-info.txt` or
-`device/samsung/maguro/board-info.txt`
-
 ## Restoring a device to its original factory state ##
 
 Factory images
-for Galaxy Nexus (GSM/HSPA+ "yakju" and "takju", and CDMA/LTE "mysid")
+for Nexus 7,
+for Galaxy Nexus (GSM/HSPA+ "yakju" and "takju", and CDMA/LTE "mysid"),
 and
-for Nexus S (all variants)
+for Nexus S and Nexus S 4G (all variants)
 are available from
 [Google's factory image page](https://developers.google.com/android/nexus/images).
 
diff --git a/src/source/building-kernels.md b/src/source/building-kernels.md
index 144a2f4..5c3709d 100644
--- a/src/source/building-kernels.md
+++ b/src/source/building-kernels.md
@@ -60,8 +60,8 @@
 can be used as a starting point for work on TI OMAP chipsets.
   - The `samsung` project is used for Nexus S and can be used as a
 starting point for work on Samsung Hummingbird chipsets.
-  - The `tegra` project is for Xoom, and can be used as a starting
-point for work on NVIDIA Tegra chipsets.
+  - The `tegra` project is for Xoom and Nexus 7, and can be used as
+a starting point for work on NVIDIA Tegra chipsets.
   - The `exynos` project can be used as a starting point for work
 on Samsung Exynos chipsets.
 
diff --git a/src/source/building.md b/src/source/building.md
index a9837e2..b463171 100644
--- a/src/source/building.md
+++ b/src/source/building.md
@@ -42,7 +42,7 @@
 If run with no arguments `lunch` will prompt you to choose a target from the menu. 
 
 All build targets take the form BUILD-BUILDTYPE, where the BUILD is a codename
-referring to the particular feature combination:
+referring to the particular feature combination. Here's a partial list:
 
 Build name  | Device   | Notes
 ------------|----------|---------------------------
diff --git a/src/source/downloading.md b/src/source/downloading.md
index 7fabab5..72dffee 100644
--- a/src/source/downloading.md
+++ b/src/source/downloading.md
@@ -119,13 +119,15 @@
 
 ## Using a local mirror ##
 
-When using many clients, especially in situations where bandwidth is scarce,
+When using several clients, especially in situations where bandwidth is scarce,
 it is better to create a local mirror of the entire server content, and to
-sync clients from that mirror (which requires no network access).
+sync clients from that mirror (which requires no network access). The download
+for a full mirror is smaller than the download of two clients, while containing
+more information.
 
 These instructions assume that the mirror is created in `/usr/local/aosp/mirror`.
 The first step is to create and sync the mirror itself, which uses close to
-10GB of network bandwidth and a similar amount of disk space. Notice the
+13GB of network bandwidth and a similar amount of disk space. Notice the
 `--mirror` flag, which can only be specified when creating a new client:
 
     $ mkdir -p /usr/local/aosp/mirror
diff --git a/src/source/initializing.md b/src/source/initializing.md
index 2967158..5b6bcb4 100644
--- a/src/source/initializing.md
+++ b/src/source/initializing.md
@@ -18,9 +18,9 @@
 
 The "Getting Started" section describes how to set up your local work environment, how to use Repo to get the Android files, and how to build the files on your machine.  To build the Android source files, you will need to use Linux or Mac OS. Building under Windows is not currently supported.
 
-*Note: The source download is approximately 6GB in size.
-You will need 25GB free to complete a single build, and
-up to 90GB (or more) for a full set of builds.*
+*Note: The source download is approximately 8.5GB in size.
+You will need over 30GB free to complete a single build, and
+up to 100GB (or more) for a full set of builds.*
 
 For an overview of the entire code-review and code-update process, see [Life of a Patch](life-of-a-patch.html).
 
@@ -54,7 +54,7 @@
 least 16GB of RAM/swap and 30GB or more of disk space in order to
 build the Android tree.*
 
-In general you will need:
+Detailed instructions for Ubuntu and MacOS follow. In general you will need:
 
  - Python 2.5 -- 2.7, which you can download from [python.org](http://www.python.org/download/).
 
@@ -64,8 +64,6 @@
 
  - Git 1.7 or newer. You can find it at [git-scm.com](http://git-scm.com/download).
 
-Detailed instructions for Ubuntu 10.04+ follow.
-
 ## Installing the JDK ##
 
 The Sun JDK is no longer in Ubuntu's main package repository.  In order to download it, you need to add the appropriate repository and indicate to the system which JDK should be used.
@@ -154,6 +152,10 @@
     SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d00f", MODE="0600", OWNER="<username>"
     # usbboot protocol on panda (PandaBoard ES)
     SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d010", MODE="0600", OWNER="<username>"
+    # adb protocol on grouper (Nexus 7)
+    SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e42", MODE="0600", OWNER="<username>"
+    # fastboot protocol on grouper (Nexus 7)
+    SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e40", MODE="0600", OWNER="<username>"
 
 Those new rules take effect the next time a device is plugged in.
 It might therefore be necessary to unplug the device and plug it
@@ -220,8 +222,8 @@
 as those would end up sharing an output directory, with
 unpredictable results.
 
-This is only supported on branches newer than 4.0.x
-(IceCreamSandwich).
+This is only supported on Jelly Bean (4.1) and newer,
+including the master branch.
 
 # Setting up a Mac OS X build environment #