util: abort construction of zero-sized bit arrays
nic: log errors in base-linux nic_drv
usb_drv: Add hrtimer support (ref #758)
usb_drv: Add timeout support for events (ref #758)
usb_drv: Make EHCI-queue header non-cachable

Fixes #758
hw: fix bug in scheduler timing

By now the scheduling timer was only refreshed for a new scheduling timeout
when the choosen scheduling context has changed. But we want it to be refreshed
also when the scheduled context yields without an effect to the schedulers
choice (this is the case e.g. when the idle thread gets a scheduling timeout
or a thread yields without any competitor in its priority band).

ref #1151
hw: get a thread cap in Thread_base constructor

Previously this was not done before Thread_base::start(..) in
base-hw as it was not needed to have a valid cap that early. However,
when changing the affinity of a thread we need the cap to be valid
before Thread_base::start(..).

fix #1151
hw: define assembler constants in global scope

Don't define assembler constants inside macros, thereby calling the
corresponding macros isn't needed anymore. To prevent having to much
constants included in files where they aren't needed, split macros.s
file into a generic mode_transition.s part, and globally used macros.s.

Fix #1180
hw: let assembler constants be upper-case (Ref #1180)
blit: fix alignment errors on ARM

Depending on 'src_w' and 'dst_w', different lines of a block to copy may be
32-bit aligned or not, so the alignment of each line needs to get checked.

Fixes #1111.
base: introduce caching attributes (fix #1184)

On ARM it's relevant to not only distinguish between ordinary cached memory
and write-combined one, but also having non-cached memory too. To insert the
appropriated page table entries e.g.: in the base-hw kernel, we need to preserve
the information about the kind of memory from allocation until the pager
resolves a page fault. Therefore, this commit introduces a new Cache_attribute
type, and replaces the write_combined boolean with the new type where necessary.
fixup "base: introduce caching attributes (fix #1184)"
fixup "base: introduce caching attributes (fix #1184)"
fixup "base: introduce caching attributes (fix #1184)"
squash "base: introduce caching attributes" (NOT_CACHED -> UNCACHED)

This patch renames the enum value NOT_CACHED to UNCACHED. It is probably
a matter of taste. In conversations, we often say "uncached page" or
"uncached mapping" but never "not cached page" or "not cached mapping".
So "UNCACHED" seems more natural than "NOT_CACHED". Also, it is shorter.

@skalk Are you fine with the rename?
fixup: "base: introduce caching attributes (fix #1184)"