diff options
author | raywu <raywu@aaeon.com> | 2018-07-03 14:04:15 +0800 |
---|---|---|
committer | raywu <raywu@aaeon.com> | 2018-07-03 14:04:15 +0800 |
commit | 7ef645f177f8fe0fe4eeda15421dfdad14d51c49 (patch) | |
tree | 379c36c9c11ad8cddd9de189cc6f721542b238cd /Board/IO/F81866/F81866.ASL | |
parent | eba820ce017afdc03040cd40c8889c82bc31dff8 (diff) | |
download | zprj-7ef645f177f8fe0fe4eeda15421dfdad14d51c49.tar.xz |
Adjust IRQ
Diffstat (limited to 'Board/IO/F81866/F81866.ASL')
-rw-r--r-- | Board/IO/F81866/F81866.ASL | 81 |
1 files changed, 41 insertions, 40 deletions
diff --git a/Board/IO/F81866/F81866.ASL b/Board/IO/F81866/F81866.ASL index 326e4d7..8899ae8 100644 --- a/Board/IO/F81866/F81866.ASL +++ b/Board/IO/F81866/F81866.ASL @@ -593,25 +593,26 @@ CreateByteField(CRS3, IO04._LEN, LEN4) //Length 1 0x7 // Write Current Settings into IRQ descriptor If(INTR){ ShiftLeft(1, INTR, IRQT) - // Set IRQ Type:porting according IRTT - //AMI_TODO: - If(And(OPT0,0x01)){ - If(And(OPT0,0x02)){ - If(And(OPT6,0x08)){ - Store(0x18, IRQS) } // IRQ Type: Reserved, set as Active-Low-Level-Triggered,Shared. - Else{ - Store(0x11, IRQS) } // IRQ Type: Active-High-Edge-Triggered,Shared. - } - Else{ - If(And(OPT6,0x08)){ - Store(0x10, IRQS) } // IRQ Type: Active-High-Level-Triggered,Shared. - Else{ - Store(0x18, IRQS) } // IRQ Type: Active-Low-Level-Triggered,Shared. - } - } Else { - Store(0x01, IRQS) // IRQ Type: Active-High-Edge-Triggered,No-Shared(default) - } - +// // Set IRQ Type:porting according IRTT +// //AMI_TODO: +// If(And(OPT0,0x01)){ +// If(And(OPT0,0x02)){ +// If(And(OPT6,0x08)){ +// Store(0x18, IRQS) } // IRQ Type: Reserved, set as Active-Low-Level-Triggered,Shared. +// Else{ +// Store(0x11, IRQS) } // IRQ Type: Active-High-Edge-Triggered,Shared. +// } +// Else{ +// If(And(OPT6,0x08)){ +// Store(0x10, IRQS) } // IRQ Type: Active-High-Level-Triggered,Shared. +// Else{ +// Store(0x18, IRQS) } // IRQ Type: Active-Low-Level-Triggered,Shared. +// } +// } Else { +// Store(0x01, IRQS) // IRQ Type: Active-High-Edge-Triggered,No-Shared(default) +// } +// + Store(0x18, IRQS) }Else{ Store(0, IRQT) // No IRQ used } @@ -765,27 +766,27 @@ CreateByteField(CRS3, IO04._LEN, LEN4) //Length 1 0x7 If(IRQT){ FindSetRightBit(IRQT, Local0) Subtract(Local0, 1, INTR) - //Set IRQ flag,AMI_TODO: - //Set IRQ flag,AMI_TODO: - If(And(IRQS,0x10)){ - Or(OPT0, 0x01, OPT0) - If(LEqual(IRQS,0x18)){ // IRQ Type: Active-Low-Level-Triggered,Shared. - And(OPT0, 0xFD, OPT0) - And(OPT6, 0xF7, OPT6) - } - Else{ - If(LEqual(IRQS,0x11)){ // IRQ Type: Active-High-Edge-Triggered,Shared. - Or(OPT0, 0x01, OPT0) - And(OPT6, 0xF7, OPT6) - } - Else{ - If(LEqual(IRQS,0x10)){ // IRQ Type: Active-High-Level-Triggered,Shared. - And(OPT0, 0xFD, OPT0) - Or(OPT6, 0x08, OPT6) - } - } - } - } + //Set IRQ flag,AMI_TODO: + //Set IRQ flag,AMI_TODO: + If(And(IRQS,0x10)){ + Or(OPT0, 0x01, OPT0) + If(LEqual(IRQS,0x18)){ // IRQ Type: Active-Low-Level-Triggered,Shared. + And(OPT0, 0xFD, OPT0) + And(OPT6, 0xF7, OPT6) + } + Else{ + If(LEqual(IRQS,0x11)){ // IRQ Type: Active-High-Edge-Triggered,Shared. + Or(OPT0, 0x01, OPT0) + And(OPT6, 0xF7, OPT6) + } + Else{ + If(LEqual(IRQS,0x10)){ // IRQ Type: Active-High-Level-Triggered,Shared. + And(OPT0, 0xFD, OPT0) + Or(OPT6, 0x08, OPT6) + } + } + } + } }Else{ Store(0, INTR) //No IRQ used } |