X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sound%2Foss%2Fes1371.c;h=0fc6334d4f637ac8c2852495c67f605bc1a2e7ef;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=d6b59fbe5ad3c40dbc0db1b3ab94a7701d102640;hpb=9bf4aaab3e101692164d49b7ca357651eb691cb6;p=linux-2.6.git diff --git a/sound/oss/es1371.c b/sound/oss/es1371.c index d6b59fbe5..0fc6334d4 100644 --- a/sound/oss/es1371.c +++ b/sound/oss/es1371.c @@ -637,7 +637,7 @@ static void set_dac2_rate(struct es1371_state *s, unsigned rate) /* --------------------------------------------------------------------- */ -static void __init src_init(struct es1371_state *s) +static void __devinit src_init(struct es1371_state *s) { unsigned int i; @@ -910,7 +910,7 @@ static int prog_dmabuf(struct es1371_state *s, struct dmabuf *db, unsigned rate, if (!db->rawbuf) return -ENOMEM; db->buforder = order; - /* now mark the pages as reserved; otherwise remap_page_range doesn't do what we want */ + /* now mark the pages as reserved; otherwise remap_pfn_range doesn't do what we want */ pend = virt_to_page(db->rawbuf + (PAGE_SIZE << db->buforder) - 1); for (page = virt_to_page(db->rawbuf); page <= pend; page++) SetPageReserved(page); @@ -1555,7 +1555,9 @@ static int es1371_mmap(struct file *file, struct vm_area_struct *vma) ret = -EINVAL; goto out; } - if (remap_page_range(vma, vma->vm_start, virt_to_phys(db->rawbuf), size, vma->vm_page_prot)) { + if (remap_pfn_range(vma, vma->vm_start, + virt_to_phys(db->rawbuf) >> PAGE_SHIFT, + size, vma->vm_page_prot)) { ret = -EAGAIN; goto out; } @@ -2128,7 +2130,9 @@ static int es1371_mmap_dac(struct file *file, struct vm_area_struct *vma) if (size > (PAGE_SIZE << s->dma_dac1.buforder)) goto out; ret = -EAGAIN; - if (remap_page_range(vma, vma->vm_start, virt_to_phys(s->dma_dac1.rawbuf), size, vma->vm_page_prot)) + if (remap_pfn_range(vma, vma->vm_start, + virt_to_phys(s->dma_dac1.rawbuf) >> PAGE_SHIFT, + size, vma->vm_page_prot)) goto out; s->dma_dac1.mapped = 1; ret = 0; @@ -2737,11 +2741,11 @@ static int amplifier[NR_DEVICE]; static unsigned int devindex; -MODULE_PARM(spdif, "1-" __MODULE_STRING(NR_DEVICE) "i"); +module_param_array(spdif, bool, NULL, 0); MODULE_PARM_DESC(spdif, "if 1 the output is in S/PDIF digital mode"); -MODULE_PARM(nomix, "1-" __MODULE_STRING(NR_DEVICE) "i"); +module_param_array(nomix, bool, NULL, 0); MODULE_PARM_DESC(nomix, "if 1 no analog audio is mixed to the digital output"); -MODULE_PARM(amplifier, "1-" __MODULE_STRING(NR_DEVICE) "i"); +module_param_array(amplifier, bool, NULL, 0); MODULE_PARM_DESC(amplifier, "Set to 1 if the machine needs the amp control enabling (many laptops)"); MODULE_AUTHOR("Thomas M. Sailer, sailer@ife.ee.ethz.ch, hb9jnx@hb9w.che.eu"); @@ -2754,7 +2758,7 @@ MODULE_LICENSE("GPL"); static struct initvol { int mixch; int vol; -} initvol[] __initdata = { +} initvol[] __devinitdata = { { SOUND_MIXER_WRITE_LINE, 0x4040 }, { SOUND_MIXER_WRITE_CD, 0x4040 }, { MIXER_WRITE(SOUND_MIXER_VIDEO), 0x4040 },