設定似乎不具備 I/O 連接埠的 PCIe 串列卡

設定似乎不具備 I/O 連接埠的 PCIe 串列卡

我正在嘗試使用該setserial命令將 Brainboxes PX-246 PCI Express 串行卡分配給 /dev/ttyS.. 設備,但是該卡似乎沒有 I/O 端口地址(只有內存地址)。

lspci -v給出以下結果:

05:00.0 Serial controller: Brain Boxes Device 4016 (rev 02) (prog-if 06 [16950])
        Subsystem: Brain Boxes Device 4016
        Flags: fast devsel, IRQ 18
        Memory at f7600000 (32-bit, non-prefetchable) [size=16K]
        Memory at f7400000 (32-bit, non-prefetchable) [size=2M]
        Memory at f7200000 (32-bit, non-prefetchable) [size=2M]
        Capabilities: [40] Power Management version 3
        Capabilities: [70] Express Endpoint, MSI 00
        Capabilities: [b0] MSI-X: Enable- Count=16 Masked-
        Capabilities: [100] Device Serial Number 00-30-e0-11-11-00-01-50
        Capabilities: [110] Power Budgeting <?>

是否可以將記憶體位址分配給串行設備而不是 I/O 連接埠?

目前我正在 Ubuntu 16.04 下測試該卡,但最終將在 Fedora 系統上使用。

任何幫助將非常感激!

答案1

OXPCIe952 的資料表例如這裡,它在第 3 頁上說,根據 5 個引腳的硬體配置,該晶片可以在多種模式下啟用。

UART 可用於傳統模式(使用 I/O 位址)和本機模式(記憶體映射,問題中顯示 3 個 BAR)。如果您沒有任何其他功能(PCI 設備05:00.1,如05:00.2等),這表示您的卡已啟用一個本機 UART,即第 3 頁圖表中的第 5 行。 )在第13 頁。

該檔案8250_pci.c確實包含該晶片的傳統和本機 UART 的 PCI ID,所以是的,我首先嘗試的是將 PCI ID 添加到該檔案中,重新編譯,然後查看它是否有效。

相關內容