BeagleBone Black 執行上游穩定核心/u-boot,沒有任何更新檔
一段時間以來,我一直在使用預建構圖像探索 BeagleBone Black (BBB)。現在我正在嘗試編譯和部署我自己的核心。
在該搜尋中,我發現 TI 在這裡有它自己的儲存庫,並且這裡有另一個流行的更新檔集儲存庫(以及許多其他儲存庫),它們都在主線上有一些額外的更新檔。
我了解到 BBB 對 u-boot 和 linux-kernel 的支持已經完全上游化。我不應該能夠使用合適的工具鏈建構穩定的核心/u-boot 並期望它在 BBB 上工作嗎?如果是這樣,為什麼會有這麼多更新檔儲存庫?如果它們確實對普通使用者來說是必不可少的,那為什麼還沒有上游呢?
我了解到 BBB 對 u-boot 和 linux-kernel 的支持已經完全上游化。
沒有什麼是真正和完全“完整的”,尤其是在開源中。
我不應該能夠使用合適的工具鏈建構穩定的核心/u-boot 並期望它在 BBB 上工作嗎?
是的 - 用於“穩定”和“工作”的定義。
- 對於大約 99% 的使用者來說,vanilla Linux 核心在真正的 BBB 上執行絕對穩定。
- U-Boot 也是如此。
如果是這樣,為什麼會有這麼多更新檔儲存庫?
如前所述,在開源中沒有真正**做過任何事情。**某些對某些使用者很重要的方面可能由於各種原因不在上游。這些可能是政治原因、優先事項或其他原因。
如果它們確實對普通使用者來說是必不可少的,那為什麼還沒有上游呢?
下游儲存庫的存在並不意味著它們對於“普通使用者”是必不可少的。實際上,在生命週期的這個階段,它們是服務於利基需求的儲存庫。例如,Robert Nelson 的 git 樹包含一個相當薄的更新檔集,該更新檔集是為了特定使用者組的利益而維護的:希望向後兼容早期 beagleboard.org 韌體的使用者。雖然 TI 試圖以某些商業目標維護他們的 SDK,但可能會提供額外的東西,例如專有的加速 3D 圖形驅動程序。
了解適用於該領域的某些概念很重要。
“完成”、“完成”和“作品”有很多定義
隨著時間的推移,大多數功能將達到工作狀態
不太受歡迎或記錄較少的硬體元件可能永遠無法工作
較新的硬體可能需要在上游進行更改。
- 例如,4.19 將添加對“BeagleBone增強”的支持, U-Boot 也會在這方面看到一些變化。
沒有人強迫下游向上游送出他們的更新檔,相反,大多數時候讓上游接受更新檔是一項重要的工作,甚至可能需要重寫大部分程式碼。
我想傳達的是,事情不是非黑即白的。Linux 核心中對 AM335x 的支持實際上投入了大量工作,以使所有在上游可行的東西。最後,您需要自己決定 vanilla 核心提供的功能是否足以滿足您的案例。只有你才能做出這個決定。