Robert Swindells | 18 Jun 2009 00:18
Picon
Picon

Re: SheevaPlug support?


Ron McDowell <rcm <at> fuzzwad.org> wrote:
>Hi, is there any support for the Marvel SheevaPlug http://openplug.org/
>ARM box? Thanks.

The mvphy driver needs a bit more work, but this is where I am up to
for today.

Robert Swindells

Marvell>> bootm
## Booting image at 00800000 ...
   Image Name:   NetBSD 5.99.13 (SHEEVAPLUG)    
   Created:      2009-06-17  22:02:41 UTC
   Image Type:   ARM NetBSD Kernel Image (uncompressed)
   Data Size:    3360164 Bytes =  3.2 MB
   Load Address: 00100000
   Entry Point:  00100000
   Verifying Checksum ... OK
OK
## Transferring control to NetBSD stage-2 loader (at address 00100000) ...

NetBSD/evbarm (sheevaplug) booting ...
[ Kernel symbol table missing! ]
Loaded initial symtab at 0xc03b4bf8, strtab at 0xc03de6b0, # entries 10574
pmap_postinit: Allocated 35 static L1 descriptor tables
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
    2006, 2007, 2008, 2009
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
(Continue reading)

KIYOHARA Takashi | 21 Jun 2009 14:44
Picon

Re: SheevaPlug support?

Hi! Robert,

From: Robert Swindells <rjs <at> fdy2.demon.co.uk>
Date: Wed, 17 Jun 2009 23:18:59 +0100 (BST)

> The mvphy driver needs a bit more work, but this is where I am up to
> for today.

> Marvell>> bootm
> ## Booting image at 00800000 ...
>    Image Name:   NetBSD 5.99.13 (SHEEVAPLUG)    
>    Created:      2009-06-17  22:02:41 UTC
>    Image Type:   ARM NetBSD Kernel Image (uncompressed)
>    Data Size:    3360164 Bytes =  3.2 MB
>    Load Address: 00100000
>    Entry Point:  00100000
>    Verifying Checksum ... OK
> OK
> ## Transferring control to NetBSD stage-2 loader (at address 00100000) ...
> 
> NetBSD/evbarm (sheevaplug) booting ...

... snip ...

> NetBSD 5.99.13 (SHEEVAPLUG) #40: Wed Jun 17 23:02:37 BST 2009
>         rjs <at> ren.fdy2.net:/u10/src/sys/arch/evbarm/compile/SHEEVAPLUG

Can you share this source code?

Thanks,
(Continue reading)

Raphael Langerhorst | 22 Jun 2009 13:34
Picon

Eurotech/SphereII port of NetBSD5/evbarm

Hello,

I've been working on porting NetBSD 5.0 to the Eurotech/SphereII board, which 
uses a Cirrus Logic EP9315 ARM920TDMI processor:

http://raphael.g-system.at/tech/netbsd/sphere2/

After fighting with the memory layout, the kernel now boots and devices are 
initialized. However, userland (init and rc) seem to have issues, either 
running out of memory or something, I actually have no clue (anymore).

We also tried different configurations, like building the Kernel (NetBSD 4/5) 
on a AMD64, i386 or evbarm host. Build hosts versions ranged from NetBSD 3.0 
to NetBSD 5.0, all showing the same results - that only the first 17 
characters are printed to console and then userland does not continue. As 
mentioned on the website, the kernel continues to run! Output is correctly 
shown when plugging in and out USB devices (for example).

The extra debug info at the end is in exec_elf somewhere in /kern as there 
were originally some issues with VM_MAXUSER_ADDRESS being too low, after 
which we moved the virtual KERNEL_BASE address and KERNEL_BASE_EXT to 0xc...

Does anyone know how to go on from there, what could possibly be wrong with 
userland? Are there still issues with memory layout?

Any hints would be greatly appreciated. Many thanks,
Raphael

der Mouse | 22 Jun 2009 15:12

