Note: This page was originally meant to provide support for the Raspberry Pi 3. Support for earlier families has been added since.
Raspberry Pi 3, like earlier models, require a non-free blob to boot
The Raspberry Pi 3 is a version of the RaspberryPi which was released in February 2016. It contains a 1.2 GHz ARM Cortex-A53 CPU and hence is the first version of the RaspberryPi to support the arm64 architecture. In 2018, two further models were added to the Raspberry Pi 3 family — The 3B+ and 3A+.
You can use sysfs to configure and control the GPIO pins. The pin numbers are offset by 458 (see /sys/kernel/debug/gpio). Thus to enable pin 4 (as root):
# echo "462" > /sys/class/gpio/export
GPIO libraries work, but require some extra effort as of 2019-03-25.
The buster kernel does not support at least the analog audio output on the Raspberry Pi 3B+ but installing the buster-backports kernel fixes it:
$ cat /proc/asound/cards 0 [ALSA ]: bcm2835_alsa - bcm2835 ALSA bcm2835 ALSA 1 [vc4hdmi ]: vc4-hdmi - vc4-hdmi vc4-hdmi