Source code for ARM side libraries for interfacing to Raspberry Pi GPU.

This is now a fork of the upstream userland, which is being retired by the raspberry pi team.
https://github.com/raspberrypi/userland

Dom Cobley 96a7334ae9 README: Update to make it clear that most code in this repo is deprecated преди 7 месеца
.github 2f85f2db00 Update issue templates преди 4 години
containers b6271f4b73 warnings: Fix some mostly spurious warnings преди 7 години
helpers 153a235deb Assorted clang static analysis fixes преди 7 месеца
host_applications 3c97f769ef userland: dtoverlay: /boot/firmware is a valid path преди 7 месеца
host_support 2165408c7f vcdbg: Use dma driver to access gpu memory преди 7 години
interface 50527c6f2e mmal: Only include Videocore components if not running on Videocore преди 1 година
makefiles 8b8f6571b6 buildme: Add option for ARM64 builds via either native or cross compile преди 5 години
middleware d2c9f912da RaspiStill example code for YUV fast paths преди 10 години
opensrc 9d5250fd98 libfdt: Add null-ptr check for prop-data to resolve clang --analyzer warning преди 1 година
pkgconfig 5070cb7fc1 Remove legacy pkgconfig to avoid Mesa conflicts преди 4 години
vcfw 55a683e9b9 EDID: Add HDMI_I2C driver for 2711 преди 4 години
vcinclude d9e4d8c266 vc_image: Remove structure definition duplication преди 7 години
.gitignore 30e3cdd8f6 .gitignore: Ignore typical output files преди 6 години
CMakeLists.txt f97b1af1b3 Revert "Add MMAL and MMAL_APPS to 64bit builds" преди 4 години
LICENCE 0863709b9f Update copyright преди 8 години
README.md 96a7334ae9 README: Update to make it clear that most code in this repo is deprecated преди 7 месеца
buildme 666d281a7a Replace 'arch' with uname преди 4 години

README.md

Update

This repo is ancient and deprecated.

It largely contains code using proprietary APIs to interface to the VideoCore firmware. We have since move to standard linux APIs.

V4L2, DRM/KMS and Mesa are the APIs you should be using.

The few useful tools from here (dtoverlay, dtmerge, vcmailbox, vcgencmd) have been moved to the raspberrypi/utils repo.

Code from here is no longer installed on latest RPiOS Bookworm images.

If you are using code from here you should rethink your solution.

Consider this repo closed.

========================

This repository contains the source code for the ARM side libraries used on Raspberry Pi. These typically are installed in /opt/vc/lib and includes source for the ARM side code to interface to: EGL, mmal, GLESv2, vcos, openmaxil, vchiq_arm, bcm_host, WFC, OpenVG.

Use buildme to build. It requires cmake to be installed and an ARM cross compiler. For 32-bit cross compilation it is set up to use this one: https://github.com/raspberrypi/tools/tree/master/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian

Whilst 64-bit userspace is not officially supported, some of the libraries will work for it. To cross compile, install gcc-aarch64-linux-gnu and g++-aarch64-linux-gnu first. For both native and cross compiles, add the option --aarch64 to the buildme command.

Note that this repository does not contain the source for the edidparser and vcdbg binaries due to licensing restrictions.