Changeset 437 for soft/giet_vm/giet_drivers/cma_driver.h
- Timestamp:
- Nov 3, 2014, 10:53:00 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
soft/giet_vm/giet_drivers/cma_driver.h
r295 r437 5 5 // Copyright (c) UPMC-LIP6 6 6 /////////////////////////////////////////////////////////////////////////////////// 7 // The cma_driver.c and cma_driver.h files are part ot the GIET-VM kernel. 8 // This driver supports the SocLib vci_chbuf_dma component, that is 9 // a multi channels, chained buffer DMA controller. 10 // 11 // This component can be used in conjonction with the SocLib vci_frame_buffer 12 // to display images, or with the SocLib vci_multi_nic controller to tranfer 13 // RX or TX packets between NIC and memory buffers. 14 // 15 // The SEG_CMA_BASE address must be defined in the hard_config.h file 16 // 17 // All accesses to CMA registers are done by the two _cma_set_register() 18 // and _cma_get_register() low-level functions, that are handling virtual 19 // to physical extended addressing. 20 // 21 // The higher level access functions are defined in the fbf_driver 22 // and nic_driver files. 23 /////////////////////////////////////////////////////////////////////////////////// 7 24 8 25 #ifndef _GIET_CMA_DRIVERS_H_ … … 10 27 11 28 /////////////////////////////////////////////////////////////////////////////////// 12 // CMA (vci_chbuf_dma)registers offsets29 // registers offsets 13 30 /////////////////////////////////////////////////////////////////////////////////// 14 31 … … 30 47 31 48 /////////////////////////////////////////////////////////////////////////////////// 32 // CMA (vci_chbuf_dma) low-levelaccess functions49 // access functions 33 50 /////////////////////////////////////////////////////////////////////////////////// 34 51 52 //////////////////////////////////////////////////////////// 35 53 extern unsigned int _cma_get_register( unsigned int channel, 36 54 unsigned int index ); 37 55 56 /////////////////////////////////////////////////// 38 57 extern void _cma_set_register( unsigned int channel, 39 58 unsigned int index, 40 59 unsigned int value ); 41 60 61 /////////////////////////////////////////////////// 62 void _cma_start_channel( unsigned int channel, 63 unsigned long long src_paddr, 64 unsigned int src_nbufs, 65 unsigned long long dst_paddr, 66 unsigned int dst_nbufs, 67 unsigned int buf_length ); 68 69 ////////////////////////////////////////////// 70 void _cma_stop_channel( unsigned int channel ); 71 72 //////////////////////////////////////////// 42 73 extern void _cma_isr( unsigned int irq_type, 43 74 unsigned int irq_id, 44 75 unsigned int channel ); 45 46 ///////////////////////////////////////////////////////////////////////////////////47 76 48 77 #endif
Note: See TracChangeset
for help on using the changeset viewer.