rs232.c: check if TX FIFO is full before waiting to get empty.
fix a typo
semaphore.h: fix mutex_unlock
semaphore.h: add readers-writer lock
spinlock.h: rename INIT_SPINLOCK to spinlock_init
move readers-writer lock to rwlock.h
semaphore.h: move mutex_t within the file.
rwlock.h: rephrase some comments
spinlock.h: replace assembly code in spinlock_unlock with C code.
io.h: add compiler barrier
mm.c: remove a forgotten line
mmu.c: add dsb after every TLB invalidation

this ensures that invalidation completed.
mmu.c: disable SCTLR.AFE in mmu_init

this is needed for AP[2:0] access permissions model.
mmu.c,kmmap: check if the virtual address is PAGE_SIZE aligned.
sched: rename curr_task to current
Add omap4boot as a submodule
Load the kernel at 0x82000000 instead of 0x80000000.

U-Boot loads at 0x80000000 so the kernel must load in a different
address to avoid conflicts. I choose 0x82000000 because omap4boot
loads the kernel image there, so we don't need usbboot/usbboot.S
anymore. omap4boot can now load kernel.bin in the PandaBoard without
any problems.
rename `usbboot' to `boot'
Add u-boot-linaro-stable as submodule
panda_usbboot.sh: fix an if statement