Wednesday, September 29, 2010

Linaro on the beagle

I installed a brand new Ubuntu Maverick and followed the instructions here.

  • install extra packages:

    sudo apt-get install uboot-mkimage uuid-runtime realpath

    # if you want to produce qemu images too, also install ...
    sudo apt-get install qemu-kvm

  • download latest linaro-media-create to a location in your PATH, e.g. $HOME/bin/:


    bzr branch lp:linaro-image-tools
    cp linaro-image-tools/linaro-media-create $HOME/bin

For the rest I made some small scripts:
Create a folder for the snapshots:
mkdir -p ~/daily-snapshots 
Create a file called config.sh in there

 vim config.sh 
The contents of this config file:

export HOME_DIR="/home/rber"
export MMC_DEVICE="sde"
export SNAP="20100929"
export DOWNLOAD_PATH="http://snapshots.linaro.org/10.11-daily/linaro-headless/${SNAP}/0/images/tar"
export IMAGE="image/linaro-m-headless-tar-${SNAP}-0.tar.gz"
export LINARO_IMAGE_TOOLS_PATH="${HOME_DIR}/linaro-image-tools"
export MEDIA_CREATE="${LINARO_IMAGE_TOOLS_PATH}/linaro-media-create"
export BOARD="beagle"

Make the file executable

chmod +x config.sh

Create a file to get the snapshot

vim get_snap.sh

This file should contain the following:

source config.sh
mkdir $SNAP
cd $SNAP
wget http://people.canonical.com/~plars/linaro/dlimage
chmod +x dlimage
./dlimage ${DOWNLOAD_PATH}

make the file executable

chmod +x get_snap.sh

create a file to create the image on the MMC/SD disc

vim mkimage.sh

the contents of this script are as follows:

OLD_PATH=`pwd`
source config.sh
#update the linaro image tools
cd $LINARO_IMAGE_TOOLS_PATH
bzr update
cd ${OLD_PATH}
#install image on MMC/SD
cd ${SNAP}
sudo ${MEDIA_CREATE} --rootfs ext3 --mmc /dev/${MMC_DEVICE} --dev ${BOARD} --binary ${IMAGE}
cd ${OLD_PATH}

make it executable

chmod +x mkimage.sh


You need to adjust the config.sh file accordingly and be able to download the latest snapshot and create an image on your MMC/SD disc.

After you put in the MMC/SD disc in the beagle run it like this:

mmcinit

setenv "loadaddr 0x82000000"
fatload mmc 0 ${loadaddr} uImage

setenv console "ttyS2,115200n8"
setenv vram "12M"
setenv dvimode "1024x768MR-16@60"
setenv defaultdisplay "dvi"

setenv bootargs "console=${console} vram=${vram} omapfb.mode=dvi:${dvimode} omapfb.debug=y omapdss.def_disp=${defaultdisplay} root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait"

bootm ${loadaddr}

you should see something like this:

** Unable to use mmc 0:1 for fatload **
Booting from mmc ...
## Booting kernel from Legacy Image at 82000000 ...
Image Name: Linux
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3704164 Bytes = 3.5 MB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK

Starting kernel ...

