panic on sparc64 with oem fw pci fw card

Sean Bruno sean.bruno at dsl-only.net
Mon Mar 30 14:27:06 PDT 2009


Andreas:

Thank you for the patch.  Can you point me to the original emails about 
this issue?

I don't see a problem with this patch as it is, but I would like to 
understand your problem a bit more.

Sean

On Mon, 2009-03-30 at 22:57 +0200, Andreas Tobler wrote:
> Hi all,
> 
> I get the below panic when I load fw support on my sparc64.
> 
> I first posted this issue to the sparc64 list. Marius suggested to post 
> to fw and simokawa@, here I do.
> 
> On suggestion of Marius I modified the fwohci.c with this:
> 
> Index: fwohci.c
> ===================================================================
> --- fwohci.c	(revision 190571)
> +++ fwohci.c	(working copy)
> @@ -527,7 +527,7 @@
>   		device_printf(dev, "resetting OHCI...");
>   	i = 0;
>   	while(OREAD(sc, OHCI_HCCCTL) & OHCI_HCC_RESET) {
> -		if (i++ > 100) break;
> +		if (i++ > 1000) break;
>   		DELAY(1000);
>   	}
>   	if (firewire_debug)
> 
> 
> Also, I hardcoded firewire_debug to 1 since sysctl does not work on not 
> loaded modules.
> 
> I'm not able to cross debug since I build this kernel on a MacBook Pro. 
> I have no second sparc64 available to kgdb the issue.
> 
> The kernel I run is the latest and GREATEST (svn r190571), note beside, 
> hat off, you all, you provide a really cool and fine OS!
> 
> I'm happy to provide more details on request. Also, if you have some 
> code changes, please.
> 
> TIA,
> Andreas
> ---
> 
> u60# kldload firewire
> fwohci0: <Texas Instruments TSB12LV23> mem 
> 0x4008000-0x40087ff,0x400c000-0x400ff
> ff at device 4.0 on pci0
> fwohci0: latency timer 24 -> 32.
> fwohci0: cache size 16 -> 16.
> fwohci0: [ITHREAD]
> fwohci0: OHCI version 1.0 (ROM=1)
> fwohci0: No. of Isochronous channels is 4.
> fwohci0: EUI64 00:10:74:60:00:00:ee:a9
> fwohci0: resetting OHCI...done (loop=0)
> panic: pcib: PCI bus B error AFAR 0x1ff840080ec AFSR 0x4000f00000000000
> cpuid = 0
> KDB: stack backtrace:
> panic() at 0xc0336748 = panic+0x1c8
> psycho_pci_bus() at 0xc0629308 = psycho_pci_bus+0x88
> intr_event_handle() at 0xc030c41c = intr_event_handle+0x5c
> intr_execute_handlers() at 0xc0639774 = intr_execute_handlers+0x14
> intr_fast() at 0xc0081328 = intr_fast+0x68
> -- interrupt level=0xd pil=0 %o7=0xc0372ec0 --
> -- data access error %o7=0xc0895800 --
> fwphy_rddata() at 0xc0ef8b60 = fwphy_rddata+0x120
> fwohci_reset() at 0xc0efb9d8 = fwohci_reset+0x1d8
> fwohci_init() at 0xc0efcb54 = fwohci_init+0x9d4
> fwohci_pci_attach() at 0xc0eff0f8 = fwohci_pci_attach+0x278
> device_attach() at 0xc0366ae4 = device_attach+0x4a4
> device_probe_and_attach() at 0xc0367a44 = device_probe_and_attach+0x64
> pci_driver_added() at 0xc021c5d4 = pci_driver_added+0x154
> devclass_driver_added() at 0xc0364154 = devclass_driver_added+0x74
> devclass_add_driver() at 0xc0364e48 = devclass_add_driver+0xa8
> driver_module_handler() at 0xc0366578 = driver_module_handler+0x58
> module_register_init() at 0xc03227dc = module_register_init+0xdc
> linker_load_module() at 0xc0317f34 = linker_load_module+0xbd4
> kern_kldload() at 0xc03184f8 = kern_kldload+0xb8
> kldload() at 0xc0318680 = kldload+0x60
> syscall() at 0xc064aaf0 = syscall+0x2f0
> -- syscall (304, FreeBSD ELF64, kldload) %o7=0x1008e0 --
> userland() at 0x4045b708
> user trace: trap %o7=0x1008e0
> pc 0x4045b708, sp 0x7fdffffe1e1
> pc 0x1006f0, sp 0x7fdffffe2a1
> pc 0x40206934, sp 0x7fdffffe361
> done
> KDB: enter: panic
> [thread pid 1019 tid 100065 ]
> Stopped at      0xc036e2c0 = kdb_enter+0x80:    ta              %xcc, 1
> _______________________________________________
> freebsd-firewire at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-firewire
> To unsubscribe, send any mail to "freebsd-firewire-unsubscribe at freebsd.org"



More information about the freebsd-firewire mailing list