Project

General

Profile

Galaxy S Proprietary

This is the list of the proprietary libraries, binaries and firmwares shipped with cyanogenmod or the factory images on the Galaxy S and the status of their replacement.

Note on shipping non-free programs

Note that we don't ship any proprietary binary, library or firmware.
First because our goal is to reach a 100% free Android distribution and also because sometimes, these are not even distributables.

Libraries

Library location Function Can be replaced or avoided?
/system/vendor/lib/hw/gps.aries.so GPS library (sends NMEA output to framework) Easy to rewrite, doesn't deal with hardware at all
/system/lib/libril.so RIL Lib Default libril works fine with replacement
/system/lib/libsecril-client.so RIL client (used by libaudio) Replaced by samsung-ril-client
/system/lib/libsec-ril.so RIL Replaced by samsung-ril
/system/lib/libsamsungcamera.so dlopened camera lib Camera is v4l2 and there is a free replacement for ics available
/system/lib/egl/libGLES_android.so graphics PowerVR-related
/system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so graphics PowerVR-related
/system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so graphics PowerVR-related
/system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so graphics PowerVR-related
/system/vendor/lib/hw/gralloc.aries.so graphics PowerVR-related
/system/vendor/lib/libakm.so compass lib there is libakm_free but it doesn't support this compass
/system/vendor/lib/libglslcompiler.so ? can be avoided
/system/vendor/lib/libIMGegl.so graphics PowerVR-related
/system/vendor/lib/libpvr2d.so graphics PowerVR-related
/system/vendor/lib/libpvrANDROID_WSEGL.so graphics PowerVR-related
/system/vendor/lib/libPVRScopeServices.so graphics PowerVR-related
/system/vendor/lib/libsrv_init.so ? can be avoided
/system/vendor/lib/libsrv_um.so ? can be avoided
/system/vendor/lib/libusc.so ? can be avoided
/system/vendor/lib/libsensor_yamaha_test.so sensors can be avoided
/system/vendor/lib/libsensorservice.so sensors can be avoided
/system/lib/libActionShot.so camera-related ?
/system/lib/libarccamera.so camera-related ?
/system/lib/libcamera_client.so camera-related ?
/system/lib/libcamerafirmwarejni.so camera-related ?
/system/lib/libcameraservice.so camera-related ?
/system/lib/libCaMotion.so camera-related ?
/system/lib/libcaps.so ? ?
/system/lib/libPanoraMax1.so ? ?
/system/lib/libPlusMe.so ? ?
/system/lib/libs3cjpeg.so jpeg-related should be free software
/system/lib/libseccamera.so camera-related ?
/system/lib/libseccameraadaptor.so camera-related ?
/system/lib/libsecjpegencoder.so jpeg-related ?
/system/lib/libtvout.so graphics (tv out) ?
/system/lib/lib_tvoutengine.so graphics (tv out) ?
/system/lib/libtvoutfimc.so graphics (tv out) ?
/system/lib/libtvouthdmi.so graphics (tv out) ?
/system/lib/libtvoutservice.so graphics (tv out) ?
/system/lib/libQmageDecoder.so decoder ? ?

Binaries

Binary location Function Can be replaced or avoided?
/system/vendor/bin/gpsd non-free gpsd needs to eb replaced to have working gps
/system/bin/rild ril daemon it's there to run the RIL as root, was replaced easily
/radio/modem.bin modem binary we don't want to deal with it
/system/vendor/bin/pvrsrvinit graphics can be avoided with our gralloc
/system/vendor/bin/orientationd sensors must be replaced by libakm_free
/system/vendor/bin/geomagneticd must be replaced by libakm_free
/system/bin/tvoutserver graphics ?
/system/bin/charging_mode ? ?
/system/bin/playlpm play nice images when charging the phone was replaced

Configuration files

File location Function What depends on it?
/system/etc/gps.conf gps conf non-free gps module?
/system/vendor/etc/gps.xml gps conf non-free gpsd
/system/cameradata/datapattern_420sp.yuv camera-related non-free camera lib
/system/cameradata/datapattern_front_420sp.yuv camera-related non-free camera lib
/system/media/battery_charging_10.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_100.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_15.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_20.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_25.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_30.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_35.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_40.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_45.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_5.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_50.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_55.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_60.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_65.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_70.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_75.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_80.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_85.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_90.qmg charging mode screen charging mode (but was replaced)
/system/media/battery_charging_95.qmg charging mode screen charging mode (but was replaced)
/system/media/chargingwarning.qmg charging mode screen charging mode (but was replaced)
/system/media/Disconnected.qmg charging mode screen charging mode (but was replaced)

Firmwares

Firmware location Function What depends on it?
/system/vendor/firmware/bcm4329.hcd wifi/bt firmware wifi/bt chip
/system/vendor/firmware/nvram_net.txt wifi/bt firmware wifi/bt chip
/system/vendor/firmware/cypress-touchkey.bin ? ?
/system/vendor/firmware/samsung_mfc_fw.bin MFC hardware video decoding
/system/vendor/firmware/CE147F02.bin ? ?
/system/firmware/CE147F00.bin ? ?
/system/firmware/CE147F01.bin ? ?
/system/firmware/CE147F02.bin ? ?
/system/firmware/CE147F03.bin ? ?

References