blob: f27bbb22e78a5a83e358065d1f5cb96c9cd28d9f [file] [log] [blame]
Sandrine Bailleux798140d2014-07-17 16:06:39 +01001/*
Vikram Kanigirif79d1502015-11-12 17:22:16 +00002 * Copyright (c) 2014-2016, ARM Limited and Contributors. All rights reserved.
Sandrine Bailleux798140d2014-07-17 16:06:39 +01003 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are met:
6 *
7 * Redistributions of source code must retain the above copyright notice, this
8 * list of conditions and the following disclaimer.
9 *
10 * Redistributions in binary form must reproduce the above copyright notice,
11 * this list of conditions and the following disclaimer in the documentation
12 * and/or other materials provided with the distribution.
13 *
14 * Neither the name of ARM nor the names of its contributors may be used
15 * to endorse or promote products derived from this software without specific
16 * prior written permission.
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28 * POSSIBILITY OF SUCH DAMAGE.
29 */
30
31#ifndef __JUNO_DEF_H__
32#define __JUNO_DEF_H__
33
Sandrine Bailleux798140d2014-07-17 16:06:39 +010034
Sandrine Bailleux798140d2014-07-17 16:06:39 +010035/*******************************************************************************
36 * Juno memory map related constants
37 ******************************************************************************/
Sandrine Bailleuxfd8f8982015-02-04 14:06:10 +000038
39/* Board revisions */
Dan Handley7bef8002015-03-19 19:22:44 +000040#define REV_JUNO_R0 0x1 /* Rev B */
41#define REV_JUNO_R1 0x2 /* Rev C */
Sandrine Bailleux9d548a22015-11-18 11:10:30 +000042#define REV_JUNO_R2 0x3 /* Rev D */
Sandrine Bailleux798140d2014-07-17 16:06:39 +010043
Dan Handley7bef8002015-03-19 19:22:44 +000044/* Bypass offset from start of NOR flash */
45#define BL1_ROM_BYPASS_OFFSET 0x03EC0000
Sandrine Bailleux798140d2014-07-17 16:06:39 +010046
Dan Handley7bef8002015-03-19 19:22:44 +000047#define EMMC_BASE 0x0c000000
48#define EMMC_SIZE 0x04000000
Sandrine Bailleux798140d2014-07-17 16:06:39 +010049
Dan Handley7bef8002015-03-19 19:22:44 +000050#define PSRAM_BASE 0x14000000
51#define PSRAM_SIZE 0x02000000
Sandrine Bailleux798140d2014-07-17 16:06:39 +010052
Vikram Kanigirif79d1502015-11-12 17:22:16 +000053#define JUNO_SSC_VER_PART_NUM 0x030
Sandrine Bailleux798140d2014-07-17 16:06:39 +010054
55/*******************************************************************************
Soby Mathew47e43f22016-02-01 14:04:34 +000056 * Juno topology related constants
57 ******************************************************************************/
58#define JUNO_CLUSTER_COUNT 2
59#define JUNO_CLUSTER0_CORE_COUNT 2
60#define JUNO_CLUSTER1_CORE_COUNT 4
61
62/*******************************************************************************
Sandrine Bailleux798140d2014-07-17 16:06:39 +010063 * TZC-400 related constants
64 ******************************************************************************/
Dan Handley7bef8002015-03-19 19:22:44 +000065#define TZC400_NSAID_CCI400 0 /* Note: Same as default NSAID!! */
66#define TZC400_NSAID_PCIE 1
67#define TZC400_NSAID_HDLCD0 2
68#define TZC400_NSAID_HDLCD1 3
69#define TZC400_NSAID_USB 4
70#define TZC400_NSAID_DMA330 5
71#define TZC400_NSAID_THINLINKS 6
72#define TZC400_NSAID_AP 9
73#define TZC400_NSAID_GPU 10
74#define TZC400_NSAID_SCP 11
75#define TZC400_NSAID_CORESIGHT 12
Sandrine Bailleux798140d2014-07-17 16:06:39 +010076
Juan Castillo21b04192014-08-12 17:24:30 +010077/*******************************************************************************
Robin Murphy0f1d6662015-01-09 14:30:58 +000078 * MMU-401 related constants
79 ******************************************************************************/
Dan Handley7bef8002015-03-19 19:22:44 +000080#define MMU401_SSD_OFFSET 0x4000
81#define MMU401_DMA330_BASE 0x7fb00000
82
Vikram Kanigirif3bcea22015-06-24 17:51:09 +010083/*******************************************************************************
84 * Interrupt handling constants
85 ******************************************************************************/
86#define JUNO_IRQ_DMA_SMMU 126
87#define JUNO_IRQ_HDLCD0_SMMU 128
88#define JUNO_IRQ_HDLCD1_SMMU 130
89#define JUNO_IRQ_USB_SMMU 132
90#define JUNO_IRQ_THIN_LINKS_SMMU 134
91#define JUNO_IRQ_SEC_I2C 137
92#define JUNO_IRQ_GPU_SMMU_1 73
93#define JUNO_IRQ_ETR_SMMU 75
Robin Murphy0f1d6662015-01-09 14:30:58 +000094
Sandrine Bailleux798140d2014-07-17 16:06:39 +010095#endif /* __JUNO_DEF_H__ */