Beginners Doubt's !!!!

Dear Beagle Board Community,

My name is Nandish and I am planning to make a hand handled biomedical system. For that I am confused in either going for customized RTOS or to port RTLINUX on beagle board.

I have following set of questions, which I believe if are clarified, I can certainly move ahead with my design.

Q-1 Is there any support available for beagle board if designer’s want to make customized RTOS?
(a) For e.g. already written and tested start up files, tested code for UART & other peripheral access.
(b) How to program beagle board for performing single task (i.e. without any OS, just say blinking a LED)?

Q-2 What is debugging facility for Beagle Board?
(a) What is tool Chain required if we want to avail debugging facility?
(b) Are these tools available freely and if so can be you please point us them?

Q-3 Is there any free RTOS available that can be ported on Beagle Board?
(a) Will that RTOS have support for graphics language like OpenGL?

Q-4 If we port Ubuntu or any other Linux OS on beagle board how can we access DSP block? Is there any linux level abstraction to access DSP core on OMAP 3530 processor?

Experience Designer please help me sort my queries today, so that I can learn and I can help somebody like me tomorrow… :slight_smile:

With Best Regards
Nandish Mehta

I have sent a Beagle Board to the ARM maintainer of the RTAI real time
patch for Linux. He is working on it and hopes to have something in a
month
or so. It may take a bit of testing to find all the quirks the first
time out, as there
has not been a current RTAI port on ARM for a while.

Jon

I've done something to make my rev C3 BeagleBoard not boot from the MMC card.
I don't know what I did, but I can't get it to boot from the MMC anymore no
matter what I do. I've completely reset the board according to the validation
procedure, and think I have somehow messed up the bootcmd.

  I have:

mmcinit ; fatload mmc 0:1 0x80000000 uimage ; bootm

  for my bootcmd at present, which fails when it gets to the 'bootm' command.
I've tried following the procedures on elinux.org and other places, but
nothing has worked to get my board bootable from MMC again.

  Help please. :wink:

  8-Dale

Dale Weber wrote:

  I've done something to make my rev C3 BeagleBoard not boot from the MMC card. I don't know what I did, but I can't get it to boot from the MMC anymore no matter what I do. I've completely reset the board according to the validation procedure, and think I have somehow messed up the bootcmd.

  I have:

mmcinit ; fatload mmc 0:1 0x80000000 uimage ; bootm

  for my bootcmd at present, which fails when it gets to the 'bootm' command. I've tried following the procedures on elinux.org and other places, but nothing has worked to get my board bootable from MMC again.

Output of "printenv" would be nice.

How does it fail to boot? Does the kernel uncompress at all? Please post any output you get.

Here's what I've entered into my C3 beagleboard:

setenv bootcmd 'mmc init; fatload mmc 0:1 0x80300000 uImage; bootm 0x80300000'

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

saveenv

Note the capital I in uImage and I have the address specified for bootm.

Cheers,
Kai

Meh, why do people always do that? The default uboot for angstrom (and I suspect debian/ubuntu) doesn't need such big measures. It boots from SD if it detect and SD card and have finegrained knobs to tweak things like videomodes.

regards,

Koen

I've honestly got no idea why I have those commands there. I found them in a HOWTO document - I believe it was on the eLinux.org site:

http://elinux.org/BeagleBoardUbuntu#Beagleboard:_Setup_U-boot_for_boot

I have just noticed that there is a Beagle Board for Beginners page and it has a simpler set of environment variables to set:
http://elinux.org/BeagleBoardBeginners

setenv bootargs 'console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootwait'
setenv bootcmd 'mmc init;fatload mmc 0 80300000 uImage;bootm 80300000'
saveenv

I'm always looking for areas where I can simplify things...

Cheers,
Kai

No need for all those commands. Stupid outdated wikis providing misleading info.....

Put a recent u-boot on SD and then do 'nand erase 260000 20000' in uboot to get a sane default env back.

regards,

Koen

Thank you, this is very good to know.

Once I've done this, then I am assuming that if there is an SD card present, it will boot off the card, otherwise it will boot from NAND?

That's exactly what I want it to do.

Cheers,
Kai

Yes, it does:

  "if mmc init; then " \
    "if run loadbootscript; then " \
      "run bootscript; " \
    "else " \
      "if run loaduimage; then " \
        "run mmcboot; " \
      "else run nandboot; " \
      "fi; " \
    "fi; " \
  "else run nandboot; fi"

