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