From: Yoann Allain <yallain@avilinks.com>
To: Florian DELIZY <florian.delizy@sagem.com>
Cc: linux-mips@linux-mips.org
Subject: Re: Réf. : Compiling a 2.6 kernel for Mips
Date: Wed, 28 Sep 2005 15:38:33 +0200 [thread overview]
Message-ID: <433A9CD9.6040906@avilinks.com> (raw)
In-Reply-To: <OF6AB06D9F.A4F86C60-ONC125708A.003730C5-C125708A.00479A09@sagem.com>
Here is the function putPromChar in which I have the problem:
80101e70 <putPromChar>:
80101e70: 3c028039 lui $v0,0x8039
80101e74: 244519f0 addiu $a1,$v0,6640
80101e78: 8ca30014 lw $v1,20($a1)
80101e7c: 00042600 sll $a0,$a0,24
80101e80: 27bdfff0 addiu $sp,$sp,-16
80101e84: 00043603 sra $a2,$a0,24
80101e88: 10600012 beqz $v1,80101ed4 <putPromChar+0x64>
80101e8c: 00001025 move $v0,$zero
80101e90: 8ca20004 lw $v0,4($a1)
80101e94: 3c038036 lui $v1,0x8036
80101e98: 8c64c9a0 lw $a0,-13920($v1)
80101e9c: 2442001c addiu $v0,$v0,28
80101ea0: 00822021 addu $a0,$a0,$v0
80101ea4: 00000000 nop
80101ea8: 8c820000 lw $v0,0($a0)
80101eac: 30420020 andi $v0,$v0,0x20
80101eb0: 1040fffd beqz $v0,80101ea8 <putPromChar+0x38>
80101eb4: 3c028039 lui $v0,0x8039
80101eb8: 8c4319f4 lw $v1,6644($v0)
80101ebc: 3c048036 lui $a0,0x8036
80101ec0: 8c82c9a0 lw $v0,-13920($a0)
80101ec4: 24630004 addiu $v1,$v1,4
80101ec8: 00431021 addu $v0,$v0,$v1
80101ecc: ac460000 sw $a2,0($v0)
80101ed0: 24020001 li $v0,1
80101ed4: 03e00008 jr $ra
80101ed8: 27bd0010 addiu $sp,$sp,16
80101edc: 00000000 nop
with WinMon (bootloader) I get this (this is perhaps more readable...):
[80101e70] 3c028039 lui r2,0x8039 putPromChar
[80101e74] 244519f0 addiu r5,r2,0x19f0
[80101e78] 8ca30014 lw r3,0x0014(r5)
[80101e7c] 00042600 sll r4,r4,24
[80101e80] 27bdfff0 addiu r29,r29,0xfff0
[80101e84] 00043603 sra r6,r4,24
[80101e88] 10600012 beq r3,r0,0x0012
[80101e90] 8ca20004 lw r2,0x0004(r5) --> in 2.6 it reads 0 at address r5 + 0x4
[80101e94] 3c038036 lui r3,0x8036
[80101e98] 8c64c9a0 lw r4,0xc9a0(r3) --> in 2.6 it reads 0 at adress r3 + 0xc9a0
[80101e9c] 2442001c addiu r2,r2,0x001c
[80101ea0] 00822021 addu r4,r4,r2 ==> in 2.4 it returns bf010f1c in r4
[80101ea8] 8c820000 lw r2,0x0000(r4)
* Exception 0x02 (user) : TLB (load or instruction fetch) *
* in address: 80101ea8
ClockDiv2+0xe38:
[80101ea8] 8c820000 lw r2,0x0000(r4)
r0(zero): 00000000 r1(AT) : 1000fc00 r2(v0) : 0000001c r3(v1) : 80360000
r4(a0) : 0000001c r5(a1) : 803919f0 r6(a2) : 0000000d r7(a3) : 8038df8c
I hope this will help and many thanks for your help!
Yoann
Florian DELIZY wrote:
>
>
>
>
> > Hi,
>
> > I am no more a newbie but I still need some help to build kernels :
> > I am working on the Wintegra Evaluation Board (WEB777) and I used the
> > 2.4 kernel Wintegra gave me with the patch for that board.
> > I tried to adapt the patch for the 2.6 kernel but it doesn't work. I
> > traced the kernel to find it crashed very early before displaying
> anything.
> > In fact the host processor makes an address and tries to read it but
> > this makes an exception :
>
> > * Exception 0x02 (user) : TLB (load or instruction fetch) *
> > * in address: 80101ea8
> > ClockDiv2+0xe38:
> > [80101ea8] 8c820000 lw r2,0x0000(r4)
>
>
> > r0(zero): 00000000 r1(AT) : 1000fc00 r2(v0) : 0000001c r3(v1) :
> 80360000
> > r4(a0) : 0000001c r5(a1) : 803919f0 r6(a2) : 0000000d r7(a3) :
> 8038df8c
>
> That would help a lot if you could objdump your kernel and give us 10
> instructions before (at least)
> and 10 instructions after it, you could try an :
>
> mips-linux-objdump -DSz vmlinux | grep -U 20 '^\[80101ea8\]'
>
> and send the output (that should ouput around 20 lines (which will
> hopefully contain some C code also,
> assuùing that you compiled the code with debug informations. Moreover
> you can also tell us in which
> symbol (function) is located the address 0x80101ea8.
>
>
> > I think this is a problem of host processor misconfiguration, but don't
> > find out exactly what it is... To make the address in R4, the processor
> > reads some zeroes where in 2.4 kernel, it doesn't and the address read
> > in 2.4 is something like 0xbf010f1c.
> > I don't know if this can help but here are the few functions before
> crash:
>
> > kernel_entry
> > J start_kernel
> > cpu_probe() (WEB777 patch)
> > prom_init() (WEB777 patch)
> > setup_prom_printf() (WEB777 patch)
> > wds_prom_printf() (WEB777 patch)
> > putPromChar() (WEB777 patch)
> > --> CRASH
>
> You should also start to figure out which variable/pointer anything is
> consulted to get this adress (0x0000001c)
> which might then help to understand you're problem.
>
> Regards
>
> Florian Delizy
>
next prev parent reply other threads:[~2005-09-28 13:41 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-09-28 13:01 Réf. : Compiling a 2.6 kernel for Mips Florian DELIZY
2005-09-28 13:38 ` Yoann Allain [this message]
2005-09-29 6:21 ` Brett Foster
2005-09-29 12:08 ` Yoann Allain
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=433A9CD9.6040906@avilinks.com \
--to=yallain@avilinks.com \
--cc=florian.delizy@sagem.com \
--cc=linux-mips@linux-mips.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.