Freescale HAL licencing + processor selection help

Isaac Gutekunst isaac.gutekunst at vecna.com
Fri Jun 12 16:25:46 UTC 2015


Dear RTEMS Community,

Background
----------

I'll give a little background before jumping into the my questions:

I am starting a robotics project utilizing RTEMS at Vecna. We are 
evaluating a number of Cortex M series processors for this platform.

Specifically we are looking at various Freescale Kinetis processors,
the Atmel SAMV70/71, the STM32 line, and the LPC lineup as well.


Our main objectives are selecting a processor family that has peripheral 
compatibility across a range of performance classes.

This is motivated by the desire to maintain as small a code base as 
possible.

In the ideal world, they would all be supported by the RTEMS driver 
architecture, making it easy to move between them, but getting to this 
ideal world may take time.


Questions
---------

All of this being said, I'll finally get around to my questions.



1) What is the correct way to integrate 3rd party code into the RTEMS 
tree? The Freescale Kinetis SDK seems appropriately licenced to be 
included. However, I imagine there are other concerns. The things that 
come to mind are:
	How can we fit these drivers into the RTEMS architecture? We don't want 
to introduce a new I2C abstraction. Does it make sense to use the 
Freescale HAL layer to build up the RTEMS I2C abstraction? Or does it 
make more sense to start from scratch? I see a distinct efficiency 
advantage in using the existing code and building the abstractions on top.

	Worst case, we can use the Freescale code and not contribute it back to 
the tree if there insurmountable problems. However, I (and my company) 
would like to contribute our efforts back to the community.

2) Given the motivation to keep a small code base, what processor 
families do any of you advise we take a look at? Has anyone had 
experience with this particular design goal and interested in shedding 
some light?

3) For cortex M series, what kind of experiences have people had with
	A) Atmel SAMV
	B) Freescale Kinetis
	C) NXP (LPC line)
	D) STM32

  Are there any distinct differences between these in your experience?

P.S., the licencing and integration questions are equally applicable to 
other chip manufacture supplied code. I choose to discuss Freescale 
since it's high on our list.

Thanks,

-- 
Isaac Gutekunst


More information about the users mailing list