diff --git a/buildspec.mk.default b/buildspec.mk.default
index 06db499..6303efc 100644
--- a/buildspec.mk.default
+++ b/buildspec.mk.default
@@ -68,6 +68,9 @@
 # will be added to LOCAL_CFLAGS when building the module.
 #DEBUG_MODULE_ModuleName:=true
 
+# Specify an alternative tool chain prefix if needed.
+#TARGET_TOOLS_PREFIX:=
+
 # Specify the extra CFLAGS to use when building a module whose
 # DEBUG_MODULE_ variable is set.  Host and device flags are handled
 # separately.
diff --git a/core/combo/linux-sh.mk b/core/combo/linux-sh.mk
new file mode 100644
index 0000000..79cf49d
--- /dev/null
+++ b/core/combo/linux-sh.mk
@@ -0,0 +1,148 @@
+# Configuration for Linux on SuperH.
+# Included by combo/select.make
+
+# You can set TARGET_TOOLS_PREFIX to get gcc from somewhere else
+ifeq ($(strip $($(combo_target)TOOLS_PREFIX)),)
+$(combo_target)TOOLS_PREFIX := \
+	prebuilt/$(HOST_PREBUILT_TAG)/toolchain/sh-4.3.3/bin/sh-linux-gnu-
+endif
+
+$(combo_target)CC := $($(combo_target)TOOLS_PREFIX)gcc$(HOST_EXECUTABLE_SUFFIX)
+$(combo_target)CXX := $($(combo_target)TOOLS_PREFIX)c++$(HOST_EXECUTABLE_SUFFIX)
+$(combo_target)AR := $($(combo_target)TOOLS_PREFIX)ar$(HOST_EXECUTABLE_SUFFIX)
+$(combo_target)OBJCOPY := $($(combo_target)TOOLS_PREFIX)objcopy$(HOST_EXECUTABLE_SUFFIX)
+$(combo_target)LD := $($(combo_target)TOOLS_PREFIX)ld$(HOST_EXECUTABLE_SUFFIX)
+
+$(combo_target)NO_UNDEFINED_LDFLAGS := -Wl,--no-undefined
+
+TARGET_sh_release_CFLAGS :=     -O2 \
+                                -fomit-frame-pointer \
+                                -fstrict-aliasing    \
+                                -funswitch-loops     \
+                                -finline-limit=300
+
+# When building for debug, compile everything as superh.
+TARGET_sh_debug_CFLAGS := $(TARGET_sh_release_CFLAGS) -fno-omit-frame-pointer -fno-strict-aliasing
+
+$(combo_target)GLOBAL_CFLAGS += \
+			-fpic \
+			-ffunction-sections \
+			-funwind-tables \
+			-fstack-protector \
+			-include $(call select-android-config-h,linux-sh)
+
+$(combo_target)GLOBAL_CPPFLAGS += \
+			-fno-use-cxa-atexit \
+			-fvisibility-inlines-hidden
+
+$(combo_target)RELEASE_CFLAGS := \
+			-DSK_RELEASE -DNDEBUG \
+			-O2 -g \
+			-Wstrict-aliasing=2 \
+			-finline-functions \
+			-fno-inline-functions-called-once \
+			-fgcse-after-reload \
+			-frerun-cse-after-loop \
+			-frename-registers \
+			-fno-builtin
+
+libc_root := bionic/libc
+libm_root := bionic/libm
+libstdc++_root := bionic/libstdc++
+libthread_db_root := bionic/libthread_db
+
+
+## on some hosts, the target cross-compiler is not available so do not run this command
+ifneq ($(wildcard $($(combo_target)CC)),)
+# We compile with the global cflags to ensure that
+# any flags which affect libgcc are correctly taken
+# into account.
+LIBGCC_FILENAME := $(shell $($(combo_target)CC) $($(combo_target)GLOBAL_CFLAGS) -print-libgcc-file-name)
+LIBGCC_EH_FILENAME := $(subst libgcc,libgcc_eh,$(LIBGCC_FILENAME))
+$(combo_target)LIBGCC := $(LIBGCC_EH_FILENAME) $(LIBGCC_FILENAME)
+endif
+
+# unless CUSTOM_KERNEL_HEADERS is defined, we're going to use
+# symlinks located in out/ to point to the appropriate kernel
+# headers. see 'config/kernel_headers.make' for more details
+#
+ifneq ($(CUSTOM_KERNEL_HEADERS),)
+    KERNEL_HEADERS_COMMON := $(CUSTOM_KERNEL_HEADERS)
+    KERNEL_HEADERS_ARCH   := $(CUSTOM_KERNEL_HEADERS)
+else
+    KERNEL_HEADERS_COMMON := $(libc_root)/kernel/common
+    KERNEL_HEADERS_ARCH   := $(libc_root)/kernel/arch-$(TARGET_ARCH)
+endif
+KERNEL_HEADERS := $(KERNEL_HEADERS_COMMON) $(KERNEL_HEADERS_ARCH)
+
+$(combo_target)C_INCLUDES := \
+	$(libc_root)/arch-sh/include \
+	$(libc_root)/include \
+	$(libstdc++_root)/include \
+	$(KERNEL_HEADERS) \
+	$(libm_root)/include \
+	$(libm_root)/include/arch/sh \
+	$(libthread_db_root)/include
+
+TARGET_CRTBEGIN_STATIC_O := $(TARGET_OUT_STATIC_LIBRARIES)/crtbegin_static.o
+TARGET_CRTBEGIN_DYNAMIC_O := $(TARGET_OUT_STATIC_LIBRARIES)/crtbegin_dynamic.o
+TARGET_CRTEND_O := $(TARGET_OUT_STATIC_LIBRARIES)/crtend_android.o
+TARGET_SOBEGIN := $(TARGET_OUT_STATIC_LIBRARIES)/sobegin.o
+TARGET_SOEND := $(TARGET_OUT_STATIC_LIBRARIES)/soend.o
+
+TARGET_STRIP_MODULE:=false
+
+$(combo_target)DEFAULT_SYSTEM_SHARED_LIBRARIES := libc libstdc++ libm
+
+$(combo_target)CUSTOM_LD_COMMAND := true
+define transform-o-to-shared-lib-inner
+$(TARGET_CXX) \
+	-nostdlib -Wl,-soname,$(notdir $@) -Wl,-T,$(BUILD_SYSTEM)/shlelf.xsc \
+	-Wl,--gc-sections -Wl,-z,norelro \
+	-Wl,-shared,-Bsymbolic \
+	$(TARGET_GLOBAL_LD_DIRS) \
+	$(TARGET_SOBEGIN) \
+	$(PRIVATE_ALL_OBJECTS) \
+	-Wl,--whole-archive \
+	$(call normalize-host-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
+	-Wl,--no-whole-archive \
+	$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
+	$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
+	-o $@ \
+	$(PRIVATE_LDFLAGS) \
+	$(subst -lrt,, $(subst -lpthread,,$(PRIVATE_LDLIBS))) \
+	$(TARGET_LIBGCC) \
+	$(TARGET_SOEND)
+endef
+
+define transform-o-to-executable-inner
+$(TARGET_CXX) -nostdlib -Bdynamic  -Wl,-T,$(BUILD_SYSTEM)/shlelf.x \
+	-Wl,-dynamic-linker,/system/bin/linker \
+	-Wl,--gc-sections -Wl,-z,norelro \
+	-Wl,-z,nocopyreloc \
+	-o $@ \
+	$(TARGET_GLOBAL_LD_DIRS) \
+	-Wl,-rpath-link=$(TARGET_OUT_INTERMEDIATE_LIBRARIES) \
+	$(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
+	$(TARGET_CRTBEGIN_DYNAMIC_O) \
+	$(PRIVATE_ALL_OBJECTS) \
+	$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
+	$(PRIVATE_LDFLAGS) \
+	$(TARGET_LIBGCC) \
+	$(subst -lrt,, $(subst -lpthread,,$(PRIVATE_LDLIBS))) \
+	$(TARGET_CRTEND_O)
+endef
+
+define transform-o-to-static-executable-inner
+$(TARGET_CXX) -nostdlib -Bstatic  -Wl,-T,$(BUILD_SYSTEM)/shlelf.x \
+	-Wl,--gc-sections -Wl,-z,norelro \
+	-o $@ \
+	$(TARGET_GLOBAL_LD_DIRS) \
+	$(TARGET_CRTBEGIN_STATIC_O) \
+	$(PRIVATE_LDFLAGS) \
+	$(PRIVATE_ALL_OBJECTS) \
+	$(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
+	$(TARGET_LIBGCC) \
+	$(subst -lrt,, $(subst -lpthread,,$(PRIVATE_LDLIBS))) \
+	$(TARGET_CRTEND_O)
+endef
diff --git a/core/prelink-linux-arm.map b/core/prelink-linux-arm.map
index 30fa378..64149bc 100644
--- a/core/prelink-linux-arm.map
+++ b/core/prelink-linux-arm.map
@@ -74,6 +74,7 @@
 
 
 # audio
+libFLAC.so              0xAB8A0000
 libaudiopolicy.so       0xAB880000
 libaudiopolicygeneric.so 0xAB800000
 libsoundpool.so         0xAB780000
diff --git a/tools/droiddoc/templates-sdk/sdkpage.cs b/tools/droiddoc/templates-sdk/sdkpage.cs
index 1ebfb69..604b5ee 100644
--- a/tools/droiddoc/templates-sdk/sdkpage.cs
+++ b/tools/droiddoc/templates-sdk/sdkpage.cs
@@ -151,10 +151,6 @@
     </a>
   </div>
 
-  <p>If you are new to the Android SDK, please read the <a href="#quickstart">Quick Start</a>,
-  below, for an overview of how to install and set up the SDK.</p>
-  
-  
   <table class="download">
     <tr>
       <th>Platform</th>
@@ -204,17 +200,14 @@
 
 <?cs if:android.whichdoc != "online" && sdk.preview ?>
   <p>Welcome developers! The next release of the Android platform will be
-Android <?cs var:sdk.preview.version ?> and we are pleased to announce the
-availability of an early look SDK to give you a head-start on developing
-applications for it. </p>
+  Android 1.6 and we are pleased to announce the availability of an early look SDK
+  to give you a head-start on developing applications for it. </p>
 
-  <p>The Android <?cs var:sdk.preview.version ?> platform includes a variety of
-improvements and new features for users and developers. Additionally, the SDK
-itself introduces several new capabilities that enable you to develop
-applications more efficiently. See the <a
-href="http://developer.android.com/sdk/preview/features.html">Android 
-<?cs var:sdk.preview.version ?> Highlights</a> document for a list of
-highlights.</p>
+  <p>The Android 1.6 platform includes a variety of improvements and new features
+  for users and developers. Additionally, the SDK itself introduces several new
+  capabilities that enable you to develop applications more efficiently.
+  See the <a href="http://developer.android.com/sdk/preview/features.html">
+  Android 1.6 Highlights</a> document for a list of highlights.</p>
 <?cs /if ?>
 
       <?cs call:tag_list(root.descr) ?>
diff --git a/tools/droiddoc/templates/assets/android-developer-docs.css b/tools/droiddoc/templates/assets/android-developer-docs.css
index 0b57624..0ab7aab 100644
--- a/tools/droiddoc/templates/assets/android-developer-docs.css
+++ b/tools/droiddoc/templates/assets/android-developer-docs.css
@@ -1273,10 +1273,4 @@
   table, img {
     page-break-inside: avoid;
   }
-
-/*  #qv,
-  #qv-wrapper {
-    display:none;
-  }
-*/
 }
diff --git a/tools/droiddoc/templates/assets/carousel.js b/tools/droiddoc/templates/assets/carousel.js
index 57eaff7..9512f8f 100644
--- a/tools/droiddoc/templates/assets/carousel.js
+++ b/tools/droiddoc/templates/assets/carousel.js
@@ -83,7 +83,7 @@
     
     
     /* add the bulletins */
-	  var layout = droid.layout;
+    var layout = droid.layout;
     var div = document.createElement("div");
     var imgDiv = document.createElement("div");
     var descDiv = document.createElement("div");
@@ -112,9 +112,6 @@
     $("#carouselMain").append(div);
     
   }
-
-		
-  
 }
 
 // -- * slider * -- //
