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

📄 bootarg.h

📁 WinCE 3.0 BSP, 包含Inter SA1110, Intel_815E, Advantech_PCM9574 等
💻 H
字号:
/*++
THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.
Copyright (c) 1995-2000 Microsoft Corporation.  All rights reserved.

Module Name:
    bootarg.h

Abstract:
    Definitions for arguments passed to the OS from the boot loader.

Notes:

--*/
#ifndef _BOOTARG_H
#define _BOOTARG_H

#include <halether.h>

// Contains a pointer to the actual boot args structure
#define BOOT_ARG_PTR_LOCATION   0x801FFFFC

typedef struct _BOOT_ARGS {
    UCHAR   ucVideoMode;
    UCHAR   ucComPort;
    UCHAR   ucBaudDivisor;
    UCHAR   ucPCIConfigType;

    // The following args are not set by older versions of loadcepc,
    // so include a sig to verify that the remaining params are valid.
    // Also, include a length to allow expansion in the future.
    DWORD   dwSig;
    #define BOOTARG_SIG  0x544F4F42 // "BOOT"
    DWORD   dwLen;              // Total length of boot args struct
    UCHAR   ucLoaderFlags;      // Flags set by loader
    UCHAR   ucEshellFlags;      // Flags from eshell
    UCHAR   ucEdbgAdapterType;  // Type of debug Ether adapter
    UCHAR   ucEdbgIRQ;          // IRQ line to use for debug Ether adapter
    DWORD   dwEdbgBaseAddr;     // Base I/O address for debug Ether adapter
    DWORD   dwEdbgDebugZone;    // Allow EDBG debug zones to be turned on from loadcepc
    // The following is only valid if LDRFL_ADDR_VALID is set
    EDBG_ADDR EdbgAddr;         // IP/ether addr to use for debug Ethernet
    // The following addresses are only valid if LDRFL_JUMPIMG is set, and corresponding bit in
    // ucEshellFlags is set (configured by eshell, bit definitions in ethdbg.h).
    EDBG_ADDR EshellHostAddr;   // IP/ether addr and UDP port of host running eshell
    EDBG_ADDR DbgHostAddr;      // IP/ether addr and UDP port of host receiving dbg msgs
    EDBG_ADDR CeshHostAddr;     // IP/ether addr and UDP port of host running ether text shell
    EDBG_ADDR KdbgHostAddr;     // IP/ether addr and UDP port of host running kernel debugger
    DWORD DHCPLeaseTime;        // Length of DHCP IP lease in seconds
    DWORD EdbgFlags;            // Information about the ethernet system

    DWORD dwEBootFlag;          // Eboot flags indicating whether EBoot supports warm reset (older version may not)
    DWORD dwEBootAddr;          // Eboot entry point set by eboot and used during warm reset
    DWORD dwLaunchAddr;         // Old image launch address saved by EBoot when it receives jmpimage

    // The following args added to support passing info to flat framebuffer display driver
    DWORD   pvFlatFrameBuffer;  // pointer to flat frame buffer
    WORD    vesaMode;           // VESA mode being used
    WORD    cxDisplayScreen;    // displayable X size
    WORD    cyDisplayScreen;    // displayable Y size
    WORD    cxPhysicalScreen;   // physical X size
    WORD    cyPhysicalScreen;   // physical Y size
    WORD    cbScanLineLength;   // scan line byte count
    WORD    bppScreen;          // color depth
    UCHAR   RedMaskSize;        // size of red color mask
    UCHAR   RedMaskPosition;    // position for red color mask
    UCHAR   GreenMaskSize;      // size of green color mask
    UCHAR   GreenMaskPosition;  // position for green color mask
    UCHAR   BlueMaskSize;       // size of blue color mask
    UCHAR   BlueMaskPosition;   // position for blue color mask

} BOOT_ARGS, *PBOOT_ARGS;

// Defs for loader flags
    #define    LDRFL_USE_EDBG    0x0001  // Set to attempt to use debug Ethernet
// The following two flags are only looked at if LDRFL_USE_EDBG is set
    #define    LDRFL_ADDR_VALID  0x0002  // Set if EdbgAddr field is valid
    #define    LDRFL_JUMPIMG     0x0004  // If set, don't communicate with eshell to get
// configuration, use ucEshellFlags field.

// Use this constant in EdbgIRQ to specify that EDBG should run without an interrupt.
    #define EDBG_IRQ_NONE  0xFF

#endif // _BOOTARG_H

⌨️ 快捷键说明

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