| Electronic Components Datasheet Search |
|
UM0851 Datasheet(PDF) 171 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
UM0851 Datasheet(HTML) 171 Page - STMicroelectronics |
|
171 / 245 page ![]() UM0851 Accelerator engine device drivers Doc ID 16604 Rev 2 171/245 dma_addr = dma_map_single(chan->device->dev, (void *)src_buf, 100, DMA_TO_DEVICE); tx = chan->device->device_prep_slave_sg(chan, sg, sg_len, DMA_TO_DEVICE, 0); if (!tx) { dma_unmap_single(chan->device->dev, src_buf, 100, DMA_TO_DEVICE); return -ENOMEM; } tx->callback = skull_callback; tx->callback_param = NULL; cookie = tx->tx_submit(tx); if (dma_submit_error(cookie)) { printk("submit error %d with src=%x size=100 bytes\n", cookie, src_buf); return -EAGAIN; } return 0; } static void skull_callback(void *param) { s32 status; u32 cpu; /* Details of this function are not provided here. * It will delete scatter list previously created*/ delete_sg(sg, sg_len); dma_chan_put(chan); dma_unmap_single(chan->device->dev, src_buf, 100, DMA_TO_DEVICE); status = chan->device->device_is_tx_complete(chan, cookie, NULL, NULL); if (status != DMA_SUCCESS) { printk("dma xfer fail\n"); return -EAGAIN; } else { cpu = get_cpu(); per_cpu_ptr(chan->local, cpu)->bytes_transferred += size; per_cpu_ptr(chan->local, cpu)->memcpy_count++; put_cpu(); printk("dma xfer pass\n"); } dma_async_client_unregister(&dma_client); } static enum dma_state_client dma_event(struct dma_client *client, struct dma_chan *gchan, enum dma_state state) { unsigned long flags; enum dma_state_clientack = DMA_NAK; switch (state) { case DMA_RESOURCE_AVAILABLE: if (!chan) { chan = gchan; ack = DMA_ACK; } break; case DMA_RESOURCE_REMOVED: if (chan == gchan) { chan = NULL; ack = DMA_ACK; } break; } return ack; } |
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |