Giter Site home page Giter Site logo

vc4-buildbot's Introduction

IMPORTANT: VC4 driver released as part of Raspbian

Before trying to use this script, give Raspbian release February 2016 a try. More information

vc4-buildbot

This script is designed to build the latest Kernel, Mesa and XServer packages, along with their dependencies from Git. After compilation the generated files are injected into a current Raspbian image, to be tested on a Raspberry Pi or Raspberry Pi 2.

Modifying a local Raspbian installation

  1. Download the latest Raspbian and put it onto a SD or microSD card, depending on which version of the Raspberry Pi you want this to run on
  2. In the initial setup screen (raspi-config) make sure to enlarge the filesystem, set the correct keyboard layout (the default is a British one), and enable the SSH server
  3. Clone this repository onto your Pi by running git clone https://github.com/gohai/vc4-buildbot.git
  4. Run the script by executing sudo ./BuildRaspbianVc4.py

Generating/uploading a Raspbian image

To also create and upload an image file to a remote server make sure to:

  1. Modify at least UPLOAD_HOST, UPLOAD_USER, UPLOAD_KEY, UPLOAD_PATH in PackageRaspbianVc4.py
  2. Provide a private key file for use with the host you want to upload the file to (e.g. sukzessiv-net.pem, not part of the repository)
  3. Make sure that your host is in the known_hosts file of the root user. This can be accomplished by running sudo ssh to connect to your host.
  4. Install either screen and run the script by launching screen and then executing sudo ./PackageRaspbianVc4.py or consider setting up a cron job like this: 00 21 * * * root /home/pi/vc4-buildbot/PackageRaspbianVc4.py

Output files

  • *-image.zip: a zipped Raspbian image file, equivalent to the ones available from raspberrypi.org
  • *-issue.json: a JSON encoded array containing information about all the packages used for the build, including the commit they were at when building (useful for bisecting). This file is also available at /boot/issue.json.
  • *-overlay.tar.bz2: a tarball of files that can be added to a vanilla Raspbian image or installation. Make sure to run sudo ldconfig after initial bootup.
  • *-processing.tar.bz2: a tarball of a recent build of Processing for ARM (alpha)
  • *-successs.log.bz2 or *-error.log.bz2: build log

Moreover, the kernel configuration used is available as /boot/kernel.img-config (Raspberry Pi), and /boot/kernel7.img-config (Raspberry Pi 2). The script does modify /boot/config.txt if needed.

Testing on a Raspberry Pi

  • Make sure to resize the root partition (first item in the menu that comes up upon first boot, or raspi-config)
  • Run startx -- /usr/local/bin/Xorg (booting the custom image one can also use plain startx as the compiled X Server is set as default)
  • For troubleshooting, take a look at dmesg and /usr/local/var/log/Xorg.0.log.

Debugging crashes

To see why the X server unexpectedly crashes, run startx as root (sudo startx -- /usr/local/bin/Xorg). This will produce a file named core in the current directory after a crash.

Fire up the debugger with sudo gdb /usr/local/bin/Xorg core. The GDB command where shows the location of the crash, while info frame lists the captured variables, arguments and registers in the current frame.

vc4-buildbot's People

Contributors

gohai avatar wuyuehang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vc4-buildbot's Issues

VC4 Driver Status

Thanks for this build bot.

I see that Eric made his latest commit for VC4 driver to the upstream tree in Mid July. After watching his video presentation, it sure sounded like the work would be ongoing, with lots more to do.

Any insight on Eric's plans, or any other active effort on the VC4 driver?

Dave
Dev Lead, OpenCPN

freeze when X tries to start

