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

📄 aslbuild.mak

📁 AMI 主板的BIOS源码。
💻 MAK
📖 第 1 页 / 共 5 页
字号:
#**********************************************************************;
#     *****************************************************************;
#     *****************************************************************;
#     **                                                             **;
#     **      (C)Copyright 1985-1996, American Megatrends, Inc.      **;
#     **                                                             **;
#     **                     All Rights Reserved.                    **;
#     **                                                             **;
#     **           6145-F Northbelt Pkwy, Norcross, GA 30071         **;
#     **                                                             **;
#     **                     Phone (770)-246-8600                    **;
#     **                                                             **;
#     *****************************************************************;
#     *****************************************************************;
#**********************************************************************;
#                                                                       #
#!!!!!!!!!!!!!!!!!!!!!! DESKTOP SPECIFIC !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
#                                                                       #
# The ASL file structure builder module                                 #
#-----------------------------------------------------------------------#
# ACPI_ASL_PATH macro has a path to ASL Project direcory (ASL style)    #
#-----------------------------------------------------------------------#
ACPI_ASL_PATH           = $(ACPI_ASL_DIR:\=\\)\\
INCLUDE_ASL_PATH	= $(ASL_LIB_PATH)
!if $(ARC_LIB)
COPY                    = pkunzip -e -o $(ASL_LIB_PATH)\asllib.zip
INCLUDE_ASL_PATH	= INCLUDE.ASL
!endif
#-----------------------------------------------------------------------#
# PATH into Library INCLUDE.ASL files                               	#
#-----------------------------------------------------------------------#
CUSTOM_PATH		= $(INCLUDE_ASL_PATH)\CUSTOM
PCI_DEV_PATH            = $(INCLUDE_ASL_PATH)\PCIDEV
OEMIO_PATH		= $(INCLUDE_ASL_PATH)\OEMIO
OEMIO_PATH_AUDIO	= $(OEMIO_PATH)\AUDIO
OEMIO_PATH_SUPERIO      = $(OEMIO_PATH)\SUPERIO
SMBAT_PATH 		= $(INCLUDE_ASL_PATH)\SMBAT
SYSTEM_PATH             = $(INCLUDE_ASL_PATH)\SYSTEM
TSENSOR_PATH            = $(INCLUDE_ASL_PATH)\TSENSOR
DOCK_PATH		= $(INCLUDE_ASL_PATH)\DOCK
#-----------------------------------------------------------------------#
# Add new macros if any new hardware support added                      #
#-----------------------------------------------------------------------#
#-----------------------------------------------------------------------#
# PCI North bridge name. Default : Intel 440BX				#
#-----------------------------------------------------------------------#
!if $(A_N_I430TX)
A_NRTH_BRG_PATH	= i430tx
!elseif $(A_N_I440LX)
A_NRTH_BRG_PATH	= i440lx
!elseif $(A_N_I440EX)
A_NRTH_BRG_PATH	= i440ex
!elseif $(A_N_I440GX)
A_NRTH_BRG_PATH	= i440gx
!elseif $(A_N_ALI1541)
A_NRTH_BRG_PATH	= ALI1541
!elseif $(A_N_ALI1621)
A_NRTH_BRG_PATH	= ALI1621
!elseif $(A_N_CAMINO)
A_NRTH_BRG_PATH	= Camino
!elseif $(A_N_CYRIX30)
A_NRTH_BRG_PATH	= cyrix30
!elseif $(A_N_FIRESTAR)
A_NRTH_BRG_PATH	= firestar
!elseif $(A_N_SIS5598)
A_NRTH_BRG_PATH	= sis5598
!elseif $(A_N_SIS5600)
A_NRTH_BRG_PATH	= sis5600
!elseif $(A_N_SIS530)
A_NRTH_BRG_PATH	= sis530
!elseif $(A_N_SIS620)
A_NRTH_BRG_PATH	= sis620
!elseif $(A_N_VIA82588)
A_NRTH_BRG_PATH	= via82588
!elseif $(A_N_VIA82595)
A_NRTH_BRG_PATH	= via82595
!elseif $(A_N_VIA82691)
A_NRTH_BRG_PATH	= via82691
!else
A_NRTH_BRG_PATH	= i440bx
!endif
#-----------------------------------------------------------------------#
# PCI South bridge macros. Default : Intel PIIX4                        #
#-----------------------------------------------------------------------#
!if $(A_S_ALI1543)
A_SOUTH_BRG_PATH	= $(PCI_DEV_PATH)\ALI1543
!elseif $(A_S_FIRESTAR)
A_SOUTH_BRG_PATH	= $(PCI_DEV_PATH)\FIRESTAR
!elseif $(A_S_VIA82586)
A_SOUTH_BRG_PATH	= $(PCI_DEV_PATH)\VIA82586
!elseif $(A_S_VIA82586)
A_SOUTH_BRG_PATH	= $(PCI_DEV_PATH)\VIA82595
!elseif $(A_S_CYRIX30)
A_SOUTH_BRG_PATH	= $(PCI_DEV_PATH)\CYRIX30
!elseif $(A_S_ICH)
A_SOUTH_BRG_PATH	= $(PCI_DEV_PATH)\ICH
!elseif $(A_S_SIS5595)	
A_SOUTH_BRG_PATH	= $(PCI_DEV_PATH)\sis5595
!else
A_SOUTH_BRG_PATH	= $(PCI_DEV_PATH)\PIIX4
!endif
#-----------------------------------------------------------------------#
A_S_IRQ_FIXED		= 0
# ALI1543
!if $(A_S_ALI1543)
A_IDE_DEV_FUN_Adr       = $(M5229_Dev_Number:h=)0000
A_USB_DEV_FUN_Adr       = $(M5237_Dev_Number:h=)0000
A_PMU_DEV_FUN_Adr 	= $(M7101_Dev_Number:h=)0000
A_S_IRQ_FIXED		= 1
# ALI1543 USB device
A_S_PIC_IRQ_TABLE	= Package(){0x$(M5237_Dev_Number:h=)ffff, 0, LNKU, 0},
A_S_APIC_IRQ_TABLE	= Package() {0x01ffff, 0, 0, 0x$(A_PCI_INTD_APIA)},^
		Package() {0x01ffff, 1, 0, 0x$(A_PCI_INTD_APIB)},^
		Package() {0x02ffff, 0 ,0, 0x$(A_PCI_INTD_APIA)},
