内容简介:I take no pleasure in writing this blog post. In fact, even as I am writing these words I am internally torn on whether this is the right approach to addressing the problem on hand. Whether I’ve chosen the right approach remains to be seen, but regardless,
I take no pleasure in writing this blog post. In fact, even as I am writing these words I am internally torn on whether this is the right approach to addressing the problem on hand. Whether I’ve chosen the right approach remains to be seen, but regardless, I now feel it’s time to confront misconceptions about the PinePhone.
What’s the misconception?
The misconception concerns the openness of the PinePhone. On numerous occasions I’ve seen the PinePhone being refereed to as closed-source on one level or another. I don’t know the origin of this misconception nor do I understand the reason why it has become propagated throughout the internet. What I do know, however, is that it has been repeatedly quoted in online articles covering the PinePhone or other Linux devices for over a year now.
So let’s set the record straight: the PinePhone is not ‘full of closed-source firmware’ and, moreover, is one of the most open devices out there.
Here’s what’s open
Let’s start with the Allwinner A64 SoC, which is the brains of the PinePhone; it runs mainline Linux, uses mainline ATF and u-boot and there are open source drivers for all main SoC components. This openness extends to the Lima GPU driver introduced in kernel 5.2 .
Linux 5.6 will contain drivers for all major components of the SoC. The parts which still need to be upstreamed to mainline are HDMI audio and msgbox – both drivers are in the works. For more information on mainlining efforts, please refer to the A64 column at https://linux-sunxi.org/Linux_mainlining_effort#Status_Matrix
It’s worth mentioning that LPDDR3 initialization is done by u-boot SPL, which is also open source. There are no blobs in there either.
Needless to say, the PinePhone itself is an open platform for any OS to run on. The grand majority of the OSes developed for the PinePhone are, in and of themselves, completely open too.
So, where are the blobs?
The non-FOSS parts of the phone are as follows: WiFi and Bluetooth firmware must be uploaded to the Realtek RTL8723cs on initialization, an optional auto-focus firmware (currently not used in any PinePhone OSes) can be uploaded to the rear OmniVision OV5640 camera, and the Quectel EG25-G LTE modem runs its own closed-source OS.
The WiFi module communicates with the CPU over SDIO and BT is over UART – neither of these connections provide direct access to CPU memory.
The LTE modem on the PinePhone is a ‘black box’, and runs its own Linux system internally. This includes all the proprietary modules (blobs) needed to run the actual cellular radios. However, this system is almost entirely isolated from the main system running on the A64 SoC. The only data contacts between A64 and modem are USB connection for data and I2S connection for audio. All data going in or out of the modem must go over these connections.
There is no RAM or flash storage shared between the systems. In short, unless you explicitly send data to the modem, it is never in contact with the blobs running inside it. The modem cannot send any data to the phone unless phone is willing to receive it (that’s the basics of USB).
Closing statement
I do not think that this misconception arose online as a result of someone’s ill intention or a conspiracy. I really don’t. I do, however, feel that if I were to leave this unanswered for much longer then this misconception would be further propagated.
以上所述就是小编给大家介绍的《Setting the Record Straight: PinePhone Misconceptions》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Java 8函数式编程
[英] Richard Warburton / 王群锋 / 人民邮电出版社 / 2015-3 / 39.00元
通过每一章的练习快速掌握Java 8中的Lambda表达式 分析流、高级集合和其他Java 8类库的改进 利用多核CPU提高数据并发的性能 将现有代码库和库代码Lambda化 学习Lambda表达式单元测试和调试的实践解决方案 用Lambda表达式实现面向对象编程的SOLID原则 编写能有效执行消息传送和非阻塞I/O的并发应用一起来看看 《Java 8函数式编程》 这本书的介绍吧!