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

📄 eboot.h

📁 arm4 driver for freescale imx35
💻 H
字号:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this sample source code is subject to the terms of the Microsoft
// license agreement under which you licensed this sample source code. If
// you did not accept the terms of the license agreement, you are not
// authorized to use this sample source code. For the terms of the license,
// please see the license agreement between you and Microsoft or, if applicable,
// see the LICENSE.RTF on your install media or the root of your tools installation.
// THE SAMPLE SOURCE CODE IS PROVIDED "AS IS", WITH NO WARRANTIES.
//
//------------------------------------------------------------------------------
//
//  Header:  eboot.h
//
//  This header file is comprised of component header files that defines
//  the standard include hierarchy for the bootloader. It also defines few
//  trivial constant.
//
#ifndef __EBOOT_H
#define __EBOOT_H

//------------------------------------------------------------------------------

#include <windows.h>
#include <ceddk.h>
#include <blcommon.h>
#include <nkintr.h>
#include <halether.h>

#include <oal.h>
#include <oal_blmenu.h>

#include <omap5912.h>

#include <bsp_cfg.h>
#include <boot_args.h>
#include <args.h>
#include <image_cfg.h>

//------------------------------------------------------------------------------

#define EBOOT_VERSION_MAJOR         1
#define EBOOT_VERSION_MINOR         0

//------------------------------------------------------------------------------

typedef struct {
    UINT32 start;
    UINT32 length;
    UINT32 base;
} REGION_INFO_EX;

//------------------------------------------------------------------------------

#define DOWNLOAD_TYPE_RAM           1
#define DOWNLOAD_TYPE_EBOOT         2

//------------------------------------------------------------------------------

typedef struct {
    OAL_KITL_TYPE bootDeviceType;
    UINT32 type;
    UINT32 numRegions;
    REGION_INFO_EX region[BL_MAX_BIN_REGIONS];
} EBOOT_CONTEXT;

typedef enum  {
    UNDEFINED_MODE,
   	USER_ARUBABOARD_CONFIGURATION_MODE,
	SUPERVISOR_KERNEL_BOOT_MODE
} BootstrapModeEnum;


#define		FLASH_BOOTSTRAP_ADDRESS				0x0C002000
#define		SDRAM_BOOTSTRAP_ADDRESS				0x10001000


//------------------------------------------------------------------------------

extern BOOT_CFG g_bootCfg;
extern EBOOT_CONTEXT g_eboot;
extern OAL_KITL_DEVICE g_bootDevices[];
extern OAL_KITL_DEVICE g_kitlDevices[];

//------------------------------------------------------------------------------

BOOL OEMReportError(DWORD dwReason, DWORD dwReserved);
VOID OEMMultiBinNotify(MultiBINInfo *pInfo);
void Setup32KTimer();


//------------------------------------------------------------------------------

VOID   BLMenu();    
BOOL   BLReadBootCfg(BOOT_CFG *pBootCfg);
BOOL   BLWriteBootCfg(BOOT_CFG *pBootCfg);
UINT32 BLEthDownload(BOOT_CFG *pBootCfg, OAL_KITL_DEVICE *pBootDevices);
UINT32 BLSDMMCDownload(BOOT_CFG *pBootCfg, OAL_KITL_DEVICE *pBootDevices);
BOOL   BLSDMMCReadData(DWORD cbData, LPBYTE pbData);
VOID   BLEthConfig(BSP_ARGS *pArgs);
VOID*  BLVAtoPA(UINT32 address);

//------------------------------------------------------------------------------

#endif

⌨️ 快捷键说明

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