> So i'm referring to the chip implementation, because for the moment, i
> don't know if ARM arch have always need a private soft to run.

I wouldn't call it a "chip implementation", this term might refer to
information that is needed to make ARM-compatible chips.

> It's what i want to know, and which of amd, arm and x86 (i'm on a x86)
> is better.

Both Intel and AMD x86 CPUs (AMD64 is just one of many names for its
64-bit extension) usually need nonfree microcode (I don't know which
work without it).  Most systems using these CPUs need nonfree boot
firmware (a BIOS) due to lack of specifications needed to support them
in free solutions like Coreboot; maybe some have digital restrictions.

Graphics card have chips with their own nonfree firmware which is run on
the main CPU to initialize them, it is needed for nearly all of them
(the Intel driver doesn't need it, the Radeon driver needs only to read
some data from it; all Lemote devices with non-SiliconMotion graphics
chips have nonfree VGA BIOS blobs in their otherwise free boot
firmware).

ARM systems usually have nontrivial boot ROM in the chip and nonfree
bootloaders in the user-modifiable storage; most devices like phones
have these signed so users cannot replace it.

No GPU used on an ARM system has vendor-supported free driver (with
e.g. a shader compiler for OpenGL-like APIs which Raspberry Pi has in
its blob running on the GPU).  There are reverse engineering projects
for most that are used in phones.  Most chips can be used without it
(not the one used on Raspberry Pi) with slower graphics (this is more of
a problem for Android than for GNU/Linux).

Ignoring issues like supporting companies doing bad things (buy used
hardware so they won't get money from you), I see the following options:

- if you need 3d acceleration, use an Intel system with a nonfree BIOS
  or nonfree digitally locked microcode and Coreboot (not all systems
  are supported; e.g. some have PowerVR GPUs), or an AMD system with
  Coreboot, nonfree CPU microcode and an Nvidia GPU (Nouveau doesn't
  support all cards and has incomplete support for others)

- otherwise you might want an AMD system with Coreboot, nonfree CPU
  microcode and nonfree VGA BIOS; a Lemote YeeLoong with a Loongson 2F
  CPU (MIPS; not all programs are ported to it, Trisquel isn't; graphics
  is slow) which has no nonfree software more modifiable than the EC
  firmware (all laptops maybe except some OLPC ones have it nonfree), or
  a Lemote FuLoong with GRUB instead of the default boot firmware (no
  EC; a non-laptop computer)

- if you want a phone, it will have nonfree baseband firmware, on GTA02
  and GTA04 it cannot spy on you (ignoring all normal uses of GSM
  networks), on other phones this isn't completely known; most can read
  all data from the main memory and access the microphone and GPS

- if you want an ARM tablet, it will have nonfree boot firmware which
  you cannot replace (although the vendor can without special hardware),
  without a nonfree driver it will have slow graphics; wifi, Bluetooth,
  camera, etc will most probably need nonfree firmware

I don't use most of these in the freest ways that I know, they might be
harder than I describe.

Summary: I think there is no single best way, specific cases might be
different and everything can change.  The CPU ISA is not an important
factor for software freedom.

Attachment: pgp2zDBkAancU.pgp
Description: PGP signature

Reply via email to