Error, the USB hardware is not on B modeUncompressing Linux... done, booting the kernel.
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.35-1006-linaro-omap (buildd@gourd) (gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu4) ) #12-Ubuntu Tue Sep 21 20:09:17 UTC 2010 (Ubuntu 2.6.35-1006.12-linaro-omap 2.6.35.4)
[ 0.000000] CPU: ARMv7 Processor [411fc083] revision 3 (ARMv7), cr=10c53c7f
[ 0.000000] CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
[ 0.000000] Machine: OMAP3 Beagle Board
[ 0.000000] Reserving 12582912 bytes SDRAM for VRAM
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] OMAP3430/3530 ES3.0 (l2cache iva sgx neon isp )
[ 0.000000] SRAM: Mapped pa 0x40200000 to va 0xfe400000 size: 0x100000
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 65024
[ 0.000000] Kernel command line: console=ttyS2,115200n8 vram=12M omapfb.mode=dvi:1024x768MR-16@60 omapfb.debug=y omapdss.def_disp=dvi root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait
[ 0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] allocated 1310720 bytes of page_cgroup
[ 0.000000] please try 'cgroup_disable=memory' option if you don't want memory cgroups
[ 0.000000] Memory: 128MB 128MB = 256MB total
[ 0.000000] Memory: 237980k/237980k available, 24164k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
[ 0.000000] vmalloc : 0xd0800000 - 0xf8000000 ( 632 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xd0000000 ( 256 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .init : 0xc0008000 - 0xc0042000 ( 232 kB)
[ 0.000000] .text : 0xc0042000 - 0xc06af000 (6580 kB)
[ 0.000000] .data : 0xc071a000 - 0xc07713c0 ( 349 kB)
[ 0.000000] SLUB: Genslabs=9, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] RCU-based detection of stalled CPUs is disabled.
[ 0.000000] Verbose stalled-CPUs detection is disabled.
[ 0.000000] NR_IRQS:402
[ 0.000000] Clocking rate (Crystal/Core/MPU): 26.0/332/500 MHz
[ 0.000000] Reprogramming SDRC clock to 332000000 Hz
[ 0.000000] GPMC revision 5.0
[ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 4.0) with 96 interrupts
[ 0.000000] Total of 96 interrupts on 1 active controller
[ 0.000000] OMAP GPIO hardware version 2.5
[ 0.000000] OMAP clockevent source: GPTIMER12 at 32768 Hz
[ 0.000000] Console: colour dummy device 80x30
[ 0.000000] Calibrating delay loop... 478.91 BogoMIPS (lpj=1867776)
[ 0.000000] pid_max: default: 32768 minimum: 301
[ 0.000000] Security Framework initialized
[ 0.000000] AppArmor: AppArmor initialized
[ 0.000000] Yama: becoming mindful.
[ 0.000000] Mount-cache hash table entries: 512
[ 0.000000] Initializing cgroup subsys ns
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Initializing cgroup subsys memory
[ 0.000000] Initializing cgroup subsys devices
[ 0.000000] Initializing cgroup subsys freezer
[ 0.000000] CPU: Testing write buffer coherency: ok
[ 0.000000] devtmpfs: initialized
[ 0.000000] regulator: core version 0.5
[ 0.000000] NET: Registered protocol family 16
[ 0.000000] OMAP3 Beagle Rev: C1/C2/C3
[ 0.000000] Found NAND on CS0
[ 0.000000] Registering NAND on CS0
[ 0.000000] hw perfevents: enabled with ARMv7 Cortex-A8 PMU driver, 5 counters available
[ 0.000122] OMAP DMA hardware revision 4.0
[ 0.006561] bio: create slab at 0
[ 0.008697] SCSI subsystem initialized
[ 0.009399] usbcore: registered new interface driver usbfs
[ 0.009490] usbcore: registered new interface driver hub
[ 0.009704] usbcore: registered new device driver usb
[ 0.025115] i2c_omap i2c_omap.1: bus 1 rev3.12 at 2600 kHz
[ 0.027893] twl4030: PIH (irq 7) chaining IRQs 368..375
[ 0.027923] twl4030: power (irq 373) chaining IRQs 376..383
[ 0.028411] twl4030: gpio (irq 368) chaining IRQs 384..401
[ 0.031372] regulator: VUSB1V5: 1500 mV normal standby
[ 0.031768] regulator: VUSB1V8: 1800 mV normal standby
[ 0.032165] regulator: VUSB3V1: 3100 mV normal standby
[ 0.033172] regulator: VMMC1: 1850 <--> 3150 mV at 3000 mV normal standby
[ 0.033569] regulator: VDAC: 1800 mV normal standby
[ 0.033966] regulator: VPLL2: 1800 mV normal standby
[ 0.034484] regulator: VSIM: 1800 <--> 3000 mV at 1800 mV normal standby
[ 0.047546] i2c_omap i2c_omap.3: bus 3 rev3.12 at 100 kHz
[ 0.048645] Advanced Linux Sound Architecture Driver Version 1.0.23.
[ 0.049255] NetLabel: Initializing
[ 0.049255] NetLabel: domain hash size = 128
[ 0.049285] NetLabel: protocols = UNLABELED CIPSOv4
[ 0.049377] NetLabel: unlabeled traffic allowed by default
[ 0.049407] Switching to clocksource 32k_counter
[ 0.060089] AppArmor: AppArmor Filesystem Enabled
[ 0.073760] NET: Registered protocol family 2
[ 0.074066] IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.075012] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.075256] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.075408] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.075408] TCP reno registered
[ 0.075439] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.075469] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.075714] NET: Registered protocol family 1
[ 0.075775] NetWinder Floating Point Emulator V0.97 (double precision)
[ 0.076843] PMU: registered new PMU device of type 0
[ 0.077819] audit: initializing netlink socket (disabled)
[ 0.077880] type=2000 audit(0.273:1): initialized
[ 0.271514] VFS: Disk quotas dquot_6.5.2
[ 0.271911] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.276245] fuse init (API version 7.14)
[ 0.277069] msgmni has been set to 464
[ 0.278381] alg: No test for stdrng (krng)
[ 0.278869] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[ 0.278900] io scheduler noop registered
[ 0.278900] io scheduler deadline registered
[ 0.279022] io scheduler cfq registered (default)
[ 0.338836] OMAP DSS rev 2.0
[ 0.338928] OMAP DISPC rev 3.0
[ 0.338958] OMAP VENC rev 2
[ 0.667724] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 0.688415] serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
[ 0.708190] serial8250.1: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
[ 0.727966] serial8250.2: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16654
[ 1.347869] console [ttyS2] enabled
[ 1.360443] brd: module loaded
[ 1.368072] loop: module loaded
[ 1.373321] omap2-nand driver initializing
[ 1.377807] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xba (Micron omap2-nand.0)
[ 1.385559] NAND bus width 8 instead 16 bit
[ 1.389739] No NAND device found.
[ 1.393249] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xba (Micron NAND 256MiB 1,8V 16-bit)
[ 1.401977] Creating 5 MTD partitions on "omap2-nand.0":
[ 1.407318] 0x000000000000-0x000000080000 : "X-Loader"
[ 1.414276] 0x000000080000-0x000000260000 : "U-Boot"
[ 1.421417] 0x000000260000-0x000000280000 : "U-Boot Env"
[ 1.428192] 0x000000280000-0x000000680000 : "Kernel"
[ 1.436157] 0x000000680000-0x000010000000 : "File System"
[ 1.544891] PPP generic driver version 2.4.2
[ 1.549652] SLIP: version 0.8.4-NET3.019-NEWTTY (dynamic channels, max=256) (6 bit encapsulation enabled).
[ 1.559417] CSLIP: code copyright 1989 Regents of the University of California.
[ 1.566772] SLIP linefill/keepalive option.
[ 1.571197] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 1.578063] ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
[ 1.583862] ehci-omap ehci-omap.0: new USB bus registered, assigned bus number 1
[ 1.591522] ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
[ 1.612121] ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00
[ 1.618896] hub 1-0:1.0: USB hub found
[ 1.622741] hub 1-0:1.0: 3 ports detected
[ 1.651763] mice: PS/2 mouse device common for all mice
[ 1.657531] twl_rtc twl_rtc: rtc core: registered twl_rtc as rtc0
[ 1.664489] twl_rtc twl_rtc: Enabling TWL-RTC.
[ 1.670257] device-mapper: uevent: version 1.0.3
[ 1.675811] device-mapper: ioctl: 4.17.0-ioctl (2010-03-05) initialised: dm-devel@redhat.com
[ 1.684722] device-mapper: multipath: version 1.1.1 loaded
[ 1.690307] device-mapper: multipath round-robin: version 1.0.0 loaded
[ 1.697814] cpuidle: using governor ladder
[ 1.701995] cpuidle: using governor menu
[ 1.706054] sdhci: Secure Digital Host Controller Interface driver
[ 1.712280] sdhci: Copyright(c) Pierre Ossman
[ 1.886993] No device for DAI omap-mcbsp-dai-0
[ 1.891448] No device for DAI omap-mcbsp-dai-1
[ 1.895965] No device for DAI omap-mcbsp-dai-2
[ 1.900451] No device for DAI omap-mcbsp-dai-3
[ 1.904937] No device for DAI omap-mcbsp-dai-4
[ 1.909454] Not OMAP3 EVM!
[ 1.912170] OMAP3 Beagle/Devkit8000 SoC init
[ 1.918273] asoc: twl4030 <-> omap-mcbsp-dai-0 mapping ok
[ 1.927581] ALSA device list:
[ 1.930572] #0: omap3beagle (twl4030)
[ 1.935852] TCP cubic registered
[ 1.940551] NET: Registered protocol family 10
[ 1.946563] lo: Disabled Privacy Extensions
[ 1.951812] NET: Registered protocol family 17
[ 1.956787] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 1
[ 1.966217] Power Management for TI OMAP3.
[ 1.973510] registered taskstats version 1
[ 1.977844] fbcvt: 1024x768@60: CVT Name - .786M3-R
[ 2.004394] Console: switching to colour frame buffer device 128x48
[ 2.024963] regulator_init_complete: incomplete constraints, leaving VDAC on
[ 2.032348] regulator_init_complete: incomplete constraints, leaving VUSB3V1 on
[ 2.039978] regulator_init_complete: incomplete constraints, leaving VUSB1V8 on
[ 2.047637] regulator_init_complete: incomplete constraints, leaving VUSB1V5 on
[ 2.056060] twl_rtc twl_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)
[ 2.072784] md: Waiting for all devices to be available before autodetect
[ 2.079650] md: If you don't use raid, use raid=noautodetect
[ 2.086517] md: Autodetecting RAID arrays.
[ 2.090698] md: Scanned 0 and added 0 devices.
[ 2.095184] md: autorun ...
[ 2.098022] md: ... autorun DONE.
[ 2.101623] Waiting for root device /dev/mmcblk0p2...
[ 2.198181] mmc0: new high speed SDHC card at address b368
[ 2.204284] mmcblk0: mmc0:b368 3.74 GiB
[ 2.209197] mmcblk0: p1 p2
[ 2.326171] EXT3-fs: barriers not enabled
[ 7.054016] kjournald starting. Commit interval 5 seconds
[ 7.246948] EXT3-fs (mmcblk0p2): using internal journal
[ 7.252227] EXT3-fs (mmcblk0p2): recovery complete
[ 7.259368] EXT3-fs (mmcblk0p2): mounted filesystem with ordered data mode
[ 7.266448] VFS: Mounted root (ext3 filesystem) on device 179:2.
[ 7.274291] devtmpfs: mounted
[ 7.277435] Freeing init memory: 232K
[ 7.853027] end_request: I/O error, dev mtdblock1, sector 0
[ 7.858642] Buffer I/O error on device mtdblock1, logical block 0
[ 7.866882] end_request: I/O error, dev mtdblock1, sector 0
[ 7.872497] Buffer I/O error on device mtdblock1, logical block 0
[ 7.879882] end_request: I/O error, dev mtdblock1, sector 8
[ 7.885498] Buffer I/O error on device mtdblock1, logical block 1
[ 7.893981] end_request: I/O error, dev mtdblock1, sector 8
[ 7.899597] Buffer I/O error on device mtdblock1, logical block 1
[ 7.914276] end_request: I/O error, dev mtdblock1, sector 8
[ 7.919891] Buffer I/O error on device mtdblock1, logical block 1
[ 7.928070] end_request: I/O error, dev mtdblock1, sector 8
[ 7.933685] Buffer I/O error on device mtdblock1, logical block 1
[ 7.941009] end_request: I/O error, dev mtdblock1, sector 0
[ 7.946624] Buffer I/O error on device mtdblock1, logical block 0
[ 7.954895] end_request: I/O error, dev mtdblock1, sector 0
[ 7.960510] Buffer I/O error on device mtdblock1, logical block 0
[ 7.967498] end_request: I/O error, dev mtdblock1, sector 0
[ 7.973114] Buffer I/O error on device mtdblock1, logical block 0
[ 7.981170] end_request: I/O error, dev mtdblock1, sector 0
[ 7.986785] Buffer I/O error on device mtdblock1, logical block 0
[ 7.993743] end_request: I/O error, dev mtdblock1, sector 0
[ 8.000488] end_request: I/O error, dev mtdblock1, sector 0
[ 8.007263] end_request: I/O error, dev mtdblock1, sector 0
[ 8.013977] end_request: I/O error, dev mtdblock1, sector 2048
[ 8.020935] end_request: I/O error, dev mtdblock1, sector 0
[ 8.027648] end_request: I/O error, dev mtdblock1, sector 0
[ 8.034515] end_request: I/O error, dev mtdblock1, sector 0
[ 8.040985] end_request: I/O error, dev mtdblock1, sector 0
[ 8.047424] end_request: I/O error, dev mtdblock1, sector 0
[ 8.054321] end_request: I/O error, dev mtdblock1, sector 0
[ 8.061431] end_request: I/O error, dev mtdblock1, sector 0
[ 8.068603] end_request: I/O error, dev mtdblock1, sector 0
[ 8.075561] end_request: I/O error, dev mtdblock1, sector 0
[ 8.082000] end_request: I/O error, dev mtdblock1, sector 0
[ 8.089050] end_request: I/O error, dev mtdblock1, sector 0
[ 8.095672] end_request: I/O error, dev mtdblock1, sector 0
[ 8.102264] end_request: I/O error, dev mtdblock1, sector 8
[ 8.109069] end_request: I/O error, dev mtdblock1, sector 8
[ 8.115753] end_request: I/O error, dev mtdblock1, sector 8
[ 8.124877] end_request: I/O error, dev mtdblock1, sector 8
[ 8.131530] end_request: I/O error, dev mtdblock1, sector 24
[ 8.138397] end_request: I/O error, dev mtdblock1, sector 24
[ 8.145141] end_request: I/O error, dev mtdblock1, sector 24
[ 8.151977] end_request: I/O error, dev mtdblock1, sector 24
[ 8.158538] end_request: I/O error, dev mtdblock1, sector 56
[ 8.165069] end_request: I/O error, dev mtdblock1, sector 56
[ 8.171875] end_request: I/O error, dev mtdblock1, sector 56
[ 8.179382] end_request: I/O error, dev mtdblock1, sector 56
[ 8.188323] end_request: I/O error, dev mtdblock1, sector 120
[ 8.195312] end_request: I/O error, dev mtdblock1, sector 120
[ 8.202392] end_request: I/O error, dev mtdblock1, sector 120
[ 8.209167] end_request: I/O error, dev mtdblock1, sector 120
[ 8.216064] end_request: I/O error, dev mtdblock1, sector 0
[ 8.222778] end_request: I/O error, dev mtdblock1, sector 0
[ 8.229339] end_request: I/O error, dev mtdblock1, sector 8
[ 8.236206] end_request: I/O error, dev mtdblock1, sector 8
[ 8.242950] end_request: I/O error, dev mtdblock1, sector 24
[ 8.249786] end_request: I/O error, dev mtdblock1, sector 24
[ 8.256469] end_request: I/O error, dev mtdblock1, sector 56
[ 8.263397] end_request: I/O error, dev mtdblock1, sector 56
[ 8.270446] end_request: I/O error, dev mtdblock1, sector 120
[ 8.277557] end_request: I/O error, dev mtdblock1, sector 120
[ 8.284210] end_request: I/O error, dev mtdblock1, sector 0
[ 8.291046] end_request: I/O error, dev mtdblock1, sector 0
[ 8.298431] end_request: I/O error, dev mtdblock1, sector 0
[ 8.305786] end_request: I/O error, dev mtdblock1, sector 0
[ 8.313262] end_request: I/O error, dev mtdblock1, sector 0
[ 8.320587] end_request: I/O error, dev mtdblock1, sector 0
[ 8.327484] end_request: I/O error, dev mtdblock1, sector 64
[ 8.334045] end_request: I/O error, dev mtdblock1, sector 64
[ 8.342651] end_request: I/O error, dev mtdblock1, sector 64
[ 8.349853] end_request: I/O error, dev mtdblock1, sector 64
[ 8.356628] end_request: I/O error, dev mtdblock1, sector 64
[ 8.365142] end_request: I/O error, dev mtdblock1, sector 64
[ 8.372314] end_request: I/O error, dev mtdblock1, sector 64
[ 8.378906] end_request: I/O error, dev mtdblock1, sector 64
[ 8.385772] end_request: I/O error, dev mtdblock1, sector 64
[ 8.393463] end_request: I/O error, dev mtdblock1, sector 0
[ 8.400695] end_request: I/O error, dev mtdblock1, sector 0
[ 8.407440] end_request: I/O error, dev mtdblock1, sector 0
[ 8.414947] end_request: I/O error, dev mtdblock1, sector 0
[ 8.423278] end_request: I/O error, dev mtdblock1, sector 0
[ 8.431457] end_request: I/O error, dev mtdblock1, sector 16
[ 8.438293] end_request: I/O error, dev mtdblock1, sector 0
[ 8.445587] end_request: I/O error, dev mtdblock1, sector 0
[ 8.452453] end_request: I/O error, dev mtdblock1, sector 0
[ 8.458923] end_request: I/O error, dev mtdblock1, sector 0
[ 8.466278] end_request: I/O error, dev mtdblock1, sector 0
[ 8.473571] end_request: I/O error, dev mtdblock1, sector 0
[ 8.480621] end_request: I/O error, dev mtdblock1, sector 0
[ 8.488220] end_request: I/O error, dev mtdblock1, sector 0
[ 8.494964] end_request: I/O error, dev mtdblock1, sector 0
[ 8.503723] end_request: I/O error, dev mtdblock1, sector 0
[ 8.510437] end_request: I/O error, dev mtdblock1, sector 0
[ 8.517211] end_request: I/O error, dev mtdblock1, sector 0
[ 8.526092] end_request: I/O error, dev mtdblock1, sector 0
[ 8.536529] end_request: I/O error, dev mtdblock1, sector 0
[ 8.543457] end_request: I/O error, dev mtdblock1, sector 0
[ 8.552825] end_request: I/O error, dev mtdblock1, sector 0
[ 8.559539] end_request: I/O error, dev mtdblock1, sector 0
[ 8.566162] end_request: I/O error, dev mtdblock1, sector 0
[ 8.572906] end_request: I/O error, dev mtdblock1, sector 8
[ 8.579437] end_request: I/O error, dev mtdblock1, sector 128
[ 8.586425] end_request: I/O error, dev mtdblock1, sector 0
[ 8.595001] end_request: I/O error, dev mtdblock1, sector 0
[ 8.602539] end_request: I/O error, dev mtdblock2, sector 0

