2017-04-25 51 views
0

我在寫uart驅動。我的驅動程序將支持4個實例,因此我在通過tty註冊我的uart時通過.nr = 4。當我的探測功能被調用時,我需要使用端口特定的結構來做uart_add_one_port在uart驅動中使用uart_add_one_port

我在這裏有一個疑問。我不需要稱它4次,因爲我的驅動程序將支持4個實例,並且因爲我的所有飛鏢的基地址是不同的?

在我發現的大多數標準驅動程序中,無論驅動程序支持多少個實例,它們只會調用uart_add_one_port一次。

請解釋爲什麼需要uart_add_one_port以及爲什麼只在標準驅動程序中調用它。

+0

這要看你的硬件(設備)在OS被枚舉。這取決於巴士和相應的巴士橋。查看* drivers/tty/serial/8250/*中的很多現有示例。你可以考慮使用'serdev'框架。 – 0andriy

回答

1

如果您的硬件支持多個uart端口,則應根據可用端口調用uart_add_one_port

分別設備將被註冊爲/dev/ttyDEVX名稱,其中DEV您的驅動程序的名稱,X是設備的編號。

Refer similar driver like yours