GPL Violations

Allwinner has repeatedly violated the GPL. Either by not providing kernel or u-boot source at all, or by delivering trees with pre-built binaries and no matching source code. They even blatantly use GPLed license code in their userspace libraries for media decoding.

= NAND support =

libnand is Allwinners own implementation of a block device on top of a raw NAND flash controller.

We have a very old source tree for this, but all newer versions have only been included as binaries in both kernel and u-boot SDK trees.

GPL violations in:
 * A31 SDK (both kernel and u-boot)
 * A23 SDK (both kernel and u-boot)
 * A80 SDK (both kernel and u-boot)

= Camera code =

libisp is a driver for the Image signal processor (HawkView ISP), used for camera picture preprocessing and image enhancement.

GPL violations in:
 * A31 SDK (kernel)
 * A23 SDK (kernel)
 * A80 SDK (kernel)

= USB3.0 =

libusb300 provides USB3.0 support for the Allwinner A80.

GPL violations in:
 * A80 SDK (kernel)

= CedarX =

This is the userspace library that implements media decoding (JPEG, MPEG2/4, h264, VC1, VP6/8, ...). This driver is a mix and match of many bits, including some reference decoders, surrounded by allwinner and hw specific code. But, crucially, several parts of it have been taken straight from libavcodec from the FFMPEG project. This code is LGPL, but since this code has been adapted and included, CedarX is not a dependency and the LGPL applies to the whole library, forcing Allwinner to release the lot.