Last login: Sat Jan 1 00:00:07 UTC 2000 on ttyS2
Linux localhost.localdomain 2.6.35-1006-linaro-omap #12-Ubuntu Tue Sep 21 20:09:17 UTC 2010 armv7l GNU/Linux
Linaro M (development branch)

Welcome to Linaro!
* Documentation: https://wiki.linaro.org/

Wednesday, September 16, 2009

Nth Code Player

This time we are going to try the nth Code Player.
It can be downloaded from here. (Please start the download)
I bought a new MMC Card (this time a 2Gig SanDisk), which will give me a chance to play with the expert mode of fdisk.
Remember from my previous post that we need a special geometry to work on the Beagle? It's 255 Heads 63 Sectors 512 bytes per sector.
This time my Sandisk has 64 Heads/63 Sectors and a size of 1977614336 bytes.
... no good ...
I followed this article and did the maths:

cylinders = size in bytes / 255 / 63 / 512 = 240,32 which needs to be rounded DOWN to 240.

So I created a new geometry as follows:

Disk /dev/sdc: 1977 MB, 1977614336 bytes
255 heads, 63 sectors/track, 240 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
and two partitions:
Device Boot      Start         End      Blocks   Id  System
/dev/sdc1 * 1 51 409626 c W95 FAT32 (LBA)
/dev/sdc2 52 240 1518142+ 83 Linux
Now let's copy over the nth code player stuff and give it a try.