Re: Eurotech/SphereII port of NetBSD5/evbarm

> I've been working on porting NetBSD 5.0 to the Eurotech/SphereII
> board, which uses a Cirrus Logic EP9315 ARM920TDMI processor: [...]

> [...] the same results - that only the first 17 characters are
> printed to console and then userland does not continue.

Userland does not continue, or userland does not produce any further
output?  There's a critical difference between the two, and it's easy
to confuse them.

My furst guess would be that the problem is in the serial driver when
running off interrupts (as opposed to polled-mode console output), and
it's got a 16- or 17-byte FIFO: output gets stuffed into the FIFO until
it's full, but the interrupt that would normally provoke reloading more
data when the FIFO drains isn't working right.  If this guess is right,
the rest of the data is in the output queue and will get prinetd if
something calls the interrupt handler.

> As mentioned on the website, the kernel continues to run!  Output is
> correctly shown when plugging in and out USB devices (for example).

As a test, perhaps, call the serial-line interrupt handler from the USB
hot-plug code, and see if adding a USB device produces the next 16 or
17 bytes of output?

As another possible test, boot single-user and blind-type RETURN to get
sh and then /sbin/halt to halt the system?  If it then halts, you know
userland is running, just not getting its output out.

/~\ The ASCII				  Mouse
(Continue reading)

Lloyd Parkes | 22 Jun 2009 22:49
Picon

Re: Eurotech/SphereII port of NetBSD5/evbarm


On 22/06/2009, at 11:34 PM, Raphael Langerhorst wrote:

> Hello,
>
> I've been working on porting NetBSD 5.0 to the Eurotech/SphereII  
> board, which
> uses a Cirrus Logic EP9315 ARM920TDMI processor:
>
> http://raphael.g-system.at/tech/netbsd/sphere2/
>
> After fighting with the memory layout, the kernel now boots and  
> devices are
> initialized. However, userland (init and rc) seem to have issues,  
> either
> running out of memory or something, I actually have no clue (anymore).

I can't get the memory based /dev to work. It (almost) always causes a  
panic on my TS-7200s which is an EP9302 based system. I just created  
the device nodes in /dev so that init wouldn't try and created the  
mfs. I get messages like

	warning: no /dev/console

	uvm_fault(0xc2921e14, 37352000, 1) -> e
	Fatal kernel mode data abort: 'Translation Fault (S)'
  	...
	Stopped in pid 2.1 (sh) at      netbsd:uvm_pagealloc_pgfl+0x84: ...

Cheers,
(Continue reading)

Raphael Langerhorst | 23 Jun 2009 10:35
Picon

Re: Eurotech/SphereII port of NetBSD5/evbarm

Am Montag, 22. Juni 2009 15:12:14 schrieben Sie:
> > I've been working on porting NetBSD 5.0 to the Eurotech/SphereII
> > board, which uses a Cirrus Logic EP9315 ARM920TDMI processor: [...]
> >
> > [...] the same results - that only the first 17 characters are
> > printed to console and then userland does not continue.
>
> Userland does not continue, or userland does not produce any further
> output?  There's a critical difference between the two, and it's easy
> to confuse them.
>
> My furst guess would be that the problem is in the serial driver when
> running off interrupts (as opposed to polled-mode console output), and
> it's got a 16- or 17-byte FIFO: output gets stuffed into the FIFO until
> it's full, but the interrupt that would normally provoke reloading more
> data when the FIFO drains isn't working right.  If this guess is right,
> the rest of the data is in the output queue and will get prinetd if
> something calls the interrupt handler.

Yes, this was the issue!

I've checked the serial driver and noticed that I had mindlessly commented out 
the interrupt routine as it seemed to me it was only turning on and off the 
leds. However, there was a very important line:

n = epcomintr(arg);

which was never called of course. I have reeanbled the interrupt and now 
everything works.

(Continue reading)