# CYRIX30
!elseif $(A_S_CYRIX30)
A_IDE_DEV_FUN_Adr 	= $(A_IDE_DEV_Nbr)00$(A_IDE_FUN_Nbr)
A_USB_DEV_FUN_Adr 	= $(A_USB_DEV_Nbr)00$(A_USB_FUN_Nbr)
# Warning. The PMU address is wrong.
A_PMU_DEV_FUN_Adr 	= $(A_S_DEV_Nbr)0000
# I_ICH
!elseif $(A_S_ICH)
A_IDE_DEV_FUN_Adr 	= 001F0001
A_USB_DEV_FUN_Adr 	= 001F0002
A_PMU_DEV_FUN_Adr 	= $(A_S_DEV_Nbr)0000
A_S_IRQ_FIXED		= 1
A_S_PIC_IRQ_TABLE	= Package(){0x01f0002, 3, LNKD, 0},^
                Package(){0x01f0003, 1, LNKB, 0},^
                Package(){0x01f0005, 1, LNKB, 0},^
                Package(){0x01f0006, 1, LNKB, 0},
A_S_APIC_IRQ_TABLE	= Package(){0x01f0002 3, 0, 0x$(A_PCI_INTD_APIC)},^
                Package(){0x01f0003 1, 0, 0x$(A_PCI_INTB_APIC)},^
                Package(){0x01f0005 1, 0, 0x$(A_PCI_INTB_APIC)},^
                Package(){0x01f0006 1, 0, 0x$(A_PCI_INTB_APIC)},
