|
|
2007-10-27
, 08:51
|
|
Posts: 2,102 |
Thanked: 1,309 times |
Joined on Sep 2006
|
#2
|
|
|
2007-10-27
, 09:13
|
|
Posts: 255 |
Thanked: 15 times |
Joined on Oct 2007
@ United Kingdom
|
#3
|
The proprietary modules are just that, kernel modules. They live in the initfs.
The things that are proprietary in the kernel are wifi and Bluetooth. These are proprietary binary only kernel modules. If Nokia were to release kernel drivers which use a reasonably simple wrapper driver to load a binary blob that would make transitioning to a later kernel a relatively easy matter. I'm pretty sure there's a garage project for just such a wrapper for the wifi hardware. Not sure about the Bluetooth stuff. Someone correct me if I'm wrong there please.
There are other proprietary parts of the system - these include the software that interfaces with the battery control hardware and parts of the DSP kernel (the latter doesn't stop anyone from updating the Linux kernel and the former could probably be reverse engineered if someone were motivated enough)
|
|
2007-10-27
, 09:17
|
|
Posts: 2,102 |
Thanked: 1,309 times |
Joined on Sep 2006
|
#4
|
The GPL should mean that Nokia can't simply develop drivers for their tablet kernels and keep them secret. But it is, of course, a grey area. Now you've confirmed my suspicions, I wonder if this is a bit of a timebomb -- if the guys on Slashdot got to hear, or Groklaw, Nokia could face a lot of criticism.
So the DSP kernel is separate? Is this completely closed-source or still based on Linux?
I presume the reason for the proprietary modules and software was for reasons of cost -- Nokia would have liked to use open spec hardware but the closed-spec stuff was just cheaper or simply better specified (like the wifi controller in the OLPC project).
|
|
2007-10-27
, 10:32
|
|
Posts: 255 |
Thanked: 15 times |
Joined on Oct 2007
@ United Kingdom
|
#5
|
Nvidia quite happily release binary only kernel modules. Or are you saying that if you use a GPL wrapper to load a proprietary binary blob, that the blob must be GPL too?
As you say, they release open source modules that hook into binary blobs. The blob is already-existing code, and this is an important point -- it isn't derived from the kernel. The actual hook module is, so must be GPL. |
|
2007-10-27
, 12:13
|
|
|
Posts: 696 |
Thanked: 1,012 times |
Joined on Mar 2006
@ Asturies, Spain
|
#6
|
|
|
2007-10-27
, 13:22
|
|
Posts: 255 |
Thanked: 15 times |
Joined on Oct 2007
@ United Kingdom
|
#7
|
An interesting read: http://article.gmane.org/gmane.linux.kernel/475723
Follow the thread down. It's very large.
Especially the first message of Linus Torvalds: http://article.gmane.org/gmane.linux.kernel/475824
It was in December 2006.
|
|
2007-10-27
, 14:59
|
|
Posts: 2,102 |
Thanked: 1,309 times |
Joined on Sep 2006
|
#8
|
|
|
2007-10-27
, 15:08
|
|
Posts: 255 |
Thanked: 15 times |
Joined on Oct 2007
@ United Kingdom
|
#9
|
They have not modified an existing part of the kernel. They (or at least someone) has written their own binary kernel module. If they do this they have not modified GPL code, they merely link into it (and there's lots of talk about whether this should be allowed too!).
This is identical to the case where they use a binary blob.
I don't see any legal difficulties with the way Nokia have done this over and above those that other companies such as nVidia/ImgTech (PowerVR) have with their own binary-only and/or binary-blob modules.
Sorry.
Simon

I'm curious as to how the kernel in the Nokia Internet tablets is organised and in particular the fact that people sayd that much of the hardware in the internet tablets isn't open, so can't use open source drivers.
Am I right in thinking that the proprietary kernel modules are held in initrd? And, because they're binary modules, they only work with one particular kernel version? So you couldn't, for example, grab the latest vanilla kernel source and build from scratch?
If this is the case, has Nokia ever released updated binary modules for later kernels? Or do we have to take what we're given?