Diff for /wikisrc/ports/evbarm/raspberry_pi.mdwn between versions 1.53 and 1.62

version 1.53, 2017/10/14 14:53:46 version 1.62, 2017/10/22 00:06:31
Line 10  Initial, limited, Raspberry Pi support w Line 10  Initial, limited, Raspberry Pi support w
   
 <small>([Raspberry Pi image](http://www.flickr.com/photos/42325803@N07/8118758647/) by Christopher Lee used under CC-By-2.0 license)</small>  <small>([Raspberry Pi image](http://www.flickr.com/photos/42325803@N07/8118758647/) by Christopher Lee used under CC-By-2.0 license)</small>
   
 # What works  # What works (and what doesn't yet)
   
 ## NetBSD 7 before July, 2017  ## NetBSD 7 before July, 2017
   
Line 37  Initial, limited, Raspberry Pi support w Line 37  Initial, limited, Raspberry Pi support w
  - Raspberry Pi 3 bluetooth   - Raspberry Pi 3 bluetooth
  - Raspberry Pi 3 new SD host controller driver   - Raspberry Pi 3 new SD host controller driver
   
 # What needs work  ## What needs work
   
  - USB (host); isochronous transfers.   - USB (host); isochronous transfers.
  - WiFi   - WiFi
   
   # CPU types
   
   Note that one can also use code for earlier models on later models.
   
    - Raspberry Pi 1 uses "earmv6hf".
    - Raspberry Pi 2 uses "earmv7hf".
    - Raspberry Pi 3 uses "earmv7hf".  (NetBSD does not yet have 64-bit support.)
   
 # Installation  # Installation
   
  - The automatic nightly builds  on [nyftp.netbsd.org](http://nyftp.netbsd.org/pub/NetBSD-daily/) provide image files that can be used for installation. The Raspberry Pi and Pi 2 ports are part of the NetBSD 7 release.  ## SD card structure
     - The 'evbarm-earmv6hf/binary/gzimg/' directory contains an rpi.img file that can be used as a single image for both boards.  
     - The 'evbarm-earmv7hf/binary/gzimg/' directory, as of August 6th 2015, contains an armv7.img file that is optimized for Raspberry Pi 2.  The Raspberry Pi looks for firmware and a kernel on the first FAT32
     - The stable build directory will be under netbsd-7/YYYYMMDDHHMMZ/ (for example, http://nyftp.netbsd.org/pub/NetBSD-daily/netbsd-7/201412161700Z/evbarm-earmv6hf/binary/gzimg/)  partition of the uSD card.  The NetBSD kernel will then use the FFS
     - The HEAD/current directory build will be under HEAD/YYYYMMDDHHMMZ/ (for example, http://nyftp.netbsd.org/pub/NetBSD-daily/netbsd-7/201508062150Z/evbarm-earmv7hf/binary/gzimg/)  partition as the root filesystem.
   - You can build your own version of these images using (for example) './build.sh -m evbarm -a earmv6hf -u release', or './build.sh -m evbarm -a earmv7hf -u release'  
    - <i>gunzip and dd</i> this img to your sd card. For example,  ## Choosing a version
   
   First, decide if you want to install a formal release (7.1), a stable
   branch build (netbsd-7, netbsd-8), or current.  Note that 7.1 predates
   Raspberry Pi 3 support.  For people who don't know how to choose among
   those, netbsd-8 is probably best.
   
   ## Getting bits to install
   
   You can either build a release yourself with build.sh, or get one from the NetBSD FTP servers.
   
   Both will provide rpi.img.gz and rpi_inst.img.gz.  Each is an image to
   be written to a uSD card, and it has a FAT32 partition for booting and
   an FFS partition for NetBSD.
   
   ### Building yourself
   
            dd if=rpi.img of=/dev/disk1  Getting sources and building a release with build.sh is not special for evbarm.
   Pick a CPU type alias and pass it to build.sh with -m.  Examples:
    - ./build.sh -m earmv6hf -u release
    - ./build.sh -m evbarm -a earmv6hf -u release
    - ./build.sh -m evbarm -a earmv7hf -u release
   
  - Using a serial console  ### NetBSD FTP servers
    - By default the rpi.img is set to use the HDMI output; to change to using a serial console first mount rpi.img (it's a FAT filesystem)  
   
            edit cmdline.txt and remove '"console=fb"'  NetBSD provides nightly builds on [nyftp.netbsd.org](http://nyftp.netbsd.org/pub/NetBSD-daily/).  These are equivalent to building yourself.
   
    - Most (all?) USB-to-TTL serial adapters only connect Tx, Rx and ground, and do not connect any flow control lines. An effect of missing flow control is that you see console output, but cannot type anything. If so, adjust your serial console application's flow control settings to "none".   - The 'evbarm-earmv6hf/binary/gzimg/' directory contains an rpi.img file that can be used as a single image for both boards.
    - The 'evbarm-earmv7hf/binary/gzimg/' directory contains an armv7.img file that is optimized for Raspberry Pi 2.
    - The stable build directory will be under netbsd-7/YYYYMMDDHHMMZ/ (for example, http://nyftp.netbsd.org/pub/NetBSD-daily/netbsd-7/201710201440Z/evbarm-earmv6hf/binary/gzimg)    
    - The not-yet-released stable build directory will be under netbsd-8/YYYYMMDDHHMMZ/ (for example, http://nyftp.netbsd.org/pub/NetBSD-daily/netbsd-8/201710211010Z/evbarm-earmv6hf/binary/gzimg/)
    - The HEAD/current directory build will be under HEAD/YYYYMMDDHHMMZ/ (for example, http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/201710202210Z/evbarm-earmv7hf/binary/gzimg/)
   
       In Kermit, the command is "set flow none".  ## Installing to uSD
   
       In minicom, run "minicom -s" and set hardware flow control to "no"  Once you have rpi.img.gz, put it on a uSD card using gunzip and dd, for example:
   
 ## Installation with sshramdisk image   - gunzip rpi.img.gz
    - dd if=rpi.i7mg of=/dev/disk1
   
  - You may use the  rpi_inst.img.gz file created by an evbarm build.  ### Serial Console
  - Connect Ethernet Cable to RPI.  
   By default the rpi.img is set to use the HDMI output.  If you wish to use a serial console, first mount the FAT32 partition and then
   edit cmdline.txt and remove '"console=fb"'.
   
    - Most (all?) USB-to-TTL serial adapters only connect Tx, Rx and ground, and do not connect any flow control lines. An effect of missing flow control is that you see console output, but cannot type anything. If so, adjust your serial console application's flow control settings to "none".
   
      In Kermit, the command is "set flow none".
   
      In minicom, run "minicom -s" and set hardware flow control to "no"
   
   ### Installation with sshramdisk image
   
   build.sh (and hence the FTP site) also creates an image 'rpi_inst.img.gz' specifically for installation without HDMI or a serial console.  To use this method, write that image to a uSD card as above, and then:
   
    - Ensure that you have a lan with a DHCP server.
    - Connect an Ethernet cable from the RPI to the LAN.
  - After starting DHCP client, SSH login to with user "sysinst", and password "netbsd".   - After starting DHCP client, SSH login to with user "sysinst", and password "netbsd".
    - Be careful to note the ip address given during DHCP so you don't lose your connection     - Be careful to note the ip address given during DHCP so you don't lose your connection
    - Also for after the sysinst is done and the system reboots     - Also for after the sysinst is done and the system reboots
  - sysinst started!   - sysinst started!
   
   ## Installation via ebijun's image
   
   As an alternative to the standard installation images, Jun Ebihara
   provides an install image for Raspberry Pi that includes packages.  It
   is based on NetBSD-current and is built for earmv6hf, and thus will
   work on Raspberry Pi 1, 2 and 3.  This image is typically updated
   every few weeks.
   
    - [https://github.com/ebijun/NetBSD/blob/master/RPI/RPIimage/Image/README](https://github.com/ebijun/NetBSD/blob/master/RPI/RPIimage/Image/README)
   
 ## Updating the kernel  ## Updating the kernel
   
  - Build a new kernel, e.g. using build.sh. It will tell you where the ELF version of the kernel is, e.g.   - Build a new kernel, e.g. using build.sh. It will tell you where the ELF version of the kernel is, e.g.

Removed from v.1.53  
changed lines
  Added in v.1.62


CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb