OSS or OSS Emulator Image

Hi,

Is there a uImage for Beagleboard with the OSS (rather than Alsa) or
the OSS Emulator (on top of Alsa) built in that anyone knows of? The
uImage_OTG that I'm using appears to have only Alsa.

Thanks very much.

Best regards,
Geof

All angstrom uImages have oss emulation enabled.

In this case, I'm looking for a kernel image built with the Code
Sourcery toolchain -- so I can run an application that was built on
the Mistral OMAP board. Unfortunately, there seems to be a tools
mismatch between Angstrom and the TI kernels. Does that make sense,
or am I too much of an amateur?

When I run the application under Angstrom (and that is my ultimate
goal), it goes looking for some libraries that aren't there (C++ for
example). And right now, I just have the binary of the application.
So I can't rebuild it under Angstrom easily. And the application uses
OSS -- hence my need for OSS. So I'm thinking if I had an OSS kernel
from Code Sourcery, the application might run. It runs now, but
without any sound output.

One last note... I have yet to get mplayer to work under Angstrom
with audio because it gets a kernel panic every time I give it a sound
to play. So I don't think I'm using OSS emulation properly yet under
Angstrom either.

Thanks very much for all the help. I truly appreciate it.

Best regards,
Geof

In this case, I'm looking for a kernel image built with the Code
Sourcery toolchain -- so I can run an application that was built on
the Mistral OMAP board. Unfortunately, there seems to be a tools
mismatch between Angstrom and the TI kernels. Does that make sense,
or am I too much of an amateur?

All angstrom omap3 kernels are built with a CSL compiler.

regards,

Koen

> In this case, I'm looking for a kernel image built with the Code
> Sourcery toolchain -- so I can run an application that was built on
> the Mistral OMAP board. Unfortunately, there seems to be a tools
> mismatch between Angstrom and the TI kernels. Does that make sense,
> or am I too much of an amateur?

All angstrom omap3 kernels are built with a CSL compiler.

The null pointer dereference should be solved with
http://www.angstrom-distribution.org/demo/beagleboard/uImage

I just tried the new uImage... Same problem.

mplayer -nosound filename <---- works fine
mplayer -ao oss filename <---- kernel panics
mplayer filename <---- kernel panics

Sorry.

Geof

I just tried the new uImage... Same problem.

mplayer -nosound filename <---- works fine
mplayer -ao oss filename <---- kernel panics
mplayer filename <---- kernel panics

I'm on my third John Prine mp3 now.

How does it die? I do have problems with the int13 (not sure about the
exact message, it took out the machine with the usb serial console
...). I do not see the kernel dumps.

Basically, I had to reboot several times, then it worked. And yes,
this is much better than before :slight_smile:

Philip

Ok. I tried an mp3 file to the same result. Are there switches I'm
supposed to use with mplayer?

The first file that I was using was an MPEG4 / AAC movie. With a
plain MP3, it prints out:

Audio file file format detected.
Clip info:
Title: Because
Artist: The Beatles
Album: LOVE
Year: 2006
Comment:
Genre: Other

Ok. I tried an mp3 file to the same result. Are there switches I'm
supposed to use with mplayer?

The first file that I was using was an MPEG4 / AAC movie. With a
plain MP3, it prints out:

Can you try this:

root@beagleboard:~# gzip -dc /proc/config.gz | grep CONFIG_SLAB
CONFIG_SLAB=y
CONFIG_SLABINFO=y

to make sure that CONFIG_SLAB is selected. Also try grepping for CONFIG_SLUB.

Philip

CONFIG_SLAB is not set
CONFIG_SLABINFO=y
CONFIG_SLUB_DEBUG=y
CONFIG_SLUB=y
CONFIG_SLIB_DEBUG_ON is not set
CONFIG_SLUB_STATS is not set

How do I turn SLAB on?

Thanks.
Geof

CONFIG_SLAB is not set
CONFIG_SLABINFO=y
CONFIG_SLUB_DEBUG=y
CONFIG_SLUB=y
CONFIG_SLIB_DEBUG_ON is not set
CONFIG_SLUB_STATS is not set

That looks like an old image

How do I turn SLAB on?

are you sure that the image you downloaded from
http://www.angstrom-distribution.org/demo/beagleboard/uImage is being
booted?

regards,

Koen

Sorry, but I had a bad bootup.

I am actually getting:

CONFIG_SLAB=y
CONFIG_SLABINFO=y
CONFIG_SLUB is not set

But I am still crashing.