!elseif $(A_S_SIS5595)
A_IDE_DEV_FUN_Adr       = $(A_IDE_DEV_Nbr)00$(A_IDE_FUN_Nbr)
A_USB_DEV_FUN_Adr       = $(A_S_DEV_Nbr)0002
A_PMU_DEV_FUN_Adr       = $(A_S_DEV_Nbr)0001
A_S_IRQ_FIXED		= 1
# SIS5595 USB device
A_S_PIC_IRQ_TABLE	= Package(){0x$(A_S_DEV_Nbr)ffff, 0, LNKU, 0},
#A_S_APIC_IRQ_TABLE	= Package(){0x$(A_USB_DEV_Nbr)ffff, 0, 0, 0x$(A_PCI_INTD_APIC)},
!else
A_IDE_DEV_FUN_Adr 	= $(A_S_DEV_Nbr)0001
A_USB_DEV_FUN_Adr 	= $(A_S_DEV_Nbr)0002
A_PMU_DEV_FUN_Adr 	= $(A_S_DEV_Nbr)0003
A_S_IRQ_FIXED		= 1
# PIIX4 Fun 2 USB device
A_S_PIC_IRQ_TABLE	= Package(){0x$(A_S_DEV_Nbr)ffff, 3, LNKD, 0},
A_S_APIC_IRQ_TABLE	= Package(){0x$(A_S_DEV_Nbr)ffff, 3, 0, 0x$(A_PCI_INTD_APIC)},
!endif
#-----------------------------------------------------------------------#
# List of devices supporting PMU PCI device (return the PM & SMBase I/O address)
A_PMU_ALL		= ($(A_S_PIIX4) || $(A_S_ALI1543)\
 || $(A_S_CYRIX30) || $(A_S_FIRESTAR) || $(A_S_VIA82586)\
 || $(A_S_VIA82595) || $(A_S_ICH)) || $(A_S_SIS5595) # James
#-----------------------------------------------------------------------#
# List of devices supporting USB as a part of South Bridge
A_USB_ALL		= ($(A_S_PIIX4) || $(A_S_ALI1543) || $(A_S_CYRIX30)\
 || $(A_S_VIA82586) || $(A_S_VIA82595) || $(A_S_ICH)) || $(A_S_SIS5595) # James
#-----------------------------------------------------------------------#
# path to SMBus host controller module
#-----------------------------------------------------------------------#
!if $(A_SMBUS)
A_SMB_HOST_PATH		= $(A_SOUTH_BRG_PATH)\smb_host.asl
!endif
#-----------------------------------------------------------------------#
# path to IDE PM control module
#-----------------------------------------------------------------------#
!if $(A_IDE_PM)
A_IDE_PM_PATH           = $(A_SOUTH_BRG_PATH)\pci-ide0.asl
!endif
#-----------------------------------------------------------------------#
# path to SuperIO module
#-----------------------------------------------------------------------#
A_OEMIO_PATH_SUPERIO	=

!ifdef SMC932_SMC935
! if $(SMC932_SMC935)
A_OEMIO_PATH_SUPERIO	= SMC93x
! endif
!endif

!ifdef SMC60X
! if $(SMC60X)
A_OEMIO_PATH_SUPERIO   = SMC60x
! endif
!endif

!ifdef SMC665                   #|| SMC665IR
! if $(SMC665) || $(SMC665IR)
A_OEMIO_PATH_SUPERIO	= SMC665
! endif
!endif

!ifdef SMC67X
! if $(SMC67X)
A_OEMIO_PATH_SUPERIO	= SMC67x
! endif
!endif

!ifdef ALI5135                  #|| ALI513X
! if $(ALI5135)
A_OEMIO_PATH_SUPERIO	= ALI5135F
! endif
!endif

!ifdef NAT307
! if $(NAT307)
A_OEMIO_PATH_SUPERIO	= NAT307
! endif
!endif

