vcos: fix vcos logging on arm userland

Fix vcos logging on arm by removing the Android specific hack to
prevent registering logging categories.
mmal/omx: fix bug in channel mapping
mmal/graph: remove spurious error message

Do not log failures to send buffers when a port is disabled.
This is a completely valid use case when a port of the graph gets
disabled and this ends up uselessly flooding logs with error
messages which are in fact not errors.
mmal: allow non-tunnelled clock port connections

Clock connections now behave in a similar way to tunnelled clock
ports in that buffers received from one clock port are sent directly
to the other clock port without going through the connection queue.

This does mean, however, that a client won't be able to intercept
clock buffers and that a component shouldn't perform significant
processing in the clock port callback.

mmal-graph: add support for clock ports

Allow clock ports to be added to a graph component.

mmal: only send buffers to enabled clock ports

When using a non-tunnelled connection between clock ports, the buffer
header callback should only attempt to forward a buffer if the other
clock port in the connection is enabled.  This avoids errors being
logged when disabling a clock connection.
mmalplay: add cmd line option for routing video

Use -rv <n> to route the video output to a specific dispmanx
display.
Audio routing cmd line option is renamed to -ra for consistency.

mmalplay: add passthrough and no decoding mode

Added a couple of new command line options to allow enabling
audio passthrough as well as skipping the video decoding stage.
mmal-vc-diag: add memory compaction command

Add a command for triggering either an aggressive, normal,
or discard compaction in the relocatable heap.
mmal: don't use bulk transfers for clock buffers

Clock buffers only contain a small amount of data which can fit into the
vchiq control message, so use that instead of doing a bulk transfer.

mmal/vc: fix mem leak when using opaque buffers

When in opaque mode, we would leak the payloads if
the zero copy mode was not enabled.
Also fix an issue where if somehow the format of the port has
changed by the time buffers are being freed, we end up not
releasing them.