bootarg.h
资源名称:SMDK2440.rar [点击查看]
上传用户:qiulin1960
上传日期:2013-10-16
资源大小:2844k
文件大小:4k
源码类别:
Windows CE
开发平台:
Windows_Unix
- /*++
- 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 by loadcepc at boot time.
- 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