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