The rest of the default env:

  "loadaddr=0x82000000\0" \
  "console=ttyS2,115200n8\0" \
  "vram=12M\0" \
  "dvimode=1024x768MR-16@60\0" \
  "defaultdisplay=dvi\0" \
  "mmcroot=/dev/mmcblk0p2 rw\0" \
  "mmcrootfstype=ext3 rootwait\0" \
  "nandroot=/dev/mtdblock4 rw\0" \
  "nandrootfstype=jffs2\0" \
  "mmcargs=setenv bootargs console=${console} " \
    "vram=${vram} " \
    "omapfb.mode=dvi:${dvimode} " \
    "omapfb.debug=y " \
    "omapdss.def_disp=${defaultdisplay} " \
    "root=${mmcroot} " \
    "rootfstype=${mmcrootfstype}\0" \
  "nandargs=setenv bootargs console=${console} " \
    "vram=${vram} " \
    "omapfb.mode=dvi:${dvimode} " \
    "omapfb.debug=y " \
    "omapdss.def_disp=${defaultdisplay} " \
    "root=${nandroot} " \
    "rootfstype=${nandrootfstype}\0" \
  "loadbootscript=fatload mmc 0 ${loadaddr} boot.scr\0" \
  "bootscript=echo Running bootscript from mmc ...; " \
    "source ${loadaddr}\0" \
  "loaduimage=fatload mmc 0 ${loadaddr} uImage\0" \
  "mmcboot=echo Booting from mmc ...; " \
    "run mmcargs; " \
    "bootm ${loadaddr}\0" \
  "nandboot=echo Booting from nand ...; " \
    "run nandargs; " \
    "nand read ${loadaddr} 280000 400000; " \
    "bootm ${loadaddr}\0" \

regards,

Koen

The default env below is copy/pasted from http://git.denx.de/?p=u-boot/u-boot-ti.git;a=blob_plain;f=include/configs/omap3_beagle.h;hb=HEAD

That's where the latest (and hopefully greatest) uboot lives.

regards,

Koen

I had just downloaded and (I hope) successfully built U-Boot from there when this email came through, so I will now use it to restore a sane set of environment variables on my beagleboard.

If only I could work out what my wife has done with my USB SD card reader. She was using it for her camera and it could be anywhere!

Thanks,
Kai

OK, the problem is partly solved. The normal.scr script did not get run when
I recovered my board. It said 'invalid fat entry' and did not run the script
even though everything looks OK on the sd card.

  Here is my current boot output:

========================= Start

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

U-Boot 2009.01-dirty (Feb 19 2009 - 12:22:31)

I2C: ready
OMAP3530-GP rev 2, CPU-OPP2 L3-165MHz
OMAP3 Beagle board + LPDDR/NAND
DRAM: 256 MB
NAND: 256 MiB
MUSB: using high speed
In: serial
Out: serial
Err: serial
Board revision C
Serial #6966000300000000040323091000d006
Hit any key to stop autoboot: 0
reading uimage

2996664 bytes read
## Booting kernel from Legacy Image at 80000000 ...
   Image Name: Angstrom/2.6.29/beagleboard
   Image Type: ARM Linux Kernel Image (uncompressed)
   Data Size: 2996600 Bytes = 2.9 MB
   Load Address: 80008000
   Entry Point: 80008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing
