Merge remote-tracking branches 'regulator/fix/88pm800', 'regulator/fix/max8973',...
[linux-drm-fsl-dcu.git] / include / linux / amba / sp810.h
1 /*
2  * ARM PrimeXsys System Controller SP810 header file
3  *
4  * Copyright (C) 2009 ST Microelectronics
5  * Viresh Kumar <vireshk@kernel.org>
6  *
7  * This file is licensed under the terms of the GNU General Public
8  * License version 2. This program is licensed "as is" without any
9  * warranty of any kind, whether express or implied.
10  */
11
12 #ifndef __AMBA_SP810_H
13 #define __AMBA_SP810_H
14
15 #include <linux/io.h>
16
17 /* sysctl registers offset */
18 #define SCCTRL                  0x000
19 #define SCSYSSTAT               0x004
20 #define SCIMCTRL                0x008
21 #define SCIMSTAT                0x00C
22 #define SCXTALCTRL              0x010
23 #define SCPLLCTRL               0x014
24 #define SCPLLFCTRL              0x018
25 #define SCPERCTRL0              0x01C
26 #define SCPERCTRL1              0x020
27 #define SCPEREN                 0x024
28 #define SCPERDIS                0x028
29 #define SCPERCLKEN              0x02C
30 #define SCPERSTAT               0x030
31 #define SCSYSID0                0xEE0
32 #define SCSYSID1                0xEE4
33 #define SCSYSID2                0xEE8
34 #define SCSYSID3                0xEEC
35 #define SCITCR                  0xF00
36 #define SCITIR0                 0xF04
37 #define SCITIR1                 0xF08
38 #define SCITOR                  0xF0C
39 #define SCCNTCTRL               0xF10
40 #define SCCNTDATA               0xF14
41 #define SCCNTSTEP               0xF18
42 #define SCPERIPHID0             0xFE0
43 #define SCPERIPHID1             0xFE4
44 #define SCPERIPHID2             0xFE8
45 #define SCPERIPHID3             0xFEC
46 #define SCPCELLID0              0xFF0
47 #define SCPCELLID1              0xFF4
48 #define SCPCELLID2              0xFF8
49 #define SCPCELLID3              0xFFC
50
51 #define SCCTRL_TIMERENnSEL_SHIFT(n)     (15 + ((n) * 2))
52
53 static inline void sysctl_soft_reset(void __iomem *base)
54 {
55         /* switch to slow mode */
56         writel(0x2, base + SCCTRL);
57
58         /* writing any value to SCSYSSTAT reg will reset system */
59         writel(0, base + SCSYSSTAT);
60 }
61
62 #endif /* __AMBA_SP810_H */