Logo Search packages:      
Sourcecode: linux version File versions  Download package

arch.h

/*
 *  arch/arm/include/asm/mach/arch.h
 *
 *  Copyright (C) 2000 Russell King
 *
 * 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 __ASSEMBLY__

struct tag;
struct meminfo;
struct sys_timer;

struct machine_desc {
      /*
       * Note! The first four elements are used
       * by assembler code in head.S, head-common.S
       */
      unsigned int            nr;         /* architecture number  */
      unsigned int            phys_io;    /* start of physical io */
      unsigned int            io_pg_offst;      /* byte offset for io 
                                     * page tabe entry      */

      const char        *name;            /* architecture name    */
      unsigned long           boot_params;      /* tagged list          */

      unsigned int            video_start;      /* start of video RAM   */
      unsigned int            video_end;  /* end of video RAM     */

      unsigned int            reserve_lp0 :1;   /* never has lp0  */
      unsigned int            reserve_lp1 :1;   /* never has lp1  */
      unsigned int            reserve_lp2 :1;   /* never has lp2  */
      unsigned int            soft_reboot :1;   /* soft reboot          */
      void              (*fixup)(struct machine_desc *,
                               struct tag *, char **,
                               struct meminfo *);
      void              (*map_io)(void);/* IO mapping function    */
      void              (*init_irq)(void);
      struct sys_timer  *timer;           /* system tick timer    */
      void              (*init_machine)(void);
};

/*
 * Set of macros to define architecture features.  This is built into
 * a table by the linker.
 */
#define MACHINE_START(_type,_name)              \
static const struct machine_desc __mach_desc_##_type  \
 __used                                         \
 __attribute__((__section__(".arch.info.init"))) = {  \
      .nr         = MACH_TYPE_##_type,          \
      .name       = _name,

#define MACHINE_END                       \
};

#endif

Generated by  Doxygen 1.6.0   Back to index