blackmagic/lib/efm32/tinygecko/devicerevision.c
chrysn 2180a02e2f first attempt at porting libopencm3 to energymicro
unless sources are explicitly given, the linker scripts and make files
were copied over from the stm32/f1 port.
2012-02-25 23:22:37 +01:00

11 lines
525 B
C

#include <libopencm3/efm32/tinygecko/devicerevision.h>
u8 devicerevision_revision_get(void)
{
/* probably this is more elegant, more readable and closer to the spec,
* and i'll just get used to doing things like that:
return (DEVICEREVISION_PID2 & 0xf0) | ((DEVICEREVISION_PID3 & 0xf0) >> 4);
*/
return ((DEVICEREVISION_PID2 & DEVICEREVISION_REVISION_MASK) >> DEVICEREVISION_REVISION_SHIFT << DEVICEREVISION_REVISION_LENGTH) | ((DEVICEREVISION_PID3 & DEVICEREVISION_REVISION_MASK) >> DEVICEREVISION_REVISION_SHIFT);
}