Unterschied zwischen device_register und driver_register
Ich schreibe einen UART-Treiber. Ich bin auf die beiden Funktionen im Kapitel 14. Linux-Gerätemodell gestoßen.
int device_register(struct device *dev);
int driver_register(struct device_driver *drv);
Da UART ein Char-Treiber ist, habe ich die Major-Nummer dynamisch mit (alloc_chrdev_region)
und fügte das Gerät dem Kernel mit hinzucdevadd()
.
Ich bin rübergekommenuart_register_driver()
undplatform_driver_register()
in omap-serial.c.
Ich könnte das abbildendriver_register
mit demplatform_driver_register()
aber dieuart_register_driver
ist mit tty verwandten Funktionen abgebildet. Da ich ein Anfänger bin, möchte ich die tty verwandten Funktionen nicht verwenden.
Istuart_register_driver
verwandt mitdevice_driver()
?
Bitte erkläre.