In the meantime your download should have finished, so let's unpack the file.
tar xzvf nthcode.tgz
tar xzvf nthcode/kernel.tgz
This contains a Readme, which we are going to follow approximately;)

You need to mount the two partitions followed by copying stuff over.
sudo cp kernel/MLO /media/MMC-msdos/
sudo cp kernel/u-boot.bin /media/MMC-msdos/
sudo cp kernel/uImage-bb /media/MMC-msdos/
cd nthcode
sudo tar xzvf rootfs.tgz
cd rootfs
sudo cp -ar * /media/MMC_ext3
unmount the card

Let's run it
mmc init
fatload mmc 0 0x80300000 uImage-bb
setenv bootargs 'console=ttyS2,115200n8 colsole=tty0
root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait
omapfb.vram=1:4M;2:4M omapfb.mode=dvi:hd720-24@60'
bootm 0x80300000
And for the first time in history we see full screen graphics and can surf the web in full screen!
We'll try another time to play some multimedia content.

Wednesday, July 29, 2009

prepare new MMC and try Angstrom image

Let's prepare a new MMC from a Linux host.
I closely followed this. The goal is not to destroy anything on the flash of the BB, but to boot u-boot from MMC and have the Linux kernel as well as the root file system (rootfs) on the MMC. I have a 4G SanDisk, which already has the right geometry, so I don't need to play around with fdisk expert settings.

After plugging the MMC let's see where Linux sees it.
fdisk -l

...

Disk /dev/sdc: 4075 MB, 4075290624 bytes
255 heads, 63 sectors/track, 495 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x06a9d646

Device Boot Start End Blocks Id System
/dev/sdc1 * 1 496 3979744+ c W95 FAT32 (LBA)
Partition 1 has different physical/logical endings:
phys=(494, 254, 63) logical=(495, 117, 6)

...

So in my case on /dev/sdc1.

In order to create a bootable SD/MMC card under Linux compatible with OMAP3 boot ROM, you have to set a special geometry in the partition table, which is done through the fdisk "Expert mode", which I will skip, since my MMC already has the right geometry.

First, lets clear the partition table:
sudo fdisk /dev/sdc

Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)

Command (m for help): o
Building a new DOS disklabel with disk identifier 0xf9180393.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Let's see the partitions
Command (m for help): p

Disk /dev/sdc: 4075 MB, 4075290624 bytes
255 heads, 63 sectors/track, 495 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xf9180393

Device Boot Start End Blocks Id System
I'm happy to have the right geometry (255 heads, 63 sectors/track), so I don't need to enter expert mode. In case you need to do so check here.

Create a DOS partition
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-495, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-495, default 495): +50

Command (m for help): t
Selected partition 1
Hex code (type L to list codes): l

