Resultados de la búsqueda a petición "linux-device-driver"

1 la respuesta

¿El código del controlador en el módulo del núcleo no se ejecuta?

¿Por qué este módulo del kernel no hace nada cuando lo cargo? #include <linux/init.h> #include <linux/module.h> #include <linux/platform_device.h> #define DEVICE_NAME "hello-1.00.a" #define DRIVER_NAME "hello" MODULE_LICENSE("Dual BSD/GPL"); ...

0 la respuesta

Habilitar y probar el bucle local para UART

Estoy tratando de hacer una prueba de bucle interno UART y llegar a los siguientes cambios #include <fcntl.h> #include <stdio.h> #include <termios.h> #include <unistd.h> #include <sys/ioctl.h> #include <sys/mman.h> #include <sys/errno.h> ...

1 la respuesta

¿Qué estado de registro se guarda en un cambio de contexto en Linux?

¿En qué parte de Linux buscaría saber qué registros se guardan en un cambio de contexto? Me pregunto, por ejemplo, si es seguro usar FP o registros de vectores en el código del controlador en modo kernel (principalmente interesado en x86-64 y ...

3 la respuesta

¿Por qué udelay y ndelay no son precisos en el kernel de Linux?

Hago una función como esta trace_printk("111111"); udelay(4000); trace_printk("222222");y el registro muestra que es 4.01 ms, está bien Pero cuando llamo así trace_printk("111111"); ndelay(10000); ndelay(10000); ndelay(10000); ndelay(10000); ...

2 la respuesta

¿Cómo puedo reducir la memoria caché de la página de Linux desde el espacio del kernel?

Estoy trabajando en un sistema que involucra hardware personalizado y un controlador de dispositivo Linux personalizado que escribí para el hardware. El sistema ocasionalmente necesita mover grandes cantidades de datos muy rápidamente y, por lo ...

3 la respuesta

¿Cuál es la diferencia entre module_init y init_module en un módulo de kernel de Linux?

He estado tratando de portar algunos controladores de Linux y me di cuenta de que hay una diferencia sustancial entre la versión del kernel 2.4 y 2.6 de Linux. En la versión 2.4 del kernel, la programación del módulo era la siguiente: #define ...

1 la respuesta

cómo encontrar si la llamada unregister_chrdev () fue exitosa

La llamada unregister_chrdev () de [linux \ fs.h] se usa para devolver 0 si es exitosa y <0 de otra manera. Pero ahora, en las versiones más recientes del kernel, el valor de retorno de la función se ha cambiado a vacío para que ya no devuelva ...

2 la respuesta

¿La convención de nomenclatura para el método de interfaz nativa de Java y el nombre del módulo?

Puedo seguir un tutorial de jni muy bien. Pero cuando cambio el nombre del método, me encuentro con problemas. ¿Hay alguna convención de nombres que deba seguir? El tutorial usó HelloJNI como el nombre del módulo y el nombre de la biblioteca. ...

6 la respuesta

¿Por qué la impresión de make es "make: nada que hacer para" todos ""?

Este es un módulo "Hello.c" y "Makefile". Después de ejecutarmake del directorio de trabajo recibo el siguiente mensaje: make: No hay que hacer nada para `todos '. Este es el archivo "Hello.c": #include <linux/module.h> // included for all ...

4 la respuesta

¿Cómo usar el socket de netlink para comunicarse con un módulo de kernel?

Estoy tratando de escribir un módulo de kernel de Linux que se comunique con el proceso del usuario usando netlink. Estoy usando netlink porque el programa de usuario con el que quiero comunicarme solo se comunica usando sockets y no ...