Previous to this patch the DMA was set-up and then the I2C address sent.
If the I2C address sending failed (eg no I2C device on the bus) then the
DMA was left in an inconsistent state.
This patch moves the DMA setup to after a successful sending of the I2C
address(es).
The definition of NULL is the only reason stdio.h is needed, and including
this standard header clashes with a CC3000 driver's definitions because
the latter wants to redefine built-in macros. The patch here is the
simplest way to deal with this but the proper fix is really to modify the
CC3000 driver.