!ifdef NAT308                   #|| NAT317
! if $(NAT308)# || $(NAT317)
A_OEMIO_PATH_SUPERIO	= NAT308
! endif
!endif

!ifdef NAT309
! if $(NAT309)
A_OEMIO_PATH_SUPERIO	= NAT309
! endif
!endif

!ifdef NAT312
! if $(NAT312)
A_OEMIO_PATH_SUPERIO	= NAT312
! endif
!endif

!ifdef NAT338
! if $(NAT338)
A_OEMIO_PATH_SUPERIO	= NAT338
! endif
!endif

!ifdef WIN877
! if $(WIN877)
A_OEMIO_PATH_SUPERIO	= WIN877
! endif
!endif

!ifdef WIN977AF                 #|| WIN977
! if $(WIN977) || $(WIN977AF)
A_OEMIO_PATH_SUPERIO	= WIN977
! endif
!endif

!ifdef WIN977TF
! if $(WIN977TF)
A_OEMIO_PATH_SUPERIO	= WIN977TF
! endif
!endif

!ifdef ITE8680
! if $(ITE8680)
A_OEMIO_PATH_SUPERIO	= ITE8761F
! endif
!endif

!ifdef ITE8661
! if $(ITE8661)
A_OEMIO_PATH_SUPERIO	= ITE8661F
! endif
!endif

!ifdef GM803C
! if $(GM803C)
A_OEMIO_PATH_SUPERIO	= GM803C
! endif
!endif

#-----------------------------------------------------------------------#
# path to Audio module
#-----------------------------------------------------------------------#
!if $(A_ESS1888)
A_OEMIO_PATH_AUDIO	= ESS1888
!elseif $(A_ESS1887)
A_OEMIO_PATH_AUDIO	= ESS1887
!elseif $(A_ESS1887)
A_OEMIO_PATH_AUDIO	= ESS1878
!elseif $(A_ESS1869)
A_OEMIO_PATH_AUDIO	= ESS1869
!else
A_OEMIO_PATH_AUDIO	=
!endif
#-----------------------------------------------------------------------#
# path to thermal sensor module. Default path : nosensor.asl
#-----------------------------------------------------------------------#
!  if $(A_LM75)
A_T_SENSOR_PATH		= $(TSENSOR_PATH)\lm75.asl
!  elseif $(A_MAX1617L)
A_T_SENSOR_PATH		= $(TSENSOR_PATH)\max1617l.asl
!  elseif $(A_MAX1617R)
A_T_SENSOR_PATH		= $(TSENSOR_PATH)\max1617r.asl
!  else
A_T_SENSOR_PATH		= $(TSENSOR_PATH)\nosensor.asl
!  endif
#-----------------------------------------------------------------------#
# path to FAN module
#-----------------------------------------------------------------------#
!if "$(A_FAN_ISA_IO_Adr)" != ""
A_FAN_FIELD		= Field (FNOR, ByteAcc, NoLock, Preserve)
!elseif "$(A_FAN_INDEX_DATA_IO_Adr)" != ""
A_FAN_FIELD		= IndexField(FIND, FDTA,ByteAcc, NoLock, Preserve)
!endif

