VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / arch / ppc / 8xx_io / cs4218_tdm.c
index 99dfab8..514e7de 100644 (file)
@@ -1619,7 +1619,7 @@ static ssize_t sound_copy_translate_read(const u_char *userPtr,
 static int mixer_open(struct inode *inode, struct file *file)
 {
        mixer.busy = 1;
-       return 0;
+       return nonseekable_open(inode, file);
 }
 
 
@@ -2105,7 +2105,7 @@ static int sq_open(struct inode *inode, struct file *file)
                sound_set_format(AFMT_MU_LAW);
        }
 
-       return 0;
+       return nonseekable_open(inode, file);
 
 err_out_nobusy:
        if (file->f_mode & FMODE_WRITE) {
@@ -2404,7 +2404,7 @@ static int state_open(struct inode *inode, struct file *file)
        len += sprintf(buffer+len, "\tsq.active = %d sq.syncing = %d\n",
                       sq.active, sq.syncing);
        state.len = len;
-       return 0;
+       return nonseekable_open(inode, file);
 }
 
 
@@ -2463,7 +2463,7 @@ static long long sound_lseek(struct file *file, long long offset, int orig)
 int __init tdm8xx_sound_init(void)
 {
        int i, has_sound;
-       uint                    dp_addr;
+       uint                    dp_offset;
        volatile uint           *sirp;
        volatile cbd_t          *bdp;
        volatile cpm8xx_t       *cp;
@@ -2525,14 +2525,14 @@ int __init tdm8xx_sound_init(void)
        /* We need to allocate a transmit and receive buffer
         * descriptors from dual port ram.
         */
-       dp_addr = m8xx_cpm_dpalloc(sizeof(cbd_t) * numReadBufs);
+       dp_addr = cpm_dpalloc(sizeof(cbd_t) * numReadBufs, 8);
 
        /* Set the physical address of the host memory
         * buffers in the buffer descriptors, and the
         * virtual address for us to work with.
         */
        bdp = (cbd_t *)&cp->cp_dpmem[dp_addr];
-       up->smc_rbase = dp_addr;
+       up->smc_rbase = dp_offset;
        rx_cur = rx_base = (cbd_t *)bdp;
 
        for (i=0; i<(numReadBufs-1); i++) {
@@ -2547,10 +2547,10 @@ int __init tdm8xx_sound_init(void)
 
        /* Now, do the same for the transmit buffers.
        */
-       dp_addr = m8xx_cpm_dpalloc(sizeof(cbd_t) * numBufs);
+       dp_offset = cpm_dpalloc(sizeof(cbd_t) * numBufs, 8);
 
        bdp = (cbd_t *)&cp->cp_dpmem[dp_addr];
-       up->smc_tbase = dp_addr;
+       up->smc_tbase = dp_offset;
        tx_cur = tx_base = (cbd_t *)bdp;
 
        for (i=0; i<(numBufs-1); i++) {