From owner-freebsd-amd64@FreeBSD.ORG Mon Nov 8 23:41:52 2004 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D00CE16A4CE for ; Mon, 8 Nov 2004 23:41:52 +0000 (GMT) Received: from mail.jrv.org (rrcs-24-73-246-106.sw.biz.rr.com [24.73.246.106]) by mx1.FreeBSD.org (Postfix) with ESMTP id 531C043D1F for ; Mon, 8 Nov 2004 23:41:52 +0000 (GMT) (envelope-from james@jrv.org) Received: from [192.168.3.156] (zippy.jrv.org [192.168.3.156]) (authenticated bits=0) by mail.jrv.org (8.12.11/8.12.10) with ESMTP id iA8NfmVO048750 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 8 Nov 2004 17:41:49 -0600 (CST) (envelope-from james@jrv.org) Message-ID: <4190043C.3030409@jrv.org> Date: Mon, 08 Nov 2004 17:41:48 -0600 From: "James R. Van Artsalen" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.3) Gecko/20040910 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Vinod Kashyap References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit cc: freebsd-amd64@freebsd.org Subject: Re: How to debug >2GB memory issues (and 3ware) X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Nov 2004 23:41:52 -0000 Vinod Kashyap wrote: >The 3ware driver (twe) for 7xxx/8xxx controllers can handle upto >4 GB memory on FreeBSD 4.x, and beyond 4 GB on FreeBSD 5.x. The >driver (twa) for 9xxx controllers can handle memory beyond 4 GB >on both 4.x and 5.x. > > The twe driver in MAIN seems to be limited to direct access to the lower 4GB. Am I misinterpreting the significance of this code in twe_freebsd.c? /* * Allocate the parent bus DMA tag appropriate for PCI. */ if (bus_dma_tag_create(NULL, /* parent */ 1, 0, /* alignment, boundary */ BUS_SPACE_MAXADDR_32BIT, /* lowaddr */ BUS_SPACE_MAXADDR, /* highaddr */ NULL, NULL, /* filter, filterarg */ MAXBSIZE, TWE_MAX_SGL_LENGTH, /* maxsize, nsegments */ BUS_SPACE_MAXSIZE_32BIT, /* maxsegsize */ BUS_DMA_ALLOCNOW, /* flags */ NULL, /* lockfunc */ NULL, /* lockarg */