git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git]
/
arch
/
ppc
/
syslib
/
ppc4xx_pic.c
diff --git
a/arch/ppc/syslib/ppc4xx_pic.c
b/arch/ppc/syslib/ppc4xx_pic.c
index
22c9010
..
e6da0a2
100644
(file)
--- a/
arch/ppc/syslib/ppc4xx_pic.c
+++ b/
arch/ppc/syslib/ppc4xx_pic.c
@@
-234,6
+234,9
@@
ppc4xx_uic_disable_and_ack(unsigned int irq)
case 1:
mtdcr(DCRN_UIC_ER(UIC1), ppc_cached_irq_mask[word]);
mtdcr(DCRN_UIC_SR(UIC1), (1 << (31 - bit)));
case 1:
mtdcr(DCRN_UIC_ER(UIC1), ppc_cached_irq_mask[word]);
mtdcr(DCRN_UIC_SR(UIC1), (1 << (31 - bit)));
+#if (NR_UICS == 2)
+ mtdcr(DCRN_UIC_SR(UIC0), (1 << (31 - UIC0_UIC1NC)));
+#endif
#if (NR_UICS > 2)
mtdcr(DCRN_UIC_SR(UICB), UICB_UIC1NC);
#endif
#if (NR_UICS > 2)
mtdcr(DCRN_UIC_SR(UICB), UICB_UIC1NC);
#endif
@@
-285,6
+288,9
@@
ppc4xx_uic_end(unsigned int irq)
break;
case 1:
mtdcr(DCRN_UIC_SR(UIC1), 1 << (31 - bit));
break;
case 1:
mtdcr(DCRN_UIC_SR(UIC1), 1 << (31 - bit));
+#if (NR_UICS == 2)
+ mtdcr(DCRN_UIC_SR(UIC0), (1 << (31 - UIC0_UIC1NC)));
+#endif
#if (NR_UICS > 2)
mtdcr(DCRN_UIC_SR(UICB), UICB_UIC1NC);
#endif
#if (NR_UICS > 2)
mtdcr(DCRN_UIC_SR(UICB), UICB_UIC1NC);
#endif
@@
-423,7
+429,7
@@
ppc4xx_extpic_init(void)
bit, sense);
#endif
ppc_cached_sense_mask[word] |=
bit, sense);
#endif
ppc_cached_sense_mask[word] |=
- (sense & IRQ_SENSE_MASK) << (31 - bit);
+ (
~
sense & IRQ_SENSE_MASK) << (31 - bit);
ppc_cached_pol_mask[word] |=
((sense & IRQ_POLARITY_MASK) >> 1) << (31 - bit);
switch (word) {
ppc_cached_pol_mask[word] |=
((sense & IRQ_POLARITY_MASK) >> 1) << (31 - bit);
switch (word) {