diff --git a/src/compatibility/4.1/android-4.1-cdd.pdf b/src/compatibility/4.1/android-4.1-cdd.pdf
new file mode 100644
index 0000000..dab2857
--- /dev/null
+++ b/src/compatibility/4.1/android-4.1-cdd.pdf
Binary files differ
diff --git a/src/compatibility/4.1/versions.md b/src/compatibility/4.1/versions.md
new file mode 100644
index 0000000..26ae803
--- /dev/null
+++ b/src/compatibility/4.1/versions.md
@@ -0,0 +1,34 @@
+<!--
+   Copyright 2010 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.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+# Permitted Version Strings for Android 4.1 #
+
+As described in Section 3.2.2 of the [Android 4.1 Compatibility Definition](/cdds/android-4.1-cdd.pdf), 
+only certain strings are allowable for the system property
+`android.os.Build.VERSION.RELEASE`. The reason for this is that
+applications and web sites may rely on predictable values for this string, and
+so that end users can easily and reliably identify the version of Android
+running on their devices.
+
+Because subsequent releases of the Android software may revise this string,
+but not change any API behavior, such releases may not be accompanied by a new
+Compatibility Definition Document. This page lists the versions that are
+allowable by an Android 4.0-based system. The only permitted values for
+`android.os.Build.VERSION.RELEASE` for Android 4.1 are:
+
+- 4.1
+
+- 4.1.1
diff --git a/src/compatibility/android-4.1-cdd.pdf b/src/compatibility/android-4.1-cdd.pdf
new file mode 100644
index 0000000..dab2857
--- /dev/null
+++ b/src/compatibility/android-4.1-cdd.pdf
Binary files differ
diff --git a/src/compatibility/android-cts-manual-r4.pdf b/src/compatibility/android-cts-manual-r4.pdf
deleted file mode 100644
index a5861ac..0000000
--- a/src/compatibility/android-cts-manual-r4.pdf
+++ /dev/null
Binary files differ
diff --git a/src/compatibility/android-cts-manual-r5.pdf b/src/compatibility/android-cts-manual-r5.pdf
new file mode 100644
index 0000000..5f911dc
--- /dev/null
+++ b/src/compatibility/android-cts-manual-r5.pdf
Binary files differ
diff --git a/src/compatibility/downloads.md b/src/compatibility/downloads.md
index fb7c7a8..faf9310 100644
--- a/src/compatibility/downloads.md
+++ b/src/compatibility/downloads.md
@@ -19,6 +19,17 @@
 Thanks for your interest in Android Compatibility! The links below allow
 you to access the key documents and information.
 
+## Android 4.1 ##
+
+Android 4.1.1 is the release of the development milestone code-named
+Ice Cream Sandwich. Android 4.1.1 is the current version of Android. Source code for
+Android 4.1.1 is found in the 'android-4.1.1_r1' branch in the open-source tree.
+
+- [Android 4.1 Compatibility Definition Document (CDD)](4.1/android-4.1-cdd.pdf)
+- [Android 4.1 R3 Compatibility Test Suite (CTS)](https://dl.google.com/dl/android/cts/android-cts-4.1_r1-linux_x86-arm.zip)
+- [Android 4.1 R2 CTS Verifier](https://dl.google.com/dl/android/cts/android-cts-verifier-4.1_r1-linux_x86-arm.zip)
+
+
 ## Android 4.0.3 ##
 
 Android 4.0.3 is the release of the development milestone code-named
diff --git a/src/compatibility/overview.md b/src/compatibility/overview.md
index bd3be2d..627334c 100644
--- a/src/compatibility/overview.md
+++ b/src/compatibility/overview.md
@@ -102,7 +102,7 @@
 If you want to build a device compatible with a given Android version,
 start by checking out the source code for that version, and then read the
 corresponding CDD and stay within its guidelines. For additional details,
-simply examine [the latest CDD](4.0/android-4.0-cdd.pdf).
+simply examine [the latest CDD](4.1/android-4.1-cdd.pdf).
 
 # Compatibility Test Suite (CTS) #
 
diff --git a/src/source/building-devices.md b/src/source/building-devices.md
index 1de1e61..7615857 100644
--- a/src/source/building-devices.md
+++ b/src/source/building-devices.md
@@ -20,7 +20,7 @@
 information that is specific to individual devices.
 
 The supported devices with the current release are the Galaxy Nexus, Motorola
-Xoom, and Nexus S.
+Xoom, Nexus S and Nexus S 4G.
 
 Galaxy Nexus is supported only in GSM/HSPA+ configuration "maguro" and only
 if it was originally sold with a "yakju" or "takju" operating system.
@@ -28,7 +28,7 @@
 The Motorola Xoom is supported in the Wi-fi configuration "wingray"
 sold in the USA.
 
-Nexus S is supported in the GSM configuration "crespo".
+Nexus S is supported in all configurations. Nexus S 4G is supported.
 
 In addition, [PandaBoard](http://pandaboard.org) a.k.a. "panda" is supported
 in the master branch only, but is currently considered experimental.
@@ -78,7 +78,7 @@
 
 This is the default setup on ADP1 and ADP2.
 
-On Nexus One, Nexus S, Xoom, and Galaxy Nexus,
+On Nexus One, Nexus S, Nexus S 4G, Xoom, and Galaxy Nexus,
 the bootloader is locked by default. With the device in fastboot mode, the
 bootloader is unlocked with
 
@@ -87,7 +87,7 @@
 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, Motorola Xoom and on Galaxy Nexus,
+Note that on the Nexus S, Nexus S 4G, Motorola Xoom and on Galaxy Nexus,
 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 +95,7 @@
 
 On Nexus One, the operation voids the warranty and is irreversible.
 
-On Nexus S, Xoom, and Galaxy Nexus,
+On Nexus S, Nexus S 4G, Xoom, and Galaxy Nexus,
 the bootloader can be locked back with
 
     $ fastboot oem lock
@@ -108,7 +108,7 @@
 from pure source code only, and requires additional hardware-related proprietary
 libraries to run, specifically for hardware graphics acceleration.
 
-Official binaries for Nexus S, Galaxy Nexus, and PandaBoard can be
+Official binaries for Nexus S, Nexus S 4G, Galaxy Nexus, 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.
@@ -183,9 +183,9 @@
 Once in recovery, open the menu (press Power + Volume Up), wipe the cache
 partition, then wipe data.
 
-### Nexus S and Galaxy Nexus Bootloader and Cell Radio compatibility ###
+### Nexus S, Nexus S 4G and Galaxy Nexus Bootloader and Cell Radio compatibility ###
 
-On Nexus S, and Galaxy Nexus, each version of Android has only
+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
@@ -237,6 +237,12 @@
 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
@@ -249,7 +255,7 @@
 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 or
+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