David Young | 23 Jun 2009 19:05
Picon
Favicon

ifpga patches

Just cleaning out my tree today.  ISTR that these patches compile,
but I haven't tested them because I don't have the h/w.  They do the
device_t/softc split on some devices for ifpga.  Can somebody test them
and get them into -current?

I'm not subscribed to port-arm, so please cc: me on replies.

Dave

-- 
David Young             OJC Technologies
dyoung <at> ojctech.com      Urbana, IL * (217) 278-3933
Index: sys/arch/evbarm/ifpga/ifpga.c
===================================================================
RCS file: /cvsroot/src/sys/arch/evbarm/ifpga/ifpga.c,v
retrieving revision 1.22
diff -p -u -u -p -r1.22 ifpga.c
--- sys/arch/evbarm/ifpga/ifpga.c	27 Apr 2008 18:58:46 -0000	1.22
+++ sys/arch/evbarm/ifpga/ifpga.c	23 Jun 2009 16:55:26 -0000
 <at>  <at>  -66,12 +66,12  <at>  <at>  __KERNEL_RCSID(0, "$NetBSD: ifpga.c,v 1.
 #include "locators.h"

 /* Prototypes */
-static int  ifpga_match		(struct device *, struct cfdata *, void *);
-static void ifpga_attach	(struct device *, struct device *, void *);
+static int  ifpga_match		(device_t, cfdata_t, void *);
+static void ifpga_attach	(device_t, device_t, void *);
 static int  ifpga_print		(void *, const char *);
(Continue reading)

Raphael Langerhorst | 24 Jun 2009 12:00
Picon

Re: Eurotech/SphereII port of NetBSD5/evbarm

Am Dienstag, 23. Juni 2009 16:21:24 schrieben Sie:
> > Besides, I would actually like to get the code into CVS. I may need
> > someone with CVS access and someone with competence in style.
> >
> > I'll do some cleanup myself and will ask again for the polishing when I
> > think the port is ready for CVS.
>
> OK. Post a URL with a patch for review.
> It won't hurt to drop a mail to core <at> NetBSD.org to bring the patch to
> their review then, and coordinate to get someone to review and commit your
> code. If you need any help or don't get an answer in time, feel free to
> drop me mail and I'll try to help.

Actually, the "patch" is already available at 
http://raphael.g-system.at/tech/netbsd/sphere2

I'll keep you updated on cleanup progress.

Thanks,
Raphael

Ron McDowell | 24 Jun 2009 05:52

Re: SheevaPlug support?

I'd like this too.  I'm a long-time BSDi/FreeBSD guy [92/93??] just getting up to speed on NetBSD...differences are subtle, but there. :)  Currently building a 5.0 release on i386 box as a learning exercise, then want to get a port running on my Sheeva.
-- Ron McDowell San Antonio TX

KIYOHARA Takashi wrote:
Hi! Robert, From: Robert Swindells <rjs <at> fdy2.demon.co.uk> Date: Wed, 17 Jun 2009 23:18:59 +0100 (BST)
The mvphy driver needs a bit more work, but this is where I am up to for today.
Marvell>> bootm ## Booting image at 00800000 ... Image Name: NetBSD 5.99.13 (SHEEVAPLUG) Created: 2009-06-17 22:02:41 UTC Image Type: ARM NetBSD Kernel Image (uncompressed) Data Size: 3360164 Bytes = 3.2 MB Load Address: 00100000 Entry Point: 00100000 Verifying Checksum ... OK OK ## Transferring control to NetBSD stage-2 loader (at address 00100000) ... NetBSD/evbarm (sheevaplug) booting ...
... snip ...
NetBSD 5.99.13 (SHEEVAPLUG) #40: Wed Jun 17 23:02:37 BST 2009 rjs <at> ren.fdy2.net:/u10/src/sys/arch/evbarm/compile/SHEEVAPLUG
Can you share this source code? Thanks, -- kiyohara

Gmane