Subject: RE: ARM-Linux on Brutus...

From: "Chagas, Jason" <[email-masked]>
Date: Mon, 8 Feb 1999 12:03:45 -0800

Russell,

When can I get information on modifing 'extractinfo.pl'  (extractinfo.perl)
to work with the latest and greatest tools (i.e. Binutils v2.9.1.0.19a).

Thanks,

Jason

	----------
	From:  Russell King [SMTP:[email-masked]]
	Sent:  Thursday, January 28, 1999 12:25 PM
	To:  [email-masked]
	Cc:  [email-masked]
	Subject:  Re: ARM-Linux on Brutus...

	Steve Kipisz said:
	> I can't remember how I solved this problem.  I remembered having
the
	> problem, I just can't remember how I solved it!  Here is my file:
	> 
	> /*
	>  * *** THIS FILE IS AUTOMATICALLY GENERATED.  DO NOT EDIT! ***
	>  */
	> unsigned long tss_memmap = 696;
	> #define __HAS_tss_memmap
	> unsigned long mm = 708;
	> #define __HAS_mm
	> unsigned long pgd = 4;
	> #define __HAS_pgd
	> unsigned long tss_save = 692;
	> #define __HAS_tss_save
	> unsigned long tss_fpesave = 552;
	> #define __HAS_tss_fpesave

	It is not a good idea to send people this file!  There is a good
	reason why it's automatically generated (and it's not to make the
	build process harder).  The constants are highly kernel-version
	dependent.

	The problem is most likely going to be an incompatability between
	the 'extractinfo.pl' perl script and your version of objdump.  When
	using 2.0 kernel source, you either /must/ use the binutils-2.7
a.out
	tools, /or/ fix 'extractinfo.pl' so that it can parse your binutils'
	objdump output.
	--
	Russell King ([email-masked])

	unsubscribe: body of `unsubscribe linux-arm' to
[email-masked]
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: Philip Blundell <[email-masked]>
Date: Mon, 08 Feb 1999 20:49:40 +0000

>to work with the latest and greatest tools (i.e. Binutils v2.9.1.0.19a).

I'd ask around on the sa1100 list first.  I think at least some people there 
are using EGCS and new binutils.  Maybe it just works already or maybe someone 
has done the mods.

Failing that, if you look at the script you'll see it's just a Perl script 
that runs objdump on a couple of files and interprets the results.  The lines 
that are likely to need changing are the bits like this:

	while (<DATA>) {
		($addr, $data0, $data1, $data2, $data3) = split (' ');
		$dat[hex($addr)] = hex(&swapdata($data0));

You need to look at the output from your version of objdump, work out where 
the information that the script expects is being output, and then modify the 
code to look in the right place for it.

I was intending to try it myself but I seem to have deleted my arm-linuxaout 
compiler installation. :-(

p.

---

From: Russell King - ARM Linux Admin <[email-masked]>
Date: Mon, 8 Feb 1999 23:17:56 +0000 (GMT)

> 		$dat[hex($addr)] = hex(&swapdata($data0));

I've already fixed this for the version of binutils that Dave Gilbert's using
(Dave, could you post your version nrs please).

> code to look in the right place for it.

Alternatively, send me the output of

objdump --syms getconsdata.o

objdump --full-contents --section=.data getconsdata.o

And I'll look at it.
   _____
  |_____| ------------------------------------------------- ---+---+-
  |   |        Russell King       [email-masked]      --- ---
  | | | |  http://www.arm.linux.org.uk/~rmk/armlinux.html    /  /  |
  | +-+-+                                                     --- -+-
  /   |               THE developer of ARM Linux              |+| /|\
 /  | | |                                                     ---  |
    +-+-+ -------------------------------------------------  /\\\  |
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: Nicolas Pitre <[email-masked]>
Date: Mon, 8 Feb 1999 19:14:18 -0500 (EST)

> are using EGCS and new binutils.  Maybe it just works already or maybe someone 

OK here's my plan for tonight.  It has been a couple of weeks I wanted to
do it but didn't have time to complete the work.

I'll try to release a patch against 2.2.1-rmk2 tonight.  This patch should
work on Brutus with hopefully any Angel versions.  This kernel will
compile to an ELF binary so the hasle with a.out will not be.

This patch is probably the cleanest up to now (big thanks to Hugo for his
big contribution) and also the more stable I've seen yet.  Some issues
that triggered segfaults with my 2.0.35 patch should be fixed in this one.

However, there won't be any Brutus console support -- only serial console.
I won't do the port for those drivers since I'm not sighted... I'll let it
to others!  :-)

I plan to submit something to Russell soon so the main ARM Linux tree 
could carry SA1100 suport too.

So this is to give hope to those with all sort of problems for which I
think this patch should be less painful.

Nicolas Pitre, B. ing.
[email-masked]