Parabuntu 2016.11
Parabuntu 2016.11
Installation Instructions
Download the appropriate card image below and burn onto an SD card using your favorite OS and method. Make sure you download the correct file. The z7020 applies to Kickstarter boards and "Embedded" (P1602) Parallella boards. Everyone else should grab the z7010 file.
Complete installation instructions can be found here:
https://www.parallella.org/quick-start/
First boot
- Hostname: "parallella", "parallella." (notice trailing period) or "parallella.local", depending on your operating system.
- IP address: The IP address is acquired from DHCP. 10.11.12.13 will be used as fallback.
- Username: parallella
- Password: parallella
On first boot give it a couple of minutes to generate new SSH server keys before you try to connect to the board.
We advise you to change the default password like so:
$ ssh parallella@parallella.
parallella@parallella's password: [Enter parallella]
parallella@parallella:~$ passwd
Changing password for parallella.
(current) UNIX password: [Enter parallella]
Enter new UNIX password: [Enter new password]
Retype new UNIX password: [Enter new password]
Password changed
parallella@parallella:~$ logout
Troubleshooting
Your board won't come up on the network?
- The most common error is that the wrong image is used (see install instructions above to determine which version is the correct one)
- Log in to your router and see if you can find the board in the DHCP client list.
- If you connect your Parallella directly to your computer's ethernet port, enable internet sharing, or make sure that your computer and Parallella is on the same network by setting your computer's IP to 10.11.12.x (e.g. IP 10.11.12.1 netmask 255.255.255.0).
- Connect a serial cable, anything weird in the boot log?
Changes since 2016.3.1
- GDB multicore debugging of Epiphany with e-server
- epython included
- OMPi 2.0.0 (OpenMP) included
- HDMI bitstreams
- PAL included as experimental feature
- e-hal has a PAL backend
- GCC 5.4
- GDB 7.12
- binutils 2.27
- Use ADI 2016_R1 Linux branch
- Fix race condition in kernel driver that can trigger program termination (SIGBUS) in threaded code.
- SREC support will be removed in the next release.
ESDK
Full ChangeLog:
https://github.com/adapteva/epiphany-libs/blob/epiphany-libs-esdk-2016.11/ChangeLog
https://github.com/adapteva/epiphany-libs/blob/epiphany-libs-esdk-2016.11/e-server/ChangeLog
e-server
- Multicore (threads) debugging
- Multiprocess support
Major work by Pedro Alves!
Tutorial:
https://github.com/adapteva/epiphany-sdk/wiki/Debugging-Epiphany
e-hal
- Minor bugs in loader fixed
- SREC support WILL BE removed in the next release. Use ELF files instead.
Initial e-server support
Setting the environment variable EHAL_GDBSERVER=yes
will cause e_load_group()
and friends to not start the program (it sets DEBUGSTATUS
).
You can then connect with epiphany-elf-gdb
to the e-server, set up breakpoints any breakpoints you'd like and then continue the threads from within gdb.
PAL backend added
Set the environment variable EHAL_TARGET=pal
to use the pal backend.
Linux kernel
- Based on ADI 2016_R1 (v4.6 + ADI drivers) with the Epiphany driver.
- Fixed bug that could cause SIGBUS in programs with more than one thread.
- Added noelink devicetree
FPGA bitstream
- Same as ESDK 2016.3.1 for headless and noelink.
- For HDMI we use parallella-fpga by Peter Saunderson and
ADI HDL 2016-R1 IP's for HDMI / audio.
Toolchain
- GCC minor release upgraded to 5.4 (was 5.2)
- binutils 2.27 (was 2.25)
- GDB 7.12 (was 7.10)
GDB
- Upgrade to 7.12 from 7.10.
- Epiphany-5 simulator branch merged.
- Fixed prologue parsing
- Support for passing arguments to simulated program
ChangeLogs:
https://github.com/adapteva/epiphany-binutils-gdb/blob/epiphany-gdb-esdk-2016.11/sim/epiphany/ChangeLog
https://github.com/adapteva/epiphany-binutils-gdb/blob/epiphany-gdb-esdk-2016.11/gdb/ChangeLog.epiphany
binutils
- Upgrade to 2.27 to 2.25
newlib / libgloss
- Based on 2.2.0 (same as ESDK 2016.3.1)
- Support for simulator passing program arguments
- Change return type of write/read to ssize_t from int. POSIX compatible.
Full ChangeLog:
https://github.com/adapteva/epiphany-newlib/blob/epiphany-newlib-esdk-2016.11/libgloss/ChangeLog.epiphany