| .. | .. |
|---|
| 578 | 578 | |
|---|
| 579 | 579 | /* check if the channel supports slave transactions */ |
|---|
| 580 | 580 | if (!(test_bit(DMA_SLAVE, device->cap_mask.bits) || |
|---|
| 581 | | - test_bit(DMA_CYCLIC, device->cap_mask.bits))) |
|---|
| 581 | + test_bit(DMA_CYCLIC, device->cap_mask.bits) || |
|---|
| 582 | + test_bit(DMA_OOB, device->cap_mask.bits))) |
|---|
| 582 | 583 | return -ENXIO; |
|---|
| 583 | 584 | |
|---|
| 584 | 585 | /* |
|---|
| .. | .. |
|---|
| 1209 | 1210 | return -EIO; |
|---|
| 1210 | 1211 | } |
|---|
| 1211 | 1212 | |
|---|
| 1213 | + if (dma_has_cap(DMA_OOB, device->cap_mask) && !device->device_pulse_oob) { |
|---|
| 1214 | + dev_err(device->dev, |
|---|
| 1215 | + "Device claims capability %s, but pulse handler is not defined\n", |
|---|
| 1216 | + "DMA_OOB"); |
|---|
| 1217 | + return -EIO; |
|---|
| 1218 | + } |
|---|
| 1219 | + |
|---|
| 1212 | 1220 | if (dma_has_cap(DMA_INTERLEAVE, device->cap_mask) && !device->device_prep_interleaved_dma) { |
|---|
| 1213 | 1221 | dev_err(device->dev, |
|---|
| 1214 | 1222 | "Device claims capability %s, but op is not defined\n", |
|---|