[riot-devel] kinetis common - differences between families

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


Hi,

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

Regards,
Jozef


More information about the devel mailing list