From sean.bruno at dsl-only.net Thu Oct 1 16:42:28 2009 From: sean.bruno at dsl-only.net (Sean Bruno) Date: Thu Oct 1 16:42:34 2009 Subject: Firewire Work Message-ID: <1254415346.9313.17.camel@Lappy> I moved to a seperate tracking branch at: http://svn.freebsd.org/base/projects/sbruno_firewire I'm trying to keep a patchset at: http://consultcsg.com/firewire.diff Right now, this patchset should allow the systems that hang with "xpt_config" timeouts to boot normally. They may be non-function with regards to firewire as I have hacked in a timeout to resume processing. If this patchset allows your system to boot, I would love to know so that I can continue to hack upon your machine and figure out what needs to be adjusted to allow normal booting. Sean From bugmaster at FreeBSD.org Mon Oct 5 11:06:50 2009 From: bugmaster at FreeBSD.org (FreeBSD bugmaster) Date: Mon Oct 5 11:07:41 2009 Subject: Current problem reports assigned to freebsd-firewire@FreeBSD.org Message-ID: <200910051106.n95B6oAJ088643@freefall.freebsd.org> Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/136946 firewire [fwohci] fwohci throws an"unrecoverable error" upon re p kern/125673 firewire [firewire] [panic] FreeBSD7 panics when kldunloading f o kern/122951 firewire [firewire] video-transfer via fwcontrol triggers a pan o kern/118093 firewire [firewire] firewire bus reset hogs CPU, causing data t p kern/114646 firewire [firewire] [patch] firewire fails after suspend/resume o kern/113785 firewire [firewire] dropouts when playing DV on firewire o kern/97208 firewire [firewire] System hangs / locks up when a firewire dis o kern/74238 firewire [firewire] fw_rcv: unknown response; firewire ad-hoc w 8 problems total. From allinfo at gmx.de Sun Oct 11 17:30:17 2009 From: allinfo at gmx.de (Alexander Laroinov) Date: Sun Oct 11 17:30:23 2009 Subject: fwcontrol and Freebsd7.2 Message-ID: i have a problem with FreeBSD 7.2 and video-camera Panasonic GS-NV47 fwcontrol works with 7.0 but not work with 7.1 and 7.2 $ fwcontrol -R orig.avi fwcontrol: detect_recv_fn: ioctl FW_SSTBUF: Bad file descriptor freebsd 7.1 and 7.2 don`t look my device, but 7.0 look. From sean.bruno at dsl-only.net Sun Oct 11 22:46:26 2009 From: sean.bruno at dsl-only.net (Sean Bruno) Date: Sun Oct 11 22:46:33 2009 Subject: fwcontrol and Freebsd7.2 In-Reply-To: References: Message-ID: <1255301184.11234.1.camel@Lappy> I *think* that in 7.1 and higher, you might have to specify the "bus" number of the camera. "fwcontrol -u 0 -R orig.avi" or something. Let me know if this helps. Sean On Sun, 2009-10-11 at 21:04 +0400, Alexander Laroinov wrote: > i have a problem with FreeBSD 7.2 and video-camera Panasonic GS-NV47 > > fwcontrol works with 7.0 but not work with 7.1 and 7.2 > > $ fwcontrol -R orig.avi > fwcontrol: detect_recv_fn: ioctl FW_SSTBUF: Bad file descriptor > > > freebsd 7.1 and 7.2 don`t look my device, but 7.0 look. > > > > _______________________________________________ > freebsd-firewire@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-firewire > To unsubscribe, send any mail to "freebsd-firewire-unsubscribe@freebsd.org" From bugmaster at FreeBSD.org Mon Oct 12 11:06:52 2009 From: bugmaster at FreeBSD.org (FreeBSD bugmaster) Date: Mon Oct 12 11:07:51 2009 Subject: Current problem reports assigned to freebsd-firewire@FreeBSD.org Message-ID: <200910121106.n9CB6oAX036361@freefall.freebsd.org> Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/136946 firewire [fwohci] fwohci throws an"unrecoverable error" upon re p kern/125673 firewire [firewire] [panic] FreeBSD7 panics when kldunloading f o kern/122951 firewire [firewire] video-transfer via fwcontrol triggers a pan o kern/118093 firewire [firewire] firewire bus reset hogs CPU, causing data t p kern/114646 firewire [firewire] [patch] firewire fails after suspend/resume o kern/113785 firewire [firewire] dropouts when playing DV on firewire o kern/97208 firewire [firewire] System hangs / locks up when a firewire dis o kern/74238 firewire [firewire] fw_rcv: unknown response; firewire ad-hoc w 8 problems total. From linimon at FreeBSD.org Tue Oct 13 00:07:52 2009 From: linimon at FreeBSD.org (linimon@FreeBSD.org) Date: Tue Oct 13 00:07:58 2009 Subject: kern/139549: [firewire] reconnecting a firewire disk does not cause the disklabel to update correctly/invalidate the cache Message-ID: <200910130007.n9D07pQm026718@freefall.freebsd.org> Old Synopsis: reconnecting a firewire disk does not cause the disklabel to update correctly/invalidate the cache New Synopsis: [firewire] reconnecting a firewire disk does not cause the disklabel to update correctly/invalidate the cache Responsible-Changed-From-To: freebsd-bugs->freebsd-firewire Responsible-Changed-By: linimon Responsible-Changed-When: Tue Oct 13 00:06:45 UTC 2009 Responsible-Changed-Why: Over to maintainer(s). http://www.freebsd.org/cgi/query-pr.cgi?pr=139549 From sean.bruno at dsl-only.net Wed Oct 14 00:10:04 2009 From: sean.bruno at dsl-only.net (Sean Bruno) Date: Wed Oct 14 00:10:10 2009 Subject: kern/139549: [firewire] reconnecting a firewire disk does not cause the disklabel to update correctly/invalidate the cache Message-ID: <200910140010.n9E0A3vf099323@freefall.freebsd.org> The following reply was made to PR kern/139549; it has been noted by GNATS. From: Sean Bruno To: bug-followup@FreeBSD.org, dirkx@webweaving.org Cc: Subject: Re: kern/139549: [firewire] reconnecting a firewire disk does not cause the disklabel to update correctly/invalidate the cache Date: Tue, 13 Oct 2009 17:08:03 -0700 pre-8.0 has a default of "3" set to the sysctl "firewire.hold_count" or some such thing that keeps the disconnect/removal of a firewire device from doing "things". Try setting that value to "1" and see if the problem manifests itself. Sean From bugmaster at FreeBSD.org Mon Oct 19 11:06:51 2009 From: bugmaster at FreeBSD.org (FreeBSD bugmaster) Date: Mon Oct 19 11:07:58 2009 Subject: Current problem reports assigned to freebsd-firewire@FreeBSD.org Message-ID: <200910191106.n9JB6pEe063417@freefall.freebsd.org> Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/139549 firewire [firewire] reconnecting a firewire disk does not cause o kern/136946 firewire [fwohci] fwohci throws an"unrecoverable error" upon re p kern/125673 firewire [firewire] [panic] FreeBSD7 panics when kldunloading f o kern/122951 firewire [firewire] video-transfer via fwcontrol triggers a pan o kern/118093 firewire [firewire] firewire bus reset hogs CPU, causing data t p kern/114646 firewire [firewire] [patch] firewire fails after suspend/resume o kern/113785 firewire [firewire] dropouts when playing DV on firewire o kern/97208 firewire [firewire] System hangs / locks up when a firewire dis o kern/74238 firewire [firewire] fw_rcv: unknown response; firewire ad-hoc w 9 problems total. From bugmaster at FreeBSD.org Mon Oct 26 11:06:57 2009 From: bugmaster at FreeBSD.org (FreeBSD bugmaster) Date: Mon Oct 26 11:07:56 2009 Subject: Current problem reports assigned to freebsd-firewire@FreeBSD.org Message-ID: <200910261106.n9QB6vpN043734@freefall.freebsd.org> Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o kern/139549 firewire [firewire] reconnecting a firewire disk does not cause o kern/136946 firewire [fwohci] fwohci throws an"unrecoverable error" upon re p kern/125673 firewire [firewire] [panic] FreeBSD7 panics when kldunloading f o kern/122951 firewire [firewire] video-transfer via fwcontrol triggers a pan o kern/118093 firewire [firewire] firewire bus reset hogs CPU, causing data t p kern/114646 firewire [firewire] [patch] firewire fails after suspend/resume o kern/113785 firewire [firewire] dropouts when playing DV on firewire o kern/97208 firewire [firewire] System hangs / locks up when a firewire dis o kern/74238 firewire [firewire] fw_rcv: unknown response; firewire ad-hoc w 9 problems total. From sean.bruno at dsl-only.net Mon Oct 26 19:31:13 2009 From: sean.bruno at dsl-only.net (Sean Bruno) Date: Mon Oct 26 19:31:50 2009 Subject: [Fwd: Re: firewire issue] Message-ID: <1256585472.2607.4.camel@Lappy> Look over this patch from Andreas. I haven't done anything with it as I don't have the h/w to test with. Sean -------------- next part -------------- An embedded message was scrubbed... From: Andreas Tobler Subject: Re: firewire issue Date: Mon, 25 May 2009 23:12:25 +0200 Size: 14807 Url: http://lists.freebsd.org/pipermail/freebsd-firewire/attachments/20091026/94b25f11/attachment.eml From andreast-list at fgznet.ch Mon Oct 26 20:04:50 2009 From: andreast-list at fgznet.ch (Andreas Tobler) Date: Mon Oct 26 20:04:57 2009 Subject: [Fwd: Re: firewire issue] In-Reply-To: <1256585472.2607.4.camel@Lappy> References: <1256585472.2607.4.camel@Lappy> Message-ID: <4AE5FD28.8080208@fgznet.ch> Fabio, I do not know what the issue is. Sean Bruno wrote: > Look over this patch from Andreas. I haven't done anything with it as I > don't have the h/w to test with. Please use the attached diff instead, it might bring you a bit further. It is still not the final thing, but I did not have the time to follow up here. Busy with other stuff. The patch forwared from Sean is a bit old. Regards, Andreas -------------- next part -------------- Index: sys/dev/firewire/fwohci_pci.c =================================================================== --- sys/dev/firewire/fwohci_pci.c (revision 198452) +++ sys/dev/firewire/fwohci_pci.c (working copy) @@ -196,6 +196,10 @@ device_set_desc(dev, "Apple UniNorth"); return BUS_PROBE_DEFAULT; } + if (id == (FW_VENDORID_APPLE | FW_DEVICE_UNINORTH_V1)) { + device_set_desc(dev, "Apple UniNorth, v1"); + return BUS_PROBE_DEFAULT; + } if (id == (FW_VENDORID_LUCENT | FW_DEVICE_FW322)) { device_set_desc(dev, "Lucent FW322/323"); return BUS_PROBE_DEFAULT; @@ -285,6 +289,10 @@ fwohci_softc_t *sc = device_get_softc(self); int err; int rid; + uint32_t id; + + sc->old_uninorth = 0; + #if defined(__DragonFly__) || __FreeBSD_version < 500000 int intr; /* For the moment, put in a message stating what is wrong */ @@ -383,6 +391,12 @@ return (ENOMEM); } + id = pci_get_devid(self); + if (id == (FW_VENDORID_APPLE | FW_DEVICE_UNINORTH_V1)) { + sc->old_uninorth = 1; + device_printf(self, "Uninorth V1\n"); + } + err = fwohci_init(sc, self); if (err) { Index: sys/dev/firewire/fwohci.c =================================================================== --- sys/dev/firewire/fwohci.c (revision 198452) +++ sys/dev/firewire/fwohci.c (working copy) @@ -79,6 +79,7 @@ #undef OHCI_DEBUG static int nocyclemaster = 0; +static int old_uninorth = 0; int firewire_phydma_enable = 1; SYSCTL_DECL(_hw_firewire); SYSCTL_INT(_hw_firewire, OID_AUTO, nocyclemaster, CTLFLAG_RW, &nocyclemaster, 0, @@ -266,6 +267,15 @@ d_ioctl_t fwohci_ioctl; +#if BYTE_ORDER == BIG_ENDIAN +#define FWOHCI_DMA_READ_UNI(x) \ + old_uninorth ? (x) : FWOHCI_DMA_READ(x) +#define FWOHCI_DMA_WRITE_UNI(x,y) \ + old_uninorth ? ((x) = (y)) : FWOHCI_DMA_WRITE(x,y) +#else +#define FWOHCI_DMA_READ_UNI(x) FWOHCI_DMA_READ(x) +#define FWOHCI_DMA_WRITE_UNI(x,y) FWOHCI_DMA_WRITE(x,y) +#endif /* * Communication with PHY device */ @@ -624,6 +634,8 @@ return (ENXIO); } + old_uninorth = sc->old_uninorth; + /* Available Isochronous DMA channel probe */ OWRITE(sc, OHCI_IT_MASK, 0xffffffff); OWRITE(sc, OHCI_IR_MASK, 0xffffffff); @@ -1811,7 +1823,7 @@ fwohci_dump_intr(struct fwohci_softc *sc, uint32_t stat) { if(stat & OREAD(sc, FWOHCI_INTMASK)) - device_printf(fc->dev, "INTERRUPT < %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s> 0x%08x, 0x%08x\n", + device_printf(sc->fc.dev, "INTERRUPT < %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s> 0x%08x, 0x%08x\n", stat & OHCI_INT_EN ? "DMA_EN ":"", stat & OHCI_INT_PHY_REG ? "PHY_REG ":"", stat & OHCI_INT_CYC_LONG ? "CYC_LONG ":"", @@ -1848,7 +1860,7 @@ fc->status = FWBUSRESET; /* Disable bus reset interrupt until sid recv. */ OWRITE(sc, FWOHCI_INTMASKCLR, OHCI_INT_PHY_BUS_R); - + device_printf(fc->dev, "%s: BUS reset\n", __func__); OWRITE(sc, FWOHCI_INTMASKCLR, OHCI_INT_CYC_LOST); OWRITE(sc, OHCI_LNKCTLCLR, OHCI_CNTL_CYCSRC); @@ -2037,7 +2049,7 @@ return; } for (i = 0; i < plen / 4; i ++) - buf[i] = FWOHCI_DMA_READ(sc->sid_buf[i+1]); + buf[i] = FWOHCI_DMA_READ_UNI(sc->sid_buf[i+1]); /* pending all pre-bus_reset packets */ fwohci_txd(sc, &sc->atrq); @@ -2068,6 +2080,7 @@ fwohci_check_stat(struct fwohci_softc *sc) { uint32_t stat, irstat, itstat; + static int sid_count; FW_GLOCK_ASSERT(&sc->fc); stat = OREAD(sc, FWOHCI_INTSTAT); @@ -2076,8 +2089,14 @@ "device physically ejected?\n"); return (FILTER_STRAY); } - if (stat) + + if (stat && old_uninorth && (sid_count < 5)) { + OWRITE(sc, FWOHCI_INTSTATCLR, + stat & ~(OHCI_INT_PHY_BUS_R | OHCI_INT_PHY_SID)); + sid_count++; + } else { OWRITE(sc, FWOHCI_INTSTATCLR, stat & ~OHCI_INT_PHY_BUS_R); + } stat &= sc->intmask; if (stat == 0) @@ -2657,7 +2676,7 @@ int i; #endif - ld0 = FWOHCI_DMA_READ(fp->mode.ld[0]); + ld0 = FWOHCI_DMA_READ_UNI(fp->mode.ld[0]); #if 0 printf("ld0: x%08x\n", ld0); #endif @@ -2690,7 +2709,7 @@ } #if BYTE_ORDER == BIG_ENDIAN for(i = 0; i < slen/4; i ++) - fp->mode.ld[i] = FWOHCI_DMA_READ(fp->mode.ld[i]); + fp->mode.ld[i] = FWOHCI_DMA_READ_UNI(fp->mode.ld[i]); #endif return(hlen); } @@ -2884,7 +2903,7 @@ printf("nvec == 0\n"); /* DMA result-code will be written at the tail of packet */ - stat = FWOHCI_DMA_READ(*(uint32_t *)(ld - sizeof(struct fwohci_trailer))); + stat = FWOHCI_DMA_READ_UNI(*(uint32_t *)(ld - sizeof(struct fwohci_trailer))); #if 0 printf("plen: %d, stat %x\n", plen ,stat); Index: sys/dev/firewire/fwohcireg.h =================================================================== --- sys/dev/firewire/fwohcireg.h (revision 198452) +++ sys/dev/firewire/fwohcireg.h (working copy) @@ -73,6 +73,7 @@ #define FW_DEVICE_R5C552 (0x0552 << 16) #define FW_DEVICE_PANGEA (0x0030 << 16) #define FW_DEVICE_UNINORTH (0x0031 << 16) +#define FW_DEVICE_UNINORTH_V1 (0x0018 << 16) #define FW_DEVICE_AIC5800 (0x5800 << 16) #define FW_DEVICE_FW322 (0x5811 << 16) #define FW_DEVICE_7007 (0x7007 << 16) Index: sys/dev/firewire/fwohcivar.h =================================================================== --- sys/dev/firewire/fwohcivar.h (revision 198452) +++ sys/dev/firewire/fwohcivar.h (working copy) @@ -75,6 +75,7 @@ struct task fwohci_task_sid; struct task fwohci_task_dma; int cycle_lost; + int old_uninorth; } fwohci_softc_t; void fwohci_intr (void *arg); From info at maconnect.ch Mon Oct 26 20:34:10 2009 From: info at maconnect.ch (Fabio) Date: Mon Oct 26 20:34:17 2009 Subject: [Fwd: Re: firewire issue] In-Reply-To: <4AE5FD28.8080208@fgznet.ch> References: <1256585472.2607.4.camel@Lappy> <4AE5FD28.8080208@fgznet.ch> Message-ID: Dear Andreas and Sean, Thank you both for your quick answer. I'll see what I can do with Andreas' diff. Right now, I'm still fighting with sysinstall (trying to get the proper partition map) so it may take a while. Fabio Le 26 oct. 2009 ? 20:48, Andreas Tobler a ?crit : > Fabio, > > I do not know what the issue is. > > Sean Bruno wrote: >> Look over this patch from Andreas. I haven't done anything with it >> as I >> don't have the h/w to test with. > > Please use the attached diff instead, it might bring you a bit > further. > > It is still not the final thing, but I did not have the time to > follow up here. Busy with other stuff. > > The patch forwared from Sean is a bit old. > > Regards, > Andreas > > > > Index: sys/dev/firewire/fwohci_pci.c > =================================================================== > --- sys/dev/firewire/fwohci_pci.c (revision 198452) > +++ sys/dev/firewire/fwohci_pci.c (working copy) > @@ -196,6 +196,10 @@ > device_set_desc(dev, "Apple UniNorth"); > return BUS_PROBE_DEFAULT; > } > + if (id == (FW_VENDORID_APPLE | FW_DEVICE_UNINORTH_V1)) { > + device_set_desc(dev, "Apple UniNorth, v1"); > + return BUS_PROBE_DEFAULT; > + } > if (id == (FW_VENDORID_LUCENT | FW_DEVICE_FW322)) { > device_set_desc(dev, "Lucent FW322/323"); > return BUS_PROBE_DEFAULT; > @@ -285,6 +289,10 @@ > fwohci_softc_t *sc = device_get_softc(self); > int err; > int rid; > + uint32_t id; > + > + sc->old_uninorth = 0; > + > #if defined(__DragonFly__) || __FreeBSD_version < 500000 > int intr; > /* For the moment, put in a message stating what is wrong */ > @@ -383,6 +391,12 @@ > return (ENOMEM); > } > > + id = pci_get_devid(self); > + if (id == (FW_VENDORID_APPLE | FW_DEVICE_UNINORTH_V1)) { > + sc->old_uninorth = 1; > + device_printf(self, "Uninorth V1\n"); > + } > + > err = fwohci_init(sc, self); > > if (err) { > Index: sys/dev/firewire/fwohci.c > =================================================================== > --- sys/dev/firewire/fwohci.c (revision 198452) > +++ sys/dev/firewire/fwohci.c (working copy) > @@ -79,6 +79,7 @@ > #undef OHCI_DEBUG > > static int nocyclemaster = 0; > +static int old_uninorth = 0; > int firewire_phydma_enable = 1; > SYSCTL_DECL(_hw_firewire); > SYSCTL_INT(_hw_firewire, OID_AUTO, nocyclemaster, CTLFLAG_RW, > &nocyclemaster, 0, > @@ -266,6 +267,15 @@ > > d_ioctl_t fwohci_ioctl; > > +#if BYTE_ORDER == BIG_ENDIAN > +#define FWOHCI_DMA_READ_UNI(x) \ > + old_uninorth ? (x) : FWOHCI_DMA_READ(x) > +#define FWOHCI_DMA_WRITE_UNI(x,y) \ > + old_uninorth ? ((x) = (y)) : FWOHCI_DMA_WRITE(x,y) > +#else > +#define FWOHCI_DMA_READ_UNI(x) FWOHCI_DMA_READ(x) > +#define FWOHCI_DMA_WRITE_UNI(x,y) FWOHCI_DMA_WRITE(x,y) > +#endif > /* > * Communication with PHY device > */ > @@ -624,6 +634,8 @@ > return (ENXIO); > } > > + old_uninorth = sc->old_uninorth; > + > /* Available Isochronous DMA channel probe */ > OWRITE(sc, OHCI_IT_MASK, 0xffffffff); > OWRITE(sc, OHCI_IR_MASK, 0xffffffff); > @@ -1811,7 +1823,7 @@ > fwohci_dump_intr(struct fwohci_softc *sc, uint32_t stat) > { > if(stat & OREAD(sc, FWOHCI_INTMASK)) > - device_printf(fc->dev, "INTERRUPT < %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s > %s%s%s%s%s%s> 0x%08x, 0x%08x\n", > + device_printf(sc->fc.dev, "INTERRUPT < %s%s%s%s%s%s%s%s%s%s%s%s%s > %s%s%s%s%s%s%s%s> 0x%08x, 0x%08x\n", > stat & OHCI_INT_EN ? "DMA_EN ":"", > stat & OHCI_INT_PHY_REG ? "PHY_REG ":"", > stat & OHCI_INT_CYC_LONG ? "CYC_LONG ":"", > @@ -1848,7 +1860,7 @@ > fc->status = FWBUSRESET; > /* Disable bus reset interrupt until sid recv. */ > OWRITE(sc, FWOHCI_INTMASKCLR, OHCI_INT_PHY_BUS_R); > - > + > device_printf(fc->dev, "%s: BUS reset\n", __func__); > OWRITE(sc, FWOHCI_INTMASKCLR, OHCI_INT_CYC_LOST); > OWRITE(sc, OHCI_LNKCTLCLR, OHCI_CNTL_CYCSRC); > @@ -2037,7 +2049,7 @@ > return; > } > for (i = 0; i < plen / 4; i ++) > - buf[i] = FWOHCI_DMA_READ(sc->sid_buf[i+1]); > + buf[i] = FWOHCI_DMA_READ_UNI(sc->sid_buf[i+1]); > > /* pending all pre-bus_reset packets */ > fwohci_txd(sc, &sc->atrq); > @@ -2068,6 +2080,7 @@ > fwohci_check_stat(struct fwohci_softc *sc) > { > uint32_t stat, irstat, itstat; > + static int sid_count; > > FW_GLOCK_ASSERT(&sc->fc); > stat = OREAD(sc, FWOHCI_INTSTAT); > @@ -2076,8 +2089,14 @@ > "device physically ejected?\n"); > return (FILTER_STRAY); > } > - if (stat) > + > + if (stat && old_uninorth && (sid_count < 5)) { > + OWRITE(sc, FWOHCI_INTSTATCLR, > + stat & ~(OHCI_INT_PHY_BUS_R | OHCI_INT_PHY_SID)); > + sid_count++; > + } else { > OWRITE(sc, FWOHCI_INTSTATCLR, stat & ~OHCI_INT_PHY_BUS_R); > + } > > stat &= sc->intmask; > if (stat == 0) > @@ -2657,7 +2676,7 @@ > int i; > #endif > > - ld0 = FWOHCI_DMA_READ(fp->mode.ld[0]); > + ld0 = FWOHCI_DMA_READ_UNI(fp->mode.ld[0]); > #if 0 > printf("ld0: x%08x\n", ld0); > #endif > @@ -2690,7 +2709,7 @@ > } > #if BYTE_ORDER == BIG_ENDIAN > for(i = 0; i < slen/4; i ++) > - fp->mode.ld[i] = FWOHCI_DMA_READ(fp->mode.ld[i]); > + fp->mode.ld[i] = FWOHCI_DMA_READ_UNI(fp->mode.ld[i]); > #endif > return(hlen); > } > @@ -2884,7 +2903,7 @@ > printf("nvec == 0\n"); > > /* DMA result-code will be written at the tail of packet */ > - stat = FWOHCI_DMA_READ(*(uint32_t *)(ld - sizeof(struct > fwohci_trailer))); > + stat = FWOHCI_DMA_READ_UNI(*(uint32_t *)(ld - sizeof(struct > fwohci_trailer))); > #if 0 > printf("plen: %d, stat %x\n", > plen ,stat); > Index: sys/dev/firewire/fwohcireg.h > =================================================================== > --- sys/dev/firewire/fwohcireg.h (revision 198452) > +++ sys/dev/firewire/fwohcireg.h (working copy) > @@ -73,6 +73,7 @@ > #define FW_DEVICE_R5C552 (0x0552 << 16) > #define FW_DEVICE_PANGEA (0x0030 << 16) > #define FW_DEVICE_UNINORTH (0x0031 << 16) > +#define FW_DEVICE_UNINORTH_V1 (0x0018 << 16) > #define FW_DEVICE_AIC5800 (0x5800 << 16) > #define FW_DEVICE_FW322 (0x5811 << 16) > #define FW_DEVICE_7007 (0x7007 << 16) > Index: sys/dev/firewire/fwohcivar.h > =================================================================== > --- sys/dev/firewire/fwohcivar.h (revision 198452) > +++ sys/dev/firewire/fwohcivar.h (working copy) > @@ -75,6 +75,7 @@ > struct task fwohci_task_sid; > struct task fwohci_task_dma; > int cycle_lost; > + int old_uninorth; > } fwohci_softc_t; > > void fwohci_intr (void *arg); From sean.bruno at dsl-only.net Mon Oct 26 21:04:13 2009 From: sean.bruno at dsl-only.net (Sean Bruno) Date: Mon Oct 26 21:04:20 2009 Subject: [Fwd: Re: firewire issue] In-Reply-To: References: <1256585472.2607.4.camel@Lappy> <4AE5FD28.8080208@fgznet.ch> Message-ID: <1256591052.2607.55.camel@Lappy> I will ask around and see if I can get my hands on a G3 here in Oregon, USA. Sean On Mon, 2009-10-26 at 21:18 +0100, Fabio wrote: > Dear Andreas and Sean, > > Thank you both for your quick answer. I'll see what I can do with > Andreas' diff. Right now, I'm still fighting with sysinstall (trying > to get the proper partition map) so it may take a while. > > Fabio > > Le 26 oct. 2009 ? 20:48, Andreas Tobler a ?crit : > > > Fabio, > > > > I do not know what the issue is. > > > > Sean Bruno wrote: > >> Look over this patch from Andreas. I haven't done anything with it > >> as I > >> don't have the h/w to test with. > > > > Please use the attached diff instead, it might bring you a bit > > further. > > > > It is still not the final thing, but I did not have the time to > > follow up here. Busy with other stuff. > > > > The patch forwared from Sean is a bit old. > > > > Regards, > > Andreas > > > > > > > > Index: sys/dev/firewire/fwohci_pci.c > > =================================================================== > > --- sys/dev/firewire/fwohci_pci.c (revision 198452) > > +++ sys/dev/firewire/fwohci_pci.c (working copy) > > @@ -196,6 +196,10 @@ > > device_set_desc(dev, "Apple UniNorth"); > > return BUS_PROBE_DEFAULT; > > } > > + if (id == (FW_VENDORID_APPLE | FW_DEVICE_UNINORTH_V1)) { > > + device_set_desc(dev, "Apple UniNorth, v1"); > > + return BUS_PROBE_DEFAULT; > > + } > > if (id == (FW_VENDORID_LUCENT | FW_DEVICE_FW322)) { > > device_set_desc(dev, "Lucent FW322/323"); > > return BUS_PROBE_DEFAULT; > > @@ -285,6 +289,10 @@ > > fwohci_softc_t *sc = device_get_softc(self); > > int err; > > int rid; > > + uint32_t id; > > + > > + sc->old_uninorth = 0; > > + > > #if defined(__DragonFly__) || __FreeBSD_version < 500000 > > int intr; > > /* For the moment, put in a message stating what is wrong */ > > @@ -383,6 +391,12 @@ > > return (ENOMEM); > > } > > > > + id = pci_get_devid(self); > > + if (id == (FW_VENDORID_APPLE | FW_DEVICE_UNINORTH_V1)) { > > + sc->old_uninorth = 1; > > + device_printf(self, "Uninorth V1\n"); > > + } > > + > > err = fwohci_init(sc, self); > > > > if (err) { > > Index: sys/dev/firewire/fwohci.c > > =================================================================== > > --- sys/dev/firewire/fwohci.c (revision 198452) > > +++ sys/dev/firewire/fwohci.c (working copy) > > @@ -79,6 +79,7 @@ > > #undef OHCI_DEBUG > > > > static int nocyclemaster = 0; > > +static int old_uninorth = 0; > > int firewire_phydma_enable = 1; > > SYSCTL_DECL(_hw_firewire); > > SYSCTL_INT(_hw_firewire, OID_AUTO, nocyclemaster, CTLFLAG_RW, > > &nocyclemaster, 0, > > @@ -266,6 +267,15 @@ > > > > d_ioctl_t fwohci_ioctl; > > > > +#if BYTE_ORDER == BIG_ENDIAN > > +#define FWOHCI_DMA_READ_UNI(x) \ > > + old_uninorth ? (x) : FWOHCI_DMA_READ(x) > > +#define FWOHCI_DMA_WRITE_UNI(x,y) \ > > + old_uninorth ? ((x) = (y)) : FWOHCI_DMA_WRITE(x,y) > > +#else > > +#define FWOHCI_DMA_READ_UNI(x) FWOHCI_DMA_READ(x) > > +#define FWOHCI_DMA_WRITE_UNI(x,y) FWOHCI_DMA_WRITE(x,y) > > +#endif > > /* > > * Communication with PHY device > > */ > > @@ -624,6 +634,8 @@ > > return (ENXIO); > > } > > > > + old_uninorth = sc->old_uninorth; > > + > > /* Available Isochronous DMA channel probe */ > > OWRITE(sc, OHCI_IT_MASK, 0xffffffff); > > OWRITE(sc, OHCI_IR_MASK, 0xffffffff); > > @@ -1811,7 +1823,7 @@ > > fwohci_dump_intr(struct fwohci_softc *sc, uint32_t stat) > > { > > if(stat & OREAD(sc, FWOHCI_INTMASK)) > > - device_printf(fc->dev, "INTERRUPT < %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s > > %s%s%s%s%s%s> 0x%08x, 0x%08x\n", > > + device_printf(sc->fc.dev, "INTERRUPT < %s%s%s%s%s%s%s%s%s%s%s%s%s > > %s%s%s%s%s%s%s%s> 0x%08x, 0x%08x\n", > > stat & OHCI_INT_EN ? "DMA_EN ":"", > > stat & OHCI_INT_PHY_REG ? "PHY_REG ":"", > > stat & OHCI_INT_CYC_LONG ? "CYC_LONG ":"", > > @@ -1848,7 +1860,7 @@ > > fc->status = FWBUSRESET; > > /* Disable bus reset interrupt until sid recv. */ > > OWRITE(sc, FWOHCI_INTMASKCLR, OHCI_INT_PHY_BUS_R); > > - > > + > > device_printf(fc->dev, "%s: BUS reset\n", __func__); > > OWRITE(sc, FWOHCI_INTMASKCLR, OHCI_INT_CYC_LOST); > > OWRITE(sc, OHCI_LNKCTLCLR, OHCI_CNTL_CYCSRC); > > @@ -2037,7 +2049,7 @@ > > return; > > } > > for (i = 0; i < plen / 4; i ++) > > - buf[i] = FWOHCI_DMA_READ(sc->sid_buf[i+1]); > > + buf[i] = FWOHCI_DMA_READ_UNI(sc->sid_buf[i+1]); > > > > /* pending all pre-bus_reset packets */ > > fwohci_txd(sc, &sc->atrq); > > @@ -2068,6 +2080,7 @@ > > fwohci_check_stat(struct fwohci_softc *sc) > > { > > uint32_t stat, irstat, itstat; > > + static int sid_count; > > > > FW_GLOCK_ASSERT(&sc->fc); > > stat = OREAD(sc, FWOHCI_INTSTAT); > > @@ -2076,8 +2089,14 @@ > > "device physically ejected?\n"); > > return (FILTER_STRAY); > > } > > - if (stat) > > + > > + if (stat && old_uninorth && (sid_count < 5)) { > > + OWRITE(sc, FWOHCI_INTSTATCLR, > > + stat & ~(OHCI_INT_PHY_BUS_R | OHCI_INT_PHY_SID)); > > + sid_count++; > > + } else { > > OWRITE(sc, FWOHCI_INTSTATCLR, stat & ~OHCI_INT_PHY_BUS_R); > > + } > > > > stat &= sc->intmask; > > if (stat == 0) > > @@ -2657,7 +2676,7 @@ > > int i; > > #endif > > > > - ld0 = FWOHCI_DMA_READ(fp->mode.ld[0]); > > + ld0 = FWOHCI_DMA_READ_UNI(fp->mode.ld[0]); > > #if 0 > > printf("ld0: x%08x\n", ld0); > > #endif > > @@ -2690,7 +2709,7 @@ > > } > > #if BYTE_ORDER == BIG_ENDIAN > > for(i = 0; i < slen/4; i ++) > > - fp->mode.ld[i] = FWOHCI_DMA_READ(fp->mode.ld[i]); > > + fp->mode.ld[i] = FWOHCI_DMA_READ_UNI(fp->mode.ld[i]); > > #endif > > return(hlen); > > } > > @@ -2884,7 +2903,7 @@ > > printf("nvec == 0\n"); > > > > /* DMA result-code will be written at the tail of packet */ > > - stat = FWOHCI_DMA_READ(*(uint32_t *)(ld - sizeof(struct > > fwohci_trailer))); > > + stat = FWOHCI_DMA_READ_UNI(*(uint32_t *)(ld - sizeof(struct > > fwohci_trailer))); > > #if 0 > > printf("plen: %d, stat %x\n", > > plen ,stat); > > Index: sys/dev/firewire/fwohcireg.h > > =================================================================== > > --- sys/dev/firewire/fwohcireg.h (revision 198452) > > +++ sys/dev/firewire/fwohcireg.h (working copy) > > @@ -73,6 +73,7 @@ > > #define FW_DEVICE_R5C552 (0x0552 << 16) > > #define FW_DEVICE_PANGEA (0x0030 << 16) > > #define FW_DEVICE_UNINORTH (0x0031 << 16) > > +#define FW_DEVICE_UNINORTH_V1 (0x0018 << 16) > > #define FW_DEVICE_AIC5800 (0x5800 << 16) > > #define FW_DEVICE_FW322 (0x5811 << 16) > > #define FW_DEVICE_7007 (0x7007 << 16) > > Index: sys/dev/firewire/fwohcivar.h > > =================================================================== > > --- sys/dev/firewire/fwohcivar.h (revision 198452) > > +++ sys/dev/firewire/fwohcivar.h (working copy) > > @@ -75,6 +75,7 @@ > > struct task fwohci_task_sid; > > struct task fwohci_task_dma; > > int cycle_lost; > > + int old_uninorth; > > } fwohci_softc_t; > > > > void fwohci_intr (void *arg); > > _______________________________________________ > freebsd-firewire@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-firewire > To unsubscribe, send any mail to "freebsd-firewire-unsubscribe@freebsd.org" From andreast-list at fgznet.ch Mon Oct 26 21:47:00 2009 From: andreast-list at fgznet.ch (Andreas Tobler) Date: Mon Oct 26 21:47:05 2009 Subject: [Fwd: Re: firewire issue] In-Reply-To: References: <1256585472.2607.4.camel@Lappy> <4AE5FD28.8080208@fgznet.ch> Message-ID: <4AE618CA.9020404@fgznet.ch> Fabio, Fabio wrote: > Thank you both for your quick answer. I'll see what I can do with > Andreas' diff. Right now, I'm still fighting with sysinstall (trying > to get the proper partition map) so it may take a while. Are you trying to install FreeBSD on an external firewire disk? Or do you have a firewire device attached to you imac G3 and want to install to an internal disk? If the first is true, I'm sorry, I feel it won't work since early Apple Firewire chips are broken in several ways. If the second is true, please try to detach any firewire devices from your G3 before booting. The firewire code from 8.0/CURRENT goes into an infinite loop with this crappy chip. If both are not true, if you can, try to use the pdisk from OS-X to format your partition you want fbsd installed on. Just guessing. Andreas From info at maconnect.ch Tue Oct 27 07:18:12 2009 From: info at maconnect.ch (Fabio) Date: Tue Oct 27 07:18:19 2009 Subject: [Fwd: Re: firewire issue] In-Reply-To: <4AE618CA.9020404@fgznet.ch> References: <1256585472.2607.4.camel@Lappy> <4AE5FD28.8080208@fgznet.ch> <4AE618CA.9020404@fgznet.ch> Message-ID: <13200B3B-AFAB-465C-A635-93CDA2C6DA5B@maconnect.ch> Le 26 oct. 2009 ? 22:46, Andreas Tobler a ?crit : > Fabio, > > Fabio wrote: > >> Thank you both for your quick answer. I'll see what I can do with >> Andreas' diff. Right now, I'm still fighting with sysinstall >> (trying to get the proper partition map) so it may take a while. > > Are you trying to install FreeBSD on an external firewire disk? Or > do you have a firewire device attached to you imac G3 and want to > install to an internal disk? > If the first is true, I'm sorry, I feel it won't work since early > Apple Firewire chips are broken in several ways. > If the second is true, please try to detach any firewire devices > from your G3 before booting. No FW device is attached at all. > The firewire code from 8.0/CURRENT goes into an infinite loop with > this crappy chip. Well for now I'm booting from an USB 1.0 HD, but my ultimate goal is to boot from the FW. I'm not ready to give up right now ^^ > If both are not true, if you can, try to use the pdisk from OS-X to > format your partition you want fbsd installed on. That's what I did. In fact, this is my partition map: #: type name length base ( size ) 1: Apple_partition_map Apple 63 @ 1 2: Apple_Bootstrap freebsd_boot 4000 @ 64 ( 2.0M) 3: Apple_HFS Extra 156297424 @ 4064 ( 74.5G) But I keep getting an "Operation not permitted" with sysinstall. I even tried fdisk. And I used the "dd" command to copy the boot1.hfs file. I'll see if I can find an answer in the freebsd-ppc list archive. Fabio From sean.bruno at dsl-only.net Wed Oct 28 20:34:23 2009 From: sean.bruno at dsl-only.net (Sean Bruno) Date: Wed Oct 28 20:34:30 2009 Subject: Bootable Firewire Drives Message-ID: <1256762062.2790.17.camel@Lappy> Does anyone have a good idea of what(if any) motherboard bios' support firewire as a bootable target? None of my machines seem to be able to boot off an external firewire drive which is hampering my efforts to prove out the code. Sean From doconnor at gsoft.com.au Thu Oct 29 01:33:36 2009 From: doconnor at gsoft.com.au (Daniel O'Connor) Date: Thu Oct 29 01:33:42 2009 Subject: Bootable Firewire Drives In-Reply-To: <1256762062.2790.17.camel@Lappy> References: <1256762062.2790.17.camel@Lappy> Message-ID: <200910291144.49847.doconnor@gsoft.com.au> On Thu, 29 Oct 2009, Sean Bruno wrote: > Does anyone have a good idea of what(if any) motherboard bios' > support firewire as a bootable target? > > None of my machines seem to be able to boot off an external firewire > drive which is hampering my efforts to prove out the code. No PC BIOS I have ever seen mentions it.. I believe Macs can do it (and have been able to do so for a while) -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 188 bytes Desc: This is a digitally signed message part. Url : http://lists.freebsd.org/pipermail/freebsd-firewire/attachments/20091029/544e591f/attachment.pgp From Dirk-Willem.van.Gulik at bbc.co.uk Sat Oct 31 17:58:48 2009 From: Dirk-Willem.van.Gulik at bbc.co.uk (Dirk-Willem van Gulik) Date: Sat Oct 31 17:58:53 2009 Subject: kern/139549: [firewire] reconnecting a firewire disk does not cause the disklabel to update correctly/invalidate the cache Message-ID: <4AEC7413.4020304@bbc.co.uk> Sean wrote: > pre-8.0 has a default of "3" set to the sysctl "firewire.hold_count" or > some such thing that keeps the disconnect/removal of a firewire device > from doing "things". > > Try setting that value to "1" and see if the problem manifests itself. Regardless of the setting - it seems that the disklabel continues to be cached - and thus no updating of the /dev's (e.g. matching the actual slices/partitions) happens. I guess that we need a firewire.force_update_on_reconnect which completley wacks any disklabel/da -or- perhaps abandons trying to use the lowest number possible; but keeps on counting it as a higher one. Thanks, Dw http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system. Do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this. From Dirk-Willem.van.Gulik at bbc.co.uk Sat Oct 31 18:00:15 2009 From: Dirk-Willem.van.Gulik at bbc.co.uk (Dirk-Willem van Gulik) Date: Sat Oct 31 18:00:20 2009 Subject: kern/139549: [firewire] reconnecting a firewire disk does not cause the disklabel to update correctly/invalidate the cache Message-ID: <200910311800.n9VI0DoU029259@freefall.freebsd.org> The following reply was made to PR kern/139549; it has been noted by GNATS. From: Dirk-Willem van Gulik To: FreeBSD-gnats-submit@FreeBSD.org, freebsd-firewire@FreeBSD.org Cc: Subject: kern/139549: [firewire] reconnecting a firewire disk does not cause the disklabel to update correctly/invalidate the cache Date: Sat, 31 Oct 2009 18:29:55 +0100 Sean wrote: > pre-8.0 has a default of "3" set to the sysctl "firewire.hold_count" or > some such thing that keeps the disconnect/removal of a firewire device > from doing "things". > > Try setting that value to "1" and see if the problem manifests itself. Regardless of the setting - it seems that the disklabel continues to be cached - and thus no updating of the /dev's (e.g. matching the actual slices/partitions) happens. I guess that we need a firewire.force_update_on_reconnect which completley wacks any disklabel/da -or- perhaps abandons trying to use the lowest number possible; but keeps on counting it as a higher one. Thanks, Dw http://www.bbc.co.uk/ This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated. If you have received it in error, please delete it from your system. Do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately. Please note that the BBC monitors e-mails sent or received. Further communication will signify your consent to this. From andreast-list at fgznet.ch Sat Oct 31 22:14:44 2009 From: andreast-list at fgznet.ch (Andreas Tobler) Date: Sat Oct 31 22:14:50 2009 Subject: [Fwd: Re: firewire issue] In-Reply-To: <13200B3B-AFAB-465C-A635-93CDA2C6DA5B@maconnect.ch> References: <1256585472.2607.4.camel@Lappy> <4AE5FD28.8080208@fgznet.ch> <4AE618CA.9020404@fgznet.ch> <13200B3B-AFAB-465C-A635-93CDA2C6DA5B@maconnect.ch> Message-ID: <4AECB6B8.9090804@fgznet.ch> Hi Fabio, Fabio wrote: > Le 26 oct. 2009 ? 22:46, Andreas Tobler a ?crit : >>> Thank you both for your quick answer. I'll see what I can do with >>> Andreas' diff. Right now, I'm still fighting with sysinstall >>> (trying to get the proper partition map) so it may take a while. >> Are you trying to install FreeBSD on an external firewire disk? Or >> do you have a firewire device attached to you imac G3 and want to >> install to an internal disk? >> If the first is true, I'm sorry, I feel it won't work since early >> Apple Firewire chips are broken in several ways. >> If the second is true, please try to detach any firewire devices >> from your G3 before booting. > > No FW device is attached at all. I experienced myself :( >> The firewire code from 8.0/CURRENT goes into an infinite loop with >> this crappy chip. > > Well for now I'm booting from an USB 1.0 HD, but my ultimate goal is > to boot from the FW. I'm not ready to give up right now ^^ > >> If both are not true, if you can, try to use the pdisk from OS-X to >> format your partition you want fbsd installed on. > > That's what I did. In fact, this is my partition map: > > #: type name length > base ( size ) > 1: Apple_partition_map Apple 63 @ 1 > 2: Apple_Bootstrap freebsd_boot 4000 @ 64 ( 2.0M) > 3: Apple_HFS Extra 156297424 @ 4064 ( 74.5G) > > But I keep getting an "Operation not permitted" with sysinstall. I > even tried fdisk. And I used the "dd" command to copy the boot1.hfs > file. > I'll see if I can find an answer in the freebsd-ppc list archive. I saw that you managed to find a solution so far, w/o firewire. Myself I tried to get into the same stage as you're in. I think I'm there now. I learned a lot, thanks to Marcel@. I did an installation of RC2 on my ancient imac onto an USB based drive. Your hints about the 'free' slices seems to be worth. First I gpart'ed my drive w/o spare slices, I was not able that the installer recognized my drive. Later I added some free slices in between and then, surprise, the installer recognized my drive. I was able to install RC2 onto this drive including booting from it. With pressing 'alt' at boottime and selecting the USB drive as boot/root drive. Great so far. Now I have to jump into the fact where firewire kills the booting process. I think I know where, but it'll take some time. In short, I'm working on. Gruss, Andreas From info at maconnect.ch Sat Oct 31 23:30:06 2009 From: info at maconnect.ch (Fabio) Date: Sat Oct 31 23:30:13 2009 Subject: [Fwd: Re: firewire issue] In-Reply-To: <4AECB6B8.9090804@fgznet.ch> References: <1256585472.2607.4.camel@Lappy> <4AE5FD28.8080208@fgznet.ch> <4AE618CA.9020404@fgznet.ch> <13200B3B-AFAB-465C-A635-93CDA2C6DA5B@maconnect.ch> <4AECB6B8.9090804@fgznet.ch> Message-ID: <4CC75C6A-5261-44FB-B99A-BD6A96FFC332@maconnect.ch> Dear Andreas, > Hi Fabio, > > Fabio wrote: >> Le 26 oct. 2009 ? 22:46, Andreas Tobler a ?crit : > >>>> Thank you both for your quick answer. I'll see what I can do >>>> with Andreas' diff. Right now, I'm still fighting with >>>> sysinstall (trying to get the proper partition map) so it may >>>> take a while. >>> Are you trying to install FreeBSD on an external firewire disk? >>> Or do you have a firewire device attached to you imac G3 and want >>> to install to an internal disk? >>> If the first is true, I'm sorry, I feel it won't work since early >>> Apple Firewire chips are broken in several ways. >>> If the second is true, please try to detach any firewire devices >>> from your G3 before booting. >> No FW device is attached at all. > > I experienced myself :( Well at least the bug can be reproduced every times. That's a good news actually. > I saw that you managed to find a solution so far, w/o firewire. Yes. For those that don't know, this is how I did it: http://forums.freebsd.org/showthread.php?p=46921#post46921 I installed 8rc1 on a USB 1.1 HD. Right now I'm compiling firefox, it's taking more than 10 hours ! My next step will be to figure out how ACPI works. > Myself I tried to get into the same stage as you're in. I have a working freebsd with an internet connection. I've installed ports and everything is working beautifully so far. I'd recommend to install perl since it's required by a lot of stuff afaik. > I think I'm there now. I learned a lot, thanks to Marcel@. > > I did an installation of RC2 on my ancient imac onto an USB based > drive. Your hints about the 'free' slices seems to be worth. > First I gpart'ed my drive w/o spare slices, I was not able that the > installer recognized my drive. Later I added some free slices in > between and then, surprise, the installer recognized my drive. The only thing is that the drive mounts on mac os, but it appears empty. Probably because we should change the Apple_HFS to something else (UFS something, don't know what). > I was able to install RC2 onto this drive including booting from it. > With pressing 'alt' at boottime and selecting the USB drive as boot/ > root drive. Great ! > Great so far. Now I have to jump into the fact where firewire kills > the booting process. I think I know where, but it'll take some time. > > In short, I'm working on. I have little spare time, but I'd be very happy to help. Let me know if there is anything I can do. > Gruss, > Andreas Fabio