diff --git a/tools/droiddoc/templates/customization.cs b/tools/droiddoc/templates/customization.cs
index 1988a89..f6a5c1a 100644
--- a/tools/droiddoc/templates/customization.cs
+++ b/tools/droiddoc/templates/customization.cs
@@ -27,4 +27,5 @@
 <?cs def:custom_buildinfo() ?>Build <?cs var:page.build ?> - <?cs var:page.now ?><?cs /def ?>
 
 <?cs # appears on the side of the page ?>
-<?cs def:custom_left_nav() ?><?cs call:default_left_nav() ?><?cs /def ?>
\ No newline at end of file
+<?cs def:custom_left_nav() ?><?cs call:default_left_nav() ?><?cs /def ?>
+
diff --git a/tools/kcm/kcm.cpp b/tools/kcm/kcm.cpp
index 3e6320b..23ac377 100644
--- a/tools/kcm/kcm.cpp
+++ b/tools/kcm/kcm.cpp
@@ -198,7 +198,7 @@
         return 1;
     }
 
-    int out = open(outfilename, O_RDWR|O_CREAT|O_TRUNC, 0660);
+    int out = open(outfilename, O_RDWR|O_CREAT|O_TRUNC, 0664);
     if (out == -1) {
         fprintf(stderr, "kcm: error opening file for write: %s\n", outfilename);
         return 1;
