Winter 2010 Posters/SheevaPlug Configuration
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.
The Connection
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. Once connecting it 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. This is important to know because if you can't live without a GUI, I suggest avoiding this device. :)
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 (serial console to USB) instead.
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. Since there is no BIOS to select which device gets booted, the SheevaPlug has a bootloader called U-boot.
3. 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)
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.
3. 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.
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
Logos
- Fedora
- Seneca