/* Print all intervals in array */ void print_intervals(Intervals intervals) { Interval first = intervals->first; Intervals rest = intervals->rest; if (first) { print_interval(first); if (rest) { printf(","); print_intervals(rest); } } }
static int mp3_release(struct inode *inode, struct file *fp) { TRACE(1, "%s\n", __FUNCTION__); wait_epics_idle(); mp3decDeInit(); pnx0106_epics_free_coherent(NULL, mp3_bufsize, mp3_buff, mp3_buff_bus); mp3_bufsize = 0; mp3_buff = 0; mp3_buff_bus = 0; pnx0106_epics_decoder_release(); print_intervals(); pnx0106_epics_printk("EPICS OutputBuffer Wait Count: high %x low %x\n", *((int*)pnx0106_epics_xram2arm(0x5651)),*((int*)pnx0106_epics_xram2arm(0x5650))); pnx0106_epics_printk("EPICS InputBuffer Wait Count: high %x low %x\n",*((int*)pnx0106_epics_xram2arm(0x5653)),*((int*)pnx0106_epics_xram2arm(0x5652))); return 0; }