Open main menu

CDOT Wiki β

Changes

FSOSS 2010 Plug Computing Workshop

1,923 bytes added, 20:43, 27 October 2010
no edit summary
[[File:Guru-sheeva-handheld.jpeg|thumb|right|300px|Two models of Plug Computers: A SheevaPlug (left) and GuruPlug (right)]]The [http://plugcomputer.org PlugComputer] concept was created by [http://www.marvell.com Marvell] to promote the use of ARM processors in non-mobile environments -- as a power-saving server option. Each PlugComputer contains a Marvell system-on-a-chip (SOC) and flash-based storage.
The model of PlugComputer we're using today is the [http://globalscaletechnologies.com/p-32-guruplug-server-plus.aspx GuruPlug Server Plus], made by [http://globalscaletechnologies.com GlobalScale Technologies, Inc]as a development system. This unit features :* 512MB of DDR2 RAM, * 512MB of built-in NAND flash, support for memory* a microSD/microSDHC cards, card reader* dual gigabit ethernet interfaces, * an eSATA, disk connector* two USB ports, * 802.11bg wireless, and * bluetooth.  The total power consumption of the GuruPlug is typically under 5W - about the power that of a small nightlight.
== Fedora ==
Fedora utilizes the ''Koji'' client-server based build system which permits any package maintainer to submit a build request to a build master, which they passes jobs off to individual builders. Seneca College is hosting the [http://arm.koji.fedoraproject.org Fedora ARM Koji] system, which is being used to compile Fedora 13 and subsequent releases.
 
== How Computing with ARM is Different from Computing on a PC ==
 
=== Bootloader and Console ===
 
A PC typically contains [http://en.wikipedia.org/wiki/BIOS BIOS] or [http://www.intel.com/technology/efi/ EFI] software in a ROM or flash memory. This code initializes the system and then loads and executes a bootloader, using features and conventions such as [http://en.wikipedia.org/wiki/Disk_partitioning disk partitioning] and video BIOS extensions.
 
The BIOS standard is very closely tied to the Intel/AMD architecture, and generally relies upon the presence of a video card through the boot process. ARM systems typically use a light-weight bootloader named [http://www.denx.de/wiki/U-Boot das u-Boot] (or just ''u-Boot'', for universal bootloader). Some systems, such as the BeagleBoard, use an earlier bootloader (x-loader) that load u-Boot; others run u-Boot directly.
 
u-Boot may be used interactively through a console interface, which may be provided through a video connection, or more commonly, through a serial port. Some systems, such as the SheevaPlug, provide a built-in USB-to-serial converter; on the GuruPlug, the console capability is provided by an external adapter.
 
=== JTAG ===
 
Since u-Boot is stored in flash memory, a failure during the programming of the flash memory may leave a device in an unbootable and non-updatable state ("bricked"). In this state, the only option for reprogramming the flash memory is to use a low-level chip-testing technology known as IEEE 1149.1 or [http://en.wikipedia.org/wiki/IEEE_1149 JTAG] (from the ''Joint Test Action Group'' which created the standard). Almost all modern semiconductor devices feature a JTAG port for testing during manufacture; many ARM devices provide access to this port for unbricking. On the GuruPlug, JTAG access is provided through the same external adapter used for console access.
= Setting up the GuruPlug =