This source file includes following definitions.
- txx9aclc_get_plat_drvdata
1
2
3
4
5
6 #ifndef __TXX9ACLC_H
7 #define __TXX9ACLC_H
8
9 #include <linux/interrupt.h>
10 #include <asm/txx9/dmac.h>
11
12 #define ACCTLEN 0x00
13 #define ACCTLDIS 0x04
14 #define ACCTL_ENLINK 0x00000001
15 #define ACCTL_AUDODMA 0x00000100
16 #define ACCTL_AUDIDMA 0x00001000
17 #define ACCTL_AUDOEHLT 0x00010000
18
19 #define ACCTL_AUDIEHLT 0x00100000
20
21 #define ACREGACC 0x08
22 #define ACREGACC_DAT_SHIFT 0
23 #define ACREGACC_REG_SHIFT 16
24 #define ACREGACC_CODECID_SHIFT 24
25 #define ACREGACC_READ 0x80000000
26 #define ACREGACC_WRITE 0x00000000
27 #define ACINTSTS 0x10
28 #define ACINTMSTS 0x14
29 #define ACINTEN 0x18
30 #define ACINTDIS 0x1c
31 #define ACINT_CODECRDY(n) (0x00000001 << (n))
32 #define ACINT_REGACCRDY 0x00000010
33 #define ACINT_AUDOERR 0x00000100
34 #define ACINT_AUDIERR 0x00001000
35 #define ACDMASTS 0x80
36 #define ACDMA_AUDO 0x00000001
37 #define ACDMA_AUDI 0x00000010
38 #define ACAUDODAT 0xa0
39 #define ACAUDIDAT 0xb0
40 #define ACREVID 0xfc
41
42 struct txx9aclc_dmadata {
43 struct resource *dma_res;
44 struct txx9dmac_slave dma_slave;
45 struct dma_chan *dma_chan;
46 struct tasklet_struct tasklet;
47 spinlock_t dma_lock;
48 int stream;
49 struct snd_pcm_substream *substream;
50 unsigned long pos;
51 dma_addr_t dma_addr;
52 unsigned long buffer_bytes;
53 unsigned long period_bytes;
54 unsigned long frag_bytes;
55 int frags;
56 int frag_count;
57 int dmacount;
58 };
59
60 struct txx9aclc_plat_drvdata {
61 void __iomem *base;
62 u64 physbase;
63 };
64
65 static inline struct txx9aclc_plat_drvdata *txx9aclc_get_plat_drvdata(
66 struct snd_soc_dai *dai)
67 {
68 return dev_get_drvdata(dai->dev);
69 }
70
71 #endif