Port-sparc archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Severe problems with sun4



Hi,

is it possible that the sun4 port has some issues? Fact is that support of VME bus SUNs (a 4/260 in my case) seems to be utterly broken. The main problem I have is with the Xylogics drivers (xy, but xd seems to be almost identical), they always create kernel panics while attaching the controller. Here's what I get on the console (BTW the MB86910 is not an FPU, it's the FP controller for the Weitek FPU):

b ie(,,)
Boot: ie(0,0,0)
Using IP Address xx.xx.xx.xx = XXXXXXXX
tftp: time-out.
Booting from tftp server at xx.xx.xx.xx = XXXXXXXX
Downloaded 67784 bytes from tftp server.

NetBSD/sparc Secondary Boot, Revision 1.15
(builds@wb28, Wed Oct  8 00:13:03 PDT 2008)
Booting netbsd
Using IP Address xx.xx.xx.xx = XXXXXXXX
Trying BOOTP protocol... net_open: client addr: xx.xx.xx.xx
net_open: subnet mask: 255.255.255.0
net_open: net gateway: xx.xx.xx.xx
net_open: server addr: xx.xx.xx.xx
net_open: server path: /usr/local/netbsd/sparc
ip address: xx.xx.xx.xx, hostname: azx, netmask: 255.255.255.0, gateway: 
xx.xx.xx.xx
root addr=xx.xx.xx.xx path=/usr/local/netbsd/sparc
1897200+77712+160524 [128576+119625]=0x256294
Loaded initial symtab at 0xf021d58c, strtab at 0xf023cf48, # entries 7537
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
     2006, 2007
     The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
     The Regents of the University of California.  All rights reserved.

NetBSD 4.0.1_PATCH (AZX) #12: Fri Jul 16 13:27:30 CEST 2010

root@host:/usr/local/netbsd/azx/usr/src/sys/arch/sparc/compile/AZX
total memory = 16360 KB
avail memory = 13640 KB
timecounter: Timecounters tick every 10.000 msec
bootpath: /obio0/ie0
mainbus0 (root): SUN-4/200 series: hostid 210006ba
cpu0 at mainbus0: MB86900/1A or L64801 @ 16.670 MHz, MB86910 or WTL1164/5 FPU
cpu0: 128K byte write-back, 16 bytes/line, sw flush: cache enabled
obio0 at mainbus0
ie0 at obio0 addr 0xf6000000 level 6 address 08:00:20:00:5b:d5, type onboard
oclock0 at obio0 addr 0xf3000000 delay constant 6
: intersil7170
eeprom0 at obio0 addr 0xf2000000
memreg0 at obio0 addr 0xf4000000
bwtwo0 at obio0 addr 0xfd000000 level 4: bwtwo, 1600 x 1280
bwtwo0: attached to /dev/fb0
zs0 at obio0 addr 0xf1000000 level 12 softpri 6
zstty0 at zs0 channel 0 (console i/o)
zstty1 at zs0 channel 1
zs1 at obio0 addr 0xf0000000 level 12 softpri 6
kbd0 at zs1 channel 0: baud rate 1200
ms0 at zs1 channel 1: baud rate 9600
sparcvme0 at mainbus0
vme0 at sparcvme0
xyc0 at vme0 addr ee40 irq 2 vector 48data fault: pc=0xf014447c addr=0x24 
ser=80<INVAL>
panic: kernel fault
Stopped in pid 0.1 (swapper) at netbsd:cpu_Debugger+0x4: or %
o7, %g0, %g1
db> trace
cpu_Debugger(0xf01d0048, 0xf014447c, 0x24, 0xf01ed400, 0x100, 0xf0217800)
    at netbsd:mem_access_fault+0x478
mem_access_fault(0x9, 0x80, 0x24, 0xf014447c, 0x40, 0xf01eaad8)
    at 0xf000633c
0xf000633c(0x0, 0x48, 0x1, 0x48, 0xf01eac10, 0x1)
    at netbsd:sparc_vct4_dmamap_create+0x28
sparc_vct4_dmamap_create(0x0, 0xf02d9980, 0xf01eac10, 0xf01eac44, 0x48, 
0xf02e2794)
    at netbsd:xycattach+0x130
xycattach(0xf02d9a80, 0xf02e2700, 0xf01ead38, 0x0, 0xf02e271e, 0xf00)
    at netbsd:config_attach_loc+0x2d8
config_attach_loc(0xf02e2700, 0xf01ecbc4, 0x0, 0xf01ead38, 0xf01f0000, 
0xf01ee400)
    at netbsd:vmesubmatch+0x70
vmesubmatch(0x1, 0xf01ecbc4, 0x0, 0x0, 0xf01eae38, 0xf01eaeb0)
    at netbsd:mapply+0x1c
mapply(0xf01eae40, 0xf01ecbc4, 0xffff, 0xf01f023c, 0xf020cc00, 0xf00)
    at netbsd:config_search_loc+0xfc
config_search_loc(0xf013f004, 0xf02d9a80, 0xf01b1e28, 0xf01a0184, 0xf01ecbc4, 
0xf00)
    at netbsd:config_attach_loc+0x2d8
config_attach_loc(0xf02d9a80, 0xf01ecabc, 0x0, 0xf01eaf44, 0xf01f0000, 
0xf01ee400)
    at netbsd:vmeattach_mainbus+0xc8
vmeattach_mainbus(0xf02e7f80, 0xf02d9b00, 0xf01eb030, 0x0, 0xf02d9b23, 0xf00)
    at netbsd:config_attach_loc+0x2d8
config_attach_loc(0xf02d9b00, 0xf01ecc24, 0x0, 0xf01eb030, 0xf01f0000, 
0xf01ee400)
    at netbsd:mainbus_attach+0xfc
mainbus_attach(0x0, 0xf02e7f80, 0x0, 0x0, 0xf02e7fa2, 0xf00)
    at netbsd:config_attach_loc+0x2d8
config_attach_loc(0xf02e7f80, 0xf01eca8c, 0x0, 0x0, 0xf01f0000, 0xf01ee400)
    at netbsd:cpu_configure+0x30c
cpu_configure(0xf2774478, 0x0, 0x0, 0x0, 0xffffffff, 0xf00)
    at netbsd:configure+0x34
configure(0x3b7, 0x44c0, 0xf0215000, 0x3ac0, 0xffffffff, 0x44c0)
    at netbsd:main+0x104
main(0x0, 0xfffffff8, 0x0, 0x0, 0xffffffff, 0xf0002270)
    at netbsd:sparc_interrupt44c+0xd0c

So, xycattach calls sparc_vct4_dmamap_create, which in turn calls something "inexistant" at address 0xf000633c. For now, I couldn't figure out what it is. My experiments lead to the conclusion that the call to bus_dmamem_alloc in xy_dmamem_alloc is failing, but for what reason I don't know.


Christian


Home | Main Index | Thread Index | Old Index