* Nathan Monson <nmonson@xxxxxxxxx> [081016 15:15]: > On Thu, Oct 16, 2008 at 3:10 PM, Tony Lindgren <tony@xxxxxxxxxxx> wrote: > > No.. And I also got some -33 errors here too :( So back to the drawing > > board. > > > > Could you post step by step instructions on how you can reproduce your > > problem? > > I'm running the DSP Bridge patches in my kernel. I got them set up > using this guide: > http://elinux.org/BeagleBoard/DSP_Howto > > That guide also points to some sample binaries, including 'ping.out', > which is a simple round-trip test between the DSP and ARM. > > To reproduce, I do this: > 1) Boot kernel with mem=122m > 2) modprobe bridgedriver phys_mempool_base=0x87a00000 > phys_mempool_size=0x600000 > base_img=/home/root/dsp/ddspbase_tiomap3430.dof64P > 3) while true; do ./ping.out; done > > This ALWAYS reproduces within seconds. > > If the DSP patches are too much work to get set up, I've also heard > that people can reproduce this issue by playing movie files with > mplayer on Angstrom. Thanks, I'll set that up when I get a chance. Meanwhile, here's one more patch for you to test if you have a chance. Maybe also do a power off for few seconds before booting with this just in case. If this still does not help, then we'll use the strongly ordered patch for now, and tag v2.6.27-omap1 tomorrow. Then we can continue debugging the issue until we fully understand it. Tony
--- a/arch/arm/mach-omap2/irq.c +++ b/arch/arm/mach-omap2/irq.c @@ -53,6 +53,7 @@ static struct omap_irq_bank { static void intc_bank_write_reg(u32 val, struct omap_irq_bank *bank, u16 reg) { __raw_writel(val, bank->base_reg + reg); + __raw_readl(bank->base_reg + reg); } static u32 intc_bank_read_reg(struct omap_irq_bank *bank, u16 reg)