First start calculating the CRC in hardware when receiving a frame.
Then, other than the at86rf2xx transceivers the cc2420 don't consider the
CRC_OK flag when reporting a successful packet reception. This change
introduces a check for this bit and drops the packet else by flushing
the RX FIFO.
When redoing the SPI driver for the msp430 platforms an assert
statement was introduced to prohibit SPI access without any
buffers. Since in the existing code the FIFO pointer is incremented
through a dummy read this results in triggering aforementioned
assert.
Instead of using differing integer types use kernel_pid_t for process
identifier. This type is introduced in a new header file to avoid
circular dependencies.
Currently the cc2420 and at86rf231 hardware addresses (IEEE 802.15.4
short and long) and frequency channel are read only from a global
variable in the driver. This global variable is only set when the
user sets the address/channel though both parameters might be preset
by the hardware. This change lets the driver read this parameters
directly from the hardware.