¡Hola Gurus de Linux Kernel Driver!Acceso a un puerto serie desde un módulo de kernel de Linux
Estoy escribiendo un controlador v4l2 para una cámara que utiliza una interfaz en serie para la configuración. Me gustaría que el controlador configure la cámara, ya que mantiene el código del cliente constante en todos los modelos de cámara. La pregunta es: ¿cuál es la mejor manera de acceder a la interfaz serial de la cámara desde el módulo del controlador?
Por lo que he escuchado, acceder a los archivos desde un controlador de kernel es un gran no-no, pero se puede hacer. Como tal, actualmente estoy usando el siguiente fragmento de código, pero se siente como un truco.
oldfs = get_fs();
set_fs(KERNEL_DS);
fd->f_pos=0;
fd->f_op->write(fd, data, data_len, &fd->f_pos);
set_fs(oldfs);
Mi pregunta es realmente: ¿cuál es la forma correcta de hacer esto?
Gracias por esto: los controladores Wolfson Micro son buenos ejemplos. Todavía no está claro cuál es la mejor manera de usar un UART (¡Realmente no quiero reescribir el controlador UART!), Pero este es un gran comienzo. ¡Gracias! – IndigoFire