From owner-freebsd-hackers@FreeBSD.ORG Tue Jan 9 10:53:03 2007 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 4304C16A415 for ; Tue, 9 Jan 2007 10:53:03 +0000 (UTC) (envelope-from jacques.fourie@gmail.com) Received: from ug-out-1314.google.com (ug-out-1314.google.com [66.249.92.168]) by mx1.freebsd.org (Postfix) with ESMTP id D12A213C4A8 for ; Tue, 9 Jan 2007 10:53:00 +0000 (UTC) (envelope-from jacques.fourie@gmail.com) Received: by ug-out-1314.google.com with SMTP id o2so5819145uge for ; Tue, 09 Jan 2007 02:52:59 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:mime-version:content-type; b=FV2la3F1HQdViiFGSdiJ7yuq4LS3MclmSwRybEgGCS6OW3hDAPSgbpQpfn/piJkyad2qydzpgCxIw+iIKR/mV+Qe78JjJ1CdFCUQwR/B5OhRZsSf+cV0PoW+2hizTUdp88g3TLnyo1ghAAcGeQw0XmBGZy4DxaHczB4Sq79SzNk= Received: by 10.78.183.15 with SMTP id g15mr4429264huf.1168338390794; Tue, 09 Jan 2007 02:26:30 -0800 (PST) Received: by 10.78.198.12 with HTTP; Tue, 9 Jan 2007 02:26:30 -0800 (PST) Message-ID: Date: Tue, 9 Jan 2007 12:26:30 +0200 From: "Jacques Fourie" To: freebsd-hackers@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: Reserving large contiguous block of RAM for device X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Jan 2007 10:53:03 -0000 Hi, I am in the process of porting a Linux device driver to FreeBSD. In Linux, a large block of RAM (256MB) is reserved by using the 'mem=' and 'memmap=' arguments to the kernel. In the device driver, ioremap() is used to map this memory into kernel virtual memory. In FreeBSD contigmalloc() is available but due to the large amount of physical memory required this may not work reliably. Is there an existing method to reserve a large block of RAM early in the boot process? regards, jacques