Currently running Meego/Mer/Nemo/etc on the N900 requires a bunch of closed
blobs.
This message is aimed at discussing the efforts to replace those blobs and
to make people aware of replacements for them where such things exist or
are being done. (the ultimate aim would be to have as little binary code as
possible I guess)
1.Bluetooth and WiFi settings modules (wl1251-cal-bin, libppu-bin,
libwl1251-bin, sysinfod-rx51)
I have recently created & posted code here
http://maemo.org/community/maemo-developers/replacement_for_bluetooth-sysinfo-and_plans_for_libcal_and_wl1251-cal/
and here
http://maemo.org/community/maemo-developers/replacement_for_wl1251-cal/
that will replace all of the above mentioned packages and do complete
bluetooth and WiFi wl1251 initialization.
2.Pulseaudio (pulseaudio-modules-nokia)
Reports are that tanuk2 is working on getting a newer version of Pulseaudio
working and that he will be replacing the needed parts of the closed
binaries as part of that work.
3.BME (contextkit-maemo-battery-rx51-bin and bme-rx-51-bin)
Work is being done on replacing BME (and libbmeipc) by Pali and
freemangordon with new stuff that uses a kernel driver (bq27 or something)
to talk directly to the charging chip on the board.
4.CAL (libcal-rx-51-bin)
I am in the process of producing a library to act as a drop-in replacement
for libcal but which is open source. This will allow reading of the CAL
area (including WiFi and bluetooth settings) without needing the binary
Nokia libcal anymore.
5.Camera (gst-nokia-camera)
The camera as currently implemented uses a binary blob (libomap3camd), a
module that links to it (the module is open source but the headers for
libomap3camd are not available so the module cant be rebuilt) and a couple
other modules that are 100% open.
Best way to replace this would be to port the 100% open FCam-n900 work.
That or write a new module that does similar things to libomap3camd only open.
6.GPS (location-adaptation-rx-51, liblocation-headers)
GPS is handled through the cellular modem over ISI (same as calls, SMS etc)
There is a header file out there (in a Nokia QT SDK among other places)
called pn_location_isi.h that contains details of the ISI/phonet packets
and data necessary to talk to the GPS chip.
As far as I know, no-one has yet started working on an open GPS setup for
the N900. The way to replace this bit then would be for someone to take
pn_location_isi.h and from there write a new GPS system (or a plugin for an
existing GPS system)
9.GPU (ti-omap3-sgx)
Again, as far as I know no-one is working on open source PowerVR drivers
(although the FSF has said its a high priority project due to the number of
mobile devices out there with PowerVR GPUs in them).