Winter 2010 Posters/SheevaPlug Configuration
Contents
Project Name
SheevaPlug Configuration
Names
Alex Vlahopoulos
The SheevaPlug Hardware Specifications
Sheeva CPU Core
1.2 GHz operation
L1 Cache: 16K Instruction + 16K Data
L2 Cache: 256KB
Memory
DDR2 400MHz, 16-bit bus
512MB DDR2: 1Gb x8, 4 devices
Power efficient Samsung devices
NAND FLASH Controller, 8-bit bus
512MB NAND FLASH: 4Gb x8, direct boot
128-bit eFuse Memory
Power
Power input: 100-240VAC/50-60Hz 19W DC Consumption: 5V/3.0A High efficiency POL DC-DC converters
Development Interface
System Development Board JTAG and Console Interface via USB SDIO expansion JTAG OpenOCD support via USB
High Speed I/O & Peripherals
GE, USB 2.0 Host RTC w/ Battery
The Goal
The goal of this project was to successfully run Fedora 12 on the SheevaPlug. The operating system that came loaded on the device is Debian. The purpose behind installing Fedora 12 on this device is to test the operating system's performance on the ARM architecture. Further tests will be performed in the future to determine if the SheevaPlug is a good choice for the Fedora Arm Secondary Architecture Project to use a stack of these devices as builders.
Challenges
1. 512MB NAND is too small to install a regular installation of Fedora 12 (The plug has no disk).
2. The plug does not have a BIOS, instead it has a bootloader (U-boot) however this needed to be updated.
3. No video card.
4. Some network configuration had to be made when plugged into my network. This network configuration was required in order to download "wget".
Solutions
1. In order to run Fedora 12 on the SheevaPlug I had to install the operating system on an SD card (although it can also be installed on a USB drive).
2. The bootloader was easily upgradable by accessing the newer version via TFTP or USB from a web source (http://www.cyrius.com/debian/kirkwood/sheevaplug/uboot-upgrade.html)
3. Since the SheevaPlug doesn't have a display adapter, it comes integrated with a built in "serial console to mini USB" connection. The connection can be made to either a Windows or Linux machine. For the purpose of this project, I connected it to a Windows machine.
4. The default gateway had was configured and the name server was added to the resolv.conf file.
Results
1. Fedora 12 was successfully installed on an SD card and booted from the SheevaPlug. The boot up time was quick as well, with minimal extra configuration required once booted it up (i.e. networking).
2. Following the HOW-TO page for upgrading U-boot (located in the Links section) was pretty simple, however making sure the uboot.bin file copies over to the USB drive is important for the device to actually read it and copy it over. To configure U-boot, about 7 configuration commands were required, as soon as this was done and the device rebooted, the device selected the SD card and booted Fedora 12.
3. Once I connected the SheevaPlug with the "mini USB to regular USB" cable, I installed the Windows drivers that came with the CD and using PuTTy I used a serial connection to COM 1 using 115200 as the connection speed in order to connect to the device.
4. Configuring the name server enabled the connection to the Internet and I was able to use apt-get to install "wget". Wget was required to download the Distro and the Kernel for when I had to install Fedora 12 on the SD card.
Acknowledgements
Chris Tyler
Links
- SheevaPlug Open Source @ Seneca Wiki Page by Alex Vlahopoulos - http://zenit.senecac.on.ca/wiki/index.php/Fedora_ARM_Secondary_Architecture/SheevaPlug
- Fedora Project - http://fedoraproject.org/wiki/Architectures/ARM/PlatformSheevaplug
- Instructables (HOW-TO-PAGE) - http://www.instructables.com/id/How-to-install-Fedora-on-a-SheevaPlug-and-boot-off/
- U-Boot Upgrading (HOW-TO-PAGE)- http://www.cyrius.com/debian/kirkwood/sheevaplug/uboot-upgrade.html
Graphics
http://www.globalscaletechnologies.com/skins/skin_1/images/Sheeva_Plug_BlockDiagram.png
Logos
- Fedora
- Seneca