Linux support concerns
#11
Good catch Ketsa but paulieg is correct.  We have a fundamental problem with the Allwinner SOC in that the Allwinner company hasn't released ANY information as to how to use their chip to take advantage of the accelerated video as well as basic information required to boot.  Allwinner has written some code but they release the binary and not the source.  In fact, the community has proven that Allwinner has used GPL (LGPL) code in their software without obeying the license agreement.  Allwinner has even tried, in latest software updates, to hide the fact that they did that.  To make this product work more with linux in a meaningful way, Allwinner needs to cooperate with the community and share some vital information.  Until they do, this board will ONLY be useful under Android.   In some ways, I don't think the product oragnizers fully realized the state of linux on these chips or they never would have litsted linux as an option.  While it will run linux, the lack of a current linux kernel coupled with nonexistent video acceleration will be a deal-breaker.
#12
(01-05-2016, 02:35 PM)o9guy Wrote: To make this product work more with linux in a meaningful way, Allwinner needs to cooperate with the community and share some vital information.  Until they do, this board will ONLY be useful under Android.   In some ways, I don't think the product oragnizers fully realized the state of linux on these chips or they never would have litsted linux as an option.  While it will run linux, the lack of a current linux kernel coupled with nonexistent video acceleration will be a deal-breaker.

The situation is not so bad. You can still use the board for IoT projects. Video acceleration is a problem with ARM Holdings that make the GPU.
Most other boards have closed-source GPU drivers, either the Mali GPU or the PowerVR GPU.
#13
(01-05-2016, 04:05 PM)taros Wrote:
(01-05-2016, 02:35 PM)o9guy Wrote: To make this product work more with linux in a meaningful way, Allwinner needs to cooperate with the community and share some vital information.  Until they do, this board will ONLY be useful under Android.   In some ways, I don't think the product oragnizers fully realized the state of linux on these chips or they never would have litsted linux as an option.  While it will run linux, the lack of a current linux kernel coupled with nonexistent video acceleration will be a deal-breaker.

The situation is not so bad. You can still use the board for IoT projects. Video acceleration is a problem with ARM Holdings that make the GPU.
Most other boards have closed-source GPU drivers, either the Mali GPU or the PowerVR GPU.
You are correct!  I do many IoT projects myself and I will continue to do so but I also like playing old school NES/SNES games, video, etc, where accelerated video does come in to play.  You are also correct that many others use closed-sourced binary blobs but only for kernels they support which is a problem in and of itself.  The cooperation of Allwinner is still needed for many non-IoT uses of this board and I'm still hopeful that Allwinner will cooperate more to make this better for all the backers who want linux for multimedia purposes.
#14
Let's be clear here. There are two points at issue:
1. Actually using the board for practical things.
2. Open source license compliance, blob-freeness, openness+cooperation, mainline support etc

While there surely are some areas of overlap, those use cases are marginal. We will have Pine64 that boots the linux kernel with a traditional gnu/linux userspace (as opposed to android, which is a linux kernel with an android userspace). There will be kernel/userspace combinations that will allow access to various graphics acceleration features through blobs. Given the work being done on an open source alternative to Cedar, perhaps we will even have workable open source userspace libraries for that. While it is perfectly true that this is not all in place right now as it is with a much older platform where the work has already been done, there is nothing that precludes it from being available in the future and I fully expect it to be - despite some highly dubious applications for engineering boards, I've seen some substantive ones as well. Frankly, most of this is not rocket surgery.

What we may not have is the ability to boot the latest mainline linux kernel, or if we do we might not have the blobs for hardware acceleration to go with it. We might be stuck with Allwinner's braindead uboot (not that the mainline uboot is some work of engineering genius, mind), at least for now and their 3.0.x kernel until they release android updates that require them to forward-port their kernel patches to newer kernel versions that are mandated by the respective recent android versions. The userspace open source substitution work on hardware acceleration takes precedence over the kernelspace work, so we might be stuck with the blobs there for even longer. While this is a state of affairs no advocate of open source and open hardware movements can be happy or entirely satisfied with, the practical impact of these things for most use cases is, imo, minimal.

As a practical matter, this is largely about price. Intel makes SBCs with (I expect) comparable performance and fewer issues and you're free to buy them at the prices they charge. However, if you want a $15 board that does all this SoC does, you're going to have to live with the consequences of it being a repurposed mobile SoC from a company that wants to protect certain advantages in the market they care about (mobile devices with 100k+ runs) in some cases and isn't free to release IP which they themselves have licensed in other cases (ARM's IP). Only those types of SoCs with that kind of volume can deliver this sort of package. If we as a community want to use these types of boards, we need to roll up our sleeves and get stuck in. If you remember the early history of hardware support in linux on x86, you'll recall that whining achieved nothing; hard work hacking together reverse-engineered support which allowed linux to flourish and then *demand* cooperation from hardware vendors is what enabled us to get to the point where every cluetard with 2 functional fingers can install *ubuntu on any x86 box and have it 'just work'.

