[NTG-context] [OT] rasperry 4

Rudolf Bahr quasi at quasi.de
Tue Jun 25 17:55:21 CEST 2019


On Tue, Jun 25, 2019 at 03:33:00PM +0200, luigi scarso wrote:
> On Tue, Jun 25, 2019 at 3:31 PM Rudolf Bahr <quasi at quasi.de> wrote:
> 
> > On Tue, Jun 25, 2019 at 10:15:29AM +1200, Henri Menke wrote:
> > > On 25/06/19 12:30 AM, luigi scarso wrote:
> > > > just seen
> > > > https://www.raspberrypi.org/products/raspberry-pi-4-model-b/
> > > >
> > > > I would like to know your impressions
> > >
> > > Does it still need proprietary binary blobs in the kernel?  Probably
> > > yes, so it is as useless as all the models before because it can only
> > > run their custom Raspbian distro.
> >
> >
> >
> > To this I asked my linux group in Freiburg and got following answer
> > in German from Tomas (tuxteam.de):
> >
> > --------------------------------------------------------------------------
> > Die Antwort darauf ist komplizierter, als es einem lieb sein kann :-)
> >
> > "Blob" hat da nämlich unterschiedliche Bedeutungen (vermutlich lässt
> > sich die Liste verlängern):
> >
> >  (1) zum einen, nicht-freie Treiber, die direkt im Adressraum des Linux
> >    kernels ausgeführt werden (strenggenommen verletzen sie die GPL,
> >    aber die Linux-community ist da... "tolerant" [1]
> >
> >  (2) dann ist die eng verwandte "Cousine", die im Kernel zwar einen
> >    freien "Treiber" hat, der aber nur eine Hülle ist, die die eigentliche
> >    Arbeit an ein Programm in user space delegiert, das proprietär ist
> >
> >  (3) schliesslich ist es so, dass der Broadcom BCM28xx (oder BCM27xx) [2]
> >    nicht "nur eine ARM CPU" ist, sondern ganz viele verschiedene
> >    Subsysteme umfasst (im Jargon ist das ein SoC, ein "System on a Chip").
> >    Jedes dieser Subsysteme hat vielleicht einen, vielleicht mehrere
> >    Prozessoren, am prominentesten beim Raspi ist wohl der
> > Grafik-Coprozessor
> >    (VideoCore IV), der auch zum Booten des ganzen Systems zuständig ist.
> >    Auch die wollen Code, der auch als Blobs in Erscheinung treten kann,
> >    die der Linux-Kernel einfach nur durchreicht.
> >
> > Also: ohne (3) gibt es beim Raspi nicht mal Booten ;-)
> >
> > Meines Wissens ist Raspi in (1) und (2) weitgehend "sauber" (Korrekturen
> > erwünscht!), (3) ist allerdings weitaus schwieriger (es gibt m.W. aber
> > auch Leute, die an dessen reverse engineering dran sind).
> >
> > Broadcom selbst scheint, nach anfänglichem Zögern, diesen Anstrengungen
> > freundlich gegenüberzustehen.
> >
> > Dies alles mit etwas Fehlermarge, da ich schon lange nicht mehr
> > reingeschaut habe. Ergänzungen also willkommen (dann lerne ich auch
> > was bei ;-)
> >
> > lg
> >
> > [1] Ein Thema für sich, an dem, wie mensch sich das auch denken
> >    kann, so einige Kontroversen entstehen.
> >
> > [2] https://en.wikipedia.org/wiki/Raspberry_Pi
> > -------------------------------------------------------------------------
> >
> > If anybody is interested I would try to translate it.
> >
> >
> 
> 
> sure
> 
> -- 
> luigi


Here, Luigi, my translation:

-----------------------------------------------------------------------------
The answer is more complicated as one could want :-)

"Blob" has quite different meanings (the list could be 
prolongated probably):

   (1) first, non-free drivers which are executed in the 
     address-room of linux kernel (strictly spoken they 
     offend against GPL, but the Linux-community with
     respect to this is ... "tolerant") [1]

   (2) then, there is a nearly related "cousin" who admittedly
     has a free "driver" but this one is only a cover which
     delegates the real work to a propriatary program in user 
     space

   (3) eventually it is so that Broadcom BCM28xx (or BCM27xx) [2]
     isn't "only an ARM CPU" but contains a bunch of many
     different subsystems (in jargon a SoC, a "system on a Chip").
     Everyone of these subsystems has possibly one, possibly 
     several processors. Presumably the most prominent with the
     Raspi is the grafic-coprocessor (Videocore IV) which is
     responsible for booting the whole system too. Also these
     have code which might become evident as blobs which the
     linux kernel simply hands through.

Consequently: without (3) Raspi wount boot ;-)

As far as I know (Tomas, tuxteam.de) with concern to (1) and (2)
Raspi to a large extend is "clean" (corrections are welcome!),
though (3) is much more difficult (there are, as I think, people
who are working on reverse engineering of it).
  
Broadcom, after hesitating initially, seems to be friendly against
those efforts.
  
This all is with a bit of error margin, because I didn't look into
it for a rather long time. Completions are welcome (then I would
learn something too ;-)
  
lg (liebe Grüße)
  
[1] A topic for itself with possibilities to controversies as one
    can imagine.
  
[2] https://en.wikipedia.org/wiki/Raspberry_Pi
-----------------------------------------------------------------------------

Be lenient towards my English!

Rudolf


More information about the ntg-context mailing list