Arm9?

Does anyone out there have experience building GNU Radio for AMR9
with a Linux 2.6 series kernel, the i.MX25 in particular?

– David

David A. Burgess
Kestrel Signal Processing, Inc.

On 11/26/2009 06:06 PM, David B. wrote:

I haven’t built Gnu Radio under it, but I’m using PTXDIST to build an
embedded Linux application
for an i.MX31 based system.

Cheers
Marcus

On 11/26/2009 06:06 PM, David B. wrote:

Does anyone out there have experience building GNU Radio for AMR9 with a
Linux 2.6 series kernel, the i.MX25 in particular?

OE should build GNU Radio for ARM9. We ran it on the OpenMoko phone a
few years back, at least the dial tone example. I suppose I should run a
build to look for bitrot issues :slight_smile: (Boost uses Intel intrinsics for some
atomic operations and I am not sure if we have replacements for the ARM9
at the moment)

The larger issue is lack of floating point support on the ARM9. Floating
point is tightly coupled in the GNU Radio code.

Philip

David B. wrote:

Philip

– David

David A. Burgess
Kestrel Signal Processing, Inc.

It seems to me it should be possible to setup the autotools to only
require the libs needed by libusrp if you --disable-* everything else
when you run configure. I would imagine that would be a healthy bit of
surgery on the configure.ac file and some of the related files:
separating out which dependencies are from which components, etc. Sounds
like it might be useful for some of the places GNURadio can end up
running though.
Doug


Douglas G.
Code 5545
U.S. Naval Research Laboratory
Washington, DC 20375
(202) 767-9048
[email protected]

Phillip -

On Nov 27, 2009, at 7:11 AM, Philip B. wrote:

On 11/26/2009 06:06 PM, David B. wrote:

Does anyone out there have experience building GNU Radio for AMR9
with a
Linux 2.6 series kernel, the i.MX25 in particular?

OE should build GNU Radio for ARM9. We ran it on the OpenMoko phone
a few years back, at least the dial tone example. I suppose I
should run a build to look for bitrot issues :slight_smile: (Boost uses Intel
intrinsics for some atomic operations and I am not sure if we have
replacements for the ARM9 at the moment)

The last time I tried to use OE, I spent over a day downloading
several GB of stuff completely unrelated to my needs, blew nearly a
week trying to configure it, gave up, and installed Ubuntu on the
target system. So in my mind this is not an encouraging answer. If
OE is the only choice, is there someone I can pay to deal with that
on a predictable schedule?

The larger issue is lack of floating point support on the ARM9.
Floating point is tightly coupled in the GNU Radio code.

The only part of GNU Radio we are using is libusrp, but GNU Radio’s
“kitchen sink” dependencies mean that we have to build all kinds of
other crazy stuff to get that, stuff that we do not actually use.
(Seems to be a common theme here…)

We can write our own fixed point support for the rest of our
application, if we can just get libusrp to work. (Maybe the solution
is a libusrp replacement that is independent of GNU Radio and builds
with minimal external dependencies.)

Philip

– David

David A. Burgess
Kestrel Signal Processing, Inc.

On 11/27/2009 01:36 PM, Doug G. wrote:

with minimal external dependencies.)
I seem to have missed David’s response …

Before you spend a lot of time on this, make sure the ARM9 you are
looking at has an EHCI controller. I never did get the USRP to work with
the USB1.1 controllers found on ARM( chips a few years ago. You need to
mess with the Cypress/FPGA interface.

There may be some ARM( systems with EHCI controllers these days. I am
not 100% certain though.

Philip

On Fri, Nov 27, 2009 at 1:43 PM, Philip B. [email protected]
wrote:

There may be some ARM( systems with EHCI controllers these days. I am not
100% certain though.

LPC3130 is an ARM9 (180MHz) with a USB 2.0 HS PHY built in and only
costs $5 in small quantities.

Brian

The only part of GNU Radio we are using is libusrp, but GNU Radio’s
“kitchen sink” dependencies mean that we have to build all kinds of
other crazy stuff to get that, stuff that we do not actually use.
(Seems to be a common theme here…)

I just tried a ./configure --prefix=/opt/gnuradio-min
–disable-all-components --enable-omnithread --enable-usrp

and that yielded a pretty small install with just libusrp, gr-omnithread
(needed for libusrp apparently) and a few python module allowing libusrp
access from python. Total less ~ 4.5Mo including the usrp FW files and
the headers …

If you compile on a dev target, that should be trivial. (you do need
boost tough, hopefully debian has a pkg for that).

If otoh you want to cross compile that should work too, they do it for
the ps3 with some minor hacks that could be adapted.

 Sylvain