!  if $(A_FAN_MODEL_1)
A_FAN_PATH		= $(SYSTEM_PATH)\fan1.asl
!  elseif $(A_FAN_MODEL_2)
A_FAN_PATH		= $(SYSTEM_PATH)\fan2.asl
!  elseif $(A_FAN_MODEL_3)
A_FAN_PATH		= $(SYSTEM_PATH)\fan3.asl
!  elseif $(A_FAN_OEM)
A_FAN_PATH		= $(CUSTOM_PATH)\CUST_FAN.oem
!else
A_FAN_PATH		=
!endif
#-----------------------------------------------------------------------#
# path to System Indication mudule
#-----------------------------------------------------------------------#
! if $(A_SI_MODEL_1)
A_SI_PATH		= $(SYSTEM_PATH)\si_1.asl
! elseif $(A_SI_MODEL_2)
A_SI_PATH		= $(SYSTEM_PATH)\si_2.asl
! elseif $(A_SI_MODEL_3)
A_SI_PATH		= $(SYSTEM_PATH)\si_3.asl
! elseif $(A_SI_OEM)
A_SI_PATH		= $(CUSTOM_PATH)\CUST_SI.oem
!else
A_SI_PATH		=
!endif
!if "$(A_SI_ISA_IO_Adr)" != ""
A_SI_FIELD              = Field (SIOR, ByteAcc, NoLock, Preserve)
!elseif "$(A_SI_INDEX_DATA_IO_Adr)" != ""
A_SI_FIELD              = IndexField(SIND, SDTA,ByteAcc, NoLock, Preserve)
!endif
#-----------------------------------------------------------------------#
# !!!!!!!!!!!!!!!!!!    END OF MACRO DEFINITIONS    !!!!!!!!!!!!!!!!!!! #
#-----------------------------------------------------------------------#
#-----------------------------------------------------------------------#
#  Set of rules to create ASL Project files                             #
#-----------------------------------------------------------------------#
$(ACPI_ASL_DIR)\oemdsdt.asl:
# James
#PREBUILD:
#
#CLEANUP:
#
#$(BIOSFILE).rom: $(ACPI_ASL_DIR)\*.*  $(ASL_PORT)
#!if [choice ASL Builder process ready to update ASL project files. Your vote-] == 1
#-----------------------------------------------------------------------#
# Preserve existing ASL project files to CUSTOM_PATH\ASLOLD\ directory	#
#-----------------------------------------------------------------------#
!if !$(ARC_LIB)
	-@$(COPY) $(ACPI_ASL_DIR)\CUST_*.oem $(CUSTOM_PATH)
!endif
#	@MD $(ACPI_ASL_DIR)\ASLOLD
#        @DELTREE -Y $(ACPI_ASL_DIR)\ASLOLD\*.*
#        -@attrib -r $(ACPI_ASL_DIR)\*.*
#	-@move $(ACPI_ASL_DIR)\*.* $(ACPI_ASL_DIR)\ASLOLD
#-----------------------------------------------------------------------#
#                        GENERATE AMI.ASL file                          #
#-----------------------------------------------------------------------#
    copy << $(ACPI_ASL_DIR)\$(ASL_NAME).asl
DefinitionBlock (
        "$(ASL_NAME).AML",
        "DSDT",
        0x01,
        "$(A_OEM_ID)",          // OEM ID (6 byte string)
        "$(A_OEM_TABLE_ID)",    // OEM table ID  (8 byte string)
        0x$(A_OEM_REV)          // OEM version of DSDT table (4 byte Integer)
	)
//--------------------------------------------------------------------------
// BEGIN OF ASL SCOPE
//--------------------------------------------------------------------------
{
Scope(\_PR)     {               // BEGIN PROCESSOR PACKAGE
	Processor( CPU1,
// ProcessorID (unique for each CPU)
                1,
// PBlockAddress
!if "$(A_CPU_PBLK)" != ""
                0x$(A_CPU_PBLK),
// PBlockLength hardwired to 6 byte
                0x06
!else
                0,
                0
!endif
	){}
!if $(NCPU) > 1
	Processor( CPU2,
// ProcessorID (unique for each CPU)
                2,
// PBlockAddress
!if "$(A_CPU_PBLK)" != ""
                0x$(A_CPU_PBLK),
// PBlockLength hardwired to 6 byte
                0x06
!else
                0,
                0
!endif
	){}
!endif
!if $(NCPU) > 2
	Processor( CPU3,
// ProcessorID (unique for each CPU)
                3,
// PBlockAddress
!if "$(A_CPU_PBLK)" != ""
                0x$(A_CPU_PBLK),
// PBlockLength hardwired to 6 byte
                0x06
!else
                0,
                0
!endif
	){}
!endif
!if $(NCPU) > 3
	Processor( CPU4,
// ProcessorID (unique for each CPU)
                4,

⌨️ 快捷键说明

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