Project

General

Profile

Nexus S Proprietary

This is the list of the proprietary libraries, binaries and firmwares shipped with cyanogenmod or the factory images on the Nexus 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/lib/libsecril-client.so client to Samsung's non-free RIL probably useless when we use another RIL (like a free replacement)
/system/vendor/bin/gpsd GPS daemon has to be replaced to have working GPS
/system/vendor/bin/pvrsrvinit PowerVR server initializer, 3d-related can be avoided
/system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so PowerVR 3d lib can be avoided
/system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so PowerVR 3d lib can be avoided
/system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so PowerVR 3d lib can be avoided
/system/vendor/lib/hw/gps.s5pc110.so GPS lib has to be replaced to have working GPS
/system/vendor/lib/hw/gralloc.s5pc110.so gralloc lib cannot be avoided but was replaced by a (free) modified version of AOSP's gralloc
/system/vendor/lib/libakm.so accelerometer + compass can be avoided but a free replacement (libakm_free) already works with the accelerometer and the magnetic field (compass) will be supported soon
/system/vendor/lib/libglslcompiler.so ? seems graphics-related can be avoided
/system/vendor/lib/libIMGegl.so ? seems graphics-related can be avoided
/system/vendor/lib/libpvr2d.so ? seems graphics-related can be avoided
/system/vendor/lib/libpvrANDROID_WSEGL.so ? seems graphics-related can be avoided
/system/vendor/lib/libPVRScopeServices.so ? seems graphics-related can be avoided
/system/vendor/lib/libsec-ril.so Samsung's RIL has to be replaced to have working telephony and SMS (and data too)
/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

Configuration files

File location Function What depends on it?
/system/vendor/etc/gps.xml gps configuration file GPS. A (free) rewrite of this would probably conclude to producing almost the same file.

Firmwares

Firmware location Function What depends on it?
/system/vendor/firmware/fw_bcm4329.bin wifi firmware wifi
/system/vendor/firmware/fw_bcm4329_apsta.bin wifi AP firmware wifi access point
/system/lib/libpn544_fw.so NFC firmware Near Field Communication
/system/vendor/firmware/bcm4329.hcd bluetooth firmware bluetooth
/system/vendor/firmware/nvram_net.txt wifi-related firmware wifi
/system/vendor/firmware/samsung_mfc_fw.bin MFC firmware Multi Format Codec (hardware video encoding/decoding)

References