powerpc/mpc5200: Bestcomm fixes to ATA support
authorTim Yamin <plasm@roo.me.uk>
Sun, 21 Dec 2008 09:54:28 +0000 (02:54 -0700)
committerGrant Likely <grant.likely@secretlab.ca>
Sun, 21 Dec 2008 09:54:28 +0000 (02:54 -0700)
1) ata.h has dst_pa in the wrong place (needs to match what the BestComm
   task microcode in bcom_ata_task.c expects); fix it.

2) The BestComm ATA task priority was changed to maximum in bestcomm_priv.h;
   this fixes a deadlock issue experienced with heavy DMA occurring on
   both the ATA and Ethernet BestComm tasks, e.g. when downloading a large
   file over a LAN to disk.

Signed-off-by: Tim Yamin <plasm@roo.me.uk>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
arch/powerpc/sysdev/bestcomm/ata.h
arch/powerpc/sysdev/bestcomm/bestcomm_priv.h

index 1098276..0374322 100644 (file)
@@ -16,8 +16,8 @@
 
 struct bcom_ata_bd {
        u32     status;
-       u32     dst_pa;
        u32     src_pa;
+       u32     dst_pa;
 };
 
 extern struct bcom_task *
index 866a291..746f155 100644 (file)
@@ -198,8 +198,8 @@ struct bcom_task_header {
 #define BCOM_IPR_SCTMR_1       2
 #define BCOM_IPR_FEC_RX                6
 #define BCOM_IPR_FEC_TX                5
-#define BCOM_IPR_ATA_RX                4
-#define BCOM_IPR_ATA_TX                3
+#define BCOM_IPR_ATA_RX                7
+#define BCOM_IPR_ATA_TX                7
 #define BCOM_IPR_SCPCI_RX      2
 #define BCOM_IPR_SCPCI_TX      2
 #define BCOM_IPR_PSC3_RX       2