GSoC porting RTEMS on TI C6X DSP

Joel Sherrill joel at
Thu Mar 16 23:51:08 UTC 2017

On Thu, Mar 16, 2017 at 5:10 PM, Denis Obrezkov <denisobrezkov at>

> 2017-03-16 17:46 GMT+02:00 Denis Obrezkov <denisobrezkov at>:
>> 2017-03-16 17:10 GMT+02:00 Joel Sherrill <joel at>:
>>> On Thu, Mar 16, 2017 at 9:36 AM, Denis Obrezkov <denisobrezkov at
>>> > wrote:
>>>> Hello, I think that I can't now compile something for c6x processor,
>>>> because I don't
>>>> have a beagleboard. Could you advise something on this situation?
>>> I think you mean you can't run executables. You did compile, right?
>>> I saw you state that the BB is USD400 in an odd Russian store. Not being
>>> familiar with shipping into Russia, what about ordering from a site like
>>> Adafruit or Element14? Depending on the variant, the board itself is
>>> only about ~USD50.
>> I compiled it (haven't linked yet), and yes, I can't run it.
>> The point is that delivery is unavailable for Russia.
>> And even if it was possible, it seems that both beagleboard-x15 and
>> beagleboard-xm are out of order.
>> Beaglebone costs about EUR50 (85-120 in Russia) , and I already have one,
>> but BBB
>> hasn't a DSP processor.
>>> How will you debug code on the C6x?
>> I wanted to debug it through GPIO,
>> and after simple uart driver completeness,
>> through serial port.
>> Also, openocd is available, I think it might be possible to do a remote
>> debugging.
>> --
>> Regards, Denis Obrezkov
> I think there is no interest to the project (on the one hand the board is
> a bit outdated,
> on the other, there is no confidence that someone would maintain the port),
> so, should I choose another project?

Personally I am always interested in ports to new architectures but this
one has hurdles for maintenance. And as you say, it seems to be a somewhat
dated architecture.

> If so, could you list the most required projects?
> I have a beaglebone and a low cost low power stm32 board,
> interested in real-time systems and testing (interesting - how to make
> temporal and
> mock testing for rtems), have read ARINC653.
Although it might not sound like it, the x86_64 port and BSP project is
very important to RTEMS. The current i386 PC port/BSP is primarily
for legacy hardware with some recent "adjustments" to accomodate
HW that has technically existed for 15 years. For example, I hacked
on the PCI access methods to support new hardware that didn't support
the ancient method. There is a long list of reasons why an x86_64
port is needed but the top are:

+ support for modern PC hardware that has UEFI boot, ACPI, APIC
interrupt controller, devices on the PCI bus, etc.
+ 64 bit port on a common architecture
+ clean x86 support
+ proper base for SMP support

The tool chain is already buildable with the RSB since I saw this
port being desirable. The x86_64 support should be complete in
newlib. The work would purely be in the RTEMS space.

The project has a ticket. I think the first step is to boot with UEFI and
use the ACPI to know what's there. Chris has identified the FreeBSD
code that should be used for all this. That doesn't mean it is an easy
project but it is rewarding and there will be users.

It is similar in that it is a port and BSP. But it doesn't have the same
hurdles and will have many more users and a much longer life.

If you are interested, start a thread with the proper title and cc
Chris Johns.


> Regards, Denis Obrezkov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the users mailing list