linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: thomas.petazzoni@free-electrons.com (Thomas Petazzoni)
To: linux-arm-kernel@lists.infradead.org
Subject: IGEPv2 audio problem
Date: Sun, 16 Jun 2013 15:34:06 +0200	[thread overview]
Message-ID: <20130616153406.1c8096fa@skate> (raw)
In-Reply-To: <51BDAD7F.8090303@collabora.co.uk>

Dear Javier Martinez Canillas,

Thanks for your quick feedback!

On Sun, 16 Jun 2013 14:20:15 +0200, Javier Martinez Canillas wrote:

> Are you booting with DeviceTree or legacy using the IGEPv2 board file?

I was booting legacy with the IGEPv2 board file.

> I can take a look to this but I don't know if Tony is still accepting bugfixes
> for board files.
> 
> twl4030 based audio should already work with DT as far as I know.
> 
> Can you please try using DT? I don't have access to my IGEPv2 right now but I'm
> going to try with both DT and legacy boot too.

I've tried DT based boot right now, and it doesn't work any better:

# aplay test.wav 
[  172.044494] omap-dma-engine 48056000.dma-controller: allocating channel for 33
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
aplay: pcm_write[  192.184661] omap-dma-engine 48056000.dma-controller: freeing channel for 33
:1737: write error: Input/output error

and I still have the following message in dmesg:

[  182.083740] ALSA pcm_lib.c:1942 playback write error (DMA or IRQ trouble?)

And I'm really booting the DT way:

$ dmesg | grep Flattened
[    0.000000] Machine: Generic OMAP3 (Flattened Device Tree), model: IGEPv2

Also, there is a fairly significant issue with the DT based booting:
the Ethernet controller is not enabled apparently.

I must admit I really don't understand the way mach-omap2 is handling
the migration from legacy booting to DT-based booting. Right now, you
have the choice between:

 (*) Legacy booting, with which you get support for all devices, but as
     you said, if something breaks, it may not get fixed as legacy booting
     is deprecated.

 (*) DT booting, which is supported, but not all devices are enabled
     because some of them are handled by drivers that still lack a DT
     binding.

Why isn't the mach-omap2 world following the path that other platforms
have followed, such as mach-kirkwood, where the migration to the DT is
done progressively? When a board is converted to the DT, the
possibility of booting it the legacy way is removed, but all the
devices that cannot be initialized through DT remain initialized using
C function calls and platform_device. This offers a smooth transition
to end users. See
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/mach-kirkwood/board-dt.c#n109
for details on how it is done on Kirkwood platforms. For example,
Kirkwood still lacks a DT binding for its Ethernet driver, but the
Ethernet interface(s) still get probed the old way even if you're
booting through DT.

That said, in this particular case, it seems like audio doesn't work
regarless of the boot method. But if audio gets fixed for DT based
booting, it will be pretty useless: an IGEPv2 without Ethernet is not
very useful.

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

  reply	other threads:[~2013-06-16 13:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20130616135208.3f124c2c@skate>
2013-06-16 12:20 ` IGEPv2 audio problem Javier Martinez Canillas
2013-06-16 13:34   ` Thomas Petazzoni [this message]
2013-06-16 15:43     ` Javier Martinez Canillas
2013-06-16 16:10       ` Thomas Petazzoni
2013-06-17  7:40         ` Tony Lindgren
2013-06-17  7:34   ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130616153406.1c8096fa@skate \
    --to=thomas.petazzoni@free-electrons.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).