Linux 將停止 VMEbus 支持,將其恢復(fù)暫存狀態(tài)
80 年代初 Linux 為摩托羅拉 68000 系列引入了 Versa 模塊 Eurocard “VMEbus” 標(biāo)準(zhǔn)。然而,十年前 Linux 的 VME 子系統(tǒng)從 staging tree (staging tree 是主線的分支,用來(lái)放置一些因未充分測(cè)試等原因而未能進(jìn)入 Linux 內(nèi)核的新驅(qū)動(dòng)程序和新文件系統(tǒng))中升級(jí)后,VME 的硬件驅(qū)動(dòng)程序卻一直未能離開(kāi) staging tree,并且代碼已經(jīng)年久失修,在過(guò)去的 5 年里無(wú)人維護(hù)。因此,Linux 的 VME 子系統(tǒng)支持將返回 Linux 內(nèi)核 staging 暫存區(qū)。
開(kāi)發(fā)者 Arnd Bergmann 正通過(guò)補(bǔ)丁刪除 CA91CX42 Universe-II 驅(qū)動(dòng)程序,準(zhǔn)備將整個(gè) VME 子系統(tǒng)移回暫存區(qū),相關(guān)驅(qū)動(dòng)則徹底移除。伯格曼指出:
Universe-II 使用古老的 virt_to_bus () 接口,與大多數(shù)現(xiàn)代機(jī)器不兼容。由于沒(méi)有人對(duì)此進(jìn)行清理,因此該驅(qū)動(dòng)程序很可能沒(méi)有實(shí)際用戶。該芯片于 1997 年推出,僅支持 32 位傳統(tǒng) PCI。它在 2004 年被 TSI148 取代,目前已經(jīng)停產(chǎn),而舊版 Universe II 的一個(gè)版本在 25 年后仍在生產(chǎn)中。
vme_vmivme7805 板使用 Universe-II,因此在此過(guò)程中也將其移除,但基于 TSI148 的 PCI 附加卡理論上仍然可以工作。
其補(bǔ)丁總結(jié):驅(qū)動(dòng)程序和子系統(tǒng)本身的維護(hù)在 2017 年已停止,目前已沒(méi)有硬件驅(qū)動(dòng)程序處于暫存狀態(tài),只剩下有限的用戶級(jí)訪問(wèn)代碼。
與此同時(shí),VME Linux 網(wǎng)頁(yè) 自 2003 年以來(lái)一直沒(méi)有更新。有興趣重新了解 VME 總線的人可以看到這個(gè) CERN 演示文稿。
目前,這些降級(jí) VME 代碼的補(bǔ)丁正處于 “階段測(cè)試” 階段,應(yīng)該會(huì)在 Linux 5.20 版本實(shí)現(xiàn),當(dāng)然,如果到時(shí)候還有 VMEbus 忠實(shí)粉絲提出異議,則事情會(huì)另作討論。