diff options
author | root <root@iss-tomyspiel-1> | 2011-10-19 12:09:54 +0200 |
---|---|---|
committer | root <root@iss-tomyspiel-1> | 2011-10-19 12:09:54 +0200 |
commit | 64e0f2948b71d37e8cdb99693a00b3f440565953 (patch) | |
tree | 0e4bd243cf97de1f4328d289c37f16d7f656d68c | |
parent | 9ad96da69350712cbba71e946660ede49017b507 (diff) | |
download | pcitool-64e0f2948b71d37e8cdb99693a00b3f440565953.tar.gz pcitool-64e0f2948b71d37e8cdb99693a00b3f440565953.tar.bz2 pcitool-64e0f2948b71d37e8cdb99693a00b3f440565953.tar.xz pcitool-64e0f2948b71d37e8cdb99693a00b3f440565953.zip |
Fix bug causing failures of NWL engine to inherit kernel buffers
-rw-r--r-- | dma/nwl.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -16,6 +16,7 @@ #include "nwl_defines.h" int dma_nwl_start(pcilib_dma_context_t *vctx, pcilib_dma_engine_t dma, pcilib_dma_flags_t flags) { + int err; nwl_dma_t *ctx = (nwl_dma_t*)vctx; if (!ctx->started) { @@ -26,8 +27,11 @@ int dma_nwl_start(pcilib_dma_context_t *vctx, pcilib_dma_engine_t dma, pcilib_dm if (dma == PCILIB_DMA_ENGINE_INVALID) return 0; else if (dma > ctx->n_engines) return PCILIB_ERROR_INVALID_BANK; + err = dma_nwl_start_engine(ctx, dma); + if (flags&PCILIB_DMA_FLAG_PERSISTENT) ctx->engines[dma].preserve = 1; - return dma_nwl_start_engine(ctx, dma); + + return err; } int dma_nwl_stop(pcilib_dma_context_t *vctx, pcilib_dma_engine_t dma, pcilib_dma_flags_t flags) { |