Unable to handle kernel NULL pointer dereference at virtual address
00000000
pgd = c707c000
[00000000] *pgd=8723e031, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#1]
Modules linked in:
CPU: 0 Not tainted (2.6.26-omap1 #1)
PC is at __wake_up_common+0x20/0x80
LR is at complete+0x3c/0x48
pc : [<c004e8d0>] lr : [<c004e9cc>] psr: 40000193
sp : c722bb88 ip : c722bbb8 fp : c722bbb4
r10: c03aa7ca r9 : 00000003 r8 : c7c3f70c
r7 : 0000003e r6 : 00000001 r5 : 00000000 r4 : fffffff4
r3 : 00000000 r2 : 00000001 r1 : 00000003 r0 : 00000000
Flags: nZcv IRQs off FIQs on Mode SVC_32 ISA ARM Segment user
Control: 00c5387f Table: 8707c018 DAC: 00000015
Process mplayer (pid: 1878, stack limit = 0xc722a2e8)
Stack: (0xc722bb88 to 0xc722c000)
bb80: 00000000 40000113 00000000 00000000 0000003e
00000000
bba0: c7c3f6e0 c03aa7ca c722bbd4 c722bbb8 c004e9cc c004e8bc 00000000
c004ffac
bbc0: c722bbe4 c708aa20 c722bbe4 c722bbd8 c004bfe4 c004e99c c722bc04
c722bbe8
bbe0: c007c004 c004bfdc c040a97c 0000003e 00000000 c708aa20 c722bc1c
c722bc08
bc00: c007d8d8 c007bfd4 0000003e c040a97c c722bc3c c722bc20 c0034048
c007d810
bc20: ffffffff d8200000 0000003e c708aa20 c722bcac c722bc40 c00346b0
c003400c
bc40: 00000000 c0400398 000000a8 00000000 c040a97c 40000013 0000003e
c708aa20
bc60: 00000000 c7c3f6e0 c03aa7ca c722bcac c722bc50 c722bc88 c003d060
c007c868
bc80: 60000013 ffffffff c708aa20 0000003e 00000000 c004bfd0 00000000
c7c3f6e0
bca0: c722bcdc c722bcb0 c007c958 c007c6cc c03aa7ca c7c3f6e0 c7d7d800
c0423be8
bcc0: c7c631c0 c0423cf0 c0423bac c60bd8e0 c722bcfc c722bce0 c004ca64
c007c8cc
bce0: c7c3f6e0 c7d7d800 c0423ab8 c7d7d800 c722bd0c c722bd00 c025fac8
c004c99c
bd00: c722bd44 c722bd10 c025c1a4 c025faa0 0000000b c0423c98 c722bd4c
00000000
bd20: c722bddc c708ac80 c7d73000 c722bd80 00000000 c60bd8e0 c722bd64
c722bd48
bd40: c023f414 c025c160 0000000e c7c631c0 0000000e c722bda8 c722be0c
c722bd68
bd60: c024f360 c023f3c4 c7839658 c7074100 00000001 c722a000 0000000e
00000003
bd80: 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000
bda0: 00000000 00000000 616c706d 00726579 652d6c61 006c756d c7d6b300
c0410398
bdc0: c722bdec c722bdd0 00000000 c7cc15e0 c005009c c7d73138 c7d73138
c7d6ade0
bde0: c722bdfc c0336af0 00000003 00000003 c60bd8e0 c7074100 c722a000
c7839658
be00: c722be34 c722be10 c02331d8 c024f148 00000000 c7d6ade0 c7074100
00000000
be20: c60bd8e0 c722a000 c722be64 c722be38 c00a3968 c02330e0 c00a8140
00000003
be40: c7074100 c60bd8e0 c7074100 c00a382c 00000000 c7c0cda0 c722be8c
c722be68
be60: c009f1b8 c00a3838 c60bd8e0 c722bed8 ffffff9c 00000007 00020802
006661e8
be80: c722beac c722be90 c009f308 c009f08c 00000000 c722bed8 ffffff9c
00000000
bea0: c722bf64 c722beb0 c00abf50 c009f2dc 00020802 c017842c c722bf04
00000000
bec0: 00020801 00000002 c711a498 00000000 00000144 00000017 c7c0cda0
c7839658
bee0: 00000017 c722bfb0 000521c8 00000101 00000001 00000000 c722bfac
c722bf08
bf00: c00341e8 c0039e6c c707c000 c73d6000 c722bf44 ffffffff 00000007
00020802
bf20: 00000000 c60bd8e0 00020801 c722a000 c722bf64 c722bf40 c009ee9c
00020801
bf40: 00000000 ffffff9c 00000007 c7181000 c722a000 006661e8 c722bf94
c722bf68
bf60: c009ef80 c00abc1c 00000002 0000ac44 c722bf9c 00000000 00000801
0055ddc8
bf80: 00000005 c0034c84 c722bfa4 c722bf98 c009f048 c009ef34 00000000
c722bfa8
bfa0: c0034b00 c009f030 00000000 00000801 0055ddc8 00020801 00000000
000021d4
bfc0: 00000000 00000801 0055ddc8 00000005 006661e4 bed9e914 006661e8
00000002
bfe0: 00638a28 bed9e850 000519f8 400ccf78 60000010 0055ddc8 746f6e20
74657320
Backtrace:
[<c004e8b0>] (__wake_up_common+0x0/0x80) from [<c004e9cc>] (complete
+0x3c/0x48)
[<c004e990>] (complete+0x0/0x48) from [<c004bfe4>]
(omap_mcbsp_tx_irq_handler+0x14/0x1c)
r4:c708aa20
[<c004bfd0>] (omap_mcbsp_tx_irq_handler+0x0/0x1c) from [<c007c004>]
(handle_IRQ_event+0x3c/0x74)
[<c007bfc8>] (handle_IRQ_event+0x0/0x74) from [<c007d8d8>]
(handle_level_irq+0xd4/0xf0)
r7:c708aa20 r6:00000000 r5:0000003e r4:c040a97c
[<c007d804>] (handle_level_irq+0x0/0xf0) from [<c0034048>]
(__exception_text_start+0x48/0x64)
r5:c040a97c r4:0000003e
[<c0034000>] (__exception_text_start+0x0/0x64) from [<c00346b0>]
(__irq_svc+0x30/0x80)
Exception stack(0xc722bc40 to 0xc722bc88)
bc40: 00000000 c0400398 000000a8 00000000 c040a97c 40000013 0000003e
c708aa20
bc60: 00000000 c7c3f6e0 c03aa7ca c722bcac c722bc50 c722bc88 c003d060
c007c868
bc80: 60000013 ffffffff
r7:c708aa20 r6:0000003e r5:d8200000 r4:ffffffff
[<c007c6c0>] (setup_irq+0x0/0x200) from [<c007c958>] (request_irq
+0x98/0xc0)
r9:c7c3f6e0 r8:00000000 r7:c004bfd0 r6:00000000 r5:0000003e
r4:c708aa20
[<c007c8c0>] (request_irq+0x0/0xc0) from [<c004ca64>]
(omap_mcbsp_request+0xd4/0x1a8)
[<c004c990>] (omap_mcbsp_request+0x0/0x1a8) from [<c025fac8>]
(omap_mcbsp_dai_startup+0x34/0x38)
r5:c7d7d800 r4:c0423ab8
[<c025fa94>] (omap_mcbsp_dai_startup+0x0/0x38) from [<c025c1a4>]
(soc_pcm_open+0x50/0x354)
[<c025c154>] (soc_pcm_open+0x0/0x354) from [<c023f414>]
(snd_pcm_open_substream+0x5c/0xa4)
[<c023f3b8>] (snd_pcm_open_substream+0x0/0xa4) from [<c024f360>]
(snd_pcm_oss_open+0x224/0x414)
r5:c722bda8 r4:0000000e
[<c024f13c>] (snd_pcm_oss_open+0x0/0x414) from [<c02331d8>]
(soundcore_open+0x104/0x18c)
[<c02330d4>] (soundcore_open+0x0/0x18c) from [<c00a3968>] (chrdev_open
+0x13c/0x15c)
r9:c722a000 r8:c60bd8e0 r7:00000000 r6:c7074100 r5:c7d6ade0
r4:00000000
[<c00a382c>] (chrdev_open+0x0/0x15c) from [<c009f1b8>] (__dentry_open
+0x138/0x250)
r8:c7c0cda0 r7:00000000 r6:c00a382c r5:c7074100 r4:c60bd8e0
[<c009f080>] (__dentry_open+0x0/0x250) from [<c009f308>]
(nameidata_to_filp+0x38/0x50)
[<c009f2d0>] (nameidata_to_filp+0x0/0x50) from [<c00abf50>]
(do_filp_open+0x340/0x6f8)
r4:00000000
[<c00abc10>] (do_filp_open+0x0/0x6f8) from [<c009ef80>] (do_sys_open
+0x58/0xe8)
[<c009ef28>] (do_sys_open+0x0/0xe8) from [<c009f048>] (sys_open
+0x24/0x28)
r8:c0034c84 r7:00000005 r6:0055ddc8 r5:00000801 r4:00000000
[<c009f024>] (sys_open+0x0/0x28) from [<c0034b00>] (ret_fast_syscall
+0x0/0x2c)
Code: e5900000 e1a09001 e240400c e1a06002 (e594100c)
Kernel panic - not syncing: Fatal exception in interrupt
Geof

Success... I rebuilt Angstrom with .27 and the audio is now working.
I still have yet to rebuild the whole beagleboard-demo-image, but I
expect it will be ok because my console-image (with mplayer added)
seems to be working well.

Specifically, what I did was to:

  Change the file: $OE_HOME/org.openembedded.dev/conf/machine/
beagleboard.conf

  from:
    PREFERRED_PROVIDER_virtual/kernel = "linux-omap2"
  to:
    PREFERRED_PROVIDER_virtual/kernel = "linux-omap"

  And then rebuild.

Thanks to Philip Balister for the help and guidance.

Best regards,
Geof

We moved from OSS to ALSA on TI kernel as well, we don't have a port.
The 2430 ones had OSS I am sure the code is still their in the kernel
you might have to track it a bit.

Regards,
Khasim

Hi,

I still cannot get a fully working audio AND video working on Beagle
under Angstrom. If you have any ideas, please let me know. Here is
what I've done so far:

- I have tried two different Beagleboards -- same results.

- I have tried different uImage builds and rootfs builds.

- If I use the Angstrom Beagle Demo (uImage 9/25, rootfs 9/20),
Angstrom boots well, and video plays. But as soon as I play audio
(either through mplayer or xmms), the system crashes with a kernel
panic. See above for the details there. I have rebuilt this from
scratch on my own system -- with the same results.

- I also built a ".27" beagleboard-demo-image of Angstrom by changing
the org.openembedded.dev/conf/machine/beagleboard.conf file:

- This yielded a different result. Now with .27, the sound appears to
work. But the DVI-D output no longer works. So my console terminal
ttyS2 is ok. But tty0 is gone, and the X-Windows etc. doesn't work.
The monitor reports a bad signal timing and shuts off.

My bootargs are:

setenv bootargs console=ttyS2,115200n8 console=tty0 root=/dev/
mmcblk0p2 rootdelay=2 rootfstype=ext3 video=omapfb:vram:2M,vram:4M
setenv bootcmd 'mmcinit; fatload mmc 0 0x80300000 uImage; bootm
0x80300000'

So my conclusion is that there is something broken about DVI output
in .27, and something broken about sound in .26.

Any ideas will be greatly appreciated.

Thanks very much.

Best regards,
Geof Cohler

The .27 kernel includes mrus mode selection patch[1], so you could try
a few of those in bootargs to see if any of those work. FWIW, both
kernels work on my iiyama AU5131 screen, but that has a sync range
wide enough to drive a truck through.

regards,

Koen

[1] http://git.mansr.com/?p=linux-omap;a=commitdiff;h=442649baff3d7fd76ac920ceb767dc0bb2fe699b

Both also work on my DELL (can't find the model #)

Philip

Ok, you may be onto something. I looked in the bootup message trail
and this is what I find for omapfb:

omapfb: using mode
1024x768@60 <==============
this looks right.
omapfb: configured for panel omap3beagle
omapfb: DISPC version 3.0 initialized
Console: switching to colour frame buffer device 128x48
omapfb: Framebuffer initialized. Total vram 6291456 planes 2
omapfb: Pixclock 48000 kHz hfreq 40.5405 kHz vfreq 51.3 Hz
<============= this doesn't. shouldn't it be 60Hz not 51.3

For some reason it appears to be setting my DVI screen to 51 Hz. The
1024x768@60 is the right mode. Plus, I see the Beagle Board stuff
when the boot loader is loading. So my monitor is ok.

Best regards,
Geof

One more datapoint...

Here is what I get when I go through the log of the old 9/25 uImage
bootup in re omapfb

omapfb: configured for panel omap3beagle
clock: clksel_round_rate_div: dpll4_m4_ck target_rate 108000000
clock: new_div = 4, new_rate = 108000000
omapfb: DISPC version 3.0 initialized
Console: switching to colour frame buffer device 128x48
omapfb: Framebuffer initialized. Total vram 6291456 planes 2
omapfb: Pixclock 54000 kHz hfreq 45.6081 kHz vfreq 57.7 Hz

So from what I can tell, the new driver is setting the clocks wrong.

Thanks.
Geof

More investigation...

in the omapfb_main.c driver: It specifies what the various modes
are. For mode:1024x768@60, it specifies a pixelclock of 56000 KHz.
But it appears that somewhere in the code, the 56,000 in panel-

pixel_clock is getting replace with 48,000. This leads to a bad

setting for the HHz and VHz. Probably causing the lack of video.

Best regards,
Geof