void usart_debug_init(const struct UsartConfig * config) { /* Set up circular buffer for rx */ circularBufferInit(&rxcb, usart_debug_buffer, sizeof(usart_debug_buffer) / sizeof(char)); configure_usart(config); configure_usart_callbacks(); }
static int charDriver_open(struct inode *inode, struct file *flip) { charDriverDev *dev; dev = container_of(inode->i_cdev, charDriverDev, cdev); flip->private_data = dev; if(down_interruptible(&dev->SemBuf)) return -ERESTARTSYS; myBuffer = circularBufferInit(CIRCULAR_BUFFER_SIZE); up(&dev->SemBuf); printk(KERN_ALERT "charDriver is open\n"); return 0; }