内核版本: 2.6.32.2
仍在修改中 2018.12.21
需进一步了解内核启动过程中start_kernel以及module_init调用
module_init(serial8250_init);
module_init(tty_init);
console_init在start_kernel中调用
Register
serial8250_init(void): drivers/serial/8250.c
- 调用uart_register_driver(&serial8250_reg),serial8250_reg为struct
uart_driver,
其没有fops结构,uart port才有具体的uart_ops结构
- serial8250_isa_devs=platform_device_alloc(“serial8250”,-1);
platform_device_add(serial8250_isa_devs - serial8250_register_ports(&serial8250_reg, &serial8250_isa_devs->dev);
- platform_driver_register(&serial8250_isa_drive