資料下載下傳
coding無法使用浏覽器打開,必須用git工具下載下傳:
git clone https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git
視訊觀看
百問網驅動大全
編寫虛拟UART驅動程式_架構
- 參考代碼
硬體相關: drivers/tty/serial/imx.c drivers/tty/serial/stm32-usart.c 序列槽核心層: drivers/tty/serial/serial_core.c TTY層: drivers/tty/tty_io.c
- 本節課程源碼在GIT倉庫裡
doc_and_source_for_drivers\IMX6ULL\source\09_UART 04_virtual_uart_driver doc_and_source_for_drivers\STM32MP157\source\A7\09_UART 04_virtual_uart_driver
1. 架構回顧
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsISPrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdsAjMfd3bkFGazxCMx8VesATMfhHLlN3XnxCMwEzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsQTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5yN1IjNwYTOlVGMyYmNxI2YkFGMyQGN1YDMlZWOxMmNx8CX2IzLchDMxIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjL0M3Lc9CX6MHc0RHaiojIsJye.png)
2. 編寫UART驅動要做的事
- 注冊一個uart_driver:它裡面有名字、主次裝置号等
- 對于每一個port,調用uart_add_one_port,裡面的核心是uart_ops,提供了硬體操作函數
- uart_add_one_port由platform_driver的probe函數調用
- 是以:
- 編寫裝置樹節點
- 注冊platform_driver
3. 虛拟的UART
- 要發資料給虛拟序列槽時,執行:echo "xxx" > /proc/virt_uart_buf
- 要讀取虛拟序列槽的資料時,執行:cat /proc/virt_uart_buf