From owner-freebsd-alpha@FreeBSD.ORG Mon Jun 16 18:19:27 2003 Return-Path: Delivered-To: freebsd-alpha@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BE6D737B401 for ; Mon, 16 Jun 2003 18:19:27 -0700 (PDT) Received: from duke.cs.duke.edu (duke.cs.duke.edu [152.3.140.1]) by mx1.FreeBSD.org (Postfix) with ESMTP id DDFDF43FA3 for ; Mon, 16 Jun 2003 18:19:26 -0700 (PDT) (envelope-from gallatin@cs.duke.edu) Received: from grasshopper.cs.duke.edu (grasshopper.cs.duke.edu [152.3.145.30]) by duke.cs.duke.edu (8.12.9/8.12.9) with ESMTP id h5H1JOJD020543 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Mon, 16 Jun 2003 21:19:24 -0400 (EDT) Received: (from gallatin@localhost) by grasshopper.cs.duke.edu (8.11.6/8.9.1) id h5H1JJB77461; Mon, 16 Jun 2003 21:19:19 -0400 (EDT) (envelope-from gallatin@cs.duke.edu) From: Andrew Gallatin MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <16110.27799.68056.48679@grasshopper.cs.duke.edu> Date: Mon, 16 Jun 2003 21:19:19 -0400 (EDT) To: Jeff Roberson In-Reply-To: <20030613190624.W36168-100000@mail.chesapeake.net> References: <16094.16676.273466.121560@grasshopper.cs.duke.edu> <20030613190624.W36168-100000@mail.chesapeake.net> X-Mailer: VM 6.75 under 21.1 (patch 12) "Channel Islands" XEmacs Lucid cc: freebsd-alpha@freebsd.org Subject: Re: 5.1beta2 on Alpha ES40 w/ 32GB pys ram X-BeenThere: freebsd-alpha@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the Alpha List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Jun 2003 01:19:28 -0000 Jeff Roberson writes: > On Wed, 4 Jun 2003, Andrew Gallatin wrote: > > > > > > > Andrea Cocito writes: > > > Hallo, > > > > > > I have a little (??) problem trying to boot FreeBSD 5.1beta2 > > > on an ES40 with 32 gigs of physical RAM, this is the status: > > > > > > > You have to limit physical memory to 2GB or less. Otherwise, DMAs > > won't work. > > > > Drew > > Is this because we dont program the TLB on the DMA controller? I heard > rumors that sparc64 has code to handle all of this for their chipsets. If > they have the infrastructure it may not be hard to port. > We program it, but we do not take full advantage of it: Most alphas have 4 DMA windows. We typically use 1 window for ISA dma, meaning we can do zero-copy (no bounce buffer) DMA to any ISA device. This is only 16MB in size. We use another window as a 'direct map' window, meaning we map physical addresses 0..1GB (or 0..2GB) into PCI address space, generally at offset 1GB in PCI address space. We should use another window for 32-bit PCI DMA, and we should enable the "monster window" bit, so that devices which are DAC (64-bit) address capable don't need to deal with the TLB on the DMA controller. We don't currently do either. Last I checked, NetBSD didn't have a separate window for PCI DMA, but Linux and Tru64 did. If you think it would be possible to leverage some of the sparc64 work, that would be great. Are you interested in working on it? That would be even better ;) Drew