getting kaffe to work on assabet (StrongARM)

Duncan Palmer kaffe@rufus.w3.org
Tue, 05 Jun 2001 19:47:56 +0100


This is a multi-part message in MIME format.
--------------9E6B496FC4DFCCED77094358
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

hi all

We're very interested in using kaffe and possibly pocketlinux for the
project i'm working on at the moment, and i've been spending a bit of
time lately evaluating both of these. I've had no problems with the
stuff i've built from source for my desktop box, but when i build kaffe
for my assabet (SA-1110 processor - pretty much the same as an iPAQ
except for a different LCD), things get interesting...

I've attached the fgl.config, ipl.config and kaffe.config i've used -
they are very nearly the same as those used for the ipaq. I've tried
using the kaffe source from pocketlinux 1.0, as well as a checkout i got
from the CVS repository last week with the same results: everything
built, but didn't work ;( . I've been testing by telnetting in to my
board, and trying to run 'hello world'

To get the version of kaffe that came with pocketlinux1.0 to build, i
had to configure it to use pthreads, rather than jthreads, and fix some
problems in the build scripts (leading me to wonder what sources the
binary distro came from...)

Different things went wrong with different versions of kaffe on my
assabet:
* when using the kaffe sources from pocketlinux1.0, the kernel logs
indicated a bunch of unhandled page faults were occuring, and there were
also misaligned memory accesses taking place

Running the VM under gdb indicates a segfault was occuring as a result
of code on line 1156 of kaffevm/code-analyse2.c

* when using the kaffe sources from cvs, and the binary from the
pocketlinux1.0 distro, i just got unhandled page faults
(config/arm/common.h , where there is some alignment related stuff is
unchanged from pocketlinux 1.0)

Running the VM under gdb shows that on line 1066 of
kaffevm/systems/unix-jthreads/jthread.c there's a call to memcpy() with
a NULL parameter...

Then, on an ipaq:
* The pocketlinux 1.0 distro (using filesystem and kernel from
pocketlinux ftp site) works no worries
* The binary version of kaffe from pocketlinux 1.0 runs ok, but i don't
get my 'hello world' on the console
* The version of kaffe i built from cvs chews up all the memory
available to it, but dosen't do anything particularly useful...
* There are some problems with the cvs sources concerning the build
process for the ipaq config which i haven't worked thru yet, so haven't
tried that...

Could anyone give me some pointers as to how to get this working, or
whether what i'm doing should work at all? has anyone else succesfully
run kaffe on an assabet?, and have other people had problems building
from the pocketlinux 1.0 sources?

Cheers,
Dunk.


-- 
Duncan Palmer                                    
duncan.palmer@s3group.com
Software Design Engineer                          Phone:    
+353-1-2185542
Silicon and Software Systems                      Fax:      
+353-1-2185590
--------------9E6B496FC4DFCCED77094358
Content-Type: text/plain; charset=us-ascii;
 name="fgl.config"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="fgl.config"

--target=arm-linux 
--with-cursor=no

--------------9E6B496FC4DFCCED77094358
Content-Type: text/plain; charset=us-ascii;
 name="ipl.config"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="ipl.config"

--with-kbd=tty
--with-mou=sa11x 

--------------9E6B496FC4DFCCED77094358
Content-Type: text/plain; charset=us-ascii;
 name="kaffe.config"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="kaffe.config"

--with-engine=intrp
--with-execute='/' 
--with-awt=fgl
--with-staticbinary
--with-staticlib
--without-x
--without-png
--without-tiff
--without-verifier
--with-jpeg
--without-flash
--with-rawjar=mmap
--without-optimize-memory
--with-threads=unix-jthreads
--without-vmdebug
--with-libraries=native,io,device,media,awt,net,zip
--target=arm-assabet-linux
--prefix=/project/itablet/nfsmounts/itablet00/pocketlinux/


--------------9E6B496FC4DFCCED77094358
Content-Type: text/plain; charset=us-ascii;
 name="tvt-make.config"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="tvt-make.config"

#!/bin/sh
# $Id: tvt-make.config,v 1.12 2001/03/23 00:39:21 samc Exp $
# Target specific build options
TARGET_INFO="Intel Assabet"
GNUTARGET="arm-assabet-linux"
AUTOBUILD="yes"
XRES="320"
YRES="240"

##
# Cross compiler options
##
TOOLCHAIN="/opt/hardhat/devkit/arm/sa110_le/bin/"
TOOLPREFIX="sa110_le-"

##
# Kernel build options
##
KERNEL_SRC="/project/itablet/src/linux-2.4.0-test11-rmk1-np3/"
#KERNEL_SRC="$HOME/local/handhelds/linux/kernel/"
KERNEL_NAME="arch/arm/boot/zImage"
KERNEL_TARGET="zImage"
KERNEL_MODULAR="yes"

--------------9E6B496FC4DFCCED77094358--