1 /*
2  * omap.h
3  *
4  * Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/
5  *
6  * Author:
7  *	Chandan Nath <chandan.nath@ti.com>
8  *
9  * Derived from OMAP4 work by
10  *	Aneesh V <aneesh@ti.com>
11  *
12  * This program is free software; you can redistribute it and/or
13  * modify it under the terms of the GNU General Public License as
14  * published by the Free Software Foundation; either version 2 of
15  * the License, or (at your option) any later version.
16  *
17  * This program is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR /PURPOSE.  See the
20  * GNU General Public License for more details.
21  */
22 
23 #ifndef _OMAP_H_
24 #define _OMAP_H_
25 
26 /*
27  * Non-secure SRAM Addresses
28  * Non-secure RAM starts at 0x40300000 for GP devices. But we keep SRAM_BASE
29  * at 0x40304000(EMU base) so that our code works for both EMU and GP
30  */
31 #define NON_SECURE_SRAM_START	0x40304000
32 #define NON_SECURE_SRAM_END	0x4030E000
33 #define LOW_LEVEL_SRAM_STACK	0x4030B7FC
34 
35 /* ROM code defines */
36 /* Boot device */
37 #define BOOT_DEVICE_MASK	0xFF
38 #define BOOT_DEVICE_OFFSET	0x8
39 #define DEV_DESC_PTR_OFFSET	0x4
40 #define DEV_DATA_PTR_OFFSET	0x18
41 #define BOOT_MODE_OFFSET	0x8
42 #define RESET_REASON_OFFSET	0x9
43 #define CH_FLAGS_OFFSET		0xA
44 
45 #define CH_FLAGS_CHSETTINGS	(0x1 << 0)
46 #define CH_FLAGS_CHRAM		(0x1 << 1)
47 #define CH_FLAGS_CHFLASH	(0x1 << 2)
48 #define CH_FLAGS_CHMMCSD	(0x1 << 3)
49 
50 #ifndef __ASSEMBLY__
51 struct omap_boot_parameters {
52 	char *boot_message;
53 	unsigned int mem_boot_descriptor;
54 	unsigned char omap_bootdevice;
55 	unsigned char reset_reason;
56 	unsigned char ch_flags;
57 };
58 #endif
59 #endif
60