Date: Fri, 28 Feb 2003 17:52:27 +0900 From: Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp> To: Marcel Moolenaar <marcel@xcllnt.net> Cc: firewire@FreeBSD.ORG Subject: Re: Bad news: bus resets not fixed yet Message-ID: <ybs4r6olrck.wl@ett.sat.t.u-tokyo.ac.jp> In-Reply-To: <20030228080145.GA1736@athlon.pn.xcllnt.net> References: <ybssmugmopp.wl@ett.sat.t.u-tokyo.ac.jp> <20030222194741.GA579@dhcp01.pn.xcllnt.net> <ybs3cmdn37u.wl@ett.sat.t.u-tokyo.ac.jp> <ybsznolll5j.wl@ett.sat.t.u-tokyo.ac.jp> <20030226061321.GA549@dhcp01.pn.xcllnt.net> <ybsptpfl7oa.wl@ett.sat.t.u-tokyo.ac.jp> <20030226095348.GA565@dhcp01.pn.xcllnt.net> <ybsof4zl41w.wl@ett.sat.t.u-tokyo.ac.jp> <20030228053856.GA640@dhcp01.pn.xcllnt.net> <ybs65r4lvye.wl@ett.sat.t.u-tokyo.ac.jp> <20030228080145.GA1736@athlon.pn.xcllnt.net>
next in thread | previous in thread | raw e-mail | index | archive | help
> > (2) Change auto_login=0 in sbp.c. After boot > > sysctl hw.firewire.sbp.auto_login=1 > > then > > fwcontrol -r > > Ok. After loading the sbp module I got: > > \begin{dmesg} > sbp_identify > sbp_probe > sbp0: <SBP2/SCSI over firewire> on firewire0 > sbp_attach (cold=0) > sbp_post_explore (sbp_cold=1) > sbp_post_explore: EUI:08004603011eb709 spec=1 key=1. > target 0 lun 0 found > sbp0:0:0 ordered:0 type:5 EUI:08004603011eb709 node:1 speed:2 maxrec:10 new! > sbp0:0:0 'Sony' 'PCGA-DSM5' 'ad1830' > \end{dmesg} > > I think this is as expected. After setting the sysctl and resetting > the bus with fwcontrol, I got the bus reset loop (delay still 10). > The bus caused the loop to end. Another possibility is a copy of Configuration ROM is broken and we are issuing the management ORB to wrong address. Can you see any difference of output of fwcontrol -c node_id_of_the_drive between good and bad case? It seems the node_id is '0' for your case. > Silly questions: > 1. Does the sbp module support SBP3 devices? Is there a > different that we need to care about? I haven't read SBP3 spec.. > 2. Would it make sense to implement the "query logins" ORB > (can you tell I've been reading? :-) so that we could > avoid/suppress a login (when sbp_cold=1 probably). Maybe > the "login" ORB sent to the CD drive when it's already > logged in causes this. As far as I read the spec(SBP2), we don't expect BUS reset for login failure and expect ORB status indicates login failure. > 3. Alternatively. Would it hurt to send a "logout" ORB to > all devices when sbp_cold=1? If we know login_id :-) Only BIOS knows it but it's easy to guess because it's usually 0. > 4. As a debugging aid, would it be easy enough to enhance > fwcontrol so that we can trigger specific ORBs (such > as "query logins", "logout" and "login)? We need some DMA capable buffer to send ORB(it's actually fetched by the drive). We need some kernel support at least for that. By analogy with usual PCI-SCSI, FireWire looks like PCI bus and FireWire-IDE bridge looks like SCSI host bus adaptor which does DMA. /\ Hidetoshi Shimokawa \/ simokawa@sat.t.u-tokyo.ac.jp PGP public key: http://www.sat.t.u-tokyo.ac.jp/~simokawa/pgp.html To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-firewire" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ybs4r6olrck.wl>