📄 config.h
字号:
/*
* BOOTROM_AOUT is that default path and file name of an A.OUT bootrom
* _still containing_ its 32byte A.OUT header. This is legacy code.
* Note that the first part of this string must match BOOTROM_DIR
* The "bootrom.dat" file name does not work with VxLd 1.5.
*/
#define BOOTROM_AOUT BOOTROM_DIR "/bootrom.dat"
/* IDT entry type options */
#define SYS_INT_TRAPGATE 0x0000ef00 /* trap gate */
#define SYS_INT_INTGATE 0x0000ee00 /* int gate */
#ifdef _WRS_VX_SMP
/* SMP must define SYMMETRIC_IO_MODE */
#define SYMMETRIC_IO_MODE /* Interrupt Mode: Symmetric IO Mode */
#undef VIRTUAL_WIRE_MODE /* Virtual Wire Mode NOT Supported on SMP */
#else
#undef VIRTUAL_WIRE_MODE /* Interrupt Mode: Virtual Wire Mode */
#undef SYMMETRIC_IO_MODE /* Interrupt Mode: Symmetric IO Mode */
#endif /* _WRS_VX_SMP */
#define INCLUDE_ATA /* include IDE/EIDE(ATA) hard disk driver */
#ifdef INCLUDE_ATA
#define INCLUDE_ATA_SHOW
#define INCLUDE_PIIX4_ATADMA
#ifdef INCLUDE_BOOT_APP
#define INCLUDE_BOOT_FILESYSTEMS
#define INCLUDE_BOOT_FS_DEVICES
#define INCLUDE_BOOT_ATA_LOADER
#define INCLUDE_DOSFS
#define INCLUDE_DOSFS_CHKDSK
#define INCLUDE_DOSFS_DIR_FIXED
#define INCLUDE_DOSFS_DIR_VFAT
#define INCLUDE_DOSFS_FAT
#define INCLUDE_DOSFS_FMT
#define INCLUDE_DOSFS_MAIN
#define INCLUDE_DOSFS_SHOW
#endif /* INCLUDE_BOOT_APP */
#define FS_NAMES_ATA_PRIMARY_MASTER ""
#define FS_NAMES_ATA_PRIMARY_SLAVE ""
#define FS_NAMES_ATA_SECONDARY_MASTER "/ata1a"
#define FS_NAMES_ATA_SECONDARY_SLAVE ""
#endif /* INCLUDE_ATA */
#undef INCLUDE_LPT /* include parallel port driver */
#undef INCLUDE_TFFS /* include TrueFFS driver for Flash */
#undef INCLUDE_PCMCIA /* include PCMCIA driver */
#define INCLUDE_RAWFS /* include raw FS */
#define INCLUDE_DOSFS_MAIN /* The 3 minimum components */
#define INCLUDE_DOSFS_FAT /* required for DosFs */
#define INCLUDE_DOSFS_DIR_VFAT
#undef INCLUDE_HRFS /* include HRFS file system */
/* These next four are defined due to INCLUDE_FD */
#ifdef INCLUDE_FD
#define INCLUDE_FS_MONITOR /* include file system monitor */
#define INCLUDE_FS_EVENT_UTIL /* include file event utility */
#define INCLUDE_XBD /* include extended block devices */
#define INCLUDE_XBD_BLK_DEV
#endif
#define INCLUDE_ERF /* include event report framework */
#define INCLUDE_DEVICE_MANAGER /* include device manager */
/* SCSI driver options */
#undef INCLUDE_SCSI /* include SCSI driver */
#undef INCLUDE_AIC_7880 /* include AIC 7880 SCSI driver */
#undef INCLUDE_SCSI_BOOT /* include ability to boot from SCSI */
#undef INCLUDE_CDROMFS /* file system to be used */
#undef INCLUDE_SCSI2 /* select SCSI2 not SCSI1 */
/* VxBus configuration */
#define INCLUDE_VXBUS
#ifdef INCLUDE_VXBUS
/* VxBus util */
#define VXBUS_TABLE_CONFIG
#define INCLUDE_VXB_CMDLINE
#define INCLUDE_SIO_UTILS
#define INCLUDE_HWMEM_ALLOC
#define HWMEM_POOL_SIZE 100000
#define INCLUDE_PARAM_SYS
#define INCLUDE_DMA_SYS
#define INCLUDE_NON_VOLATILE_RAM
/* VxBus bus types */
#define INCLUDE_PLB_BUS
#define INCLUDE_PCI_BUS
#define INCLUDE_PCI
#if defined (VIRTUAL_WIRE_MODE) || defined (SYMMETRIC_IO_MODE)
/* PCI_IO_ADRS must not overlap APIC... */
#ifdef PCI_IO_ADRS
#undef PCI_IO_ADRS
#endif
#ifdef PCI_IO_SIZE
#undef PCI_IO_SIZE
#endif
#define PCI_IO_ADRS 0xa0000000
#define PCI_IO_SIZE 0x58000000
#else /* VIRTUAL_WIRE_MODE || SYMMETRIC_IO_MODE */
#ifndef PCI_IO_ADRS
#define PCI_IO_ADRS 0xa0000000
#define PCI_IO_SIZE 0x5ff80000
#endif /* PCI_IO_ADRS */
#endif /* VIRTUAL_WIRE_MODE || SYMMETRIC_IO_MODE */
/* VxBus drivers */
#define INCLUDE_PENTIUM_PCI
#define INCLUDE_PCI_OLD_CONFIG_ROUTINES
#define DRV_SIO_NS16550
#define DRV_NVRAM_FILE
/* Network driver options: VxBus drivers */
#undef INCLUDE_AM79C97X_VXB_END
#undef INCLUDE_AN983_VXB_END
#undef INCLUDE_FEI8255X_VXB_END
#define INCLUDE_GEI825XX_VXB_END
#undef INCLUDE_MVYUKONII_VXB_END
#undef INCLUDE_MVYUKON_VXB_END
#undef INCLUDE_NS8381X_VXB_END
#undef INCLUDE_RTL8139_VXB_END
#undef INCLUDE_RTL8169_VXB_END
#undef INCLUDE_TC3C905_VXB_END
#undef INCLUDE_NE2000_VXB_END
/* PHY and MII bus support */
#define INCLUDE_MII_BUS
#define INCLUDE_GENERICPHY
#undef INCLUDE_DM9191PHY
#undef INCLUDE_LXT972PHY
#undef INCLUDE_MV88E1X11PHY
#undef INCLUDE_RTL8201PHY
#undef INCLUDE_RTL8169PHY
#undef INCLUDE_VSC82XXPHY
#endif /* INCLUDE_VXBUS */
#define INCLUDE_END /* Enhanced Network Driver Support */
#undef INCLUDE_DEC21X40_END /* (END) DEC 21x4x PCI interface */
#undef INCLUDE_EL_3C90X_END /* (END) 3Com Fast EtherLink XL PCI */
#undef INCLUDE_ELT_3C509_END /* (END) 3Com EtherLink III interface */
#undef INCLUDE_ENE_END /* (END) Eagle/Novell NE2000 interface */
#undef INCLUDE_ULTRA_END /* (END) SMC Elite16 Ultra interface */
#undef INCLUDE_GEI8254X_END /* (END) Intel 82543/82544 PCI interface */
#undef INCLUDE_LN_97X_END /* (END) AMD 79C97x PCI interface */
#undef INCLUDE_BSD /* BSD / Netif Driver Support (Deprecated) */
#undef INCLUDE_EEX /* (BSD) Intel EtherExpress interface */
#undef INCLUDE_EEX32 /* (BSD) Intel EtherExpress flash 32 */
#undef INCLUDE_ELC /* (BSD) SMC Elite16 interface */
#undef INCLUDE_ESMC /* (BSD) SMC 91c9x Ethernet interface */
#undef INCLUDE_AR521X_END /* Atheros AR521X WLAN Support */
#ifndef INCLUDE_VXBUS
#if 0
#define INCLUDE_FEI_END /* (END) Intel 8255[7/8/9] PCI interface */
#endif
#endif /* !INCLUDE_VXBUS */
/* PCMCIA driver options */
#ifdef INCLUDE_PCMCIA
# define INCLUDE_ATA /* include ATA driver */
# define INCLUDE_SRAM /* include SRAM driver */
# undef INCLUDE_TFFS /* include TFFS driver */
# ifdef INCLUDE_NETWORK
# define INCLUDE_BSD /* include BSD / Netif Driver Support */
# define INCLUDE_ELT /* (BSD) 3Com EtherLink III interface */
# endif /* INCLUDE_NETWORK */
#endif /* INCLUDE_PCMCIA */
/* default MMU options and PHYS_MEM_DESC type state constants */
#define INCLUDE_MMU_BASIC /* bundled MMU support */
#undef VM_PAGE_SIZE /* page size */
#define VM_PAGE_SIZE PAGE_SIZE_4KB /* default page size */
#define VM_STATE_MASK_FOR_ALL \
VM_STATE_MASK_VALID | VM_STATE_MASK_WRITABLE | VM_STATE_MASK_CACHEABLE
#define VM_STATE_FOR_IO \
VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE_NOT
#define VM_STATE_FOR_MEM_OS \
VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE
#define VM_STATE_FOR_MEM_APPLICATION \
VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE
#define VM_STATE_FOR_PCI \
VM_STATE_VALID | VM_STATE_WRITABLE | VM_STATE_CACHEABLE_NOT
/* CPU family/type-specific macros and options */
#if (CPU == I80386) || (CPU == I80486) /* [34]86 specific macros */
/*
* software floating point emulation support. DO NOT undefine hardware fp
* support in configAll.h as it is required for software fp emulation.
*/
#define INCLUDE_SW_FP /* enable emulator if there is no FPU */
#elif (CPU == PENTIUM) /* P5 specific macros */
#undef INCLUDE_SW_FP /* Pentium has hardware FPP */
#undef USER_D_CACHE_MODE /* Pentium write-back data cache support */
#define USER_D_CACHE_MODE (CACHE_COPYBACK | CACHE_SNOOP_ENABLE)
#undef INCLUDE_PMC /* include PMC */
#elif (CPU == PENTIUM2) || (CPU == PENTIUM3) || (CPU == PENTIUM4) /* P6,P7 */
#undef INCLUDE_SW_FP /* Pentium[234] has hardware FPP */
#undef USER_D_CACHE_MODE /* Pentium[234] write-back data cache support */
#define USER_D_CACHE_MODE (CACHE_COPYBACK | CACHE_SNOOP_ENABLE)
#define INCLUDE_MTRR_GET /* get MTRR to sysMtrr[] */
#define INCLUDE_PMC /* include PMC */
#if defined (VIRTUAL_WIRE_MODE) || defined (SYMMETRIC_IO_MODE)
#define DRV_INTCTLR_MPAPIC
#define DRV_INTCTLR_LOAPIC
/* MSI: define INCLUDE_INTCTLR_DYNAMIC_LIB */
#define INCLUDE_INTCTLR_DYNAMIC_LIB
#if defined (SYMMETRIC_IO_MODE)
#define DRV_INTCTLR_IOAPIC
#endif /* defined (SYMMETRIC_IO_MODE) */
#endif /* defined (VIRTUAL_WIRE_MODE) || (SYMMETRIC_IO_MODE) */
#define INCLUDE_MMU_P6_32BIT /* include 32bit MMU for Pentium[234] */
#ifdef INCLUDE_MMU_P6_32BIT
# undef VM_PAGE_SIZE /* page size could be 4KB, 4MB */
# define VM_PAGE_SIZE PAGE_SIZE_4KB /* PAGE_SIZE_4MB */
#endif /* INCLUDE_MMU_P6_32BIT */
#ifdef INCLUDE_MMU_P6_36BIT
# undef VM_PAGE_SIZE /* page size could be 4KB, 2MB */
# define VM_PAGE_SIZE PAGE_SIZE_4KB /* PAGE_SIZE_2MB */
#endif /* INCLUDE_MMU_P6_32BIT */
#if defined (INCLUDE_MMU_P6_32BIT) || defined (INCLUDE_MMU_P6_36BIT)
# undef VM_STATE_MASK_FOR_ALL
# undef VM_STATE_FOR_IO
# undef VM_STATE_FOR_MEM_OS
# undef VM_STATE_FOR_MEM_APPLICATION
# undef VM_STATE_FOR_PCI
# define VM_STATE_MASK_FOR_ALL \
VM_STATE_MASK_VALID | VM_STATE_MASK_WRITABLE | \
VM_STATE_MASK_WBACK | VM_STATE_MASK_GLOBAL
# define VM_STATE_FOR_IO \
VM_STATE_VALID | VM_STATE_WRITABLE | \
VM_STATE_CACHEABLE_NOT | VM_STATE_GLOBAL_NOT
# define VM_STATE_FOR_MEM_OS \
VM_STATE_VALID | VM_STATE_WRITABLE | \
VM_STATE_WBACK | VM_STATE_GLOBAL_NOT
# define VM_STATE_FOR_MEM_APPLICATION \
VM_STATE_VALID | VM_STATE_WRITABLE | \
VM_STATE_WBACK | VM_STATE_GLOBAL_NOT
# define VM_STATE_FOR_PCI \
VM_STATE_VALID | VM_STATE_WRITABLE | \
VM_STATE_CACHEABLE_NOT | VM_STATE_GLOBAL_NOT
#endif /* defined (INCLUDE_MMU_P6_32BIT) || defined (INCLUDE_MMU_P6_36BIT) */
/*
* To enable the IOAPIC, define the mother board from the following list.
* If the IOAPIC is already enabled, defining the mother board is not
* needed. Related code locates in pciCfgIntStub.c.
* D815EEA = Pentium3 + i815e + ICH2(i82801BA)
* D850GB = Pentium4 + i850 + ICH2(i82801BA)
* The PIRQ[n] is directly handled by IOAPIC in the SYMMETRIC_IO_MODE.
*/
#undef INCLUDE_D815EEA /* Pentium3 + i815e + ICH2 */
#undef INCLUDE_D850GB /* Pentium4 + i850 + ICH2 */
#if defined (INCLUDE_D815EEA) || defined (INCLUDE_D850GB)
# define INCLUDE_ICH2 /* ICH2 IO controller hub */
#else
# if (CPU == PENTIUM4)
# define INCLUDE_ICH3 /* set ICH3 as default */
# endif /* (CPU == PENTIUM4) */
#endif /* defined (INCLUDE_D815EEA) || defined (INCLUDE_D850GB) */
#if (CPU == PENTIUM4) && \
(defined (VIRTUAL_WIRE_MODE) || defined (SYMMETRIC_IO_MODE))
# undef INCLUDE_DEBUG_STORE /* Debug Store (BTS/PEBS) */
# ifdef INCLUDE_DEBUG_STORE
# define DS_SYS_MODE FALSE /* TRUE system mode, FALSE task mode */
# define BTS_ENABLED TRUE /* BTS TRUE enable, FALSE disable */
# define BTS_INT_MODE TRUE /* BTS TRUE int mode, FALSE circular */
# define BTS_BUF_MODE TRUE /* BTS TRUE buffer mode, FALSE bus */
# define PEBS_ENABLED TRUE /* PEBS TRUE enable, FALSE disable */
# define PEBS_EVENT PEBS_REPLAY /* PEBS event */
# define PEBS_METRIC PEBS_2NDL_CACHE_LOAD_MISS /* PEBS metric */
# define PEBS_OS TRUE /* PEBS TRUE supervisor, FALSE usr */
# define PEBS_RESET -1LL /* PEBS default reset counter value */
# endif /* INCLUDE_DEBUG_STORE */
#endif /* (CPU == PENTIUM4) */
#endif /* (CPU == I80386) || (CPU == I80486) */
/* vxbus timer specific macros */
#define INCLUDE_TIMER_SYS /* timer drv control via vxBus */
#undef INCLUDE_ICH7_SUPPORT /* define if using I/O Controller HUB 7 (ICH7), */
/* currently only on the idp945 (Capell Valley) */
#if defined (SYMMETRIC_IO_MODE)
#define DRV_TIMER_LOAPIC /* SMP TIMER DRV */
#define DRV_TIMER_IA_TIMESTAMP /* SMP will need HPET for vxbDelay */
#undef DRV_TIMER_I8253 /* MODE requires use of Local APIC */
#elif defined (VIRTUAL_WIRE_MODE)
#define DRV_TIMER_I8253 /* UP TIMER DRV */
#define DRV_TIMER_LOAPIC /* MODE requires use of Local APIC as well */
#else
#define DRV_TIMER_I8253 /* UP TIMER DRV */
#undef DRV_TIMER_LOAPIC /* APICS Not initialized in UP */
#endif /* defined (SYMMETRIC_IO_MODE) */
#ifdef INCLUDE_TIMESTAMP
# define DRV_TIMER_IA_TIMESTAMP
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -