summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRafaël Carré <rafael.carre@gmail.com>2008-12-04 21:55:09 +0000
committerRafaël Carré <rafael.carre@gmail.com>2008-12-04 21:55:09 +0000
commit8e19a739bef0114d6a0367b5239890eff6203156 (patch)
treeaa286c785dd76551085336910881a4e4daa4e25c
parent9f76f23ca52ec48b5a006d74a7d424956a277ed3 (diff)
Sansa AMS SD driver: don't check non fatal flags of MCI_STATUS
Correct the logic when enabling interrupt line (multivolume) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19337 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/target/arm/as3525/ata_sd_as3525.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/firmware/target/arm/as3525/ata_sd_as3525.c b/firmware/target/arm/as3525/ata_sd_as3525.c
index 3ec1892542..b71941adad 100644
--- a/firmware/target/arm/as3525/ata_sd_as3525.c
+++ b/firmware/target/arm/as3525/ata_sd_as3525.c
@@ -393,14 +393,15 @@ static void init_pl180_controller(const int drive)
MCI_COMMAND(drive) = MCI_DATA_CTRL(drive) = 0;
MCI_CLEAR(drive) = 0x7ff;
- MCI_MASK0(drive) = MCI_MASK1(drive) = MCI_DATA_CRC_FAIL | MCI_DATA_TIMEOUT |
- MCI_RX_OVERRUN | MCI_TX_UNDERRUN | MCI_RX_FIFO_FULL | MCI_TX_FIFO_EMPTY;
+ MCI_MASK0(drive) = MCI_MASK1(drive) =
+ MCI_DATA_CRC_FAIL | MCI_DATA_TIMEOUT | MCI_RX_OVERRUN | MCI_TX_UNDERRUN;
- VIC_INT_ENABLE |= INTERRUPT_NAND
#ifdef HAVE_MULTIVOLUME
- | INTERRUPT_MCI0
+ VIC_INT_ENABLE |=
+ (drive == INTERNAL_AS3525) ? INTERRUPT_NAND : INTERRUPT_MCI0;
+#else
+ VIC_INT_ENABLE |= INTERRUPT_NAND;
#endif
- ;
MCI_POWER(drive) = MCI_POWER_UP|(10 /*voltage*/ << 2); /* use OF voltage */
mci_delay();