I agree that communication on the level of existing support was inaccurate and that is very unfortunate. I should think I'd be disappointed if I had relied on it without doing any research. However, the gravity of the situation is constantly being overstated, the degree of inherent *practical* impairment to functionality is being misstated and the practical matters relating to linux support are constantly being conflated with ideological matters. By all means, "No queremos paz sino la victoria!" and all that - as a lifelong anarchist far be it from me to discourage quixotic ideological quests, but don't let that stop you having fun with this board - after all, there's a good chance you're running an amd or nvidia binary driver on your desktop/laptop now or at least were for a long time and, I trust, you haven't grown horns or a tail as a result and your soul remains in your sole possession rather than bequeathed to Beelzebub for all eternity.

-p
#15
It is are correct in that there are two main points, but I don't think people understand how intertwined those two points are.  In my view, it's the community that makes a product truly great.  Communities grow out of many things including documentation, software, peer support, etc.  I could be wrong but some of the best and most widely adopted products came from ecosystems with a greater degree of manufacturer support to open source, even if binary blobs were involved.   I own multiple Allwinner SOC-based products and they're okay (i.e. Odroid-C, PCDuino 2 & 3) but they're not great.  The community tries to create some really great software and support each other but they have one hand tied behind their backs in that they can only solve so many problems.  There are issues with all three of those boards that the community simply can't solve without help so the products stagnated and the community lost interest.  I don't believe the overlap is marginal.  People get really excited when they can fully realize the potential of a product.  I'm personally disappointed in the function of the binary blobs I have tried with other Allwinner SOCs I've tried.  The functionality has been incomplete and buggy at best and plain broken at worst.  This is where the overlap matters.  If the blobs were really good and full-featured then great!  But they typically haven't in the case of Allwinner.  I will wait and see and I still hope for the best with this board as it relates to linux.  The product will function in linux but I don't think it will thrive unless Allwinner devotes some development time to better binary blobs or they take the community up on some free development in exchange for information.

As for the practicality being about price for the features, yes and no.  The specs of this board are above and beyond the competition, it can't be argued.  Where value comes in is being able to use those features.  If I can't use a $15 board for what is advertised and how I want then I'm left to seek alternatives, this is always the case, again I can't argue.  When I see a feature such as Dual-core MALI400 and 4K resolution, then realize that those features will either be poorly realized or nonexistent, they fail to be a compelling feature.  As for how this becomes great, hard work is a key but it is not "whining" to ask a company to comply with a license they violated for profit to shore up their practices.  It's practical.  I believe the community will be more motivated if there is a greater involvement from the manufacturer.  This in turn drives more sales, which means more profit and potentially lower costs.  It seems very advantageous.  

I do believe that a great many people want to use this in linux and not just in a IoT fashion.  I don't feel it's being overstated that the poor implementation of the graphics, older kernels, the allwinner uboot, binary blobs, etc. will hamper the practicality of the board as it relates to linux in the way many users will want to use it.  As a matter of clarification, I believe their Android implementation will probably be very smooth with few hiccups.   None of this will prevent me from having fun with the board but could spell truncated enthusiasm from the very community that will be needed to take this from okay to great.
#16
(01-05-2016, 07:58 PM)o9guy Wrote: It is are correct in that there are two main points, but I don't think people understand how intertwined those two points are.  In my view, it's the community that makes a product truly great.  Communities grow out of many things including documentation, software, peer support, etc.  I could be wrong but some of the best and most widely adopted products came from ecosystems with a greater degree of manufacturer support to open source, even if binary blobs were involved.

--- snip ---

I wasn't involved in those particular communities, so I can't comment with the benefit of experience. I will, however, say that I suspect the vitality of the community supporting a particular board is directly proportional to the popularity of said board. Simply put, RasPi is still king and unless you care about price or have a niche requirement, it's what you go for by default. It's simply first mover advantage at play. Given that, it's hardly surprising that no other community has developed to the same size. I fully agree that any board that aspires to give RasPi a run for its money needs to be more open, not less.

I'll bow to your experience with the quality (or lack thereof) of Allwinner blobs in the past. I would argue, from a technical point of view, that if it works well in android it can be made to work well in linux given the same kernel + libc. Android is simply a funky linux rootfs with a disgusting java vm environment. In fact, I'd be willing to have a small blind wager on the libc being a factor in stability - I wouldn't expect glibc and bionic libc to be bug-compatible.

