⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mxc_nb.h

📁 i.mx31 3DS平台Nandboot引导程序源码
💻 H
字号:
/* *  misc/source/bootloader/nandboot/mxc_mb.h * *  Copyright 2004-2006 Freescale Semiconductor, Inc. All Rights Reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */#ifndef MXC_NB_H#define MXC_NB_H/*! * @defgroup NANDboot Bootloader for NAND Flash *//*! * @file mxc_nb.h *  * @brief This file contains the NANDboot chip configuration and  * source configurations.  * * @ingroup NANDboot *//*! * @name NAND Boot data types *//*! @{ */#ifdef MXC91231#include "../ipl/mxc_setup_mxc91231.h"#endif#ifdef MXC91331#include "../ipl/mxc_setup_mxc91331.h"#endif#ifdef MXC91131#include "../ipl/mxc_setup_mxc91131.h"#endif#ifdef MX31#include "../ipl/mxc_setup_mx31.h"#endif #ifdef MX21#include "../ipl/mxc_setup_mx21.h"#endif /*!  * 32 bit data type  */typedef unsigned int    U32;  /*!  * 16 bit data type */typedef unsigned short  U16;  /*!  * 8 bit data type */typedef unsigned char   U8;   /*! @} *//*! * This defines the enabling or disabling menu show */#undef BOOT_NOWAIT/*! * This defines the enabling or disabling of the Watchdog Timer feature  * in NANDboot */#define WDOG_EN         0/* This defines Internal and External UART */  #define INT_UART      1  #define EXT_UART      0 /*! * This defines the either internal (INT_UART) or external (EXT_UART) UART to be * used for output */#if (!(defined(MX31)||defined(MX21)))#define UART_OUTPUT    EXT_UART#else /* Use Internal Uart because redboot and linux kernel use same UART */#define UART_OUTPUT    INT_UART#endif  /*! * This defines the UART port in NANDboot * If EXT_UART is defined UART_PORT 1 is PORT_A and 2 is PORT_B */#define UART_PORT      1/*! * This defines the Baud rate for UART */#define UART_BAUD_RATE        115200/*! * Set this parameter to non-zero to enable unit test code in NANDBoot.  */#define UNIT_TEST      0 /*! * This defines the enabling or disabling of the  command line option * in nandboot */#define CHANGE_COMMAND_LINE_OPTION     1 /*! * This defines the enabling or disabling of the change of  command  * line option address  in nandboot */#define CHANGE_COMMAND_LINE_ADDRESS     0/*! * This defines the changing the kernel loading address  */#define  CHANGE_KERNEL_LOADING_ADDRESS  1/*!  * This defines NAND buswidth for 8 and 16 bit  */ #define NAND_BIT_8      8#define NAND_BIT_16     16/*! * This defines the NAND buswidth */#define NAND_BUSWIDTH   NAND_BIT_8/*! * These defines are used for Unit Test */#ifdef UNIT_TEST#define DEBUG_BASE      0x80001000#define DEBUG_ADDR0     (U32*)(DEBUG_BASE+0x000) /* for debug */#define DEBUG_ADDR1     (U32*)(DEBUG_BASE+0x100) /* for debug */#define DEBUG_ADDR2     (U32*)(DEBUG_BASE+0x200) /* for debug */#define DEBUG_ADDR3     (U32*)(DEBUG_BASE+0x300) /* for debug */#define DEBUG_ADDR4     (U32*)(DEBUG_BASE+0x400) /* for debug */#endif/*! * Maximum size for command line option */#define CMDLINE_LEN     150#ifdef MX21/*! * Command line option address for Linux kernel */#define CMDLINE_ADDR    (U8 *)0xc03FF000/*! * Source address where Linux kernel image is stored */#define SOURCE_ADDR     (U32 *)0xc0008000/*! * Destination address where Linux kernel will be copied for execution */#define DESTN_ADDR      (U32 *)0xc0008000#else/*! * Command line option address for Linux kernel */#define CMDLINE_ADDR    (U8 *)0x80000100/*! * Source address where Linux kernel image is stored */#define SOURCE_ADDR     (U32 *)0xA0008000/*! * Destination address where Linux kernel will be copied for execution */#define DESTN_ADDR      (U32 *)0x80008000#endif/*! * Base address for Watchdog Timer */#define WDOG_BASE       WDOG1_BASE_ADDR /*!  * Timeout value for Watchdog Timer  */#define WDOG_TIMEOUT        0x4000/*! * AIPS1 register base address */#define AIPS1_REG_BASE  AIPS1_BASE_ADDR/*! * AIPS2 register base address */#define AIPS2_REG_BASE  AIPS2_BASE_ADDR/*! * Time out value for menu in sec */#define MENU_TIMEOUT    5/*! * This defines processor id for the respective processor.  * This id is passed to the Linux kernel before booting. */#if defined  (MX31)#define PROC_ID         0x1BF#else#if defined (MXC91331)#define PROC_ID         0x229#else#if defined (MXC91231)#define PROC_ID         0x22A#else#if defined (MXC91131)#define PROC_ID         0x2C6#else#if defined (MX21)#define PROC_ID         0x2C6#else#error PLATFORM should be defined to be one of {MX31|MXC91331|MXC91231|MXC91131|MX21}#endif#endif#endif#endif#endif#endif /* MXC_NB_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -