Hi everyone, Well it's not perfect, but I've got a semi-working driver for the UARTlite happening, and now it really looks like a linux box! :) Attached is a transcript of a session I just ran, doesn't show much but proves that the basics are there. Most importantly, the proc file system is there and working (so now I can see the kernel internals), and thus things like 'ps' and so on also work. The log shows me do a 'ps', start a new shell, 'ps' again, then close the new shell, and a final 'ps'. Happily the resutls look pretty much as expected. I've just submitted another round of patches and so on to the CVS, should be there soon. I need to revisit the "getting started" instructions to bring them up to date, hope to make the entry level a lot easier. Cheers, John
J-Boot Menu
--------------
1. Erase Flash
2. Copy image into Flash
3. Execute RAM image
4. Execute Flash image
Make your choice>4
Copying Kernel Image from Flash to RAM......done
Verifying Kernel Image......success
Jumping to kernel startup...
Linux version 2.4.21-uc0 (jwilliam@g435-9029) (gcc version 2.95.3-4 Xilinx EDK 3
On node 0 totalpages: 4096
zone(0): 4096 pages.
zone(1): 0 pages.
zone(2): 0 pages.
CPU: XILINX MICROBLAZE
Console: xmbserial on UARTLite
Kernel command line:
Calibrating delay loop... 4.86 BogoMIPS
Memory: 15424K/16384K available (470K kernel code, 185K data)
Dentry cache hash table entries: 2048 (order: 2, 16384 bytes)
Inode cache hash table entries: 1024 (order: 1, 8192 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 4096 (order: 2, 16384 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Microblaze internal UARTlite serial driver version 1.00
xmbrs_irqinit ttyS0 on IRQ 1
ttyS0 at 0xffff2000 (irq = 1) is a Microblaze UARTlite
Starting kswapd
Blkmem copyright 1998,1999 D. Jeff Dionne
Blkmem copyright 1998 Kenneth Albanowski
Blkmem 1 disk images:
0: 800A5304-800C3B03 [VIRTUAL 800A5304-800C3B03] (RO)
blk: queue 80099550, I/O limit 0Mb (mask 0x0)
VFS: Mounted root (romfs filesystem) readonly.
Freeing unused kernel memory: 28K freed
Sash command shell (version 1.1.1)
/> cat etc/motd
Welcome to
____ _ _
_ _ / ___| (_)_ __ _ _ _ _
| | | | | | | | '_ \| | | < \/ >
| |_| | |___| | | | | | |_| |> <
| __,_|\____|_|_|_| |_|\__,_/_/\_>
|_)
on Xilinx Microblaze.
For further information check:
http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux (Microblaze uClinux Home)
or
http://www.uclinux.org/ (The home of uClinux)
/> mount -t proc proc /proc
/>
/> ps
PID PORT STAT SIZE SHARED %CPU COMMAND
1 S 69K 0K 0.0 init
2 S 0K 0K 0.0 keventd
3 S 0K 0K 0.0 ksoftirqd_CPU0
4 S 0K 0K 0.0 kswapd
5 S 0K 0K 0.0 bdflush
6 S 0K 0K 0.0 kupdated
7 R 137K 0K 0.0 /bin/sh
/> sh
Sash command shell (version 1.1.1)
/> ps
PID PORT STAT SIZE SHARED %CPU COMMAND
1 S 69K 0K 0.0 init
2 S 0K 0K 0.0 keventd
3 S 0K 0K 0.0 ksoftirqd_CPU0
4 S 0K 0K 0.0 kswapd
5 S 0K 0K 0.0 bdflush
6 S 0K 0K 0.0 kupdated
7 S 137K 0K 0.0 /bin/sh
8 R 137K 0K 0.0 sh
/> exit
/> ps
PID PORT STAT SIZE SHARED %CPU COMMAND
1 S 69K 0K 0.0 init
2 S 0K 0K 0.0 keventd
3 R 0K 0K 0.0 ksoftirqd_CPU0
4 S 0K 0K 0.0 kswapd
5 S 0K 0K 0.0 bdflush
6 S 0K 0K 0.0 kupdated
7 R 137K 0K 0.0 /bin/sh
/> cat /proc/uptime
28.22 25.92
/> cat /proc/interrupts
CPU0
0: 3107 IRQ timer
1: 279 IRQ Microblaze UARTlite
/> cat /proc/tty/driver/serial
Microblaze internal UARTlite serial driver version 1.00
0: port:ffff2000 irq=1 baud:0 tx:1778 rx:228
/>