I never said pressuring Allwinner is whining. I've said both publicly and privately that Pine64 need to do that. TL Lim has been doing that and stated that he will continue to do it. However, at this point, we don't know what we need from Allwinner exactly aside from things they can't possibly provide (IP licensed from ARM).  We don't even have the dev boards yet, although they're on their way. Once we are clear on what needs to be done and which of those things are blocked on Allwinner providing something they haven't made available, we can start pushing. All of that is right and proper and needs to be done.

Spreading FUD a la "this board won't be usable with linux", arguments that it's a worse security risk than an anarchist who likes the weather better in Moscow than in Hawaii working at the NSA because of the 3.0.x kernel etc *is* whining. It's not accurate, it's not helpful and it doesn't contribute to moving forward. I hope this clarifies that the condemnation of whining was not aimed at you.

As far as community and enthusiasm, to be perfectly frank, the initial chunk of work needs competent developers. The enthusiasm or lack thereof from people who need a set of instructions to turn this into a nice HTPC won't move the needle on getting linux support done. This isn't meant to downplay their importance - their orders are what enabled the volume of production to get the price down and potentially enough attention from Allwinner to get them to do some of what we want them to, but I personally would hack on this board regardless of whether there were 1 or 10k of them waiting for linux support. Since we seem to have at least a few capable of doing the work required waiting for dev boards which are being shipped as we speak, the chances are good that at least one will have the time to graft something workable together sooner rather than later. Then it's a matter of building on that, part of which is seeing how workable the Allwinner blobs are. It's like Schroedinger's cat - we won't know whether the blobs work well or not until we open the box. As they are currently, like the cat, both dead and alive at the same time, there's no use in being alarmist imo.

-p
#17
Paulieg, 

You and I may not agree 100% but I do find that you share the ability to think critically about both points without offense.  I like that.

I would like to state that I wasn't attempting to be alarmist but to rally the troops, so to speak.  The more people that get behind a cause benefits the cause.   As for the linux vs android, you are largely correct but as I know you know, android focuses sharply on a singular kernel, and uses a very custom userspace.  This makes developing for that particular instance easier as there are less variables.  My interest in almost singularly in linux, the focus of this forum topic and thread, and more so in the general application over many kernels, userspaces, distributions.  This board has the potential to be a new era in linux SBCs and I want to see that come to light.

I didn't intend for any perception of Fear, Uncertainty, and Doubt.  I do genuinely feel there is reason for concern but my motivation is for people to back, support, and rally behind the product to see it forward, not to see them scared off.  Nobody rallys a cause unless they understand the stakes.  For that I humbly apologize.  I want to see the community come together, for Allwinner to cooperate, for the linux side to be as great or better than the Android side.  This is what i truly want.

With no further alarmist tone I'd be glad to join the community in hacking the everlasting end out of these boards to make them linux kings.  This will need the support of you, me, community, and Allwinner.
#18
@paulieg and @o9guy, I was the person who started this thread and wanted to chime in and say that I really appreciate your comments and perspectives. These are exactly the kind of replies that I was hoping for and this kind of dialogue is extremely beneficial for both backers and I would imagine Pine64 guys as well.

Thank you!
#19
(01-06-2016, 12:31 PM)jl_678 Wrote: @paulieg and @o9guy, I was the person who started this thread and wanted to chime in and say that I really appreciate your comments and perspectives.  These are exactly the kind of replies that I was hoping for and this kind of dialogue is extremely beneficial for both backers and I would imagine Pine64 guys as well.

Thank you!

Agreed and thumbs up.
#20
(01-05-2016, 06:22 PM)paulieg Wrote: Let's be clear here. There are two points at issue:
1. Actually using the board for practical things.
2. Open source license compliance, blob-freeness, openness+cooperation, mainline support etc

While there surely are some areas of overlap, those use cases are marginal. We will have Pine64 that boots the linux kernel with a traditional gnu/linux userspace (as opposed to android, which is a linux kernel with an android userspace). There will be kernel/userspace combinations that will allow access to various graphics acceleration features through blobs. Given the work being done on an open source alternative to Cedar, perhaps we will even have workable open source userspace libraries for that. While it is perfectly true that this is not all in place right now as it is with a much older platform where the work has already been done, there is nothing that precludes it from being available in the future and I fully expect it to be - despite some highly dubious applications for engineering boards, I've seen some substantive ones as well. Frankly, most of this is not rocket surgery.

What we may not have is the ability to boot the latest mainline linux kernel, or if we do we might not have the blobs for hardware acceleration to go with it. We might be stuck with Allwinner's braindead uboot (not that the mainline uboot is some work of engineering genius, mind), at least for now and their 3.0.x kernel until they release android updates that require them to forward-port their kernel patches to newer kernel versions that are mandated by the respective recent android versions. The userspace open source substitution work on hardware acceleration takes precedence over the kernelspace work, so we might be stuck with the blobs there for even longer. While this is a state of affairs no advocate of open source and open hardware movements can be happy or entirely satisfied with, the practical impact of these things for most use cases is, imo, minimal.

