Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 23 Feb 2000 11:15:15 -0800
From:      Matthew Reimer <mreimer@vpop.net>
To:        freebsd-multimedia@freebsd.org
Cc:        freebsd-current@freebsd.org
Subject:   PATCH: partial fix for PR 16587 can't record with CS423x
Message-ID:  <38B431C3.32FD2C13@vpop.net>

next in thread | raw e-mail | index | archive | help
Partial fix: the following patch correctly configures the card for dual
channel DMA. The problem was that the SDC bit (0x04) can only be set in
the MCE state.

So now recording doesn't hang, and data is returned, but the recorded
sound doesn't sound right when played back. Anybody have an idea why?

--- mss.c.orig  Wed Feb 23 11:04:23 2000
+++ mss.c       Fri Jan 28 16:18:28 2000
@@ -92,8 +92,6 @@
 static int             ad_read(struct mss_info *mss, int reg);
 static void            ad_write(struct mss_info *mss, int reg, u_char
data);
 static void            ad_write_cnt(struct mss_info *mss, int reg,
u_short data
-static void            ad_enter_MCE(struct mss_info *mss);
-static void            ad_leave_MCE(struct mss_info *mss);

 /* io primitives */
 static void            conf_wr(struct mss_info *mss, u_char reg, u_char
data); 
@@ -467,9 +465,7 @@
        }
        if (FULL_DUPLEX(mss) && mss->bd_id != MD_OPTI931)
                ad_write(mss, 12, ad_read(mss, 12) | 0x40); /* mode 2 */
-       ad_enter_MCE(mss);
        ad_write(mss, 9, FULL_DUPLEX(mss)? 0 : 4);
-       ad_leave_MCE(mss);
        ad_write(mss, 10, 2); /* int enable */
        io_wr(mss, MSS_STATUS, 0); /* Clear interrupt status */
        /* the following seem required on the CS4232 */


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-multimedia" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?38B431C3.32FD2C13>