* PPC8247 booting error
@ 2009-05-05 5:23 Sauce.Cheng
2009-05-05 16:26 ` Scott Wood
0 siblings, 1 reply; 3+ messages in thread
From: Sauce.Cheng @ 2009-05-05 5:23 UTC (permalink / raw)
To: linuxppc-dev
i want to mapping FIFO memory to bank 3 by configure br3 and or3
the boot info as following.
in my code, i have mapped FIFO to 0xD0000000, then i red the value from this
address.
the prompts as following
there is some wrong with BRx and ORx set? or something others?
please give me some suggestion, thanks everyone.
## Booting image at 00400000 ...
Image Name: Linux-2.6.11
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 818473 Bytes = 799.3 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
OK
Linux version 2.6.11 (root@localhost.localdomain) (gcc version 4.0.0 (DENX
ELDK 4.0 4.0.0))
#108 Mon May 4 22:54:23 EDT 2009
Motorola PQ2 ADS PowerPC port
Built 1 zonelists
Kernel command line: mem=32M console=ttyCPM0,9600 root=/dev/nfs/ rw
nfsroot=192.168.0.131:/root/chengmo/fs_folder/rootfs
ip=192.168.0.100:192.168.0.131:#:255.0.0.0:::off
PID hash table entries: 256 (order: 8, 4096 bytes)
Warning: real time clock seems stuck!
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 30632k available (1420k kernel code, 272k data, 88k init, 0k
highmem)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
scheduling while atomic: swapper/0x00000002/0
Call trace: [c015fe20] [c0003fe0] [c01a09b4] [c0194614] [000035fc]
NET: Registered protocol family 16
Sauce : fifo mapping to bank3 ! // here, indicate has enter fifo_init
function, but after
this...
Oops: kernel access of bad area, sig: 11 [#1]
PREEMPT
NIP: C01A2108 LR: C01A2104 SP: C0227FC0 REGS: c0227f10 TRAP: 0300 Not
tainted
MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
DAR: D0000000, DSISR: 20000000
TASK = c0220ab0[1] 'swapper' THREAD: c0226000
Last syscall: 120
GPR00: C01A2104 C0227FC0 C0220AB0 00000025 00000467 FFFFFFFF F00000A0
00000022
GPR08: 001FF1A0 D0000000 F00000A8 C0227ED0 00000001 7FBDFFFF 02000000
00000000
GPR16: 00800000 01FFF9E8 FFFFFFFF 00000000 007FFF00 01FFA4DC 01BD92B8
00000001
GPR24: 00000000 00400000 C01B0000 C0160000 C01A0000 00000001 C0226000
C01A86A8
Call trace: [c0003a40] [c0006504]
Kernel panic - not syncing: Attempted to kill init!
here, i have other questions about these information.
what dose mean by "NIP : C01A2108" ? i supposed "C01A2108" may be a address
of user space,
what about NIP ?
and what the expression "DAR, DSISR, TASK, and GPR00-24" represent.
i hope some will let me know those or recommand some book for me. thanks
--
View this message in context: http://www.nabble.com/PPC8247-booting-error-tp23381214p23381214.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: PPC8247 booting error
2009-05-05 5:23 PPC8247 booting error Sauce.Cheng
@ 2009-05-05 16:26 ` Scott Wood
2009-05-08 1:47 ` Sauce.Cheng
0 siblings, 1 reply; 3+ messages in thread
From: Scott Wood @ 2009-05-05 16:26 UTC (permalink / raw)
To: Sauce.Cheng; +Cc: linuxppc-dev
On Mon, May 04, 2009 at 10:23:50PM -0700, Sauce.Cheng wrote:
> i want to mapping FIFO memory to bank 3 by configure br3 and or3
> the boot info as following.
>
> in my code, i have mapped FIFO to 0xD0000000, then i red the value from this
> address.
>
> the prompts as following
>
> there is some wrong with BRx and ORx set? or something others?
You need to pass your physical address (0xd0000000) to ioremap() to
obtain a virtual address that you can dereference.
> scheduling while atomic: swapper/0x00000002/0
>
> Call trace: [c015fe20] [c0003fe0] [c01a09b4] [c0194614] [000035fc]
You've got another problem here that you'll want to look into.
-Scott
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: PPC8247 booting error
2009-05-05 16:26 ` Scott Wood
@ 2009-05-08 1:47 ` Sauce.Cheng
0 siblings, 0 replies; 3+ messages in thread
From: Sauce.Cheng @ 2009-05-08 1:47 UTC (permalink / raw)
To: linuxppc-dev
thanks for Scott's following
> You need to pass your physical address (0xd0000000) to ioremap() to
> obtain a virtual address that you can dereference.
actually, i have done that like you said. pass my phy addr to a virtual
addr, but i suppose it is a kernel virtual addr. i wanna get data from phy
in my application of user space. i try it by copy_to_user transfer a kernel
virtual addr to a use virtual addr for using by user. but copy_to_user
failed...
i do it like this
ssize_t read(....,char *buf,....,....)
{
....
kernel_buf = (void *)ioremap(0xD0000000, 4096);
copy_to_user(buf, kernel_buf, 4096);
....
}
--
View this message in context: http://www.nabble.com/PPC8247-booting-error-tp23381214p23438722.html
Sent from the linuxppc-dev mailing list archive at Nabble.com.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-05-08 1:47 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-05 5:23 PPC8247 booting error Sauce.Cheng
2009-05-05 16:26 ` Scott Wood
2009-05-08 1:47 ` Sauce.Cheng
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).