Home arrow Support arrow Forums

Luminary Micro Forums

<< Start < Prev 1 2 3 Next > End >>

seantellis

Fresh Boarder

2006/10/11 06:23

Linux support for dev tools

As a Linux user, I would ask if there is any support for Linux as the host OS for the evaluation kits?

EDIT: More information on what I mean.

The EKK-LM3S811 board is the one that has my attention: http://www.luminarymicro.com/products/ekk-lm3s811_evaluation_kit.html

We should be able to create executables under Linux fairly easily using gcc for ARM, or RVDS, but we would need a way of uploading the compiled images to the board via the USB interface under Linux.

The software that comes with the board lists Windows as a requirement.

Having now done some searching around in the schematics and with Google, this does not sound too far-fetched.

The board has a FTDI FT2232C USB IC on board, and this has support at the USB driver level under Linux using libftdi and libusb. This eliminates one hurdle.

In order to develop a Linux loader, the developer would need to determine what sequence of commands to send to the FTDI chip to operate the JTAG interface correctly.

Post edited by: seantellis, at: 2006/10/11 08:26

Post edited by: seantellis, at: 2006/10/11 09:07

login or register to reply

englere

Gold Boarder

2006/10/23 20:29

Re:Linux support for dev tools

I mentioned something about this in another thread - basically, it is possible for us to do this in linux if we use a small closed-source proxy driver.

The JTAG details of the Cortex M3 core are published on the Arm web site. But the JTAG details of the particular Stellaris USB interface are based on proprietary information. However, Luminary will share the Windows DebugLib source if you agree to non-disclosure. This means you simply have to port the JTAG code to linux (should be easy because there is already a good linux USB driver), then isolate the JTAG driver in a binary-only format for redistribution.

This doesn't stop you from giving it away for free in a binary form, and much of the supporting code can still be open source.

This distribution model is currently being used in the msp430 family. Google "msp430-gdbproxy" for info.

Eric

login or register to reply

mthomas

Senior Boarder

2006/10/24 11:18

Re:Linux support for dev tools

It might be a better to extend an already available "gdb-server" with Cortex-M3 support as a full with open-source solution. A closed source "proxy" is of cause o.k. for a quick/interim solution but as far as I know the the debug-interface of the Cortex-M3 and the flash-programming of LMI-devices is fully documented so there is no real need for a closed source to preserve "secrets" of the manufacturer. A full open-source solution will have better exceptance and better support since a lot of people can review the code and submit patches to fix bugs.

I have already mentioned OpenOCD in another thread and think it would be a good idea if OpenOCD could be extended with Cortex-M3 support. There are a lot of features already available in OpenOCD which can be used:

- (very) low-level access to JTAG-hardware ("Wigglers" and FT2232-based interfaces). Multiplattform (MS Windows, Linux, BSD/Mac OSX). I suppose the JTAG-hardware on the LM3S811-Eval-Board is nothing special compared to the other FT2232-based interfaces. All of them use the "JTAG-feature" of the FTDI-chip and just differ in the way the the GPIOs are used i.e. for the reset-line(s). OpenOCD offers config-options for this and an additional "layout" can be added easily.
- GDB-server
- Telnet-server
- Framework for flash-programming

Of cause there is still a lot of work to do for Cortex-M3 debug-support and flash-programming routines for the LMI-devices. But it should be rather easy for the developers of the DebugLib to add this features to OpenOCD and submit patches to the OpenOCD maintainer.

Martin Thomas

login or register to reply

englere

Gold Boarder

2006/10/24 12:25

Re:Linux support for dev tools

>the debug-interface of the Cortex-M3 and the
>flash-programming of LMI-devices is fully documented
>so there is no real need for a closed source to >preserve "secrets" of the manufacturer.

True, but I thought we were talking about re-using the USB JTAG emulator built-in to the Dev boards.

If you want to use a different JTAG emulator then you're right that we don't need to make it closed source.

By the way, I forgot to mention that Luminary has a Bootstrap Loader (BSL) that can program the chips and they recently introduced an app note on it. We're still waiting for some of the files to be released, but we should be able to write open source programs that program the chips using the BSL. But there won't be any debug support this way (single-step, breakpoints, etc).

Eric

login or register to reply

mthomas

Senior Boarder

2006/10/24 15:12

Re:Linux support for dev tools

The JTAG-hardware integrated in the evaluation-board is based on the FT2232-IC from FTDI (www.ftdichip.com) which offers basic support for the JTAG-"SPI" by MPSSE commands. The IC is also the "core" in other JTAG-interfaces (i.e. from Amontec, Olimex) and OpenOCD already supports FT2232-based hardware. I currently don't know any other open-source software (gdb-server) which offers support for FTDI2232-MPSSE-JTAG. With OpenOCD 106 the eval.-board can already be used as JTAG-hardware for external controllers which are already supported by OpenOCD (i.e. ARM7TDMI, not tested myself but mentioned in the SVN changelog). Basicly there is no difference in accessing the JTAG-interface of the on-board LMI-controller or external controllers - at least as far as I understand the schematic of the evaluation-board. The "dirty work" like low-level access to the FTDI-chip thru the USB-drivers and handling of the JTAG state-machine are already implemented ("multiplattform"), the gdb-server framework is already done too. "Only" the special handling for the Cortex-M3 is missing.

login or register to reply

englere

Gold Boarder

2006/10/25 21:51

Re:Linux support for dev tools

I'm not very familiar with very low-level programming of JTAG ports, so I'd have a hard time of it even with the docs that I've seen. I wondor if we could interest Dominic (OpenOCD author) in helping with this port?

login or register to reply
<< Start < Prev 1 2 3 Next > End >>