uboot/arch/arm/include/asm/global_data.h
<<
>>
Prefs
   1/*
   2 * (C) Copyright 2002
   3 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
   4 *
   5 * See file CREDITS for list of people who contributed to this
   6 * project.
   7 *
   8 * This program is free software; you can redistribute it and/or
   9 * modify it under the terms of the GNU General Public License as
  10 * published by the Free Software Foundation; either version 2 of
  11 * the License, or (at your option) any later version.
  12 *
  13 * This program is distributed in the hope that it will be useful,
  14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16 * GNU General Public License for more details.
  17 *
  18 * You should have received a copy of the GNU General Public License
  19 * along with this program; if not, write to the Free Software
  20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  21 * MA 02111-1307 USA
  22 */
  23
  24#ifndef __ASM_GBL_DATA_H
  25#define __ASM_GBL_DATA_H
  26/*
  27 * The following data structure is placed in some memory wich is
  28 * available very early after boot (like DPRAM on MPC8xx/MPC82xx, or
  29 * some locked parts of the data cache) to allow for a minimum set of
  30 * global variables during system initialization (until we have set
  31 * up the memory controller so that we can use RAM).
  32 *
  33 * Keep it *SMALL* and remember to set CONFIG_SYS_GBL_DATA_SIZE > sizeof(gd_t)
  34 */
  35
  36typedef struct  global_data {
  37        bd_t            *bd;
  38        unsigned long   flags;
  39        unsigned long   baudrate;
  40        unsigned long   have_console;   /* serial_init() was called */
  41        unsigned long   env_addr;       /* Address  of Environment struct */
  42        unsigned long   env_valid;      /* Checksum of Environment valid? */
  43        unsigned long   fb_base;        /* base address of frame buffer */
  44#ifdef CONFIG_VFD
  45        unsigned char   vfd_type;       /* display type */
  46#endif
  47#ifdef CONFIG_FSL_ESDHC
  48        unsigned long   sdhc_clk;
  49#endif
  50#if 0
  51        unsigned long   cpu_clk;        /* CPU clock in Hz!             */
  52        unsigned long   bus_clk;
  53        phys_size_t     ram_size;       /* RAM size */
  54        unsigned long   reset_status;   /* reset status register at boot */
  55#endif
  56        void            **jt;           /* jump table */
  57} gd_t;
  58
  59/*
  60 * Global Data Flags
  61 */
  62#define GD_FLG_RELOC    0x00001         /* Code was relocated to RAM            */
  63#define GD_FLG_DEVINIT  0x00002         /* Devices have been initialized        */
  64#define GD_FLG_SILENT   0x00004         /* Silent mode                          */
  65#define GD_FLG_POSTFAIL 0x00008         /* Critical POST test failed            */
  66#define GD_FLG_POSTSTOP 0x00010         /* POST seqeunce aborted                */
  67#define GD_FLG_LOGINIT  0x00020         /* Log Buffer has been initialized      */
  68#define GD_FLG_DISABLE_CONSOLE  0x00040         /* Disable console (in & out)    */
  69
  70#define DECLARE_GLOBAL_DATA_PTR     register volatile gd_t *gd asm ("r8")
  71
  72#endif /* __ASM_GBL_DATA_H */
  73