diff --git a/include/assert.h b/include/assert.h
index 332dfdb..ecdfaca 100644
--- a/include/assert.h
+++ b/include/assert.h
@@ -28,6 +28,7 @@
 
 #define ASSERT(x) \
 	do { if (unlikely(!(x))) { panic("ASSERT FAILED at (%s:%d): %s\n", __FILE__, __LINE__, #x); } } while (0)
+#define assert(x) ASSERT(x)
 
 #if DEBUGLEVEL > 1
 #define DEBUG_ASSERT(x) \
diff --git a/include/errno.h b/include/errno.h
new file mode 100644
index 0000000..aa53c68
--- /dev/null
+++ b/include/errno.h
@@ -0,0 +1,33 @@
+/*
+ * Copyright (c) 2011, Code Aurora Forum. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in the
+ *       documentation and/or other materials provided with the distribution.
+ *     * Neither the name of Code Aurora nor
+ *       the names of its contributors may be used to endorse or promote
+ *       products derived from this software without specific prior written
+ *       permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NON-INFRINGEMENT ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+ * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+ * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#ifndef _ASM_GENERIC_ERRNO_H
+#define _ASM_GENERIC_ERRNO_H
+
+#endif
diff --git a/include/lib/heap.h b/include/lib/heap.h
index 54ea73b..0046e2f 100644
--- a/include/lib/heap.h
+++ b/include/lib/heap.h
@@ -26,6 +26,7 @@
 #include <sys/types.h>
 
 void *heap_alloc(size_t, unsigned int alignment);
+void *heap_realloc(void *ptr, size_t size);
 void heap_free(void *);
 
 void heap_init(void);
diff --git a/include/malloc.h b/include/malloc.h
index d48f6d2..dc34742 100644
--- a/include/malloc.h
+++ b/include/malloc.h
@@ -34,6 +34,7 @@
 void *memalign(size_t boundary, size_t size) __MALLOC;
 void *calloc(size_t count, size_t size) __MALLOC;
 void free(void *ptr);
+void *realloc(void *ptr, size_t size);
 
 #if defined(__cplusplus)
 }