0 Empty 1e Hidden W95 FAT1 80 Old Minix bf Solaris
1 FAT12 24 NEC DOS 81 Minix / old Lin c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 82 Linux swap / So c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 83 Linux c6 DRDOS/sec (FAT-
4 FAT16

Create a Linux (ext3) partition

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (52-495, default 52):
Using default value 52
Last cylinder, +cylinders or +size{K,M,G} (52-495, default 495):
Using default value 495

Print out our new partitions
Command (m for help): p

Disk /dev/sdc: 4075 MB, 4075290624 bytes
255 heads, 63 sectors/track, 495 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xf9180393

Device Boot Start End Blocks Id System
/dev/sdc1 * 1 51 409626 c W95 FAT32 (LBA)
/dev/sdc2 52 495 3566430 83 Linux
Write it to the MMC
Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.

WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
Format the dos parition
sudo mkfs.msdos -F 32 /dev/sdc1 -n MMC_msdos
mkfs.msdos 3.0.1 (23 Nov 2008)
Format the ext3 partition
sudo mkfs.ext3 /dev/sdc2 -L MMC_ext3
mke2fs 1.41.4 (27-Jan-2009)
Filesystem label=MMC_ext3
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
223104 inodes, 891607 blocks
44580 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=914358272
28 block groups
32768 blocks per group, 32768 fragments per group
7968 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736

Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
mount the new partitons:
/dev/sdc1 on /media/MMC_msdos type vfat (rw,nosuid,nodev,uhelper=hal,shortname=mixed,
uid=1001,utf8,umask=077,flush)

/dev/sdc2 on /media/MMC_ext3 type ext3 (rw,nosuid,nodev,uhelper=hal)

Download Angstrom demo images from here.

Copy them to the MMC:
sudo cp MLO /media/MMC_msdos/
sudo cp u-boot.bin /media/MMC_msdos/
sudo cp uImage /media/MMC_msdos/
(Note that the link to the kernel on the website does not point to the latest image)
sudo cp Angstrom-Beagleboard-demo-image-glibc-ipk-2009.X-stable-20090612--beagleboard.rootfs.tar.bz2 /media/MMC_ext3/
untar the root file system on the card


cd /media/MMC_ext3/

sudo tar -jxvf Angstrom-Beagleboard-demo-image-glibc-ipk-2009.X-stable-20090612--beagleboard.rootfs.tar.bz2
remove the tarred root-fs from the card
sudo rm -f Angstrom-Beagleboard-demo-image-glibc-ipk-2009.X-stable-20090612--beagleboard.rootfs.tar.bz2 
Let's run it.
mmc init

fatload mmc 0 80000000 uImage

setenv bootargs 'console=ttyS2,115200n8 console=tty0 root=/dev/mmcblk0p2 rw
rootfstype=ext3 rootwait omap-dss.def_display=dvi omapfb.vram=2M,4M
omapfb.video_mode=1280x720MR-24@60 omapfb.debug=y'
bootm 80000000


u-boot version: U-Boot 2009.06-rc2 (Jun 05 2009 - 10:19:13)

login from the serial console as root


uname -r
2.6.28-omap1

cat /etc/angstrom-version
Built from branch: stable/2009
Revision: 1679705e3c22180b39126fdfa8a39c02e550b450

What we've got now?
  • The beagle from u-boot is missing
  • u-boot syntax changed from mmcinit to mmc init
  • It's possible to log in to Angstrom now and after a successful log in you end up in a graphical environment
  • The screen resolution still shows only the top half of the monitor (and yes, I tried more screen resolutions than the one I showed here, but they did not show anything)
Let's be adventurous and try the latest demo kernel.

Let's run it.
mmc init

fatload mmc 0 80000000 uImage-2.6.29-r37

setenv bootargs 'console=ttyS2,115200n8 console=tty0 root=/dev/mmcblk0p2 rw
rootfstype=ext3 rootwait omap-dss.def_display=dvi omapfb.vram=2M,4M
omapfb.video_mode=1280x720MR-24@60 omapfb.debug=y'

bootm 80000000

uname -r

2.6.29-omap1

cat /etc/angstrom-version

What we've got now?
  • a newer kernel
  • the same problems as above
  • no video output from the board
I guess like many others I will need to hunt for the right parameters and it's not obvious to me what I shall put.

Sunday, July 26, 2009

Surfing the web

We did have a little problem starting up apps from our X due to the lack of a menu.

Use the magic command line:
mmcinit

fatload mmc 0 80000000 uimage

setenv bootargs 'console=ttyS2,115200n8 console=tty0 root=/dev/mmcblk0p2
rw rootfstype=ext3 rootwait omap-dss.def_display=dvi omapfb.vram=2M,4M
omapfb.video_mode=1280x720MR-24@60 omapfb.debug=y'

bootm 80000000

You should see now some login screen on the Monitor.

Log in on the serial console as ebvbeagle (did you create the account as described before?)

From the serial console:

xterm -display localhost:0.0&


Now you should see an xterm on your monitor.

Let's give ourselves also some network connectivity.
For this to work you need keyboard, mouse and the USB to ethernet adapter on yous USB hub.
You also need some dhcp server running somewhere on the same network with your USB to ethernet adaptor.

on your serial console

su - root
ifdown eth0
ifup eth0


Now you should see that you got some IP.

From your USB keyboard/mouse type in the xterm on your monitor:

firefox&


It's going to take some time until the BB is loading it.

Type an address of your choice in firefox (e.g. http://www.reliableembeddedsystems.com) and voila!

Thursday, July 23, 2009

How to see more than the beagle?

As already mentioned before if you connect the HDMI to DVI, or some HDMI to HDMI cable (which is not included in the set) you see a Beagle on the TV/Monitor from u-boot (I guess), but as soon as Linux starts up and actually tries to bring up some X all the digital video output is gone.

What's the problem?

It turns out, that the board support package on the flash disc of my EBV beagle is not fully compatible with the kernel command line mentioned on the instructions page.

So I tried various settings with various TV's

stayed black (except for the beagle at the beginning)showed something (shifted to the left and up after the beagle)

The magic command lines which worked best (showed something shifted to the left) I composed from things off the web:
mmcinit

fatload mmc 0 80000000 uimage

setenv bootargs 'console=ttyS2,115200n8 console=tty0 root=/dev/mmcblk0p2
rw rootfstype=ext3 rootwait omap-dss.def_display=dvi omapfb.vram=2M,4M
omapfb.video_mode=1280x720MR-24@60 omapfb.debug=y'

bootm 80000000
Maybe the cable HDMI to DVI which comes with the kit should give us a hint, that the BB is not very compatible with TV's but might work better with monitors?

Let's try this.
showed the beagle and angstrom and ends up at log in screen (well only half the size of the screen, but at least something)

Again I followed the instructions:

Connect the USB hub using the mini USB A to B cable.
B side should be connected to the USB hub
Power up the USB hub
Connect the USB 2 Ethernet dongle the the USB hub
Connect keyboard and mouse to the USB hub

For entering Linux Angstrom

User name: ebvbeagle
Password: ebvbeagle


I rebooted and keyboard/mouse were found (we'll fix the ethernet later)
There was no such user, so I created one.

... logged in and stayed happily at the login screen...

How can I run xterm without some menu where I can choose it from?

Wednesday, July 22, 2009

Fire it up for the first time

As already mentioned the one A4 page of instructions means either that it's very easy to get it going or that I will need a couple of days of searching.

I plugged the MMC card in, connected the serial to some PC powered it up and pressed while I saw the u-boot countdown.


The serial settings are: 115200,8,n,1 no flow control as written on the A4 page.


Texas Instruments X-Loader 1.4.2 (Feb 19 2009 - 12:01:24)
Reading boot sector
Loading u-boot.bin from mmc


U-Boot 2009.01-dirty (Feb 19 2009 - 12:23:21)

I2C: ready
OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
OMAP3 Beagle board + LPDDR/NAND
DRAM: 256 MB
NAND: 256 MiB
Using default environment

MUSB: using high speed
In: serial usbtty
Out: serial usbtty
Err: serial usbtty
Board revision C
Serial #487c00030000000004013f7904018017
Hit any key to stop autoboot: 0


That's not too bad for a start, although I guess I don't like the fact that a patched version of U-boot is flashed on the board (and I have no idea what this patch is).

If you connect at this point the DVI cable to some monitor you should see a beagle on the screen.

I followed the instructions from the A4 page:


mmcinit

fatload mmc 0 80000000 uimage

setenv bootargs 'console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1'

bootm 80000000


and a linux kernel boots:


## Booting kernel from Legacy Image at 80000000 ...
Image Name: Angstrom/2.6.28/beagleboard
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2706168 Bytes = 2.6 MB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux.................................................................................................................
............................................................. done, booting the kernel.
Linux version 2.6.28-omap1 (koen@dominion) (gcc version 4.3.1 (GCC) ) #1 Tue Mar 24 18:57:27 CET 2009
CPU: ARMv7 Processor [411fc083] revision 3 (ARMv7), cr=10c5387f
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
Machine: OMAP3 Beagle Board
Memory policy: ECC disabled, Data cache writeback
OMAP3430 ES3.0
SRAM: Mapped pa 0x40200000 to va 0xd7000000 size: 0x100000
Reserving 15728640 bytes SDRAM for VRAM
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 65024
Kernel command line: console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootdelay=1
Clocking rate (Crystal/DPLL/ARM core): 26.0/332/500 MHz
GPMC revision 5.0
IRQ: Found an INTC at 0xd8200000 (revision 4.0) with 96 interrupts
Total of 96 interrupts on 1 active controller
OMAP34xx GPIO hardware version 2.5
PID hash table entries: 1024 (order: 10, 4096 bytes)
OMAP clockevent source: GPTIMER12 at 32768 Hz
Console: colour dummy device 80x30
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 128MB 128MB = 256MB total
Memory: 238592KB available (5008K code, 437K data, 196K init)
Calibrating delay loop... 480.01 BogoMIPS (lpj=1875968)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 532 bytes
regulator: core version 0.5
NET: Registered protocol family 16
Found NAND on CS0
Registering NAND on CS0
OMAP DMA hardware revision 4.0
USB: No board-specific platform config found
OMAP DSS rev 2.0
OMAP DISPC rev 3.0
OMAP VENC rev 2
OMAP DSI rev 1.0
i2c_omap i2c_omap.1: bus 1 rev3.12 at 2600 kHz
twl4030: PIH (irq 7) chaining IRQs 368..375
twl4030: power (irq 373) chaining IRQs 376..383
twl4030: gpio (irq 368) chaining IRQs 384..401
i2c_omap i2c_omap.3: bus 3 rev3.12 at 100 kHz
SCSI subsystem initialized
twl4030_usb twl4030_usb: Initialized TWL4030 USB module
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
musb_hdrc: version 6.0, musb-dma, otg (peripheral+host), debug=0
musb_hdrc: USB OTG mode controller at d80ab000 using DMA, IRQ 92
regulator: VMMC1: 1850 <--> 3150 mV normal standby
regulator: VDAC: 1800 mV normal standby
regulator: VUSB1V5: 1500 mV normal standby
regulator: VUSB1V8: 1800 mV normal standby
regulator: VUSB3V1: 3100 mV normal standby
regulator: VSIM: 1800 <--> 3000 mV normal standby
Bluetooth: Core ver 2.13
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
cfg80211: Using static regulatory domain info
cfg80211: Regulatory domain: US
(start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
(2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2700 mBm)
(5170000 KHz - 5190000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
(5190000 KHz - 5210000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
(5210000 KHz - 5230000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
(5230000 KHz - 5330000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
(5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 3000 mBm)
cfg80211: Calling CRDA for country: US
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
NET: Registered protocol family 1
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
JFFS2 version 2.2. (NAND) (SUMMARY) B) 2001-2006 Red Hat, Inc.
msgmni has been set to 466
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver4 ports, IRQ sharing enabled
serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
serial8250.0: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
serial8250.0: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16654
console [ttyS2] enabled
brd: module loaded
loop: module loaded
usbcore: registered new interface driver catc
catc: v2.8:CATC EL1210A NetMate USB Ethernet driver
usbcore: registered new interface driver kaweth
pegasus: v0.6.14 (2006/09/27), Pegasus/Pegasus II USB Ethernet driver
usbcore: registered new interface driver pegasus
rtl8150: v0.6.2 (2004/08/27):rtl8150 based usb-ethernet driver
usbcore: registered new interface driver rtl8150
usbcore: registered new interface driver asix
usbcore: registered new interface driver cdc_ether
usbcore: registered new interface driver dm9601
usbcore: registered new interface driver smsc95xx
usbcore: registered new interface driver gl620a
usbcore: registered new interface driver net1080
usbcore: registered new interface driver plusb
usbcore: registered new interface driver rndis_host
usbcore: registered new interface driver cdc_subset
Broadcom 43xx driver loaded [ Features: L, Firmware-ID: FW13 ]
usbcore: registered new interface driver zd1211rw
usbcore: registered new interface driver rndis_wlan
usbcore: registered new interface driver zd1201
usbcore: registered new interface driver usb8xxx
usbcore: registered new interface driver rtl8187
usbcore: registered new interface driver rt2500usb
usbcore: registered new interface driver rt73usb
usbcore: registered new interface driver p54usb
i2c /dev entries driver
input: triton2-pwrbutton as /class/input/input0
triton2 power button driver initialized
Driver 'sd' needs updating - please use bus_type methods
Driver 'sr' needs updating - please use bus_type methods
omap2-nand driver initializing
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xba (Micron NAND 256MiB 1,8V 16-bit)
cmdlinepart partition parsing not available
Creating 5 MTD partitions on "omap2-nand":
0x00000000-0x00080000 : "X-Loader"
0x00080000-0x00260000 : "U-Boot"
0x00260000-0x00280000 : "U-Boot Env"
0x00280000-0x00680000 : "Kernel"
0x00680000-0x10000000 : "File System"
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
ehci-omap ehci-omap.0: new USB bus registered, assigned bus number 1
ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 3 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
g_cdc gadget: using random self ethernet address
g_cdc gadget: using random host ethernet address
usb0: MAC fe:4d:41:ab:d2:65
usb0: HOST MAC 7e:00:e6:9a:5b:3d
g_cdc gadget: CDC Composite Gadget, version: King Kamehameha Day 2008
g_cdc gadget: g_cdc ready
musb_hdrc musb_hdrc: MUSB HDRC host driver
musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 2
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
mice: PS/2 mouse device common for all mice
input: gpio-keys as /class/input/input1
twl4030_rtc twl4030_rtc: rtc core: registered twl4030_rtc as rtc0
OMAP Watchdog Timer Rev 0x31: initial timeout 60 sec
Bluetooth: HCI USB driver ver 2.10
usbcore: registered new interface driver hci_usb
Bluetooth: Broadcom Blutonium firmware driver ver 1.2
usbcore: registered new interface driver bcm203x
Bluetooth: Digianswer Bluetooth USB driver ver 0.10
usbcore: registered new interface driver bpa10x
Bluetooth: Generic Bluetooth SDIO driver ver 0.1
mmci-omap-hs mmci-omap-hs.0: Failed to get debounce clock
Registered led device: beagleboard::usr0
Registered led device: beagleboard::usr1
usbcore: registered new interface driver usbhid
usbhid: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.18rc3.
usbcore: registered new interface driver snd-usb-audio
ASoC version 0.13.2
OMAP3 Beagle SoC init
TWL4030 Audio Codec init
asoc: twl4030 <-> omap-mcbsp-dai-(link_id) mapping ok
ALSA device list:
#0: omap3beagle (twl4030)
oprofile: using arm/armv7
TCP cubic registered
NET: Registered protocol family 17
NET: Registered protocol family 15
Bluetooth: L2CAP ver 2.11
Bluetooth: L2CAP socket layer initialized
Bluetooth: SCO (Voice Link) ver 0.6
Bluetooth: SCO socket layer initialized
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM TTY layer initialized
Bluetooth: RFCOMM ver 1.10
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Bluetooth: BNEP filters: protocol multicast
Bluetooth: HIDP (Human Interface Emulation) ver 1.2
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
ieee80211: 802.11 data/management/control stack, git-1.1.13
ieee80211: Copyright (C) 2004-2005 Intel Corporation
ThumbEE CPU extension supported.
Power Management for TI OMAP3.
Spurious irq 95: 0xffffffdf, please flush posted write for irq 83
Spurious irq 95: 0xffffffdf, please flush posted write for irq 83
SmartReflex driver initialized
Disabling unused clock "sr2_fck"
Disabling unused clock "sr1_fck"
Disabling unused clock "mcbsp_fck"
Disabling unused clock "mcbsp_fck"
Disabling unused clock "mcbsp_fck"
Disabling unused clock "mcbsp_ick"
Disabling unused clock "mcbsp_ick"
Disabling unused clock "mcbsp_ick"
Disabling unused clock "gpt2_ick"
Disabling unused clock "gpt3_ick"
Disabling unused clock "gpt4_ick"
Disabling unused clock "gpt5_ick"
Disabling unused clock "gpt6_ick"
Disabling unused clock "gpt7_ick"
Disabling unused clock "gpt8_ick"
Disabling unused clock "gpt9_ick"
Disabling unused clock "wdt3_ick"
Disabling unused clock "wdt3_fck"
Disabling unused clock "gpio2_dbck"
Disabling unused clock "gpio3_dbck"
Disabling unused clock "gpio4_dbck"
Disabling unused clock "gpio5_dbck"
Disabling unused clock "gpio6_dbck"
Disabling unused clock "gpt9_fck"
Disabling unused clock "gpt8_fck"
Disabling unused clock "gpt7_fck"
Disabling unused clock "gpt6_fck"
Disabling unused clock "gpt5_fck"
Disabling unused clock "gpt4_fck"
Disabling unused clock "gpt3_fck"
Disabling unused clock "gpt2_fck"
Disabling unused clock "gpt1_ick"
Disabling unused clock "wdt1_ick"
Disabling unused clock "wdt2_ick"
Disabling unused clock "wdt2_fck"
Disabling unused clock "gpio1_dbck"
Disabling unused clock "gpt1_fck"
Disabling unused clock "cam_ick"
Disabling unused clock "cam_mclk"
Disabling unused clock "des1_ick"
Disabling unused clock "sha11_ick"
Disabling unused clock "rng_ick"
Disabling unused clock "aes1_ick"
Disabling unused clock "ssi_ick"
Disabling unused clock "mailboxes_ick"
Disabling unused clock "mcbsp_ick"
Disabling unused clock "mcbsp_ick"
Disabling unused clock "gpt10_ick"
Disabling unused clock "gpt11_ick"
Disabling unused clock "i2c_ick"
Disabling unused clock "mcspi_ick"
Disabling unused clock "mcspi_ick"
Disabling unused clock "mcspi_ick"
Disabling unused clock "mcspi_ick"
Disabling unused clock "hdq_ick"
Disabling unused clock "mspro_ick"
Disabling unused clock "des2_ick"
Disabling unused clock "sha12_ick"
Disabling unused clock "aes2_ick"
Disabling unused clock "icr_ick"
Disabling unused clock "pka_ick"
Disabling unused clock "ssi_ssr_fck"
Disabling unused clock "hdq_fck"
Disabling unused clock "mcspi_fck"
Disabling unused clock "mcspi_fck"
Disabling unused clock "mcspi_fck"
Disabling unused clock "mcspi_fck"
Disabling unused clock "mcbsp_fck"
Disabling unused clock "mcbsp_fck"
Disabling unused clock "i2c_fck"
Disabling unused clock "mspro_fck"
Disabling unused clock "gpt11_fck"
Disabling unused clock "gpt10_fck"
Disabling unused clock "dpll4_m6x2_ck"
Disabling unused clock "dpll3_m3x2_ck"
Disabling unused clock "sys_clkout1"
VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 1
registered taskstats version 1
Console: switching to colour frame buffer device 80x30
clock: clksel_round_rate_div: dpll4_m4_ck target_rate 48000000
clock: new_div = 9, new_rate = 48000000
twl4030_rtc twl4030_rtc: setting system clock to 2009-05-04 02:36:09 UTC (1241404569)
Waiting 1sec before mounting root device...
mmc0: new high speed SD card at address 59f8
mmcblk0: mmc0:59f8 SD02G 1.83 GiB
mmcblk0: p1 p2
mmcblk0: p2 size 3036285 limited to end of disk
kjournald starting. Commit interval 5 seconds
EXT3-fs warning: mounting unchecked fs, running e2fsck is recommended
EXT3 FS on mmcblk0p2, internal journal
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem).
Freeing init memory: 196K
INIT: version 2.86 booting
Starting udevudevd version 124 started

Remounting root file system...
uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 0
Buffer I/O error on device mtdblock0, logical block 0
uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 8
Buffer I/O error on device mtdblock0, logical block 1
uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 16
Buffer I/O error on device mtdblock0, logical block 2
uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 24
Buffer I/O error on device mtdblock0, logical block 3
uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 0
Buffer I/O error on device mtdblock0, logical block 0
ALSA: Restoring mixer settings...
Configuring network interfaces... No state is present for card omap3beagle
/usr/sbin/alsactl: parse:1620: Unable to open file '/usr/share/alsa/init/00main': No such file or directory
ifup: interface eth0 already configured
done.
Starting portmap daemon: portmap.
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
INIT: Entering runlevel: 5
Configuring leds:
beagleboard::usr0: heartbeat
beagleboard::usr1: mmc0
Starting Dropbear SSH server: modprobe: FATAL: Could not open '/lib/modules/2.6.28-omap1/kernel/net/ipv6/ipv6.ko': No such file or d
irectory

modprobe: FATAL: Could not open '/lib/modules/2.6.28-omap1/kernel/net/ipv6/ipv6.ko': No such file or directory

dropbear.
Starting advanced power management daemon: No APM support in kernel
(failed.)
Removing stale PID file /var/run/dbus/pid.
Starting system message bus: Unknown username "polkituser" in message bus configuration file
dbus.
Starting Hardware abstraction layer hald
Starting syslogd/klogd: done
* Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon
Process 1491 died: No such process; trying to remove PID file. (/var/run/avahi-daemon//pid)
[ ok ]
Starting Connection Manager
Starting Bluetooth subsystem: hcid hid2hci.
Running ntpdate to synchronize clockError : Temporary failure in name resolution
.
Starting GPE display manager: gpe-dm

.-------.
| | .-.
| | |-----.-----.-----.| | .----..-----.-----.
| | | __ | ---'| '--.| .-'| | |
| | | | | |--- || --'| | | ' | | | |
'---'---'--'--'--. |-----''----''--' '-----'-'-'-'
-' |
'---'

The Angstrom Distribution beagleboard ttyS2

Angstrom 2009.X-test-20090305 beagleboard ttyS2

beagleboard login: root
root@beagleboard:~#



There are some things I'm not impressed with:
  • uncorrectable error : <3>end_request: I/O error, dev mtdblock0, sector 0
    Buffer I/O error on device mtdblock0, logical block 0
  • FATAL: Could not open '/lib/modules/2.6.28-omap1/kernel/net/ipv6/ipv6.ko': No such file or directory
  • the beagle is gone from my display and it's black although there seems to be some X stuff running:



root@beagleboard:~# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 02:36 ? 00:00:01 init [5]
root 2 0 0 02:36 ? 00:00:00 [kthreadd]
root 3 2 0 02:36 ? 00:00:00 [ksoftirqd/0]
root 4 2 0 02:36 ? 00:00:00 [watchdog/0]
root 5 2 0 02:36 ? 00:00:00 [events/0]
root 6 2 0 02:36 ? 00:00:00 [khelper]
root 182 2 0 02:36 ? 00:00:00 [kblockd/0]
root 187 2 0 02:36 ? 00:00:00 [kseriod]
root 194 2 0 02:36 ? 00:00:00 [twl4030-irqchip]
root 195 2 0 02:36 ? 00:00:00 [twl4030-irq]
root 213 2 0 02:36 ? 00:00:00 [ksuspend_usbd]
root 219 2 0 02:36 ? 00:00:00 [khubd]
root 226 2 0 02:36 ? 00:00:00 [kmmcd]
root 239 2 0 02:36 ? 00:00:00 [btaddconn]
root 240 2 0 02:36 ? 00:00:00 [btdelconn]
root 256 2 0 02:36 ? 00:00:00 [kondemand/0]
root 266 2 0 02:36 ? 00:00:00 [pdflush]
root 267 2 0 02:36 ? 00:00:00 [pdflush]
root 268 2 0 02:36 ? 00:00:00 [kswapd0]
root 269 2 0 02:36 ? 00:00:00 [aio/0]
root 270 2 0 02:36 ? 00:00:00 [nfsiod]
root 414 2 0 02:36 ? 00:00:00 [pegasus]
root 427 2 0 02:36 ? 00:00:00 [zd1211rw]
root 447 2 0 02:36 ? 00:00:00 [mtdblockd]
root 499 2 0 02:36 ? 00:00:00 [kpsmoused]
root 521 2 0 02:36 ? 00:00:00 [hid_compat]
root 557 2 0 02:36 ? 00:00:00 [krfcommd]
root 559 2 0 02:36 ? 00:00:00 [rpciod/0]
root 569 2 0 02:36 ? 00:00:00 [mmcqd]
root 574 2 0 02:36 ? 00:00:00 [kjournald]
root 626 1 0 02:36 ? 00:00:00 /sbin/udevd -d
daemon 1397 1 0 02:36 ? 00:00:00 /sbin/portmap
root 1441 1 0 02:36 ? 00:00:00 /usr/sbin/dropbear -r /etc/dropb
46 1452 1 0 02:36 ? 00:00:00 /usr/bin/dbus-daemon --system
47 1457 1 0 02:36 ? 00:00:00 /usr/sbin/hald
root 1458 1457 0 02:36 ? 00:00:00 hald-runner
root 1463 1458 0 02:36 ? 00:00:00 /usr/libexec/hald-addon-omap-bac
root 1464 1458 0 02:36 ? 00:00:00 hald-addon-input: Listening on /
root 1477 1 0 02:36 ? 00:00:00 /sbin/syslogd -n -C64 -m 20
root 1479 1 0 02:36 ? 00:00:00 /sbin/klogd -n
avahi 1487 1 0 02:36 ? 00:00:00 avahi-daemon: running [beagleboa
root 1499 1 0 02:36 ? 00:00:00 connmand
root 1509 1 0 02:36 ? 00:00:00 /sbin/hcid -s -f /etc/bluetooth/
root 1524 1 0 02:36 ? 00:00:00 /usr/bin/gpe-dm
root 1526 1524 2 02:36 tty3 00:00:04 Xorg -br -pn :0 -noreset
root 1529 1524 0 02:36 ? 00:00:00 run-parts /etc/X11/Xinit.d
root 1531 1 0 02:36 ttyS2 00:00:00 -sh
root 1532 1 0 02:36 tty1 00:00:00 /sbin/getty 38400 tty1
root 1570 1 0 02:36 ? 00:00:00 x11vnc -q -bg -display :0 -forev
root 1606 1529 1 02:36 ? 00:00:04 /usr/bin/gpe-login
root 1611 1 0 02:36 ? 00:00:00 keylaunch -f /etc/X11/gpe-login.
root 1612 1 0 02:36 ? 00:00:00 ipaq-sleep -u 60 -o 30 -n
root 1619 1606 0 02:36 ? 00:00:00 xkbd -xid
root 1670 1531 0 02:40 ttyS2 00:00:00 ps -ef
root@beagleboard:~#


We'll see how to resolve some of those issues.

The beagle has landed

I just got an EBV Beagle. The reason I did not buy the official Beagle was that the EBV Beagle seemed more "complete" and out of the box to me and I did not want to have "compatibility issues"

The package contains the following:
  • beagleboard (BB) revison C2
  • power supply for it
  • 2Gig MMC card preloaded with software
  • cable (10 pin header) to male RS232
  • female/female RS232 cable
  • HDMI to DVI cable
  • USB hub, power supply and cable to connect to BB (mind the cable direction)
  • USB to ethernet device
  • a single page of instructions (hmmmmm so easy?)