[ALSA] cs5535audio: fix ACC_BM[x]_CMD register handling
Andres Salomon [Mon, 3 Sep 2007 13:43:18 +0000 (15:43 +0200)]
According to 6.3.2.7 of the cs5535/cs5536 data sheets, the ACC_BM[x]_CMD
registers are only 8 bits wide.  This driver treats them as 32 bits wide,
and also has bits in the wrong place.  Simple fix to the definitions.

Signed-off-by: Andres Salomon <dilinger@debian.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>

sound/pci/cs5535audio/cs5535audio.h

index c7a2044..516219a 100644 (file)
 #define EOP                            (1<<0)
 #define BM_EOP_ERR                     (1<<1)
 /* ACC_BMX_CTL */
-#define BM_CTL_EN                      0x00000001
-#define BM_CTL_PAUSE                   0x00000011
-#define BM_CTL_DIS                     0x00000000
-#define BM_CTL_BYTE_ORD_LE             0x00000000
-#define BM_CTL_BYTE_ORD_BE             0x00000100
+#define BM_CTL_EN                      0x01
+#define BM_CTL_PAUSE                   0x03
+#define BM_CTL_DIS                     0x00
+#define BM_CTL_BYTE_ORD_LE             0x00
+#define BM_CTL_BYTE_ORD_BE             0x04
 /* cs5535 specific ac97 codec register defines */
 #define CMD_MASK                       0xFF00FFFF
 #define CMD_NEW                                0x00010000