Difference between revisions of "Fedora ARM Secondary Architecture/OpenRD-Client"

From CDOT Wiki
Jump to: navigation, search
(Created page with 'Category:Fedora ARM Secondary Architecture = Configuring F12 on OpenRD-Client = Here are some rough notes on setting this up: == SD card setup (4GB+, class 4+) == * 100M /...')
 
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:Fedora ARM Secondary Architecture]]
+
[[Category:Fedora ARM Secondary Architecture]][[Category:Winter 2010 SBR600]]
 +
 
 +
= OpenRD-Client =
 +
 
 +
The [http://open-rd.org/ OpenRD-Client] system in the builder pool is 'arm1'. It has a GigE connection to a switch connected to HongKong's private LAN.
 +
 
 +
Storage:
 +
* 512MB NAND flash (contains u-boot and original F8 image)
 +
* 4 GB class 4 SD card
 +
** Primary partition 1: vfat fs containing kernel
 +
** Primary partition 2: ext3 fs containing rootfs
 +
* 60 GB PATA drive in external enclosure, connected via USB
 +
** Primary partition 1: ext3 fs
 +
** Note: must be turned on before connecting in order to be detected by host
 +
 
 +
= Using the Serial Console =
 +
 
 +
The OpenRD-Client has a serial (RS232) console port, which is connected to an internal USB-to-Serial adapter (effectively a USB-to-serial cable built into the OpenRD-Client unit). Using a USB-A male to USB mini-A male cable to connect a host port on a PC with the mini-USB port on the OpenRD-Client will enable access to this port, as well as to a JTag port.
 +
 
 +
The console will appear as <code>/dev/ttyUSB''X''</code> on the PC, where ''X'' is the port number (typically 0).
 +
 
 +
To connect to this port:
 +
* Install UUCP if required: <code>yum install uucp</code>
 +
* Connect using the cu command at 115200 bps: <code>cu -l ttyUSB''0'' -s 115200</code>
 +
 
 +
{{Admon/tip|EMI|If you find that the USB console connection disconnects as soon as it is used, there is probably excessive electromagnetic interference (EMI). The USB-PATA drive that we have been using for testing produces too much EFI; turning it (and any other electrically "noisy" devices) off will solve the problem.}}
 +
 
 +
== Console when Booting ==
 +
 
 +
Before the OS is loaded, the serial console is managed by u-Boot. Pressing the space bar (or another key) during the boot messages or the boot countdown (which defaults to 3 seconds) will cause a u-Boot prompt to appear.
 +
 
 +
== Console when the OS is Running ==
 +
 
 +
The console will present the interface typically present on a text VT on a PC -- that is, a mingetty login prompt. You can login and perform commands at this prompt.
 +
 
 
= Configuring F12 on OpenRD-Client =
 
= Configuring F12 on OpenRD-Client =
  
Line 13: Line 47:
 
* Requires u-boot update for MMC/SD -- see http://groups.google.com/group/openrd/browse_thread/thread/7e204d6c9087305e for thread and binary.
 
* Requires u-boot update for MMC/SD -- see http://groups.google.com/group/openrd/browse_thread/thread/7e204d6c9087305e for thread and binary.
  
* Load the u-boot.bin onto the root of a vfat USB stick, then execute these commands with the stick inserted:
+
* Load the u-boot.bin onto the root of a vfat USB stick, then execute these commands at the uBoot prompt with the stick inserted:
  
 
  usb start
 
  usb start
Line 33: Line 67:
 
== Modules ==
 
== Modules ==
  
* Put modules from james.99k.org/openrd.html into /lib/modules/2.6.33-rc1
+
* Put modules from http://james.99k.org/openrd.html into /lib/modules/2.6.33-rc1
 
* Run depmod
 
* Run depmod
  
 
== Network ==
 
== Network ==
  
* Editing /etc/sysconfig/network-scripts/ifcfg-eth0 does *not* seem to work. Instead, add ifconfig/route commands to /etc/rc.d/rc.local and disable the network service with:
+
* Edit /etc/sysconfig/network-scripts/ifcfg-eth0 or use system-config-network-tui
 
 
chkconfig network off
 
  
 
== Network change on HongKong for NAT ==
 
== Network change on HongKong for NAT ==
Line 49: Line 81:
  
 
  yum -y update
 
  yum -y update
  yum -y install openssh-clients mock system-config-network-tui nfs-utils
+
  yum -y install openssh-clients mock system-config-network-tui nfs-utils yum-utils rpmdev-tools rpm-lint rpm-build
  
 
== NFS ==
 
== NFS ==
Line 58: Line 90:
  
 
* Change root from 'nfs' to 'auto' type
 
* Change root from 'nfs' to 'auto' type
 +
* Add any NFS shares that should be mounted
 +
 +
== Hard disk drive ==
 +
 +
* A 60 GB PATA drive is connected via USB. It appears as /dev/sda with usable partition /dev/sda1 when booted without any other storage attached.
 +
 +
= Symlinks for Experimenting with Mock Builds on Various Storage Devices =
 +
 +
The <code>/var/lib/mock</code> and <code>/var/cache/mock</code> directories are symlinked to <code>/redirect/mock/lib</code> and <code>/redirect/mock/cache</code> respectively. This means that changing the <code>/redirect</code> symlink provides a simple way of changing the storage location for all of the mock files, useful for testing mock performance with different storage devices. <code>/redirect</code> should be symlinked to a device mountpoint, such as <code>/share</code> for NFS or <code>/hd1</code> for the PATA-USB drive, and the mounted filesystem should contain <code>koji/{lib,cache}</code> directories which have a group owner of mock and the SGID bit set.

Latest revision as of 15:52, 17 April 2010


OpenRD-Client

The OpenRD-Client system in the builder pool is 'arm1'. It has a GigE connection to a switch connected to HongKong's private LAN.

Storage:

  • 512MB NAND flash (contains u-boot and original F8 image)
  • 4 GB class 4 SD card
    • Primary partition 1: vfat fs containing kernel
    • Primary partition 2: ext3 fs containing rootfs
  • 60 GB PATA drive in external enclosure, connected via USB
    • Primary partition 1: ext3 fs
    • Note: must be turned on before connecting in order to be detected by host

Using the Serial Console

The OpenRD-Client has a serial (RS232) console port, which is connected to an internal USB-to-Serial adapter (effectively a USB-to-serial cable built into the OpenRD-Client unit). Using a USB-A male to USB mini-A male cable to connect a host port on a PC with the mini-USB port on the OpenRD-Client will enable access to this port, as well as to a JTag port.

The console will appear as /dev/ttyUSBX on the PC, where X is the port number (typically 0).

To connect to this port:

  • Install UUCP if required: yum install uucp
  • Connect using the cu command at 115200 bps: cu -l ttyUSB0 -s 115200
Idea.png
EMI
If you find that the USB console connection disconnects as soon as it is used, there is probably excessive electromagnetic interference (EMI). The USB-PATA drive that we have been using for testing produces too much EFI; turning it (and any other electrically "noisy" devices) off will solve the problem.

Console when Booting

Before the OS is loaded, the serial console is managed by u-Boot. Pressing the space bar (or another key) during the boot messages or the boot countdown (which defaults to 3 seconds) will cause a u-Boot prompt to appear.

Console when the OS is Running

The console will present the interface typically present on a text VT on a PC -- that is, a mingetty login prompt. You can login and perform commands at this prompt.

Configuring F12 on OpenRD-Client

Here are some rough notes on setting this up:

SD card setup (4GB+, class 4+)

  • 100M /boot partition - vfat - place kernel from james.99k.org/openrd.html in there
  • rest of card - ext3 - untar f12 root filesystem from Fedora ARM page

uBoot setup

  • Load the u-boot.bin onto the root of a vfat USB stick, then execute these commands at the uBoot prompt with the stick inserted:
usb start
fatload usb 0:1 0x0800000 /u-boot.bin
nand erase 0x0 0xa0000
nand write 0x0800000 0x0 0xa0000
  • U-boot environment configuration for SD boot:
setenv arcNumber 2361
setenv mainlineLinux yes
setenv console 'console=ttyS0,115200'
setenv bootargs 'root=b302'
setenv bootcmd='mmcinit;mmcinit;fatload mmc 0 0x800000 /uimage-2.6.33rc1;set bootargs $(console) $(bootargs);bootm 0x800000;reset'
saveenv

reset

Modules

Network

  • Edit /etc/sysconfig/network-scripts/ifcfg-eth0 or use system-config-network-tui

Network change on HongKong for NAT

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Package updates on OpenRD-Client

yum -y update
yum -y install openssh-clients mock system-config-network-tui nfs-utils yum-utils rpmdev-tools rpm-lint rpm-build

NFS

chkconfig nfs on

/etc/fstab

  • Change root from 'nfs' to 'auto' type
  • Add any NFS shares that should be mounted

Hard disk drive

  • A 60 GB PATA drive is connected via USB. It appears as /dev/sda with usable partition /dev/sda1 when booted without any other storage attached.

Symlinks for Experimenting with Mock Builds on Various Storage Devices

The /var/lib/mock and /var/cache/mock directories are symlinked to /redirect/mock/lib and /redirect/mock/cache respectively. This means that changing the /redirect symlink provides a simple way of changing the storage location for all of the mock files, useful for testing mock performance with different storage devices. /redirect should be symlinked to a device mountpoint, such as /share for NFS or /hd1 for the PATA-USB drive, and the mounted filesystem should contain koji/{lib,cache} directories which have a group owner of mock and the SGID bit set.