Texas Instruments TMS320C6A816 Series Technical Reference Manual page 1588

C6-integra dsp+arm processors
Table of Contents

Advertisement

Use Cases
if (placeHbaInIdle())
invokeHBAReset();
performFirmwareInit();
//Start the Disk Drive (spin it up)
if(spinUpDeviceAndWaitForInitToComplete())
while(1); // Stay here if device signature does not match.
//DMA Settings get affected by RESET
cfgDmaSetting();
initIntAndClearFlags();
if(intHandlingMethod == USE_INT_HANDLER) { //
// Setup Interrupt Handler
intIsrFlag=0;
sata_intc_setup();
enableDisableInt(PORTint, ENABLE, 0xFFC000FF); // enableDisableInt(int type, intState,
specificField)
enableDisableInt(GLOBALint, ENABLE, 0); // enableDisableInt(int type, intState,
specificField)
GLOBALint
debugInt=0;
} else
enableDisableInt(PORTint, ENABLE, 0xFFC000FF); // enableDisableInt(int type, intState,
specificField)
// Initialize Golden Data
initMemory((Uint32 *)&prdTableDataBuff[0],
(sata_input_prdLength*sata_input_prd_dataBuffLen/4), 0x12345678, 0x01010101);
// Invalidate Read Data Buffer
initMemory((Uint32 *)&prdTableDataBuff[1],
(sata_input_prdLength*sata_input_prd_dataBuffLen/4), 0xDEADDEAD, 0x00000000);
return(0);
}
1588
Serial ATA (SATA) Controller
Preliminary
// If unable to shut one or both DMAs, Perform HBA Reset.
// Disable CCC, Initialize 1ms Time, Clear Int and Flags
// Configure Interrupt Handler
© 2011, Texas Instruments Incorporated
USE_POLLING or USE_INT_HANDLER
// int type=GLOBALint or PORTint
// intState=DISABLE or ENABLE
// int type=GLOBALint or PORTint
// intState=DISABLE or ENABLE
// specificField = Don't Care for
// int type=GLOBALint or PORTint
// intState=DISABLE or ENABLE
Submit Documentation Feedback
www.ti.com
SPRUGX9 – 15 April 2011

Advertisement

Table of Contents
loading

Table of Contents