Linux......................................................................................................................................................
[ 0.000000] Linux version 2.6.29-omap1 (n7pkt@intrepid) (gcc version 4.3.1
(GCC) ) #1 PREEMPT Wed Oct 21 22:02:54 PDT 2009
[ 0.000000] CPU: ARMv7 Processor [411fc083] revision 3 (ARMv7), cr=10c5387f
[ 0.000000] CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction
cache
[ 0.000000] Machine: OMAP3 Beagle Board
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] OMAP3430 ES3.0
[ 0.000000] SRAM: Mapped pa 0x40200000 to va 0xd7000000 size: 0x100000
[ 0.000000] Reserving 14680064 bytes SDRAM for VRAM
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total
pages: 65024
[ 0.000000] Kernel command line: console=ttyS2,115200n8 console=tty0
root=/dev/mmcblk0p2 rw rootwait
[ 0.000000] Clocking rate (Crystal/DPLL/ARM core): 26.0/332/500 MHz
[ 0.000000] GPMC revision 5.0
[ 0.000000] IRQ: Found an INTC at 0xd8200000 (revision 4.0) with 96
interrupts
[ 0.000000] Total of 96 interrupts on 1 active controller
[ 0.000000] OMAP34xx GPIO hardware version 2.5
[ 0.000000] PID hash table entries: 1024 (order: 10, 4096 bytes)
[ 0.000000] OMAP clockevent source: GPTIMER12 at 32768 Hz
[ 0.000000] Console: colour dummy device 80x30
[ 0.000000] console [tty0] enabled
[ 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] Memory: 128MB 128MB = 256MB total
[ 0.000000] Memory: 238848KB available (5632K code, 576K data, 204K init)
[ 0.000000] Calibrating delay loop... 508.37 BogoMIPS (lpj=1986560)
[ 0.000000] Mount-cache hash table entries: 512
[ 0.000000] CPU: Testing write buffer coherency: ok
[ 0.000000] net_namespace: 1036 bytes
[ 0.000000] regulator: core version 0.5
[ 0.000000] NET: Registered protocol family 16
[ 0.000000] GPIO-156 autorequested
[ 0.000000] GPIO-159 autorequested
[ 0.000000] Found NAND on CS0
[ 0.000000] Registering NAND on CS0
[ 23.080627] OMAP DMA hardware revision 4.0
[ 23.126861] bio: create slab <bio-0> at 0
[ 23.189971] OMAP DSS rev 2.0
[ 23.190124] OMAP DISPC rev 3.0
[ 23.190155] OMAP VENC rev 2
[ 23.190338] OMAP DSI rev 1.0
[ 23.205902] i2c_omap i2c_omap.1: bus 1 rev3.12 at 2600 kHz
[ 23.210021] twl4030: PIH (irq 7) chaining IRQs 368..375
[ 23.210083] twl4030: power (irq 373) chaining IRQs 376..383
[ 23.210723] twl4030: gpio (irq 368) chaining IRQs 384..401
[ 23.214019] regulator: VMMC1: 1850 <--> 3150 mV normal standby
[ 23.215026] regulator: VDAC: 1800 mV normal standby
[ 23.216003] regulator: VUSB1V5: 1500 <--> 0 mV normal standby
[ 23.216949] regulator: VUSB1V8: 1800 <--> 0 mV normal standby
[ 23.217926] regulator: VUSB3V1: 3100 <--> 0 mV normal standby
[ 23.218902] regulator: VPLL2: 1800 mV normal standby
[ 23.219909] regulator: VMMC2: 2800 <--> 3150 mV normal standby
[ 23.220886] regulator: VSIM: 1800 <--> 3000 mV normal standby
[ 23.221130] i2c_omap i2c_omap.2: bus 2 rev3.12 at 400 kHz
[ 23.222076] i2c_omap i2c_omap.3: bus 3 rev3.12 at 100 kHz
[ 23.224243] SCSI subsystem initialized
[ 23.230346] twl4030_usb twl4030_usb: Initialized TWL4030 USB module
[ 23.232025] usbcore: registered new interface driver usbfs
[ 23.232666] usbcore: registered new interface driver hub
[ 23.233184] usbcore: registered new device driver usb
[ 23.236541] Bluetooth: Core ver 2.14
[ 23.237121] NET: Registered protocol family 31
[ 23.237152] Bluetooth: HCI device and connection manager initialized
[ 23.237213] Bluetooth: HCI socket layer initialized
[ 23.238098] cfg80211: Using static regulatory domain info
[ 23.238159] cfg80211: Regulatory domain: US
[ 23.238220] (start_freq - end_freq @ bandwidth), (max_antenna_gain,
max_eirp)
[ 23.238250] (2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2700 mBm)
[ 23.238311] (5170000 KHz - 5190000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[ 23.238372] (5190000 KHz - 5210000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[ 23.238433] (5210000 KHz - 5230000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[ 23.238464] (5230000 KHz - 5330000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[ 23.238525] (5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 3000 mBm)
[ 23.238586] cfg80211: Calling CRDA for country: US
[ 23.242370] musb_hdrc: version 6.0, musb-dma, otg (peripheral+host),
debug=0
[ 23.243164] musb_hdrc: USB OTG mode controller at d80ab000 using DMA, IRQ
92
[ 23.244506] NET: Registered protocol family 2
[ 23.244812] IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 23.245513] TCP established hash table entries: 8192 (order: 4, 65536
bytes)
[ 23.246185] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
[ 23.246368] TCP: Hash tables configured (established 8192 bind 8192)
[ 23.246429] TCP reno registered
[ 23.246826] NET: Registered protocol family 1
[ 23.251251] VFS: Disk quotas dquot_6.5.2
[ 23.251403] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 23.252105] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 23.252929] JFFS2 version 2.2. (NAND) (SUMMARY) �© 2001-2006 Red Hat, Inc.
[ 23.254058] msgmni has been set to 466
[ 23.259063] alg: No test for stdrng (krng)
[ 23.259185] io scheduler noop registered
[ 23.259246] io scheduler anticipatory registered
[ 23.259277] io scheduler deadline registered
[ 23.259521] io scheduler cfq registered (default)
[ 23.286224] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[ 23.309631] serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
[ 23.332000] serial8250.0: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
[ 23.353485] serial8250.0: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16654
[ 23.353576] console [ttyS2] enabled
[ 23.871368] musb_hdrc: peripheral reset irq lost!
[ 23.889648] brd: module loaded
[ 23.899383] loop: module loaded
[ 23.903503] enc28j60 spi4.0: enc28j60 Ethernet driver 1.01 loaded
[ 23.912200] enc28j60 spi4.0: enc28j60 chip not found
[ 23.917266] enc28j60: probe of spi4.0 failed with error -5
[ 23.924102] usbcore: registered new interface driver catc
[ 23.929656] catc: v2.8:CATC EL1210A NetMate USB Ethernet driver
[ 23.936035] usbcore: registered new interface driver kaweth
[ 23.941741] pegasus: v0.6.14 (2006/09/27), Pegasus/Pegasus II USB Ethernet
driver
[ 23.949676] usbcore: registered new interface driver pegasus
[ 23.955413] rtl8150: v0.6.2 (2004/08/27):rtl8150 based usb-ethernet driver
[ 23.962707] usbcore: registered new interface driver rtl8150
[ 23.968780] usbcore: registered new interface driver asix
[ 23.974578] usbcore: registered new interface driver cdc_ether
[ 23.980834] usbcore: registered new interface driver dm9601
[ 23.986816] usbcore: registered new interface driver smsc95xx
[ 23.992950] usbcore: registered new interface driver gl620a
[ 23.998992] usbcore: registered new interface driver net1080
[ 24.005065] usbcore: registered new interface driver plusb
[ 24.010925] usbcore: registered new interface driver rndis_host
[ 24.017272] usbcore: registered new interface driver cdc_subset
[ 24.023620] usbcore: registered new interface driver zaurus
[ 24.029632] usbcore: registered new interface driver MOSCHIP usb-ethernet
driver
[ 24.037506] Broadcom 43xx driver loaded [ Features: L, Firmware-ID: FW13 ]
[ 24.044952] usbcore: registered new interface driver zd1211rw
[ 24.051147] usbcore: registered new interface driver rtl8187
[ 24.057220] usbcore: registered new interface driver rndis_wlan
[ 24.063598] usbcore: registered new interface driver zd1201
[ 24.069641] usbcore: registered new interface driver usb8xxx
[ 24.075805] usbcore: registered new interface driver rt2500usb
[ 24.082061] usbcore: registered new interface driver rt73usb
[ 24.088104] usbcore: registered new interface driver p54usb
[ 24.093902] i2c /dev entries driver
[ 24.099609] Driver 'sd' needs updating - please use bus_type methods
[ 24.106384] Driver 'sr' needs updating - please use bus_type methods
[ 24.114044] omap2-nand driver initializing
[ 24.118499] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xba (Micron NAND
256MiB 1,8V 16-bit)
[ 24.127655] cmdlinepart partition parsing not available
[ 24.133056] Creating 5 MTD partitions on "omap2-nand":
[ 24.138305] 0x000000000000-0x000000080000 : "X-Loader"
[ 24.145782] 0x000000080000-0x000000260000 : "U-Boot"
[ 24.153167] 0x000000260000-0x000000280000 : "U-Boot Env"
[ 24.159942] 0x000000280000-0x000000680000 : "Kernel"
[ 24.168212] 0x000000680000-0x000010000000 : "File System"
[ 24.285400] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 24.292358] ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
[ 24.299163] ehci-omap ehci-omap.0: new USB bus registered, assigned bus
number 1
[ 24.307067] ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
[ 24.324127] ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00
[ 24.330749] usb usb1: configuration #1 chosen from 1 choice
[ 24.336944] hub 1-0:1.0: USB hub found
[ 24.340911] hub 1-0:1.0: 3 ports detected
[ 24.347290] Initializing USB Mass Storage driver...
[ 24.352752] usbcore: registered new interface driver usb-storage
[ 24.358917] USB Mass Storage support registered.
[ 24.364410] mice: PS/2 mouse device common for all mice
[ 24.370391] input: gpio-keys as /devices/platform/gpio-keys/input/input0
[ 24.380096] input: twl4030_pwrbutton as /devices/platform/i2c_omap.1/i2c-
adapter/i2c-1/1-0049/twl4030_pwrbutton/input/input1
[ 25.387420] i2c_omap i2c_omap.2: controller timed out
[ 25.402282] rtc-ds1307: probe of 2-0068 failed with error -5
[ 25.410095] OMAP Watchdog Timer Rev 0x31: initial timeout 60 sec
[ 25.416473] Bluetooth: HCI UART driver ver 2.2
[ 25.421051] Bluetooth: HCI H4 protocol initialized
[ 25.425964] Bluetooth: HCI BCSP protocol initialized
[ 25.430999] Bluetooth: HCILL protocol initialized
[ 25.435791] Bluetooth: Broadcom Blutonium firmware driver ver 1.2
[ 25.442352] usbcore: registered new interface driver bcm203x
[ 25.448089] Bluetooth: Digianswer Bluetooth USB driver ver 0.10
[ 25.454437] usbcore: registered new interface driver bpa10x
[ 25.460174] Bluetooth: BlueFRITZ! USB driver ver 1.2
[ 25.465515] usbcore: registered new interface driver bfusb
[ 25.471099] Bluetooth: Generic Bluetooth USB driver ver 0.4
[ 25.477142] usbcore: registered new interface driver btusb
[ 25.482818] Bluetooth: Generic Bluetooth SDIO driver ver 0.1
[ 25.489807] mmci-omap-hs mmci-omap-hs.0: Failed to get debounce clock
[ 25.605499] mmci-omap-hs mmci-omap-hs.1: Failed to get debounce clock
[ 25.612121] regulator: Unable to get requested regulator: vmmc_aux
[ 25.621337] Registered led device: beagleboard::usr0
[ 25.626708] Registered led device: beagleboard::usr1
[ 25.639190] usbcore: registered new interface driver usbhid
[ 25.644927] usbhid: v2.6:USB HID core driver
[ 25.650543] Advanced Linux Sound Architecture Driver Version 1.0.18a.
[ 25.658111] usbcore: registered new interface driver snd-usb-audio
[ 25.664825] No device for DAI twl4030
[ 25.668731] No device for DAI omap-mcbsp-dai-0
[ 25.673248] No device for DAI omap-mcbsp-dai-1
[ 25.677886] No device for DAI omap-mcbsp-dai-2
[ 25.682373] No device for DAI omap-mcbsp-dai-3
[ 25.686920] No device for DAI omap-mcbsp-dai-4
[ 25.691467] OMAP3 Beagle SoC init
[ 25.695312] TWL4030 Audio Codec init
[ 25.700653] asoc: twl4030 <-> omap-mcbsp-dai-0 mapping ok
[ 25.716949] ALSA device list:
[ 25.719970] #0: omap3beagle (twl4030)
[ 25.732482] oprofile: using arm/armv7
[ 25.736511] TCP cubic registered
[ 25.739929] NET: Registered protocol family 17
[ 25.744476] NET: Registered protocol family 15
[ 25.749114] Bluetooth: L2CAP ver 2.11
[ 25.752838] Bluetooth: L2CAP socket layer initialized
[ 25.757995] Bluetooth: SCO (Voice Link) ver 0.6
[ 25.762634] Bluetooth: SCO socket layer initialized
[ 25.767761] Bluetooth: RFCOMM socket layer initialized
[ 25.773071] Bluetooth: RFCOMM TTY layer initialized
[ 25.778106] Bluetooth: RFCOMM ver 1.10
[ 25.781921] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 25.787322] Bluetooth: BNEP filters: protocol multicast
[ 25.792602] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 25.803527] RPC: Registered udp transport module.
[ 25.808288] RPC: Registered tcp transport module.
[ 25.813232] lib80211: common routines for IEEE802.11 drivers
[ 25.819091] ThumbEE CPU extension supported.
[ 25.823394] Power Management for TI OMAP3.
[ 25.836608] Disabling unused clock "sr2_fck"
[ 25.841064] Disabling unused clock "sr1_fck"
[ 25.845397] Disabling unused clock "mcbsp_fck"
[ 25.849945] Disabling unused clock "mcbsp_fck"
[ 25.854431] Disabling unused clock "mcbsp_fck"
[ 25.858978] Disabling unused clock "mcbsp_ick"
[ 25.863494] Disabling unused clock "mcbsp_ick"
[ 25.868011] Disabling unused clock "mcbsp_ick"
[ 25.872528] Disabling unused clock "gpt2_ick"
[ 25.876953] Disabling unused clock "gpt3_ick"
[ 25.881408] Disabling unused clock "gpt4_ick"
[ 25.885803] Disabling unused clock "gpt5_ick"
[ 25.890258] Disabling unused clock "gpt6_ick"
[ 25.894683] Disabling unused clock "gpt7_ick"
[ 25.899108] Disabling unused clock "gpt8_ick"
[ 25.903564] Disabling unused clock "gpt9_ick"
[ 25.907958] Disabling unused clock "wdt3_ick"
[ 25.912414] Disabling unused clock "wdt3_fck"
[ 25.916839] Disabling unused clock "gpio2_dbck"
[ 25.921447] Disabling unused clock "gpio3_dbck"
[ 25.926055] Disabling unused clock "gpio4_dbck"
[ 25.930664] Disabling unused clock "gpio5_dbck"
[ 25.935272] Disabling unused clock "gpio6_dbck"
[ 25.939849] Disabling unused clock "gpt9_fck"
[ 25.944305] Disabling unused clock "gpt8_fck"
[ 25.948730] Disabling unused clock "gpt7_fck"
[ 25.953155] Disabling unused clock "gpt6_fck"
[ 25.957611] Disabling unused clock "gpt5_fck"
[ 25.962036] Disabling unused clock "gpt4_fck"
[ 25.966461] Disabling unused clock "gpt3_fck"
[ 25.970886] Disabling unused clock "gpt2_fck"
[ 25.975311] Disabling unused clock "gpt1_ick"
[ 25.979736] Disabling unused clock "wdt1_ick"
[ 25.984161] Disabling unused clock "wdt2_ick"
[ 25.988616] Disabling unused clock "wdt2_fck"
[ 25.993041] Disabling unused clock "gpio1_dbck"
[ 25.997650] Disabling unused clock "gpt1_fck"
[ 26.002044] Disabling unused clock "cam_ick"
[ 26.006439] Disabling unused clock "cam_mclk"
[ 26.010894] Disabling unused clock "des1_ick"
[ 26.015319] Disabling unused clock "sha11_ick"
[ 26.019866] Disabling unused clock "rng_ick"
[ 26.024200] Disabling unused clock "aes1_ick"
[ 26.028625] Disabling unused clock "ssi_ick"
[ 26.033020] Unable to handle kernel NULL pointer dereference at virtual
address 00000014
[ 26.041198] pgd = c0004000
[ 26.043914] [00000014] *pgd=00000000
[ 26.047546] Internal error: Oops: 5 [#1] PREEMPT
[ 26.052215] Modules linked in:
[ 26.055328] CPU: 0 Not tainted (2.6.29-omap1 #1)
[ 26.060363] PC is at musb_interrupt+0xa7c/0xc28
[ 26.064941] LR is at musb_interrupt+0xa68/0xc28
[ 26.069519] pc : [<c031dd84>] lr : [<c031dd70>] psr: 60000193
[ 26.069519] sp : cf821e38 ip : cf821e38 fp : cf821e7c
[ 26.081115] r10: d80ab000 r9 : 00000099 r8 : 0000000d
[ 26.086395] r7 : 00000001 r6 : cf98e0f0 r5 : 00000001 r4 : 00000000
[ 26.092987] r3 : 00000000 r2 : 00000000 r1 : 00000000 r0 : cf98e0f0
[ 26.099578] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment
kernel
[ 26.107055] Control: 10c5387d Table: 80004019 DAC: 00000017
[ 26.112854] Process swapper (pid: 1, stack limit = 0xcf8202e8)
[ 26.118774] Stack: (0xcf821e38 to 0xcf822000)
[ 26.123168] 1e20:
cf821e5c cf821e48
[ 26.131591] 1e40: c007b01c c046f180 000045a6 00000060 cf821e8c cf98e0f0
60000113 00000000
[ 26.140045] 1e60: 0000005c 00000002 cf820000 00000000 cf821e94 cf821e80
c031df98 c031d314
[ 26.148498] 1e80: cf9fad20 00000000 cf821eb4 cf821e98 c008efc4 c031df3c
c05cd714 0000005c
[ 26.156921] 1ea0: cf9fad20 00000003 cf821ed4 cf821eb8 c00907a8 c008ef94
c0065c50 0000005c
[ 26.165374] 1ec0: 00000000 cf820000 cf821eec cf821ed8 c003b058 c00906e8
ffffffff d8200000
[ 26.173828] 1ee0: cf821f5c cf821ef0 c003ba84 c003b00c 00000000 0000000f
00000000 c05c0a08
[ 26.182250] 1f00: c05c49e4 60000013 cf820000 c05fd140 c05c8e80 00000000
00000000 cf821f5c
[ 26.190704] 1f20: cf821f08 cf821f38 c0044b94 c0013b24 60000013 ffffffff
c0013ba8 c002d5b8
[ 26.199127] 1f40: c002d5fc 00000000 c0013a9c 00000001 cf821fd4 cf821f60
c003b2e8 c0013aa8
[ 26.207580] 1f60: cf821f8c cf821f70 c010d2c0 c010cfa4 cf821f00 cf9aedc0
c010d3c0 cf821f96
[ 26.216033] 1f80: cf821fbc cf821f90 c0091278 c010d24c c0245c58 353337b0
00000031 00000000
[ 26.224456] 1fa0: 00000192 c05cc180 00000000 00000000 cf821fd4 c002d5b8
c002d5fc 00000000
[ 26.232910] 1fc0: 00000000 00000000 cf821ff4 cf821fd8 c00083fc c003b29c
00000000 00000001
[ 26.241363] 1fe0: 00000000 00000000 00000000 cf821ff8 c0063b88 c0008384
003ffe00 09fbfa00
[ 26.249786] Backtrace:
[ 26.252288] [<c031d308>] (musb_interrupt+0x0/0xc28) from [<c031df98>]
(generic_interrupt+0x68/0xa8)
[ 26.261474] [<c031df30>] (generic_interrupt+0x0/0xa8) from [<c008efc4>]
(handle_IRQ_event+0x3c/0x74)
[ 26.270751] r5:00000000 r4:cf9fad20
[ 26.274383] [<c008ef88>] (handle_IRQ_event+0x0/0x74) from [<c00907a8>]
(handle_level_irq+0xcc/0x14c)
[ 26.283630] r7:00000003 r6:cf9fad20 r5:0000005c r4:c05cd714
[ 26.289398] [<c00906dc>] (handle_level_irq+0x0/0x14c) from [<c003b058>]
(__exception_text_start+0x58/0x70)
[ 26.299194] r6:cf820000 r5:00000000 r4:0000005c
[ 26.303894] [<c003b000>] (__exception_text_start+0x0/0x70) from
[<c003ba84>] (__irq_svc+0x44/0xa4)
[ 26.312988] Exception stack(0xcf821ef0 to 0xcf821f38)
[ 26.318084] 1ee0: 00000000 0000000f
00000000 c05c0a08
[ 26.326538] 1f00: c05c49e4 60000013 cf820000 c05fd140 c05c8e80 00000000
00000000 cf821f5c
[ 26.334991] 1f20: cf821f08 cf821f38 c0044b94 c0013b24 60000013 ffffffff
[ 26.343414] r5:d8200000 r4:ffffffff
[ 26.347045] [<c0013a9c>] (clk_disable_unused+0x0/0xc8) from [<c003b2e8>]
(do_one_initcall+0x58/0x198)
[ 26.356414] r8:00000001 r7:c0013a9c r6:00000000 r5:c002d5fc r4:c002d5b8
[ 26.363250] [<c003b290>] (do_one_initcall+0x0/0x198) from [<c00083fc>]
(kernel_init+0x84/0xf4)
[ 26.371978] r8:00000000 r7:00000000 r6:00000000 r5:c002d5fc r4:c002d5b8
[ 26.378814] [<c0008378>] (kernel_init+0x0/0xf4) from [<c0063b88>]
(do_exit+0x0/0x7b4)
[ 26.386779] r5:00000000 r4:00000000
[ 26.390411] Code: e3530003 13a02000 0596308c 05933014 (05d33014)
[ 26.396667] Kernel panic - not syncing: Fatal exception in interrupt

======================== End

My printenv:

======================== Start
bootdelay=10
baudrate=115200
loadaddr=0x80200000
rdaddr=0x81600000
console=ttyS2,115200n8
optargs=
mmcargs=setenv bootargs console=${console} ${optargs} root=/dev/mmcblk0p2 rw
rootfstype=ext3 rootwait
ramargs=setenv bootargs console=${console} ${optargs} root=/dev/ram0 rw
ramdisk_size=32768 initrd=${rdaddr},32M
ubifsargs=setenv bootargs console=${console} ${optargs} root=ubi0:beagleroot
ubi.mtd=4 rw rootfstype=ubifs
jffs2args=setenv bootargs console=${console} ${optargs} root=/dev/mtdblock4 rw
rootfstype=jffs2
loadbootscript=fatload mmc 0 ${loadaddr} boot.scr
bootscript=echo Running bootscript from mmc ...; autoscr ${loadaddr}
loaduimage=fatload mmc 0 ${loadaddr} uImage.bin
loadramdisk=fatload mmc 0 ${rdaddr} ramdisk.gz
ramboot=echo Booting from ramdisk.gz ...; run ramargs; bootm ${loadaddr}
mmcboot=echo Booting from mmc ...; run mmcargs; bootm ${loadaddr}
nandboot=echo Booting from nand ...; run jffs2args; nand read ${loadaddr}
280000 400000; bootm ${loadaddr}
usbtty=cdc_acm
serial=6966000300000000040323091000d006
dieid#=6966000300000000040323091000d006
stdin=serial
stdout=serial
stderr=serial
bootargs=console=ttyS2,115200n8 console=tty0 root=/dev/mmcblk0p2 rw rootwait
filesize=2DB9B8
bootcmd=mmcinit ; fatload mmc 0:1 0x80000000 uimage ; bootm 0x80000000

======================== End

  I'm going to make up an SD card with the Angstrom demo stuff and see if that
boots. I've been booting custom inages without a problem until now.

  8-Dale

Something's screwed up with your USBOTG. The lost reset IRQ could be very well related to the kernel panic, since that seems to be coming from the USBOTG interrupt handler. The print statement comes from here:

http://lxr.linux.no/#linux+v2.6.29/drivers/usb/musb/musb_gadget_ep0.c#L720

Do you have anything connected to the USBOTG? What if you unplug it?

Dale Weber wrote:
...

[ 23.353576] console [ttyS2] enabled [ 23.871368] musb_hdrc: peripheral reset irq lost! [ 23.889648] brd: module loaded [ 23.899383] loop: module loaded

...

I only use power from the USBOTG port. Nothing else is connected to it.

  8-Dale

I fixed one problem - there was a problem with my recovery sd card. I
reformatted the fat partition, recopied everything in the proper order and
with the required file naming. This works and boots perfectly now. Now I have a
known good recovery sd card in case problems arise again. :slight_smile:

  I also created a new sd card with a known good image and the MLO and u-
boot.bin from the Angstrom demo image. That card boots perfectly. So far, my
beagle is booting fine without kernel panics. I'l continue a bit of testing to
make sure everything is really OK now, but so far things seem to be working
properly again.

  8-Dale

Are you using a USB charger? If you're plugged into a PC, the PC will try to enumerate Beagle. I'd try running with just the AC charger and see what happens. I don't have any concrete suggestions, I think you need to find a way to eliminate whether this is a SW or a HW issue first... Do you have the opportunity to run the same kernel on a different board?

Dale Weber wrote:

Since I haven't really posted about what I am going to use my BeagleBoard
for, I thought I'd take a brief pause and do that. :slight_smile:

  I'm planning to use my BeagleBoard as the main brain for my robot,
W.A.L.T.E.R., which I am in the process of rebuilding into a four wheel setup
now. I am almost done building the software image for W.A.L.T.E.R. now, which
consists of Python, a web server (Apache2 and/or Cherokee), and IRC bot
(Phenny, also written in Python), and a web framework (DJango, also in
Python). All of the robot software will be written in Python and integrated
with DJango.

  So far, it looks like I will be able to do pretty much everything I want to
do for W.A.L.T.E.R.'s control software with Python and DJango. Eventually, I
hope to add an LCD with touchscreen interface and a complete GUI for manual
setup and control.

  Wireless will also figure in as a major part eventually, and will allow
wireless control of W.A.L.T.E.R. through a wireless remote control I hope to
build around an Arduino Mega and XBee (ZigBee). I've already got two series
2.5 XBee modules I have been tinkering with, and will be tinkering with WiFi
also for access to W.A.L.T.E.R. via my WLAN and the wider internet.

  I believe I have a good scheme for powering the BeagleBoard from a standard
R/C battery pack. I'm planning to use a SparkFun breadboard power supply
(switchable between 3.3V and 5V output) with a barrel plug soldered in place
of the usual breadboard pins. The plug will go into a 3 port hub with ethernet
I got from Special Computing, and the BeagleBoard will get power from the hub.

  I also plan to get a TCT Zippy expansion board for W.A.L.T.E.R. This will
give me easy access to 5V I2C, a second serial port, second SD/MMC slot for
data storage, and ethernet, I also want to get a TCT Trainer once it is
available, since it has an Atmega328 processor on it, and easy access to I2C
and SPI.

I'm also planning to use at least one additional processor board on
W.A.L.T.E.R. which will be connected via USB. I have a Society of Robotics
AXON (Atmega640), standard Arduino (Atmega328p), and Sanguino (Atmega644p)
boards I plan to connect to Beagle and experiment with.

  8-Dale

WOW. Is there a website where I can track these developments, more, contribute if I can?

Yes, of course. :slight_smile: The sites are in my signature below. I'm posting all new
stuff on my Wiki and Blog.

  I'm still working out some software and hardware items, but I think what I
want to do is very realistic and workable. I have to install some software
natively on the BeagleBoard because the OE recipes either don't work, don't
install the most current releases, or don't exist. This is all going very
well so far.

  I'm using an 8 GB SDHC card for development, with three partitions setup on
it. The third partition is where I put my software archives to be installed
natively.

  8-Dale