summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx/mx7ulp.h
blob: a00e86f27e65d104bc47f449183373ad7759b0c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/*
 * Copyright (C) 2016 Freescale Semiconductor, Inc. All Rights Reserved.
 * Copyright NXP 2017.
 */

/*
 *  * This program is free software; you can redistribute it and/or modify
 *   * it under the terms of the GNU General Public License version 2 as
 *    * published by the Free Software Foundation.
 *     */

#ifndef __ASM_ARCH_MX7ULP_IOMAP_H__
#define __ASM_ARCH_MX7ULP_IOMAP_H__

#define MX7ULP_IO_P2V(x)                  IMX_IO_P2V(x)
#define MX7ULP_IO_ADDRESS(x)              IOMEM(MX7ULP_IO_P2V(x))

#define MX7ULP_AIPS1_BASE_ADDR		0x40000000
#define MX7ULP_AIPS1_SIZE		0x100000
#define MX7ULP_AIPS2_BASE_ADDR		0x40300000
#define MX7ULP_AIPS2_SIZE		0x100000
#define MX7ULP_AIPS3_BASE_ADDR		0x40400000
#define MX7ULP_AIPS3_SIZE		0x100000
#define MX7ULP_AIPS4_BASE_ADDR		0x40a00000
#define MX7ULP_AIPS4_SIZE		0x100000
#define MX7ULP_AIPS5_BASE_ADDR		0x41000000
#define MX7ULP_AIPS5_SIZE		0x100000
#define MX7ULP_GPIOC_BASE_ADDR		0x400f0000
#define MX7ULP_GPIOC_SIZE		0x1000
#define MX7ULP_PCC3_BASE_ADDR		0x40b30000
#define MX7ULP_PCC3_SIZE		0x1000
#define MX7ULP_SCG1_BASE_ADDR		0x403e0000
#define MX7ULP_SCG1_SIZE		0x1000
#define MX7ULP_PCC2_BASE_ADDR		0x403f0000
#define MX7ULP_PCC2_SIZE		0x1000
#define MX7ULP_SIM_BASE_ADDR		0x410a3000
#define MX7ULP_SIM_SIZE			0x1000
#define MX7ULP_PMC1_BASE_ADDR		0x40400000
#define MX7ULP_PMC1_SIZE		0x1000
#define MX7ULP_SMC1_BASE_ADDR		0x40410000
#define MX7ULP_SMC1_SIZE		0x1000
#define MX7ULP_MMDC_BASE_ADDR		0x40ab0000
#define MX7ULP_MMDC_SIZE		0x1000
#define MX7ULP_IOMUXC1_BASE_ADDR	0x40ac0000
#define MX7ULP_IOMUXC1_BASE__SIZE	0x1000
#define MX7ULP_MMDC_IO_BASE_ADDR	0x40ad0000
#define MX7ULP_MMDC_IO_SIZE		0x1000

/* below is just used for static mapping of the AIPSx's memory region */
#define MX7ULP_AIPS_VIRT_BASE(x)	(0xf4000000 + ((x) * SZ_1M))

#define mx7ulp_aips_map_entry(index, _type) {				\
	.virtual = MX7ULP_AIPS_VIRT_BASE(index),			\
	.pfn = __phys_to_pfn(MX7ULP_AIPS ## index ## _BASE_ADDR),	\
	.length	= SZ_1M,						\
	.type = _type,							\
}

#define TT_ATTRIB_NON_CACHEABLE_1M	0x802
#define MX7ULP_IRAM_TLB_SIZE		0x4000
#define MX7ULP_SUSPEND_OCRAM_SIZE	0x1000

#endif