* PowerPC 4xx Port Progress
@ 1999-12-08 19:46 Grant Erickson
1999-12-10 18:00 ` Grant Erickson
0 siblings, 1 reply; 3+ messages in thread
From: Grant Erickson @ 1999-12-08 19:46 UTC (permalink / raw)
To: linuxppc-embedded
I've made some small bit of progress on getting the 2.3.30 kernel to boot
on IBM's 403GCX "Oak" evaluation board:
Linux version 2.3.30 (grant@brule) (gcc version 2.95.2 19991024 (release)) #33 Wed Dec 8 11:05:44 PST 1999.
On node 0 totalpages: 00000400.
zone(0): 1024 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Calibrating delay loop... 12.95 BogoMIPS.
Memory: 2648k available (752k kernel code, 656k data, 40k init) [c0000000, c0400000].
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes).
POSIX conformance testing by UNIFIX
Then it runs off into nowhere land which isn't too surprising considering
that there are a lot of holes yet.
Major issues to resolve/finish:
o Figure out why the stack on exception entry never looks the same as on
exception exit (a cache issue no doubt).
o Figure out why paging_init still causes things to die (I've worked
around it in the interim).
o 403GCX Async Interrupt Controller (AIC) (arch/ppc/kernel/ppc4xx_pic.c)
o Ethernet: National Semiconductor DP83902AV (drivers/net/oaknet.c)
o Serial: /dev/ttyS0 (On-chip 403GCX SCC), /dev/ttyS1 (NS 16550DV)
o MMU: finish up page table code and D/ITLB miss exception handlers.
o Timer code is probably wrong, BogoMIPS seems low.
I'll try to get the latest code to Cort for inclusion in the next kernel.
In the interim, I'll be posting patches, etc. to:
http://www.lcse.umn.edu/~grant/Linux/index.html
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: PowerPC 4xx Port Progress
@ 1999-12-08 23:05 Brian Kuschak
0 siblings, 0 replies; 3+ messages in thread
From: Brian Kuschak @ 1999-12-08 23:05 UTC (permalink / raw)
To: Grant Erickson, linuxppc-embedded
> POSIX conformance testing by UNIFIX
>
> Then it runs off into nowhere land which isn't too
> surprising considering
> that there are a lot of holes yet.
> o Timer code is probably wrong, BogoMIPS seems
> low.
Grant,
I'm not familiar with the 4xx core, but I ran into
similar trouble with the 8xx CPUs. I found that I
wasn't setting the ICTRL and DER registers. The core
is serialized by default, which could explain the low
Bogomips rating (see the ICTRL reg). If the DER is
set incorrectly, you may enter debug mode instead of
your exception vectors for various exceptions. This
caused my target to crash.
Brian
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: PowerPC 4xx Port Progress
1999-12-08 19:46 Grant Erickson
@ 1999-12-10 18:00 ` Grant Erickson
0 siblings, 0 replies; 3+ messages in thread
From: Grant Erickson @ 1999-12-10 18:00 UTC (permalink / raw)
To: linuxppc-embedded
I've been able to squish a few bugs over the last few days and have
consequently made a little* bit more progress with the Linux boot sequence
on the IBM 403GCX "Oak" evaluation board. It gets a little* further, dying
in the serial_init stuff. This is expected though since I haven't yet
gotten the serial code working (printk just dumps to log_buf which I
extract with the hardware debugger--painful but it works):
Linux version 2.3.31 (grant@brule) (gcc version 2.95.2 19991024 (release)) #23 Fri Dec 10 09:25:17 CST 1999.
On node 0 totalpages: 00000400.
zone(0): 1024 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Calibrating delay loop... 12.95 BogoMIPS.
Memory: 2648k available (752k kernel code, 656k data, 40k init) [c0000000,c0400000].
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes).
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.3
Based upon Swansea University Computer Society NET3.039
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
TCP: Hash tables configured (established 512 bind 1024)
Starting kswapd v1.6
Serial driver version 4.91 (1999-11-17) with no serial options enabled
Then it dies with a DTLB miss exception (for which there's no handler
yet).
Major issues to resolve/finish:
o Figure out why the stack on exception entry never looks the same as on
exception exit.
- Definitely a cache issue. Running with the caches disabled
in both real-mode (DR/IR = 00) and virtual mode (DR/IR = 11) fixes
things for the time being.
o Figure out why paging_init still causes things to die (I've worked
around it in the interim).
- Still not 100% sure what this code needs to do, but the following
seems to work on the 4MB Oak board:
unsigned int zones_size[MAX_NR_ZONES] = {0, 0, 0};
/*
* All pages are DMA-able so this is wrong - the zone code is
* assuming both regions have a value so this is necessary for
* now.
* -- Cort
*/
zones_size[ZONE_DMA] = virt_to_phys(end_of_DRAM) >> PAGE_SHIFT;
free_area_init(zones_size);
o 403GCX Async Interrupt Controller (AIC) (arch/ppc/kernel/ppc4xx_pic.c)
- Filled in a little more code here.
o Ethernet: National Semiconductor DP83902AV (drivers/net/oaknet.c)
o Serial: /dev/ttyS0 (On-chip 403GCX SCC), /dev/ttyS1 (NS 16550DV)
o MMU: finish up page table code and D/ITLB miss exception handlers.
o Timer code is probably wrong, BogoMIPS seems low.
- I think I've got this mostly* correct now.
As before, later today, I'll be posting patches, etc. to:
http://www.lcse.umn.edu/~grant/Linux/index.html
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~1999-12-10 18:00 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
1999-12-08 23:05 PowerPC 4xx Port Progress Brian Kuschak
-- strict thread matches above, loose matches on Subject: below --
1999-12-08 19:46 Grant Erickson
1999-12-10 18:00 ` Grant Erickson
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).