1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  *  CLPS711X system register bits definitions
4  *
5  *  Copyright (C) 2013 Alexander Shiyan <shc_work@mail.ru>
6  */
7 
8 #ifndef _LINUX_MFD_SYSCON_CLPS711X_H_
9 #define _LINUX_MFD_SYSCON_CLPS711X_H_
10 
11 #define SYSCON_OFFSET		(0x00)
12 #define SYSFLG_OFFSET		(0x40)
13 
14 #define SYSCON1_KBDSCAN(x)	((x) & 15)
15 #define SYSCON1_KBDSCAN_MASK	(15)
16 #define SYSCON1_TC1M		(1 << 4)
17 #define SYSCON1_TC1S		(1 << 5)
18 #define SYSCON1_TC2M		(1 << 6)
19 #define SYSCON1_TC2S		(1 << 7)
20 #define SYSCON1_BZTOG		(1 << 9)
21 #define SYSCON1_BZMOD		(1 << 10)
22 #define SYSCON1_DBGEN		(1 << 11)
23 #define SYSCON1_LCDEN		(1 << 12)
24 #define SYSCON1_CDENTX		(1 << 13)
25 #define SYSCON1_CDENRX		(1 << 14)
26 #define SYSCON1_SIREN		(1 << 15)
27 #define SYSCON1_ADCKSEL(x)	(((x) & 3) << 16)
28 #define SYSCON1_ADCKSEL_MASK	(3 << 16)
29 #define SYSCON1_EXCKEN		(1 << 18)
30 #define SYSCON1_WAKEDIS		(1 << 19)
31 #define SYSCON1_IRTXM		(1 << 20)
32 
33 #define SYSCON2_SERSEL		(1 << 0)
34 #define SYSCON2_KBD6		(1 << 1)
35 #define SYSCON2_DRAMZ		(1 << 2)
36 #define SYSCON2_KBWEN		(1 << 3)
37 #define SYSCON2_SS2TXEN		(1 << 4)
38 #define SYSCON2_PCCARD1		(1 << 5)
39 #define SYSCON2_PCCARD2		(1 << 6)
40 #define SYSCON2_SS2RXEN		(1 << 7)
41 #define SYSCON2_SS2MAEN		(1 << 9)
42 #define SYSCON2_OSTB		(1 << 12)
43 #define SYSCON2_CLKENSL		(1 << 13)
44 #define SYSCON2_BUZFREQ		(1 << 14)
45 
46 #define SYSCON3_ADCCON		(1 << 0)
47 #define SYSCON3_CLKCTL0		(1 << 1)
48 #define SYSCON3_CLKCTL1		(1 << 2)
49 #define SYSCON3_DAISEL		(1 << 3)
50 #define SYSCON3_ADCCKNSEN	(1 << 4)
51 #define SYSCON3_VERSN(x)	(((x) >> 5) & 7)
52 #define SYSCON3_VERSN_MASK	(7 << 5)
53 #define SYSCON3_FASTWAKE	(1 << 8)
54 #define SYSCON3_DAIEN		(1 << 9)
55 #define SYSCON3_128FS		SYSCON3_DAIEN
56 #define SYSCON3_ENPD67		(1 << 10)
57 
58 #define SYSCON_UARTEN		(1 << 8)
59 
60 #define SYSFLG1_MCDR		(1 << 0)
61 #define SYSFLG1_DCDET		(1 << 1)
62 #define SYSFLG1_WUDR		(1 << 2)
63 #define SYSFLG1_WUON		(1 << 3)
64 #define SYSFLG1_CTS		(1 << 8)
65 #define SYSFLG1_DSR		(1 << 9)
66 #define SYSFLG1_DCD		(1 << 10)
67 #define SYSFLG1_NBFLG		(1 << 12)
68 #define SYSFLG1_RSTFLG		(1 << 13)
69 #define SYSFLG1_PFFLG		(1 << 14)
70 #define SYSFLG1_CLDFLG		(1 << 15)
71 #define SYSFLG1_CRXFE		(1 << 24)
72 #define SYSFLG1_CTXFF		(1 << 25)
73 #define SYSFLG1_SSIBUSY		(1 << 26)
74 #define SYSFLG1_ID		(1 << 29)
75 #define SYSFLG1_VERID(x)	(((x) >> 30) & 3)
76 #define SYSFLG1_VERID_MASK	(3 << 30)
77 
78 #define SYSFLG2_SSRXOF		(1 << 0)
79 #define SYSFLG2_RESVAL		(1 << 1)
80 #define SYSFLG2_RESFRM		(1 << 2)
81 #define SYSFLG2_SS2RXFE		(1 << 3)
82 #define SYSFLG2_SS2TXFF		(1 << 4)
83 #define SYSFLG2_SS2TXUF		(1 << 5)
84 #define SYSFLG2_CKMODE		(1 << 6)
85 
86 #define SYSFLG_UBUSY		(1 << 11)
87 #define SYSFLG_URXFE		(1 << 22)
88 #define SYSFLG_UTXFF		(1 << 23)
89 
90 #endif
91