Merge to Fedora kernel-2.6.18-1.2224_FC5 patched with stable patch-2.6.18.1-vs2.0...
[linux-2.6.git] / include / asm-mips / mach-au1x00 / au1xxx_psc.h
index 8e5fb3c..1bd4e27 100644 (file)
 #ifndef _AU1000_PSC_H_
 #define _AU1000_PSC_H_
 
-#include <linux/config.h>
 
 /* The PSC base addresses.  */
 #ifdef CONFIG_SOC_AU1550
 #define PSC0_BASE_ADDR         0xb1a00000
 #define PSC1_BASE_ADDR         0xb1b00000
 #define PSC2_BASE_ADDR         0xb0a00000
-#define PSC3_BASE_ADDR         0xb0d00000
+#define PSC3_BASE_ADDR         0xb0b00000
+#endif
+
+#ifdef CONFIG_SOC_AU1200
+#define PSC0_BASE_ADDR         0xb1a00000
+#define PSC1_BASE_ADDR         0xb1b00000
 #endif
 
 /* The PSC select and control registers are common to
@@ -228,6 +232,8 @@ typedef struct      psc_i2s {
 #define PSC_I2SCFG_DD_DISABLE  (1 << 27)
 #define PSC_I2SCFG_DE_ENABLE   (1 << 26)
 #define PSC_I2SCFG_SET_WS(x)   (((((x) / 2) - 1) & 0x7f) << 16)
+#define PSC_I2SCFG_WS(n)       ((n & 0xFF) << 16)
+#define PSC_I2SCFG_WS_MASK     (PSC_I2SCFG_WS(0x3F))
 #define PSC_I2SCFG_WI          (1 << 15)
 
 #define PSC_I2SCFG_DIV_MASK    (3 << 13)
@@ -506,7 +512,7 @@ typedef struct      psc_smb {
 
 /* Transmit register control.
 */
-#define PSC_SMBTXRX_RSR                (1 << 30)
+#define PSC_SMBTXRX_RSR                (1 << 28)
 #define PSC_SMBTXRX_STP                (1 << 29)
 #define PSC_SMBTXRX_DATAMASK   (0xff)