source: svn/trunk/newcon3bcm2_21bu/dta/src/bootloader/ramheader.h @ 2

Last change on this file since 2 was 2, checked in by phkim, 11 years ago

1.phkim

  1. revision copy newcon3sk r27
  • Property svn:executable set to *
File size: 2.8 KB
Line 
1/***************************************************************************
2 *     Copyright (c) 2010, Broadcom Corporation
3 *     All Rights Reserved
4 *     Confidential Property of Broadcom Corporation
5 *
6 *  THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE
7 *  AGREEMENT  BETWEEN THE USER AND BROADCOM.  YOU HAVE NO RIGHT TO USE OR
8 *  EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT.
9 *
10 * $brcm_Workfile: $
11 * $brcm_Revision: $
12 * $brcm_Date: $
13 *
14 * Module Description: ram executable image header
15 *
16 * Revision History:
17 *
18 * $brcm_Log: $q
19 *
20 *
21 ***************************************************************************/
22
23#if !defined(__RAMHEADER_H__)
24#define __RAMHEADER_H__
25
26#define DTA_MAGIC 0x41544448
27#define SCM_MAGIC 0x4c4d4353
28#define FMAP_MAGIC 0x50414d46
29
30#define CHIP_ID 0x7572
31
32#if !defined(__ASSEMBLY__)
33/* software image boot header */
34typedef struct boot_header_t {
35        unsigned long boot_order;       /* updated by application before storing */
36        unsigned long chip_id;
37        unsigned long dummy[2];         /* filler to align to 0x10 */
38} boot_header_t;
39
40typedef struct application_info_header_t {
41        unsigned long image_size;       /* size of image, must be multiple of 0x40 */
42        unsigned long epoch;            /* epoch number */
43        unsigned long chip_id;          /* chip id to recognize image version */
44        unsigned long dta_magic;        /* HDTA - 0x41544448 */
45        unsigned char version[64];      /* version string */
46        unsigned long dummy[12];        /* pad to 0x40 boundary */
47} application_info_header_t;
48
49typedef struct scm_info_header_t {
50        unsigned long image_size;       /* size of the image */
51        unsigned long epoch;            /* epoch */
52        unsigned long chip_id;          /* chip id */
53        unsigned long scm_magic;        /* SCML - 0x4c4d4353 */
54        unsigned long dummy[12];        /* pad to 0x40 boundary */
55} scm_info_header_t;
56
57typedef struct flash_map_info_t {
58        unsigned long fmap_magic;
59        unsigned long image0_offset;
60        unsigned long image1_offset;
61        unsigned long settings_offset;
62        unsigned long settings_size;
63} flash_map_info_t;
64
65#endif
66
67/* Flash map section (may be moved to separate file in the future) */
68#if (BCHP_CHIP!=7552)
69#define FLASH_BASE 0x98c00000
70#define FLASH_SIZE 0x600000
71#else
72#define FLASH_BASE 0x9fc00000
73#define FLASH_SIZE 0x400000
74#endif
75#define FLASH_BOOTLOADER_START FLASH_BASE
76#define FLASH_BOOTLOADER_SIZE 0x20000
77#define FLASH_APP0_START (FLASH_BOOTLOADER_START + FLASH_BOOTLOADER_SIZE)
78#define FLASH_APP0_SIZE ((FLASH_SIZE - (FLASH_BOOTLOADER_SIZE + FLASH_DATA_SIZE))/2)
79#define FLASH_APP1_START (FLASH_APP0_START + FLASH_APP0_SIZE)
80#define FLASH_APP1_SIZE FLASH_APP0_SIZE
81#define FLASH_DATA_START (FLASH_APP1_START + FLASH_APP1_SIZE)
82#define FLASH_DATA_SIZE 0x40000
83
84#define FMAP_APP0_OFFSET FLASH_BOOTLOADER_SIZE
85#define FMAP_APP1_OFFSET (FMAP_APP0_OFFSET + FLASH_APP0_SIZE)
86#define FMAP_DATA_OFFSET (FMAP_APP1_OFFSET + FLASH_APP1_SIZE)
87#define FMAP_DATA_SIZE FLASH_DATA_SIZE
88#endif
Note: See TracBrowser for help on using the repository browser.