BeagleBoardFedora

From eLinux.org
Revision as of 16:52, 13 July 2009 by RobertCNelson (Talk | contribs)

Jump to: navigation, search

Random hacking notes for getting Fedora 10 to kinda work with the BeagleBoard. ;)

http://fedoraproject.org/wiki/Architectures/ARM

and use one of my CC* images.. http://www.rcn-ee.com/deb/kernel/

Patches: http://rcn-ee.homeip.net:81/dl/fedora/

Fedora 11

Fedora 10

Patches

Note: patch isn't installed, so patch these before you boot for the first time.

yum

--- ../fedora-10-orig/usr/lib/python2.5/site-packages/rpmUtils/arch.py	2008-10-29 09:30:20.000000000 -0500
+++ ./usr/lib/python2.5/site-packages/rpmUtils/arch.py	2009-02-21 11:45:09.000000000 -0600
@@ -57,7 +57,8 @@
     "alpha":      "noarch",
 
     # arm
-    "armv61": "armv5tejl",
+    "armv7l": "armv6l",
+    "armv6l": "armv5tejl",
     "armv5tejl": "armv5tel",
     "armv5tel": "noarch",

rpm

Note; this can be improved by patching rpm directly and rebuilding, however just to get things running for the moment it is fine.

--- ../fedora-10-orig/usr/lib/rpm/rpmrc	2009-01-05 13:40:36.000000000 -0600
+++ ./usr/lib/rpm/rpmrc	2009-03-06 15:26:39.000000000 -0600
@@ -65,6 +65,7 @@
 optflags: armv5tel -O2 -g -march=armv5te
 optflags: armv5tejl -O2 -g -march=armv5te
 optflags: armv6l -O2 -g -march=armv6
+optflags: armv7l -O2 -g -march=armv7-a
 
 optflags: atarist -O2 -g -fomit-frame-pointer
 optflags: atariste -O2 -g -fomit-frame-pointer
@@ -138,6 +139,7 @@
 arch_canon:     armv5tel: armv5tel 	12
 arch_canon:     armv5tejl: armv5tejl 	12
 arch_canon:     armv6l: armv6l 	12
+arch_canon:     armv7l: armv7l 	12
 
 arch_canon:	m68kmint: m68kmint	13
 arch_canon:	atarist: m68kmint	13
@@ -245,6 +247,7 @@
 buildarchtranslate: armv5tel: armv5tel
 buildarchtranslate: armv5tejl: armv5tejl
 buildarchtranslate: armv6l: armv6l
+buildarchtranslate: armv7l: armv7l
 
 buildarchtranslate: atarist: m68kmint
 buildarchtranslate: atariste: m68kmint
@@ -326,6 +329,7 @@
 arch_compat: parisc: noarch
 
 arch_compat: armv4b: noarch
+arch_compat: armv7l: armv6l
 arch_compat: armv6l: armv5tejl
 arch_compat: armv5tejl: armv5tel
 arch_compat: armv5tel: armv4tl
@@ -429,6 +433,7 @@
 buildarch_compat: mipsel: noarch
 
 buildarch_compat: armv4b: noarch
+buildarch_compat: armv7l: armv6l
 buildarch_compat: armv6l: armv5tejl
 buildarch_compat: armv5tejl: armv5tel
 buildarch_compat: armv5tel: armv4tl

Recommended Tools to have Downloaded before First boot

dhclient = http://ftp.linux.org.uk/pub/linux/arm/fedora/pub/fedora/linux/releases/10/Everything/arm/os/Packages/dhclient-4.0.0-30.fc10.armv5tel.rpm

wget = http://ftp.linux.org.uk/pub/linux/arm/fedora/pub/fedora/linux/releases/10/Everything/arm/os/Packages/wget-1.11.4-1.fc10.armv5tel.rpm

nano = http://rcn-ee.homeip.net:81/dl/fedora/fc10.0/RPMS/armv7l/nano-2.0.6-4.fc10.armv7l.rpm

rpm-build; patches for Fedora 10 packages

perl-5.10.0-49.fc10.src.rpm

From Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=501970

http://rcn-ee.homeip.net:81/dl/fedora/f10.0/SRPMS/perl-5.10.0-49.rcn1.fc10.src.rpm

diff --git a/ext/threads/shared/t/stress.t b/ext/threads/shared/t/stress.t
index 93e2311..b137e5c 100644
--- a/ext/threads/shared/t/stress.t
+++ b/ext/threads/shared/t/stress.t
@@ -42,7 +42,7 @@ use threads::shared;
 {
     my $cnt = 50;
 
-    my $TIMEOUT = 30;
+    my $TIMEOUT = 150;
 
     my $mutex = 1;
     share($mutex);

u-boot

50Mb Fat32 Partition (should be the first partition, use gparted)

cd /media/disk/
wget http://www.rcn-ee.com/deb/kernel/CC-beagle-v2.6.29-58cf2f1-oer32
mv CC-beagle-v2.6.29-58cf2f1-oer32 uImage

mmc card

uboot parameters:
setenv bootcmd 'mmcinit; fatload mmc 0:1 0x80300000 uImage; bootm 0x80300000' 

DVI Port
setenv bootargs 'console=tty0 root=/dev/mmcblk0p2 rootwait rootfstype=ext3 ro omapfb.mode=dvi:1280x720MR-16@60'

Serial Port
setenv bootargs 'console=ttyS2,115200n8 root=/dev/mmcblk0p2 rootwait rootfstype=ext3 ro'

saveenv
boot

external usb 2.0 drive (/dev/sda1)

uboot parameters:
setenv bootcmd 'mmcinit; fatload mmc 0:1 0x80300000 uImage; bootm 0x80300000'
DVI Port
setenv bootargs 'console=tty0 root=/dev/sda1 rootwait rootfstype=ext3 ro omapfb.mode=dvi:1280x720MR-16@60'

Serial Port
setenv bootargs 'console=ttyS2,115200n8 root=/dev/sda1 rootwait rootfstype=ext3 ro'
saveenv
boot

Building packages

in most cases build your packages for armv5... (not everything works when built as armv7l)

rpmbuild -ba --target armv5tel dejagnu.spec

Experimental armv7l

Note; this is just my first pass at rebuilding all rpm's, so things are bound to break, and they will, and they have. So only dive in head first if you don't mind.

Add to fedora.repo

[fedora-armv7l]
name=Fedora armv7l
baseurl=http://rcn-ee.homeip.net:81/dl/fedora/fc10.0/RPMS/
enabled=1
gpgcheck=0

gpgkey: http://rcn-ee.homeip.net:81/dl/fedora/fc10.0/RPM-GPG-KEY-rcn-ee.com