diff options
-rw-r--r-- | drivers/dma/idma64.c | 2 | ||||
-rw-r--r-- | drivers/dma/idma64.h | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/drivers/dma/idma64.c b/drivers/dma/idma64.c index 6bba0907c263..97802be31588 100644 --- a/drivers/dma/idma64.c +++ b/drivers/dma/idma64.c | |||
@@ -588,6 +588,8 @@ static int idma64_probe(struct idma64_chip *chip) | |||
588 | 588 | ||
589 | idma64->dma.dev = chip->dev; | 589 | idma64->dma.dev = chip->dev; |
590 | 590 | ||
591 | dma_set_max_seg_size(idma64->dma.dev, IDMA64C_CTLH_BLOCK_TS_MASK); | ||
592 | |||
591 | ret = dma_async_device_register(&idma64->dma); | 593 | ret = dma_async_device_register(&idma64->dma); |
592 | if (ret) | 594 | if (ret) |
593 | return ret; | 595 | return ret; |
diff --git a/drivers/dma/idma64.h b/drivers/dma/idma64.h index f6aeff0af8a5..8423f13ed0da 100644 --- a/drivers/dma/idma64.h +++ b/drivers/dma/idma64.h | |||
@@ -54,7 +54,8 @@ | |||
54 | #define IDMA64C_CTLL_LLP_S_EN (1 << 28) /* src block chain */ | 54 | #define IDMA64C_CTLL_LLP_S_EN (1 << 28) /* src block chain */ |
55 | 55 | ||
56 | /* Bitfields in CTL_HI */ | 56 | /* Bitfields in CTL_HI */ |
57 | #define IDMA64C_CTLH_BLOCK_TS(x) ((x) & ((1 << 17) - 1)) | 57 | #define IDMA64C_CTLH_BLOCK_TS_MASK ((1 << 17) - 1) |
58 | #define IDMA64C_CTLH_BLOCK_TS(x) ((x) & IDMA64C_CTLH_BLOCK_TS_MASK) | ||
58 | #define IDMA64C_CTLH_DONE (1 << 17) | 59 | #define IDMA64C_CTLH_DONE (1 << 17) |
59 | 60 | ||
60 | /* Bitfields in CFG_LO */ | 61 | /* Bitfields in CFG_LO */ |