blob: 40e7bac67a6969c77e4a586d2e38ebaa8c2bdb28 [file] [log] [blame]
Loh Tien Hock59400a42019-02-04 16:17:24 +08001/*
2 * Copyright (c) 2019, Intel Corporation. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef __S10_RESETMANAGER_H__
8#define __S10_RESETMANAGER_H__
9
10#define S10_RSTMGR_PER0MODRST 0xffd11024
11#define S10_RSTMGR_PER1MODRST 0xffd11028
Hadi Asyrafie73c5112019-10-21 16:35:08 +080012#define S10_RSTMGR_HDSKEN 0xffd11010
13#define S10_RSTMGR_BRGMODRST 0xffd1102c
14
Loh Tien Hock59400a42019-02-04 16:17:24 +080015
16#define S10_RSTMGR_PER0MODRST_EMAC0 0x00000001
17#define S10_RSTMGR_PER0MODRST_EMAC1 0x00000002
18#define S10_RSTMGR_PER0MODRST_EMAC2 0x00000004
19#define S10_RSTMGR_PER0MODRST_EMAC0OCP 0x00000100
20#define S10_RSTMGR_PER0MODRST_EMAC1OCP 0x00000200
21#define S10_RSTMGR_PER0MODRST_DMAOCP 0x00200000
22#define S10_RSTMGR_PER0MODRST_DMA 0x00010000
23#define S10_RSTMGR_PER0MODRST_EMAC0 0x00000001
24#define S10_RSTMGR_PER0MODRST_EMAC1 0x00000002
25#define S10_RSTMGR_PER0MODRST_EMAC2OCP 0x00000400
26#define S10_RSTMGR_PER0MODRST_EMAC2 0x00000004
27#define S10_RSTMGR_PER0MODRST_EMACPTP 0x00400000
28#define S10_RSTMGR_PER0MODRST_NANDOCP 0x00002000
29#define S10_RSTMGR_PER0MODRST_NAND 0x00000020
30#define S10_RSTMGR_PER0MODRST_SDMMCOCP 0x00008000
31#define S10_RSTMGR_PER0MODRST_SDMMC 0x00000080
32#define S10_RSTMGR_PER0MODRST_SPIM0 0x00020000
33#define S10_RSTMGR_PER0MODRST_SPIM1 0x00040000
34#define S10_RSTMGR_PER0MODRST_SPIS0 0x00080000
35#define S10_RSTMGR_PER0MODRST_SPIS1 0x00100000
36#define S10_RSTMGR_PER0MODRST_USB0OCP 0x00000800
37#define S10_RSTMGR_PER0MODRST_USB0 0x00000008
38#define S10_RSTMGR_PER0MODRST_USB1OCP 0x00001000
39#define S10_RSTMGR_PER0MODRST_USB1 0x00000010
40
41#define S10_RSTMGR_PER1MODRST_WATCHDOG0 0x1
42#define S10_RSTMGR_PER1MODRST_WATCHDOG1 0x2
43#define S10_RSTMGR_PER1MODRST_WATCHDOG2 0x4
44#define S10_RSTMGR_PER1MODRST_WATCHDOG3 0x8
45#define S10_RSTMGR_PER1MODRST_GPIO0 0x01000000
46#define S10_RSTMGR_PER1MODRST_GPIO0 0x01000000
47#define S10_RSTMGR_PER1MODRST_GPIO1 0x02000000
48#define S10_RSTMGR_PER1MODRST_GPIO1 0x02000000
49#define S10_RSTMGR_PER1MODRST_I2C0 0x00000100
50#define S10_RSTMGR_PER1MODRST_I2C0 0x00000100
51#define S10_RSTMGR_PER1MODRST_I2C1 0x00000200
52#define S10_RSTMGR_PER1MODRST_I2C1 0x00000200
53#define S10_RSTMGR_PER1MODRST_I2C2 0x00000400
54#define S10_RSTMGR_PER1MODRST_I2C2 0x00000400
55#define S10_RSTMGR_PER1MODRST_I2C3 0x00000800
56#define S10_RSTMGR_PER1MODRST_I2C3 0x00000800
57#define S10_RSTMGR_PER1MODRST_I2C4 0x00001000
58#define S10_RSTMGR_PER1MODRST_I2C4 0x00001000
59#define S10_RSTMGR_PER1MODRST_L4SYSTIMER0 0x00000010
60#define S10_RSTMGR_PER1MODRST_L4SYSTIMER1 0x00000020
61#define S10_RSTMGR_PER1MODRST_SPTIMER0 0x00000040
62#define S10_RSTMGR_PER1MODRST_SPTIMER0 0x00000040
63#define S10_RSTMGR_PER1MODRST_SPTIMER1 0x00000080
64#define S10_RSTMGR_PER1MODRST_SPTIMER1 0x00000080
65#define S10_RSTMGR_PER1MODRST_UART0 0x00010000
66#define S10_RSTMGR_PER1MODRST_UART0 0x00010000
67#define S10_RSTMGR_PER1MODRST_UART1 0x00020000
68#define S10_RSTMGR_PER1MODRST_UART1 0x00020000
69#define S10_RSTMGR_HDSKEN_DEBUG_L3NOC 0x00020000
70#define S10_RSTMGR_HDSKEN_ETRSTALLEN 0x00000008
71#define S10_RSTMGR_HDSKEN_FPGAHSEN 0x00000004
72#define S10_RSTMGR_HDSKEN_L2FLUSHEN 0x00000100
73#define S10_RSTMGR_HDSKEN_L3NOC_DBG 0x00010000
74
75#define S10_RSTMGR_HDSKEN_SDRSELFREFEN 0x00000001
76#define S10_RSTMGR_PER0MODRST_DMAIF0 0x01000000
77#define S10_RSTMGR_PER0MODRST_DMAIF1 0x02000000
78#define S10_RSTMGR_PER0MODRST_DMAIF2 0x04000000
79#define S10_RSTMGR_PER0MODRST_DMAIF3 0x08000000
80#define S10_RSTMGR_PER0MODRST_DMAIF4 0x10000000
81#define S10_RSTMGR_PER0MODRST_DMAIF5 0x20000000
82#define S10_RSTMGR_PER0MODRST_DMAIF6 0x40000000
83#define S10_RSTMGR_PER0MODRST_DMAIF7 0x80000000
84
Hadi Asyrafie73c5112019-10-21 16:35:08 +080085#define BRGMODRST_DDRSCH_MASK 0x40
86#define BRGMODRST_F2SSDRAM2_MASK 0x20
87#define BRGMODRST_F2SSDRAM1_MASK 0x10
88#define BRGMODRST_F2SSDRAM_MASK 0x08
89#define BRGMODRST_FPGA2SOC_MASK 0x04
90#define BRGMODRST_LWHPS2FPGA_MASK 0x02
91#define BRGMODRST_SOC2FPGA_MASK 0x01
92
Loh Tien Hock59400a42019-02-04 16:17:24 +080093void deassert_peripheral_reset(void);
94void config_hps_hs_before_warm_reset(void);
Hadi Asyrafie73c5112019-10-21 16:35:08 +080095int socfpga_bridges_enable(void);
96int socfpga_bridges_disable(void);
Loh Tien Hock59400a42019-02-04 16:17:24 +080097
98#endif
99