As a practical matter, this is largely about price. Intel makes SBCs with (I expect) comparable performance and fewer issues and you're free to buy them at the prices they charge. However, if you want a $15 board that does all this SoC does, you're going to have to live with the consequences of it being a repurposed mobile SoC from a company that wants to protect certain advantages in the market they care about (mobile devices with 100k+ runs) in some cases and isn't free to release IP which they themselves have licensed in other cases (ARM's IP). Only those types of SoCs with that kind of volume can deliver this sort of package.  If we as a community want to use these types of boards, we need to roll up our sleeves and get stuck in. If you remember the early history of hardware support in linux on x86, you'll recall that whining achieved nothing; hard work hacking together reverse-engineered support which allowed linux to flourish and then *demand* cooperation from hardware vendors is what enabled us to get to the point where every cluetard with 2 functional fingers can install *ubuntu on any x86 box and have it 'just work'.

I agree that communication on the level of existing support was inaccurate and that is very unfortunate. I should think I'd be disappointed if I had relied on it without doing any research. However, the gravity of the situation is constantly being overstated, the degree of inherent *practical* impairment to functionality is being misstated and the practical matters relating to linux support are constantly being conflated with ideological matters. By all means, "No queremos paz sino la victoria!" and all that - as a lifelong anarchist far be it from me to discourage quixotic ideological quests, but don't let that stop you having fun with this board - after all, there's a good chance you're running an amd or nvidia binary driver on your desktop/laptop now or at least were for a long time and, I trust, you haven't grown horns or a tail as a result and your soul remains in your sole possession rather than bequeathed to Beelzebub for all eternity.

-p

I agree with what you said, but would like to add my 2 bucks...

I people want Linux with accelerated graphics, this board is a no go, no matter what! Unfortunately this is my case Sad
If this board had current kernel with blobs i would not care and get it! Open Source is a bonus, but not a dealbreaker. And i think i speak for the vast majority on this. But let's be realistic. And as you said, this is supposed to be a cheap SoC, so i just won't happen.
Hacking and reverse engineering took us a long way. But it also took too damn long time! Just look at how many years AMD is cooperating with documentation and code to the open source drivers and yet their binary drivers are still better, wich is saying much, since theyr binary drivers for Linux are already bad...

The open source thing comes not as fixation but as the most realistic way to get what we want, at least that's what i think. Because as you said, Allwinner probably has stuff from ARM they cannot disclose. So wouldn't it be easier for them to help with documentation and hints with the community? This is the only viable way i see...

Don't forget the example of Nouveau that while having great demand and support and work from the community was still very slow, incomplete and arguably hitting a wall on new features if it weren't for nvidia's recent (half) change of heart...

Bottom line, i want to emphasize that this is a board though and designed for Android. And for that i think it will work just fine. If you are happy with that, by all means get one or two or as many as you want.
As for myself, am in a group of users that not only sees what this board is, but also what so much more it could be... that's all.


Possibly Related Threads…
Thread Author Replies Views Last Post
  Programming languages support under PINE64 baryluk 6 13,374 09-23-2020, 11:46 PM
Last Post: Phillip Bell
  NEMS Linux 1.5 Released for A64/A64+, A64-LTS/SOPine, Rock64, RockPro64 (NAGIOS) Baldnerd 4 10,111 03-28-2020, 06:20 PM
Last Post: ty1911
  Howto run Linux with resolution other than 1080p longsleep 28 71,031 06-13-2019, 01:53 AM
Last Post: Nilda
  NEMS Linux for Pine A64 (+) Luke 1 5,532 05-09-2019, 05:42 PM
Last Post: pineadmin
  Pine Board using linux stuck during boot sequence ktaragorn 4 9,117 03-30-2019, 06:48 AM
Last Post: ktaragorn
  Gentoo Linux test image xalius 23 52,133 01-28-2019, 11:05 PM
Last Post: necrose99
  Real-time linux kernel Artyom 45 80,615 09-11-2018, 01:08 AM
Last Post: zzwpine
  linux distribution hazerty 3 6,742 04-01-2018, 02:48 PM
Last Post: dkryder
  Linux Web Server OS harcrow 2 6,268 01-30-2018, 10:26 AM
Last Post: Rustproof
  AXP803 Battery Charger Support xalius 14 26,493 12-22-2017, 08:59 AM
Last Post: Velociraptor

Forum Jump:


Users browsing this thread: 3 Guest(s)