Intel(R) IQ80315 I/O Processor DMA and XOR Library APIs and ...
Intel(R) IQ80315 I/O Processor DMA and XOR Library APIs and ...
Intel(R) IQ80315 I/O Processor DMA and XOR Library APIs and ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Intel</strong> ® GW80314 I/O <strong>Processor</strong> <strong>DMA</strong> <strong>and</strong> <strong>XOR</strong> <strong>Library</strong>Test Bench <strong>Library</strong> Function PrototypesG.2 lib_demo_cases.cG.2.1void lib_demo_sdram(void)void lib_demo_sram(void)ItemPrototypeInputOutputPurposeOperationvoidvoidNoneNonelib_demo_sdram(void)lib_demo_sram(void)DescriptionTo demonstrate functionality of <strong>DMA</strong>/<strong>XOR</strong> <strong>Library</strong> including error detection using interrupth<strong>and</strong>ler. sdram sets up descriptors from sdram while sram sets up descriptors in sram.Demonstrated functionality includes (this is commented <strong>and</strong> h<strong>and</strong>led by main():• Allocate memory for descriptor manager• malloc the memory map• chain in the interrupt h<strong>and</strong>ler• set global coalescingCalled by case:• initialize the <strong>DMA</strong>/<strong>XOR</strong> <strong>Library</strong> data structure inside descriptor manager (setup descriptorFree Stack <strong>and</strong> Post Queues, initialize <strong>DMA</strong>/<strong>XOR</strong> engines for appends)• set descriptor processing memory range as 001• stat data memory range as 000• execute <strong>DMA</strong> descriptor transactions• use append <strong>and</strong> reclaiming descriptors• reclaim reports any <strong>DMA</strong> transfer error since an error causes a interrupt to occur <strong>and</strong> theinterrupt h<strong>and</strong>ler records the csr value to the frame. For an error the csr non-zeros. Thenon-zero csr value is identified by reclaim.<strong>APIs</strong> <strong>and</strong> Testbench White Paper 81