diff --git a/include/private/opengles/gl_context.h b/include/private/opengles/gl_context.h
index 2aa78d8..3056139 100644
--- a/include/private/opengles/gl_context.h
+++ b/include/private/opengles/gl_context.h
@@ -22,7 +22,7 @@
 #include <sys/types.h>
 #include <pthread.h>
 #ifdef HAVE_ANDROID_OS
-#include <sys/tls.h>
+#include <bionic_tls.h>
 #endif
 
 #include <private/pixelflinger/ggl_context.h>
diff --git a/include/ui/EventHub.h b/include/ui/EventHub.h
index 101a920..017c145 100644
--- a/include/ui/EventHub.h
+++ b/include/ui/EventHub.h
@@ -50,8 +50,9 @@
     // bit fields for classes of devices.
     enum {
         CLASS_KEYBOARD      = 0x00000001,
-        CLASS_TOUCHSCREEN   = 0x00000002,
-        CLASS_TRACKBALL     = 0x00000004
+        CLASS_ALPHAKEY      = 0x00000002,
+        CLASS_TOUCHSCREEN   = 0x00000004,
+        CLASS_TRACKBALL     = 0x00000008
     };
     uint32_t getDeviceClasses(int32_t deviceId) const;
     
diff --git a/include/ui/Overlay.h b/include/ui/Overlay.h
index 23cdee8..9c7bc47 100644
--- a/include/ui/Overlay.h
+++ b/include/ui/Overlay.h
@@ -54,7 +54,7 @@
     virtual ~OverlayRef();
 
     overlay_handle_t const *mOverlayHandle;
-    sp<IOverlay> mOverlayChanel;
+    sp<IOverlay> mOverlayChannel;
     uint32_t mWidth;
     uint32_t mHeight;
     int32_t  mFormat;
@@ -77,10 +77,10 @@
     overlay_handle_t const* getHandleRef() const;
 
     /* blocks until an overlay buffer is available and return that buffer. */
-    overlay_buffer_t dequeueBuffer();
+    status_t dequeueBuffer(overlay_buffer_t* buffer);
 
     /* release the overlay buffer and post it */
-    int queueBuffer(overlay_buffer_t buffer);
+    status_t queueBuffer(overlay_buffer_t buffer);
 
     /* returns the address of a given buffer if supported, NULL otherwise. */
     void* getBufferAddress(overlay_buffer_t buffer);
diff --git a/include/ui/Surface.h b/include/ui/Surface.h
index 2e24f86..33953a9 100644
--- a/include/ui/Surface.h
+++ b/include/ui/Surface.h
@@ -92,6 +92,7 @@
     friend class MediaRecorder;
     // mediaplayer needs access to ISurface for display
     friend class MediaPlayer;
+    friend class Test;
     const sp<ISurface>& getISurface() const { return mSurface; }
 
     // can't be copied
diff --git a/include/ui/SurfaceComposerClient.h b/include/ui/SurfaceComposerClient.h
index 3b875be..5d9222d 100644
--- a/include/ui/SurfaceComposerClient.h
+++ b/include/ui/SurfaceComposerClient.h
@@ -72,7 +72,7 @@
     );
 
     // ------------------------------------------------------------------------
-    // Composer paramters
+    // Composer parameters
     // All composer parameters must be changed within a transaction
     // several surfaces can be updated in one transaction, all changes are
     // committed at once when the transaction is closed.
