--- wikisrc/ports/evbarm/raspberry_pi.mdwn 2013/01/01 05:34:36 1.1 +++ wikisrc/ports/evbarm/raspberry_pi.mdwn 2013/03/23 14:29:34 1.12 @@ -1,14 +1,80 @@ [[!meta title="NetBSD/evbarm on Raspberry Pi"]] +[[images/raspberrypi.jpg]] + This page attempts to document and coordinate efforts towards NetBSD/evbarm on [Raspberry Pi](http://www.raspberrypi.org). +(Raspberry Pi [image](http://www.flickr.com/photos/42325803@N07/8118758647/) by Christopher Lee used under CC-By-2.0 license) + +# Installation + - You may use the rpi.img file created by an arm build. + - An example can be found in the '/evbarm/binary/gzimg/' directory under releng.netbsd.org + - gunzip and dd this img to your sd card. + + - Growing the root file-system + - Copy /boot/cmdline.txt to /boot/cmdline.txt.orig + - Edit /boot/cmdline.txt and add the '-s' flag to the end of the first line of text. + - Reboot, and at the prompt to enter the passname of shell, press + return for the default (/bin/sh). + - At the # prompt, type + + "disklabel -i ld0" and press return. + - At the partition> prompt + + type "A" and press return. You will see + - a message like: + + Adjust disklabel sector from 4194304 to 62333952 [n]? + Type "y" and press return. + - partition> prompt + + type "a" and press return. + Filesystem type prompt, press return to use the current value (4.2BSD). + Start offset prompt, press return to use the current value. + Partition size prompt, type "$" and press return to grow the + partition to use all available free space. + + - partition> prompt + + type "W" to save the changes to the disklabel. + Confirm this choice by typing "y" at the Label disk prompt. + Type "Q" and press return to quit disklabel. + - At the # prompt, type + + fsck -fy /dev/rld0a + resize_ffs -y /dev/rld0a + - This may take a few minutes, be patient! + + fsck -fy /dev/rld0a + mount /dev/ld0e /boot + mv /boot/cmdline.txt.orig /boot/cmdline.txt + reboot + - When the system comes back up, the root file-system will have been expanded to + fill the SD card. + +# Updating the firmware + - [rpi firmware files](https://github.com/raspberrypi/firmware/tree/master/boot) + - Copy all files except 'kernel*img' into /boot and reboot + +# Additional links + - [ARM userland utilities](https://github.com/jaredmcneill/userland) + - [Additional kernel drivers for VCHIQ](https://github.com/jaredmcneill/vchiq-netbsd) + # What works - - multi-user boot with root on SD card and serial console + - multi-user boot with root on SD card + - serial or graphics console (with EDID query / parsing) + - X windows. + - USB (host); control, interrupt and bulk transfers. Has some stability issues that are being worked on. man page missing. + - USB Ethernet + - RNG: works + - I²C: works, could use enhancements, man page + - SPI: works, could use enhancements, man page # What needs work - - USB (host): work in progress - - I²C: work in progress - - SPI: work in progress + - VCHIQ; work in progress - will provide audio. + - USB (host); isochronous transfers. DMA support. + - DMA controller driver / dmover(9) backend + - Teach sdhc(4) about dmover; not Raspberry Pi specific + - hardfloat; not Raspberry Pi specific + - earm ABI; not Raspberry Pi specific - GPIO - - framebuffer - - almost everything relating to working with the VideoCore IV