Discussion:
GPL and mediatek phones
Robin KERDILES
2014-04-04 18:37:53 UTC
Permalink
Hi,

Currently mediatek produces chipset for phones (MT65xx for smartphones and
MT8xxx for tablets). Many issues where reported for GPL compliance on
mediatek phones.

Of course mediatek is currently providing full source of android, hardware
and PCB plans to manufacturers (Lenovo, ZTE, Micromax, Acer, Oppo, Faea,
etc...). By full source, I mean they provided a way for manufacturers to
build android for their platform. Some manufacturers where not able to
access kernel sources and they got only binaries from mtk (this is what I
heard) and others got kernel source.

Actually what's the problem : many manufacturers don't know GPL guidelines
and don't comply with it.

Micromax is a good example :
http://www.xda-developers.com/android/oems-and-gpl-compliance/

Another example is Acer not releasing newer kernel sources when they push
OTA update on phones. I asked them to do so but they didn't release it
since some weeks (they announced (in private message) they were gonna fix
it and release kernel source 2 days after OTA, nothing happened)

Why manufacturers have some issues releasing kernel source : Mediatek has a
source tree (some were leaked and are warez but still interesting to see
how is organized android source tree for them)

Example here : https://github.com/aquila-dev/mt6577_FULL_AOSP_SOURCE/

There is a kernel directory which is kernel source BUT this kernel
directory has a dependency on mediatek directory which contains all stuff
for drivers, config generation and build scripts. Of course, this mediatek
directory contains proprietary code (drivers) which should not be used in
kernel and proprietary stuff for others part of android (lib, etc...).

How this issue can be resolved, I have an example :
https://github.com/Dr-Shadow/android_kernel_mt6589

I moved mediatek directory in kernel directory and I removed all stuff
which was needed for others part of android

Another issue now is licensing on drivers part, some are still licensed as
proprietary code with GPL header (example here :
https://github.com/Dr-Shadow/android_kernel_mt6589/blob/d6e90fbe0a310750276b4d494e36417a4af07b1b/mediatek/custom/common/kernel/accelerometer/KXTJ2_1009/kxtj2_1009.c)
Loading...