[riot-devel] kinetis common - differences between families

Jozef Maslik maslo at binarylemon.com
Fri Mar 13 19:47:25 CET 2015


How we want deal with the difference between variants of peripherals in Freescale Kinetis families (I mean, what is RIOT OS prefered way)? Here is difference between families - for example between K family vs L family. And if I remember correctly ;), there can be difference between specific chips in same family, too.

For example SPI, kinetis_common contain driver spi.c but module on K60 is different compare to KL02 or KL10, etc.
Here can be few options (minimal three ;)):
1. rename spi.c to real module name, at this situation it can be “DSPI” for K family and “SPI” for L family.
- exact name for K60 SPI module is “DSPI", then rename spi.c to dspi.c solve this major issue
- module name for SPI on L family is simply “SPI”
- I prefer this solution…

2. conditional compilation for different MCUs (one spi.c file)
- this will be mess in code, because modules are too much different
- I do not like this solution

3. another “common” directory - for each family
- this can produce code duplication


More information about the devel mailing list