blob: 99f259e8cf33133b73f2b9712746cf7ade80fcbb [file] [log] [blame]
Saeed Bisharaedabd382009-08-06 15:12:43 +03001/*
2 * arch/arm/mach-dove/include/mach/bridge-regs.h
3 *
4 * Mbus-L to Mbus Bridge Registers
5 *
6 * This file is licensed under the terms of the GNU General Public
7 * License version 2. This program is licensed "as is" without any
8 * warranty of any kind, whether express or implied.
9 */
10
11#ifndef __ASM_ARCH_BRIDGE_REGS_H
12#define __ASM_ARCH_BRIDGE_REGS_H
13
14#include <mach/dove.h>
15
Thomas Petazzoni73b39d42012-09-11 14:27:14 +020016#define CPU_CONFIG (BRIDGE_VIRT_BASE + 0x0000)
Saeed Bisharaedabd382009-08-06 15:12:43 +030017
Thomas Petazzoni73b39d42012-09-11 14:27:14 +020018#define CPU_CONTROL (BRIDGE_VIRT_BASE + 0x0104)
Saeed Bisharaedabd382009-08-06 15:12:43 +030019#define CPU_CTRL_PCIE0_LINK 0x00000001
20#define CPU_RESET 0x00000002
21#define CPU_CTRL_PCIE1_LINK 0x00000008
22
Thomas Petazzoni73b39d42012-09-11 14:27:14 +020023#define RSTOUTn_MASK (BRIDGE_VIRT_BASE + 0x0108)
Saeed Bisharaedabd382009-08-06 15:12:43 +030024#define SOFT_RESET_OUT_EN 0x00000004
25
Thomas Petazzoni73b39d42012-09-11 14:27:14 +020026#define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE + 0x010c)
Saeed Bisharaedabd382009-08-06 15:12:43 +030027#define SOFT_RESET 0x00000001
28
Saeed Bisharaedabd382009-08-06 15:12:43 +030029#define BRIDGE_INT_TIMER1_CLR (~0x0004)
30
Thomas Petazzoni73b39d42012-09-11 14:27:14 +020031#define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE + 0x0200)
Saeed Bisharaedabd382009-08-06 15:12:43 +030032#define IRQ_CAUSE_LOW_OFF 0x0000
33#define IRQ_MASK_LOW_OFF 0x0004
34#define FIQ_MASK_LOW_OFF 0x0008
35#define ENDPOINT_MASK_LOW_OFF 0x000c
36#define IRQ_CAUSE_HIGH_OFF 0x0010
37#define IRQ_MASK_HIGH_OFF 0x0014
38#define FIQ_MASK_HIGH_OFF 0x0018
39#define ENDPOINT_MASK_HIGH_OFF 0x001c
40#define PCIE_INTERRUPT_MASK_OFF 0x0020
41
42#define IRQ_MASK_LOW (IRQ_VIRT_BASE + IRQ_MASK_LOW_OFF)
43#define FIQ_MASK_LOW (IRQ_VIRT_BASE + FIQ_MASK_LOW_OFF)
44#define ENDPOINT_MASK_LOW (IRQ_VIRT_BASE + ENDPOINT_MASK_LOW_OFF)
45#define IRQ_MASK_HIGH (IRQ_VIRT_BASE + IRQ_MASK_HIGH_OFF)
46#define FIQ_MASK_HIGH (IRQ_VIRT_BASE + FIQ_MASK_HIGH_OFF)
47#define ENDPOINT_MASK_HIGH (IRQ_VIRT_BASE + ENDPOINT_MASK_HIGH_OFF)
48#define PCIE_INTERRUPT_MASK (IRQ_VIRT_BASE + PCIE_INTERRUPT_MASK_OFF)
49
Thomas Petazzoni73b39d42012-09-11 14:27:14 +020050#define POWER_MANAGEMENT (BRIDGE_VIRT_BASE + 0x011c)
Saeed Bisharaedabd382009-08-06 15:12:43 +030051
Thomas Petazzoni73b39d42012-09-11 14:27:14 +020052#define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE + 0x0300)
53#define TIMER_PHYS_BASE (BRIDGE_PHYS_BASE + 0x0300)
Saeed Bisharaedabd382009-08-06 15:12:43 +030054
55#endif