Clean up version number mishap (4.2.3 reported as 4.2.2)
authorMichael McMaster <michael@codesrc.com>
Mon, 4 May 2015 11:38:14 +0000 (21:38 +1000)
committerMichael McMaster <michael@codesrc.com>
Mon, 4 May 2015 11:38:14 +0000 (21:38 +1000)
Reduce size of mode pages for SCSI1 hosts
Stability improvements whan handling resets during SCSI reads.

CHANGELOG
software/SCSI2SD/src/config.c
software/SCSI2SD/src/scsiPhy.c
software/SCSI2SD/v3/SCSI2SD.cydsn/Generated_Source/PSoC5/cymetadata.c
software/SCSI2SD/v3/SCSI2SD.cydsn/SCSI2SD.cyfit
software/SCSI2SD/v3/SCSI2SD.cydsn/TopDesign/TopDesign.cysch
software/SCSI2SD/v4/SCSI2SD.cydsn/Generated_Source/PSoC5/cymetadata.c
software/SCSI2SD/v4/SCSI2SD.cydsn/SCSI2SD.cyfit
software/SCSI2SD/v4/SCSI2SD.cydsn/TopDesign/TopDesign.cysch

index 423d64eab00e8b32bcede602925e618f5bc59f7f..d5c8e92d19732e4fa189a5bb77ce8659f847ed7d 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,11 @@
+20150504               4.2.4
+       - Clean up version number mishap (4.2.3 reported as 4.2.2)
+       - Reduce size of mode pages for SCSI1 hosts
+       - Stability improvements whan handling resets during SCSI reads.
+
+20150420               4.2.3
+       - Bugfix for failed flash checksums after configing configuration
+
 20150420               4.2.2
        - Improved compatibility with older SCSI1 hosts.
 
index 4a02d1f0a97c48796189fa7a112f06da27b4f40c..26f0fe8bd443b3159794835d75a16d4212fd8dca 100755 (executable)
@@ -32,7 +32,7 @@
 \r
 #include <string.h>\r
 \r
-static const uint16_t FIRMWARE_VERSION = 0x0422;\r
+static const uint16_t FIRMWARE_VERSION = 0x0424;\r
 \r
 enum USB_ENDPOINTS\r
 {\r
index 8c90cb1e0448f660ab79348435d1dd954aab3f03..bdd98732072aa3fb2be48a7fb09f03acffe5fcbd 100755 (executable)
@@ -395,8 +395,12 @@ void scsiPhyReset()
                dmaTotalCount = 0;\r
                CyDmaChSetRequest(scsiDmaTxChan, CY_DMA_CPU_TERM_CHAIN);\r
                CyDmaChSetRequest(scsiDmaRxChan, CY_DMA_CPU_TERM_CHAIN);\r
+               \r
+               // CyDmaChGetRequest returns 0 for the relevant bit once the\r
+               // request is completed.\r
                trace(trace_spinDMAReset);\r
-               while (!(scsiTxDMAComplete && scsiRxDMAComplete)) {}\r
+               while (CyDmaChGetRequest(scsiDmaTxChan) & CY_DMA_CPU_TERM_CHAIN) {}\r
+               while (CyDmaChGetRequest(scsiDmaRxChan) & CY_DMA_CPU_TERM_CHAIN) {}\r
 \r
                CyDmaChDisable(scsiDmaTxChan);\r
                CyDmaChDisable(scsiDmaRxChan);\r
@@ -409,6 +413,7 @@ void scsiPhyReset()
        // ensure it returns to the idle state.  The datapath runs at the BUS clk\r
        // speed (ie. same as the CPU), so we can be sure it is active for a sufficient\r
        // duration.\r
+       SCSI_RST_ISR_Disable();\r
        SCSI_SetPin(SCSI_Out_RST);\r
 \r
        SCSI_CTL_PHASE_Write(0);\r
@@ -421,6 +426,7 @@ void scsiPhyReset()
 \r
        // Allow the FIFOs to fill up again.\r
        SCSI_ClearPin(SCSI_Out_RST);\r
+       SCSI_RST_ISR_Enable();\r
        scsiTarget_AUX_CTL = scsiTarget_AUX_CTL & ~(0x03);\r
 \r
        SCSI_Parity_Error_Read(); // clear sticky bits\r
index efccf012d39da78658fbe708e0b971d8e0fee94e..6c072bf3d97191e34baca4fccbd7184d3b3c8d19 100644 (file)
@@ -28,7 +28,7 @@ __attribute__ ((__section__(".cyloadablemeta"), used))
 const uint8 cy_meta_loadable[] = {\r
     0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,\r
     0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,\r
-    0x00u, 0x00u, 0x00u, 0x00u, 0x5Cu, 0xD1u, 0x22u, 0x04u,\r
+    0x00u, 0x00u, 0x00u, 0x00u, 0x5Cu, 0xD1u, 0x24u, 0x04u,\r
     0x01u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,\r
     0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,\r
     0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,\r
index bcf9ae3a1aa2b828cf77786718583b78efe7799a..4eb3570ca96828c064e555a577cac10a32fd6c0e 100644 (file)
Binary files a/software/SCSI2SD/v3/SCSI2SD.cydsn/SCSI2SD.cyfit and b/software/SCSI2SD/v3/SCSI2SD.cydsn/SCSI2SD.cyfit differ
index 285360e4abeae639c89f245d1c7ba7f4d1b5e516..1a73ac58f0dac5998eb2ea1b87e2ef1a6859811b 100755 (executable)
Binary files a/software/SCSI2SD/v3/SCSI2SD.cydsn/TopDesign/TopDesign.cysch and b/software/SCSI2SD/v3/SCSI2SD.cydsn/TopDesign/TopDesign.cysch differ
index ee269a7a8f85a5c515444851393c1c5ac0ab76d0..78af9754f023f4ba31364739019c5f18500eae36 100644 (file)
@@ -28,7 +28,7 @@ __attribute__ ((__section__(".cyloadablemeta"), used))
 const uint8 cy_meta_loadable[] = {
     0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,
     0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,
-    0x00u, 0x00u, 0x00u, 0x00u, 0x5Cu, 0xD1u, 0x22u, 0x04u,
+    0x00u, 0x00u, 0x00u, 0x00u, 0x5Cu, 0xD1u, 0x24u, 0x04u,
     0x01u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,
     0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,
     0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,
index 239ad50c6bea88d7a70ebf0b0becdf0db1a6a51d..372159750f2be0f957e40bc8d4243071367f90dd 100644 (file)
Binary files a/software/SCSI2SD/v4/SCSI2SD.cydsn/SCSI2SD.cyfit and b/software/SCSI2SD/v4/SCSI2SD.cydsn/SCSI2SD.cyfit differ
index 71ca821975e55475d833c3860e79a297b84003e0..c9ef6bbb9b6ec57c3e069b33b027b596adccbd4c 100755 (executable)
Binary files a/software/SCSI2SD/v4/SCSI2SD.cydsn/TopDesign/TopDesign.cysch and b/software/SCSI2SD/v4/SCSI2SD.cydsn/TopDesign/TopDesign.cysch differ