GPLv2 affirmation…
I don’t generally post here as people have probably noticed, but here’s a pdf of a recent court ruling, and this turns out to be the easiest way for me to link to a copy of it, since I don’t really maintain any web presence normally and I don’t want to post pdf’s to the kernel mailing lists or anything like that.
And the reason I want to post about it, is that it basically validates my long-held views that the GPLv2 is about making source code available, not controlling the access to the hardware that it runs on.
The court case itself is a mess of two bad parties: Vizio and the SFC. Both of them look horribly bad in court - for different reasons.
Vizio used Linux in their TVs without originally making the source code available, and that was obviously not ok.
And the Software Freedom Conservancy then tries to make the argument that the license forces you to make your installation keys etc available, even though that is not the case, and the reason why the kernel is very much GPLv2 only. The people involved know that very well, but have argued otherwise in court.
End result: both parties have acted badly. But at least Vizio did fix their behavior, even if it apparently took this lawsuit to do so. I can’t say the same about the SFC.
Please, SFC - stop using the kernel for your bogus legal arguments where you try to expand the GPLv2 to be something it isn’t. You just look like a bunch of incompetent a**holes.
The only party that looks competent here is the judge, which in this ruling says
Plaintiff contends the phrases, “machine-readable” and “scripts used to control compilation and installation” support their assertion in response to special interrogatory no. 4 that Defendant should “deliver files such that a person of ordinary skill can compile the source code into a functional executable and install it onto the same device, such that all features of the original program are retained, without undue difficulty.”
The language of the Agreements is unambiguous. It does not impose the duty which is the subject of this motion.
Read as a whole, the Agreements require Vizio to make the source code available in such a manner that the source code can be readily obtained and modified by Plaintiff or other third parties. While source code is defined to include “the scripts used to control compilation and installation,” this does not mean that Vizio must allow users to reinstall the software, modified or otherwise, back onto its smart TVs in a manner that preserves all features of the original program and/or ensures the smart TVs continue to function properly. Rather, in the context of the Agreements, the disputed language means that Vizio must provide the source code in a manner that allows the source code to be obtained and revised by Plaintiff or others for use in other applications.
In other words, Vizio must ensure the ability of users to copy, change/modify, and distribute the source code, including using the code in other free programs consistent with the Preamble and Terms and Conditions of the Agreements. However, nothing in the language of the Agreements requires Vizio to allow modified source code to be reinstalled on its devices while ensuring the devices remain operable after the source code is modified. If this was the intent of the Agreements, the Agreements could have been readily modified to state that users must be permitted to modify and reinstall modified software on products which use the program while ensuring the products continue to function. The absence of such language is dispositive and there is no basis to find that such a term was implied here. Therefore, the motion is granted.
IOW, this makes it clear that yes, you have to make source code available, but no, the GPLv2 does not in any way force you to then open up your hardware.
My intention - and the GPLv2 - is clear: the kernel copyright licence covers the software, and does not extend to the hardware it runs on. The same way the kernel copyright license does not extend to user space programs that run on it.
🚨Linaro is ready to announce the commercial launch of ONELab at #EW2025 🎉 ONELab is the platform for continuous automated testing for Arm SystemReady-DT compliance and broad OS compatibility. Learn more here: https://www.linaro.org/news/linaro-announces-commercial-launch-of-onelab/ #AMD #Arm #ADLINK #Renesas
📢Calling all #EmbeddedWorld attendees!📢Linaro will be there to demonstrate how we can help companies achieve cloud-native edge readiness through our services and interoperability testing solution ONELab. Learn more here: https://www.linaro.org/blog/onelab-at-embedded-world/
#LinaroConnect is the #Arm ecosystem event where you get to share your insights and innovations with a global audience of developers and industry leaders. Make the most of this opportunity and submit your proposal here before 13 February: https://ow.ly/NaKT50UOuy3 #LIS25
🎉Linaro is at #OSSummit! Come see us at booth G/S8 to learn more about ONELab, Linaro #LTS, our training services and more. Hope to see you there! #opensource
If you are at the #ossummit in Vienna and you are an AOSP developer, then I would like to invite you to the AOSP Birds of a Feather meeting on Monday 16.09.24
Linux 6.12 To Support Arm's Permission Overlay Extension
The 64-bit ARM changes were submitted in advance for the now-open Linux 6.12 kernel merge window. There is work for Arm on the confidential computing side this cycle and other new features...
https://www.phoronix.com/news/Linux-6.12-ARM64-Changes
I’m happy to announce the Amlogic ARM64 Device Tree is now fully documented in linux-next, ready for v6.12!
Since the beginning of Device Tree on Linux, we documented how it should be written so drivers could know what to expect, it’s called “bindings”, it’s a sort of “contract” between Device Tree and drivers.
But those were written in human readable open text format, without any automated way to verify Device Tree files. There were numerous attempts, but ultimately Rob Herring leveraged JSON Schema [1] into “dtschema” [2] leading to this patch serie https://lore.kernel.org/all/20181005165848.3474-1-robh@kernel.org/.
Thus “dtschema” made it possible to write bindings in YAML and the developed scripts would convert Device Tree in YAML and run a validation with JSON Schema validation. This was merged in end of 2018 then conversion of the text files in YAML files started.
For reference, there were 3278 text bindings in Linux 4.20 git tree, in today’s Linux next for v6.12 only 1250 text files remains but there’s 4345 yaml files now! In addition to the transition to yaml bindings, new platforms were introduced using the new format.
Around one year ago, I upstreamed support for the Snapdragon 8 Gen 3, and it was fully documented from day 1, and most of the changes was yaml bindings change since the SoC was mainly an upgrade from the Snapdragon 8 Gen 2 I helped upstream 2 years ago.
Let’s go back to Amlogic, were I started converting the text file to yaml bindings in August 2019 (see [3]), and finally ended the transition early this month with the patch [4]. This makes the Amlogic ARM64 Device Trees join fully documented along other platforms like Samsung Exynos
If you want to know more about Device Tree validation, you can look at my @LinaroLtd colleague @krzk talk he did in this year's #EOSS in Seattle https://sched.co/1aBEf!
Now the links:
[1] https://json-schema.org/
[2] https://github.com/devicetree-org/dt-schema
[3] https://lore.kernel.org/all/20190801135644.12843-1-narmstrong@baylibre.com/
[4] https://lore.kernel.org/all/20240905-topic-amlogic-upstream-gxlx-drop-iio-compat-v2-1-7a690eb95bc2@linaro.org/
Thanks for reading !
Exciting News for Qualcomm Developers!
We’re thrilled to announce the first binary release of U-Boot for @qualcomm platforms! U-Boot now supports key functionalities like EFI booting, internal storage, USB, and even KVM support on select boards like the RB5.
Learn how to flash, build from source, and explore the deeper integration of U-Boot in the Qualcomm ecosystem.
https://www.linaro.org/blog/initial-u-boot-release-for-qualcomm-platforms/ @cas
are there any Fedora folks here who might be up for packaging Alpine's package manager (apk-tools)? As part of @postmarketOS systemd support I'm going to be adding pmOS support to mkosi, but right now Arch Linux is the only distro with apk-tools packaged, having it in Fedora would help a _lot_ to simplify things for the systemd maintainers.
Hello folks The registration for the Bangalore Kernel Meet-up is open now
Register here:
https://my.weezevent.com/bangalore-kernel-meetup
More details here: https://groups.google.com/g/kernel-meetup-bangalore/c/nLAnUANE8x8
See you there!!