Has there ever been a successful enforcement (or even an attempted enforcement) of the GPL against a handset manufacturer?
What are the options for handset users to attempt to force them to uphold their obligations?
Why does Google allow them to continue to be part of the Android platform (use Android trademarks, carry built-in support for Google services, etc) while they violate the GPL?
[0] https://github.com/MiCode/Xiaomi_Kernel_OpenSource
[1] https://www.gsmarena.com/xiaomi-phones-80.php
This is something the 3D printer firmware Marlin deals with, Chinese 3D printer vendors are infamous for using Marlin on their devices but not releasing any source. Chinese vendors want an exception to keep their source closed for a limited time, which isn't something the Marlin project can grant without the agreement of every contributor. I wouldn't grant a GPL exception on my contributions and many others feel the same way. Chinese printer vendors think China is a special enough case to get a free pass.
(btw don't disagree with Naomi Wu about this or she'll consider you a "harasser" and block you)
In theory, China is a signatory to the Paris Convention for the Protection of Industrial Property, so the GPL should be binding in a Chinese court like it has been proven in US courts.
In practice, there is precedent that two separate Chinese courts don't give a damn about the GPL: https://www.chinaiplawyer.com/china-court-protects-violation...
So good luck. If you don't like how Xiaomi handle their devices, vote with your wallet and don't buy them.
Samsung doesn't have the kernel sources for older devices on their website anymore. I needed the kernel for an old phone (the galaxy trend 2 lite), so I asked them and they put it back up temporarily for me.
The GPL doesn't say 'have your sources up on a website', they say 'if anyone asks for them, share the sources'.
There are now many binary blobs (binaries without source) in Linux kernel. Apparently this is legal. An official statement was made nearly 15 years ago [0], yet they are still there.
[0] https://wiki.linuxfoundation.org/tab/kernel-driver-statement