After the kernel and everything else was compiled (using config tweaks from #1), when I rebooted the Pi, it froze when X attempted to start.

Doesn't work on Pi1 with 512 MB RAM

I have copied the image to a micro sd card with:

dd if=20150821-1625-vc4-image.img of=/dev/sdb bs=4M

and the raspberry remains black screen without booting. I can mount the filesystems and see all the files. What can I do to get a working image? Did I miss an important step?

fatal: unable to connect to anongit.freedesktop.org:

Cloning into '/usr/local/src/gst-omx'...
fatal: unable to connect to anongit.freedesktop.org:
anongit.freedesktop.org: Name or service not known

Traceback (most recent call last):
File "./BuildRaspbianVc4.py", line 647, in
buildGstreamer()
File "./BuildRaspbianVc4.py", line 524, in buildGstreamer
subprocess.check_call("git clone --recursive git://anongit.freedesktop.org/gstreamer/gst-omx /usr/local/src/gst-omx", shell=True)
File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'git clone --recursive git://anongit.freedesktop.org/gstreamer/gst-omx /usr/local/src/gst-omx' returned non-zero exit status 128

Official 7" touchscren support

Hello,

yesterday i built a full fresh raspbiain by gohai's buildbot.
There are still some glitches, but opengl speed improvement is really amazing.

My question is when do you plan supporting other outputs besides HDMI, as stated in a different issue:

It's a known limitation that HDMI is the only output currently working.

In particular, when will we be able to use the official touchscreen (preferrably along with the touch drivers).
Or, is there some other method to get it to work?

Keep up the good work

I2C

I'm using your config file for v1 Pi and was getting vc4 drm errors about not being able to get the i2c dev node for the HDMI port. If you compile in I2C driver for BCM2835 the DRM framebuffer works. I have the 2708 and 2835 I2C drivers both enabled and built into the image. Difference between my config and yours:

adam@Adam-Server:/media/RAID5/AndroidCode/kernel_raspberrypi_vc4$ diff config .config
1927c1927
< CONFIG_I2C_CHARDEV=m

---
> CONFIG_I2C_CHARDEV=y
1944c1944
< CONFIG_I2C_BCM2708=m

---
> CONFIG_I2C_BCM2708=y
1950c1950
< # CONFIG_I2C_BCM2835 is not set

---
> CONFIG_I2C_BCM2835=y
4428d4427
< 

Dragging a window around crashes X

Hello.. I've been running the BuildRaspbianVc4.py scrip over the last couple of days, and it finally finished this morning. After completing, I rebooted, but the PI2 I have won't boot off that image. Is there some magic steps I'm missing between finishing running the script and rebooting?
EDIT: Managed to get it up and running, through /boot/config.txt tweaking..

PI2
Running Jessie, upgraded from wheezy and fully updated

Turns out it does boot, possbily after messing with settings in /boot/config.txt but still no GUI. Can ssh in, and see that the vc4 driver is being loaded, which is exciting..
EDIT: Some more messing with /boot/config.txt, and I now get all the way to x. Dragging a window around in LXDE with openbox causes a crash

Some dmesg output that seems relevant: (EDIT: may not be anymore, leaving here in case it is..)

[ 1.584912] vc-cma: Videocore CMA driver
[ 1.588868] vc-cma: vc_cma_base = 0x00000000
[ 1.593625] vc-cma: vc_cma_size = 0x00000000 (0 MiB)
[ 1.599047] vc-cma: vc_cma_initial = 0x00000000 (0 MiB)
[ 1.604752] vc-mem: phys_addr:0x00000000 mem_base=0x3dc00000 mem_size:0x3f000000(1008 MiB)
[ 1.613415] [drm] Initialized drm 1.1.0 20060810
[ 1.620277] vc4-drm soc:vc4@0x7e4c0000: bound 3fc00000.brcm,vc4-v3d (ops vc4_v3d_ops)
[ 1.629973] vc4-drm soc:vc4@0x7e4c0000: bound 3f206000.brcm,vc4-pixelvalve (ops vc4_crtc_ops)
[ 1.638672] vc4-drm soc:vc4@0x7e4c0000: bound 3f207000.brcm,vc4-pixelvalve (ops vc4_crtc_ops)
[ 1.647362] vc4-drm soc:vc4@0x7e4c0000: bound 3f807000.brcm,vc4-pixelvalve (ops vc4_crtc_ops)
[ 1.655992] [drm:vc4_hdmi_bind] ERROR Failed to get ddc i2c adapter by node
[ 1.663209] vc4-drm soc:vc4@0x7e4c0000: failed to bind 3f902000.brcm,vc4-hdmi (ops vc4_hdmi_ops): -517
[ 1.673614] vc4-drm soc:vc4@0x7e4c0000: master bind failed: -517

Fatal Error Build

Hi,

so i have an RPI 2 and new installed Jessie on an Class 10 16GB SD Card. I have only configure WLAN and Keyboard, Language, Timezone. Then i have expand Filesystem to use all the space of the SD-Card. Then i have start Buildbot and after 1h i have an Fatal Error.
It writes influence inconsistency ....

I can not copy it here, because i don't use SSH so i have to make an picture. For this i have start buildbot again and became cryptogenic signs after 1,5h.
Have someone build succesfull with the Buildbot and Jessie image?

Is there an ready to start image of rasbian jessie to test the VC4 driver?

Regards,

ng

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.