Date: Sat, 10 Nov 2007 15:52:33 +1100 (EST) From: Ian Smith <smithi@nimnet.asn.au> To: =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@deepcore.dk> Cc: freebsd-stable@freebsd.org, Henrik Brix Andersen <brix@freebsd.org>, sos@freebsd.org Subject: Re: 7 on Soekris net4801? Message-ID: <Pine.BSF.3.96.1071110144528.24131A-100000@gaia.nimnet.asn.au> In-Reply-To: <4732F067.7080601@deepcore.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 8 Nov 2007, Søren Schmidt wrote: > Ian Smith wrote: > > On Sat, 3 Nov 2007, Henrik Brix Andersen wrote: > > > On Sun, Nov 04, 2007 at 02:59:36AM +1100, Ian Smith wrote: > > > > any particular/new issues with RELENG_7 on the Soekris net4801? > > > > > > > > Thought I should check before upgrading my T23 as a build platform .. > > > > I haven't done this before, and will be relying on the howtos for 6.X > > > > > > I recently upgraded two of my net4801s to RELENG_7 - the only problem > > > I have seen so far, is that savecore(8) attempts to do non-aligned DMA > > > transfers and fails. I haven't had time to dig further into this issue > > > yet, though. > > > > Thanks, Brix. I'm wondering if that's still (again?) to do with item 3 > > at http://www.soekris.com/Issue0003.htm ? I've no idea whether a similar > > 'quick-fix' to that given for FreeBSD 4.X to /sys/dev/ata/ata-dma.c > > would work with the 5.5-S and 6.1-R code I have here, noting that the > > alignment is now specified in bytes rather than the earlier bytes-1, so > > '4' is presumably the value needed for dword alignment. > > > > Hmm, ok, trying to dig a little deeper .. rev 1.118 notes say: > > > > Add support for a the National Geode SC1100. Thanks to Soekris engineering > > for sponsoring a Soekris 4801 to make this support. > > > > but I couldn't find anywhere in 1.118 or in later versions up to 1.147 > > (RELENG_7, HEAD) that does anything other than 'ch->dma->alignment = 2;' > > > > (Not that me not finding it means much :) I also noticed at 1.137.2.2: > > > > Add support for using DMA on dump, greatly speeds up the dump process. > > > > Copying Soren in case he may have a bead on this, but it hardly seems > > any impediment to preparation or building for it when the box arrives. > > > > > Actually aligment is set to 16 but a bit untraditionally in > ata_national_setmode(). :) Thanks for the pointer. > I should change that to do it in an ata_national_allocate() function > which now can contain just a few lines. > > I'd figure that the problem is that the geode chip doesn't support 128 > sector writes just up to 126, that is not honered from the dump rutine IIRC. So it's the "can't do 64K DMA transfers" problem biting? I poked around through savecore.c and kerneldump.h but couldn't figure out where it might set anything like that up; it's all a bit far over my head. What might be needed to fix this? Using 32K (64 sectors) for the Geode instead (and perhaps the/some cyrix, as it sets up for 126 sectors too)? Cheers, Ian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.1071110144528.24131A-100000>