ioat3: xor self test
This adds a hardware specific self test to be called from ioat_probe. In the ioat3 case we will have tests for all the different raid operations, while ioat1 and ioat2 will continue to just test memcpy. Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
@ -799,7 +799,7 @@ static void __devinit ioat_dma_test_callback(void *dma_async_param)
|
||||
* ioat_dma_self_test - Perform a IOAT transaction to verify the HW works.
|
||||
* @device: device to be tested
|
||||
*/
|
||||
static int __devinit ioat_dma_self_test(struct ioatdma_device *device)
|
||||
int __devinit ioat_dma_self_test(struct ioatdma_device *device)
|
||||
{
|
||||
int i;
|
||||
u8 *src;
|
||||
@ -1039,7 +1039,7 @@ int __devinit ioat_probe(struct ioatdma_device *device)
|
||||
if (err)
|
||||
goto err_setup_interrupts;
|
||||
|
||||
err = ioat_dma_self_test(device);
|
||||
err = device->self_test(device);
|
||||
if (err)
|
||||
goto err_self_test;
|
||||
|
||||
@ -1197,6 +1197,7 @@ int __devinit ioat1_dma_probe(struct ioatdma_device *device, int dca)
|
||||
|
||||
device->intr_quirk = ioat1_intr_quirk;
|
||||
device->enumerate_channels = ioat1_enumerate_channels;
|
||||
device->self_test = ioat_dma_self_test;
|
||||
dma = &device->common;
|
||||
dma->device_prep_dma_memcpy = ioat1_dma_prep_memcpy;
|
||||
dma->device_issue_pending = ioat1_dma_memcpy_issue_pending;
|
||||
|
Reference in New Issue
Block a user