Add workaround for kernel crash in transmit mode

Older kernel versions crash when the transmit channel is enabled. Transmitting
still works fine when the channel is not enabled. So we just skip over enabling
the channel if we detect such a kernel version.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
local: Handle the case where less blocks than requested are allocated

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>