/* Timing */
// 1 clock to read the address, + 1 for synchroniser skew
- Timing.AddressSetupTime = 4;
+ Timing.AddressSetupTime = 5;
Timing.AddressHoldTime = 2;
// Writes to device:
// Reads from device:
// 3 for syncroniser
// 1 to write back to fsmc bus.
- Timing.DataSetupTime = 8;
+ Timing.DataSetupTime = 9;
// Allow a clock for us to release signals
// Need to avoid both devices acting as outputs
// on the multiplexed lines at the same time.
- Timing.BusTurnAroundDuration = 2;
+ Timing.BusTurnAroundDuration = 3;
Timing.CLKDivision = 16; // Ignored for async
Timing.DataLatency = 17; // Ignored for async
\r
#include <string.h>\r
\r
-static const uint16_t FIRMWARE_VERSION = 0x0647;\r
+static const uint16_t FIRMWARE_VERSION = 0x0648;\r
\r
// Optional static config\r
extern uint8_t* __fixed_config;\r
\r
// Ready immediately. setDataCount resets fifos\r
\r
- __disable_irq();\r
+ //__disable_irq();\r
while (!scsiPhyComplete() && likely(!scsiDev.resetFlag))\r
{\r
- __WFI(); // Wait for interrupt\r
+ //__WFI(); // Wait for interrupt\r
}\r
- __enable_irq();\r
+ //__enable_irq();\r
\r
uint8_t val = scsiPhyRx();\r
// TODO scsiDev.parityError = scsiDev.parityError || SCSI_Parity_Error_Read();\r
scsiSetDataCount(1);\r
scsiPhyTx(value);\r
\r
- __disable_irq();\r
+ //__disable_irq();\r
while (!scsiPhyComplete() && likely(!scsiDev.resetFlag))\r
{\r
- __WFI();\r
+ //__WFI();\r
}\r
- __enable_irq();\r
+ //__enable_irq();\r
}\r
\r
void\r