Linux Audio

Check our new training course

Loading...
Note: File does not exist in v4.10.11.
  1/* SPDX-License-Identifier: GPL-2.0 */
  2#ifndef __ASM_ARCH_REGS_AC97_H
  3#define __ASM_ARCH_REGS_AC97_H
  4
  5/*
  6 * AC97 Controller registers
  7 */
  8
  9#define POCR		(0x0000)  	/* PCM Out Control Register */
 10#define POCR_FEIE	(1 << 3)	/* FIFO Error Interrupt Enable */
 11#define POCR_FSRIE	(1 << 1)	/* FIFO Service Request Interrupt Enable */
 12
 13#define PICR		(0x0004) 	/* PCM In Control Register */
 14#define PICR_FEIE	(1 << 3)	/* FIFO Error Interrupt Enable */
 15#define PICR_FSRIE	(1 << 1)	/* FIFO Service Request Interrupt Enable */
 16
 17#define MCCR		(0x0008)  	/* Mic In Control Register */
 18#define MCCR_FEIE	(1 << 3)	/* FIFO Error Interrupt Enable */
 19#define MCCR_FSRIE	(1 << 1)	/* FIFO Service Request Interrupt Enable */
 20
 21#define GCR		(0x000C) 	 /* Global Control Register */
 22#ifdef CONFIG_PXA3xx
 23#define GCR_CLKBPB	(1 << 31)	/* Internal clock enable */
 24#endif
 25#define GCR_nDMAEN	(1 << 24)	/* non DMA Enable */
 26#define GCR_CDONE_IE	(1 << 19)	/* Command Done Interrupt Enable */
 27#define GCR_SDONE_IE	(1 << 18)	/* Status Done Interrupt Enable */
 28#define GCR_SECRDY_IEN	(1 << 9)	/* Secondary Ready Interrupt Enable */
 29#define GCR_PRIRDY_IEN	(1 << 8)	/* Primary Ready Interrupt Enable */
 30#define GCR_SECRES_IEN	(1 << 5)	/* Secondary Resume Interrupt Enable */
 31#define GCR_PRIRES_IEN	(1 << 4)	/* Primary Resume Interrupt Enable */
 32#define GCR_ACLINK_OFF	(1 << 3)	/* AC-link Shut Off */
 33#define GCR_WARM_RST	(1 << 2)	/* AC97 Warm Reset */
 34#define GCR_COLD_RST	(1 << 1)	/* AC'97 Cold Reset (0 = active) */
 35#define GCR_GIE		(1 << 0)	/* Codec GPI Interrupt Enable */
 36
 37#define POSR		(0x0010)  	/* PCM Out Status Register */
 38#define POSR_FIFOE	(1 << 4)	/* FIFO error */
 39#define POSR_FSR	(1 << 2)	/* FIFO Service Request */
 40
 41#define PISR		(0x0014)  	/* PCM In Status Register */
 42#define PISR_FIFOE	(1 << 4)	/* FIFO error */
 43#define PISR_EOC	(1 << 3)	/* DMA End-of-Chain (exclusive clear) */
 44#define PISR_FSR	(1 << 2)	/* FIFO Service Request */
 45
 46#define MCSR		(0x0018)  	/* Mic In Status Register */
 47#define MCSR_FIFOE	(1 << 4)	/* FIFO error */
 48#define MCSR_EOC	(1 << 3)	/* DMA End-of-Chain (exclusive clear) */
 49#define MCSR_FSR	(1 << 2)	/* FIFO Service Request */
 50
 51#define GSR		(0x001C)  	/* Global Status Register */
 52#define GSR_CDONE	(1 << 19)	/* Command Done */
 53#define GSR_SDONE	(1 << 18)	/* Status Done */
 54#define GSR_RDCS	(1 << 15)	/* Read Completion Status */
 55#define GSR_BIT3SLT12	(1 << 14)	/* Bit 3 of slot 12 */
 56#define GSR_BIT2SLT12	(1 << 13)	/* Bit 2 of slot 12 */
 57#define GSR_BIT1SLT12	(1 << 12)	/* Bit 1 of slot 12 */
 58#define GSR_SECRES	(1 << 11)	/* Secondary Resume Interrupt */
 59#define GSR_PRIRES	(1 << 10)	/* Primary Resume Interrupt */
 60#define GSR_SCR		(1 << 9)	/* Secondary Codec Ready */
 61#define GSR_PCR		(1 << 8)	/*  Primary Codec Ready */
 62#define GSR_MCINT	(1 << 7)	/* Mic In Interrupt */
 63#define GSR_POINT	(1 << 6)	/* PCM Out Interrupt */
 64#define GSR_PIINT	(1 << 5)	/* PCM In Interrupt */
 65#define GSR_ACOFFD	(1 << 3)	/* AC-link Shut Off Done */
 66#define GSR_MOINT	(1 << 2)	/* Modem Out Interrupt */
 67#define GSR_MIINT	(1 << 1)	/* Modem In Interrupt */
 68#define GSR_GSCI	(1 << 0)	/* Codec GPI Status Change Interrupt */
 69
 70#define CAR		(0x0020)  	/* CODEC Access Register */
 71#define CAR_CAIP	(1 << 0)	/* Codec Access In Progress */
 72
 73#define PCDR		(0x0040)  	/* PCM FIFO Data Register */
 74#define MCDR		(0x0060)  	/* Mic-in FIFO Data Register */
 75
 76#define MOCR		(0x0100)  	/* Modem Out Control Register */
 77#define MOCR_FEIE	(1 << 3)	/* FIFO Error */
 78#define MOCR_FSRIE	(1 << 1)	/* FIFO Service Request Interrupt Enable */
 79
 80#define MICR		(0x0108)  	/* Modem In Control Register */
 81#define MICR_FEIE	(1 << 3)	/* FIFO Error */
 82#define MICR_FSRIE	(1 << 1)	/* FIFO Service Request Interrupt Enable */
 83
 84#define MOSR		(0x0110)  	/* Modem Out Status Register */
 85#define MOSR_FIFOE	(1 << 4)	/* FIFO error */
 86#define MOSR_FSR	(1 << 2)	/* FIFO Service Request */
 87
 88#define MISR		(0x0118)  	/* Modem In Status Register */
 89#define MISR_FIFOE	(1 << 4)	/* FIFO error */
 90#define MISR_EOC	(1 << 3)	/* DMA End-of-Chain (exclusive clear) */
 91#define MISR_FSR	(1 << 2)	/* FIFO Service Request */
 92
 93#define MODR		(0x0140)  	/* Modem FIFO Data Register */
 94
 95#define PAC_REG_BASE	(0x0200)  	/* Primary Audio Codec */
 96#define SAC_REG_BASE	(0x0300)  	/* Secondary Audio Codec */
 97#define PMC_REG_BASE	(0x0400)  	/* Primary Modem Codec */
 98#define SMC_REG_BASE	(0x0500)  	/* Secondary Modem Codec */
 99
100#endif /* __ASM_ARCH_REGS_AC97_H */