Update of /cvsroot/alsa/alsa-driver/acore
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27964/acore
Modified Files:
sgbuf.c
Log Message:
fixed the compilation for 2.2/2.4 kernels.
Index: sgbuf.c
===================================================================
RCS file: /cvsroot/alsa/alsa-driver/acore/sgbuf.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- sgbuf.c 2 Mar 2004 15:32:35 -0000 1.6
+++ sgbuf.c 3 Mar 2004 11:51:09 -0000 1.7
@@ -57,8 +57,14 @@
unsigned int i;
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 4, 0)
unsigned long rmask;
- if (sgbuf->dev->dev.dev->dma_mask)
- rmask = ~((unsigned long)(*sgbuf->dev->dev.dev->dma_mask));
+ if (sgbuf->dev.type == SNDRV_DMA_TYPE_PCI)
+ rmask = sgbuf->dev.dev.pci->dma_mask;
+ else if (sgbuf->dev.dev.dev->dma_mask)
+ rmask = *sgbuf->dev.dev.dev->dma_mask;
+ else
+ rmask = 0;
+ if (rmask)
+ rmask = ~rmask;
else
rmask = ~0xffffffUL;
#endif
@@ -139,7 +145,11 @@
if (! sgbuf)
return NULL;
memset(sgbuf, 0, sizeof(*sgbuf));
- sgbuf->dev = dev;
+ sgbuf->dev = *dev;
+ if (dev->type == SNDRV_DMA_TYPE_PCI_SG)
+ sgbuf->dev.type = SNDRV_DMA_TYPE_PCI;
+ else
+ sgbuf->dev.type =SNDRV_DMA_TYPE_DEV;
pages = snd_sgbuf_aligned_pages(size);
sgbuf->tblsize = sgbuf_align_table(pages);
sgbuf->table = kmalloc(sizeof(*sgbuf->table) * sgbuf->tblsize, GFP_KERNEL);
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
Alsa-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-cvslog