Fabbing a chip that isn't completely buggy and people want to buy is already a small miracle- better software support can always wait until the chip becomes a hit. Just pointing out that there are reasons things are the way they are. Of course, any upstreaming efforts are great and I think things are trending in a good direction. Not to mention the language barrier for Chinese chip vendors. That means more thorough test and validation, code that meets the standards of the kernel, and more engineers to actively maintain the code. Upstreaming to Linux on top of all that means that you actually need to support and validate the set of features your chip claims to support. ![]() That's where the support contracts kick in. This requires active maintenance, which means engineers on the vendor side. It's an active process of reporting bugs, investigating them, and getting fixes merged upstream into the vendor's BSP, at the very least. The datasheet only gets you so far, especially for undocumented hardware quirks, and the vendor is in a much better place to understand what's happening and fix them. If customers aren't exercising some feature of the chip, bugs can and will go undetected in that module. It's not just a matter of a driver working or not- hardware bugs or weird undocumented behavior show up all the time. But chip bring-up and driver support can be messy affairs. You see the big vendors upstream proactively, and they have whole teams supporting upstreaming efforts. That can provide enough momentum for a community-driven upstreaming effort. The ARM SBC market flips this, where you have a bunch of enthusiasts, and then a smaller market of businesses wanting to use them in their products. A lot of this stuff won’t meet the standards of the Linux kernel without lots of work. But it’s also incredibly expensive to write all that kernel code and take it through the process of upstreaming. ![]() There’s a good business case for it, as better and widely available software support will help sell the chip. Thus, getting support landed into Linux upstream is primarily the task of the chip vendor. They’ll do it if they have to, but the engineers will grumble about it the entire time. OWC 1.0TB Electra 6G SSD DIY Upgrade Bundle for 2011, 2012 Mac Mini, Includes Data Doubler, 5-Piece Installation. The customer then needs to figure out what they want to do: Take the kernel blob as-is? Get the vendor’s kernel source and try and modify it for their specific needs? Rebase it to a newer kernel? The customer typically wants to just get enough support to ship their product they’re not in the business of maintaining some other company’s kernel patches. Top Hard Disc Drive Flex Cable for Apple Mac Mini A1347 Server 2nd SSD HDD Upgrade Kit 821-1501-A 821-1347-A (2011-2014) with Tools. The bare minimum for this is typically a set of hacky kernel patches targeting a giver kernel version. SoC vendors’ main focus is to make the chip and give it enough BSP support for customers to buy it and build their products around it. This is a common story in ARM / embedded linux.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |