From owner-freebsd-multimedia Sat Mar 29 12:20:44 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id MAA10917 for multimedia-outgoing; Sat, 29 Mar 1997 12:20:44 -0800 (PST) Received: from rah.star-gate.com (rah.star-gate.com [204.188.121.18]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id MAA10912 for ; Sat, 29 Mar 1997 12:20:40 -0800 (PST) Received: from rah.star-gate.com (localhost.star-gate.com [127.0.0.1]) by rah.star-gate.com (8.8.5/8.7.3) with ESMTP id MAA10154; Sat, 29 Mar 1997 12:20:34 -0800 (PST) Message-Id: <199703292020.MAA10154@rah.star-gate.com> X-Mailer: exmh version 1.6.9 8/22/96 To: Richard Tobin cc: Steve Passe , multimedia@freebsd.org Subject: Re: newest bt848 driver In-reply-to: Your message of "Sat, 29 Mar 1997 15:12:10 GMT." <27837.199703291512@pitcairn.cogsci.ed.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sat, 29 Mar 1997 12:20:33 -0800 From: Amancio Hasty Sender: owner-multimedia@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >From The Desk Of Richard Tobin : > #define DMA_PROG_ALLOC 8 > ... > bktr->dma_prog = get_bktr_mem(unit, DMA_PROG_ALLOC); > > This appears to be allocating only 8 bytes for the DMA program??? > > -- Richard > get_bktr_mem allocates memory in terms of pages (4096 bytes) static vm_offset_t get_bktr_mem( int unit, unsigned size ) { vm_offset_t addr = 0; addr = vm_page_alloc_contig(size, 0x100000, 0xffffffff, 1<<24); if (addr == 0) addr = vm_page_alloc_contig(size, 0x100000, 0xffffffff, PAGE_SIZE); if (addr == 0) { printf("meteor%d: Unable to allocate %d bytes of memory.\n", unit, size); } return addr; } in /sys/vm/vm_page.c: vm_offset_t vm_page_alloc_contig(size, low, high, alignment) vm_offset_t size; vm_offset_t low; vm_offset_t high; vm_offset_t alignment; { return ((vm_offset_t)contigmalloc(size, M_DEVBUF, M_NOWAIT, low, high, alignment, 0ul)); } Have fun, Amancio