i7300_idle: Disable ioat channel only on platforms where ile driver can load

Based on input from Andi Kleen:
share the platform detection code with ioat_dma and disable the channel in
dma engine only for specific platforms.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
Venki Pallipadi
2008-10-22 16:34:52 -07:00
committed by Len Brown
parent 27471fdb32
commit 3ad0b02e4c
3 changed files with 89 additions and 71 deletions

View File

@@ -33,6 +33,7 @@
#include <linux/delay.h>
#include <linux/dma-mapping.h>
#include <linux/workqueue.h>
#include <linux/i7300_idle.h>
#include "ioatdma.h"
#include "ioatdma_registers.h"
#include "ioatdma_hw.h"
@@ -172,7 +173,9 @@ static int ioat_dma_enumerate_channels(struct ioatdma_device *device)
xfercap = (xfercap_scale == 0 ? -1 : (1UL << xfercap_scale));
#if CONFIG_I7300_IDLE_IOAT_CHANNEL
device->common.chancnt--;
if (i7300_idle_platform_probe(NULL, NULL) == 0) {
device->common.chancnt--;
}
#endif
for (i = 0; i < device->common.chancnt; i++) {
ioat_chan = kzalloc(sizeof(*ioat_chan), GFP_KERNEL);