Changeset 238 for trunk/kernel/devices/dev_dma.c
- Timestamp:
- Jul 19, 2017, 3:31:39 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kernel/devices/dev_dma.c
r188 r238 40 40 extern chdev_directory_t chdev_dir; // allocated in kernel_init.c 41 41 42 ////////////////////////////////// //43 void dev_dma_init( chdev_t * chdev)42 ////////////////////////////////// 43 void dev_dma_init( chdev_t * dma ) 44 44 { 45 // get implementation & channel from DMA chdevdescriptor46 uint32_t impl = chdev->impl;47 uint32_t channel = chdev->channel;45 // get implementation & channel from DMA dma descriptor 46 uint32_t impl = dma->impl; 47 uint32_t channel = dma->channel; 48 48 49 // set chdevname50 snprintf( chdev->name , 16 , "dma_%d_%x" , channel , local_cxy );49 // set dma name 50 snprintf( dma->name , 16 , "dma_%d_%x" , channel , local_cxy ); 51 51 52 52 // set field "cmd", "isr", and call the relevant driver init function 53 53 if( impl == IMPL_DMA_SCL ) 54 54 { 55 chdev->cmd = &soclib_dma_cmd;56 chdev->isr = &soclib_dma_isr;57 soclib_dma_init( chdev);55 dma->cmd = &soclib_dma_cmd; 56 dma->isr = &soclib_dma_isr; 57 soclib_dma_init( dma ); 58 58 } 59 59 else … … 63 63 64 64 // bind IRQ to the core defined by the DMA channel 65 dev_pic_bind_irq( channel , chdev);65 dev_pic_bind_irq( channel , dma ); 66 66 67 67 // enable IRQ 68 dev_pic_enable_irq( channel, chdev);68 dev_pic_enable_irq( channel, XPTR( local_cxy , dma ) ); 69 69 70 70 // create server thread … … 75 75 THREAD_DEV, 76 76 &chdev_sequencial_server, 77 chdev,77 dma, 78 78 cluster_select_local_core() ); 79 79 if( error ) … … 83 83 84 84 // initialises server field in DMA chdev descriptor 85 chdev->server = new_thread;85 dma->server = new_thread; 86 86 87 87 // start server thread
Note: See TracChangeset
for help on using the changeset viewer.