.8MMMMMMMM MMMMMMMM8.
MMM77$$$$$$7MM MM$$$$$$$$$MMM
MM$$$$$$$$$$$$M M$$$$$$$$$$$$MM
MO7$$$$$8$$$$$MMM$$$$$N7$$$$7DM
M7$$$$$$$M7$$MMM$$7M$$$$$$$7M.
M7$$$$$$$$MMMMMMM$$$$$$$$7M.
MM$$$$$$7MMMMMMM$$$$$$$MM
.MM$7MMMMMMMMMMMMM7$MM.
.MM8ZZZMMZZZZZZZMZZZ$MM.
.MOZZZZMMZZZZZZZZZM8ZZZZMM
MZZMMMZZZZ8MMMMM$ZZZ$MMZZMM
.MMMMMZZZZZZZZMMMZZZZZZZMMMMM:
M8ZZMMZZZZZZZZNMZZZZZZZZZMMZZMM
MZZZZMZZZZZZZZZMMMZZZZZZZZ8MZZZMM
.MZZZZMZZZZZZZZZMMMZZZZZZZZMMZZZ8M
.MZZZMMMZZZZZZZMMMMM$ZZZZZ$MMZZZMM
MMZZMMMMMM8MMNZZZZZ8MMMMMMMMMZZM
MMMMZMMMMMMZZZZZZZZZMMMM$ZZZMM.
MMZZZZZMMMZZZZZZZZZMMMZZZZZMM
MZZZZZZZMNZZZZZZZMMZZZZZZZM.
MMMMMZZZZZZZZZMMMM.
.MMDZZZZZZZMMD
.MMMMMMMM,
....
This is the general hardware specific BSP overlay for the RaspberryPi device.
More information can be found at: http://www.raspberrypi.org/ (Official Site)
The core BSP part of meta-raspberrypi should work with different OpenEmbedded/Yocto distributions and layer stacks, such as: * Distro-less (only with OE-Core). * Angstrom. * Yocto/Poky (main focus of testing).
This layer depends on:
URI: git://git.yoctoproject.org/poky branch: master revision: HEAD
URI: git://git.openembedded.org/meta-openembedded layers: meta-multimedia branch: master revision: HEAD
How to use it:
Variable : Details GPUMEM : GPU memory in megabyte. Sets the memory split between the ARM and GPU. ARM gets the remaining memory. Min 16. Default 64. GPUMEM256 : GPU memory in megabyte for the 256MB Raspberry Pi. Ignored by the 512MB RP. Overrides gpumem. Max 192. Default not set. GPUMEM512 : GPU memory in megabyte for the 512MB Raspberry Pi. Ignored by the 256MB RP. Overrides gpu_mem. Max 448. Default not set.
To add you own licenses use variables KEYDECODEMPG2 and KEYDECODEWVC1 in local.conf. Example: KEYDECODEMPG2 = "12345678" KEYDECODEWVC1 = "12345678" You can supply more licenses separated by comma. Example: KEYDECODEWVC1 = "0x12345678,0xabcdabcd,0x87654321"
By default the GPU adds a black border around the video output to compensate for TVs which cut off part of the image. To disable this set this variable in local.conf: DISALE_OVERSCAN = "0"
The Raspberry PI can be overclocked. As of now overclocking up to the "Turbo Mode" is officially supported by the raspbery and does not void warranty. Check the config.txt for a detailed description of options and modes. Example:
ARMFREQ = "1000" COREFREQ = "500" SDRAMFREQ = "500" OVERVOLTAGE = "6"
Set this variable to enable support for the video camera (Linux 3.12.4+ required) VIDEO_CAMERA = "1"
Set this variable to enable support for dispmanx offline compositing DISMANX_OFFLINE = "1"
This will enable the firmware to fall back to off-line compositing of Dispmanx elements. Normally the compositing is done on-line, during scanout, but cannot handle too many elements. With off-line enabled, an off-screen buffer is allocated for compositing. When scene complexity (number and sizes of elements) is high, compositing will happen off-line into the buffer.
Heavily recommended for Wayland/Weston.
See: http://wayland.freedesktop.org/raspberrypi.html
To have u-boot load kernel image, set in your local.conf KERNEL_IMAGETYPE = "uImage"
This will make kernel.img be u-boot image which will load uImage. By default, kernel.img is the actual kernel image (ex. Image).
To build an initramfs image : * Set this 3 kernel variables (in linux-raspberrypi.inc for example) - kernelconfigurevariable BLKDEVINITRD y - kernelconfigurevariable INITRAMFSSOURCE "" - kernelconfigurevariable RDGZIP y * Set the yocto variables (in linux-raspberrypi.inc for example) - INITRAMFSIMAGE = "" - INITRAMFSIMAGEBUNDLE = "1" * Set the meta-rasberrypi variable (in raspberrypi.conf for example) - KERNELINITRAMFS = "-initramfs"
omxplayer depends on libav which has a commercial license. So in order to be able to compile omxplayer you will need to whiteflag the commercial license adding to you local.conf: LICENSEFLAGSWHITELIST = "commercial"
Main repo: git://git.yoctoproject.org/meta-raspberrypi http://git.yoctoproject.org/git/meta-raspberrypi
Github mirror: https://github.com/djwillis/meta-raspberrypi
Gerrit review repo: https://review.gherzan.ro:8443/meta-raspberrypi
To contribute to this layer you should send the patches for review to the mailing list.
The patches should be compliant with the openembedded patch guidelines: http://www.openembedded.org/wiki/CommitPatchMessage_Guidelines
Mailing list: https://lists.yoctoproject.org/listinfo/yocto
To send changes to mailing list use something like: git send-email --to yocto@yoctoproject.org \ --subject-prefix='meta-raspberrypi][PATCH'
OPTIONALLY push changes to gerrit (help maintainers merge and review patches
easier in this way).
git push ssh://
We have a gerrit server configured at review.gherzan.ro. Changes made in gerrit are merged in git.yoctoproject.org/meta-raspberrypi.
You can setup a gerrit account in less than 2 minutes:
A) Login / Register on https://review.gherzan.ro:8443.
B) Add your PUBLIC key in Settings/SSH Public Keys.
C) Add remote in your local repo:
git remote add gherzan ssh://
Please check your spam folder for gerrit messages. Sometimes they end up there.
A public Trello board is set to manage tasks and bugs. Join us there: https://trello.com/b/QsYeVjVe/meta-raspberrypi
John Willis <John.Willis at distant-earth.com>
Andrei Gherzan <andrei at gherzan.ro>