diff mbox

writing an alsa driver

Message ID 20150604085933.GA8494@dellaz (mailing list archive)
State New, archived
Headers show

Commit Message

Michele Curti June 4, 2015, 8:59 a.m. UTC
On Mon, Jun 01, 2015 at 12:06:08PM +0100, Liam Girdwood wrote:
> + Jarkko
> 
> On Fri, 2015-05-29 at 15:17 +0200, Michele Curti wrote:
> > On Fri, May 29, 2015 at 10:42:01AM +0100, Liam Girdwood wrote:
> > > On Thu, 2015-05-28 at 21:17 +0200, Michele Curti wrote:
> > > 
> > > > to let the probe continue, the system become quite unusable but I get the 
> > > > logs.
> > > > 
> > > > May 28 20:34:00 asus kernel: byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: initialising Byt DSP IPC
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: initialising audio DSP id 0xf28
> > > > May 28 20:34:00 asus kernel: irq used for dsp = 6
> > > > 
> > > > ---> The IRQ number used is 6
> > > > 
> 
> Jarkko thinks the IRQ may be incorrectly reported by ACPI and that it
> could be using another ACPI index. This could probably be checked by
> decompiling the ACPi data and searching for the audio DSP.

Thanks, I'll try.

I'm back now from a period of limited internet access, I tried to change the
irqindex_host_ipc to 0 (like the others platforms)


and the sound card showed up.  So I tried to play a bit with alsamixer and got
some cracking noise.

Tried to play some songs but a song of 4 minutes finished in about a dozen of
seconds..  Maybe the clocks are not correctly configured..

After a while I smelt a smell of burnt components and the chassis near the
speakers was hot like hell.  Shutdown the laptop.

Now I'm not sure the hardware is damaged, after a couple of hours I tried to
reboot and got a (strange) beep during boot, so maybe I was lucky..

Anyway, now I removed the change.

> 
> > > > May 28 20:34:00 asus kernel: [101B blob data]
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x160 bytes at offset 0xc0000 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block allocated 0:0 at offset 0xc0000
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x170 bytes at offset 0xc0400 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x10 bytes at offset 0xc0578 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x10 bytes at offset 0xc0598 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x10 bytes at offset 0xc05b8 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x10 bytes at offset 0xc05d8 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x10 bytes at offset 0xc05f8 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x8 bytes at offset 0xc0618 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x10 bytes at offset 0xc0638 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x30 bytes at offset 0xc0658 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x10438 bytes at offset 0xc06a0 type 0
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block allocated 0:1 at offset 0xc8000
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block allocated 0:2 at offset 0xd0000
> > > > May 28 20:34:00 asus kernel: rt5645 i2c-10EC5648:00: Requesting IRQ 146
> > > > May 28 20:34:00 asus kernel: rt5645 i2c-10EC5648:00: Requesting gpio 0
> > > > May 28 20:34:00 asus kernel: rt5645 i2c-10EC5648:00: Fail gpio_request hp_det_gpio
> > > > May 28 20:34:00 asus kernel: gpiod_direction_input: invalid GPIO
> > > > May 28 20:34:00 asus kernel: rt5645 i2c-10EC5648:00: Fail gpio_direction hp_det_gpio
> > > > May 28 20:34:00 asus kernel: byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x1a310 bytes at offset 0x400000 type 3
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x5738 bytes at offset 0x100010 type 1
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block allocated 1:0 at offset 0x100000
> > > > May 28 20:34:00 asus kernel: Linux video capture interface: v2.00
> > > > May 28 20:34:00 asus kernel: intel_rapl: Found RAPL domain package
> > > > May 28 20:34:00 asus kernel: intel_rapl: Found RAPL domain core
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block request 0x10ad8 bytes at offset 0x105750 type 1
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block allocated 1:1 at offset 0x108000
> > > > May 28 20:34:00 asus kernel: baytrail-pcm-audio baytrail-pcm-audio: block allocated 1:2 at offset 0x110000
> > > > May 28 20:34:00 asus kernel: byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > > 
> > > 
> > > This is confusing as we can see messages about the baytrail-pcm-audio
> > > device not being registered and then valid messages from said device ?
> > > I'm wondering if you have created 2 baytrail-pcm-audio devices ? The
> > > ordering is also confusing since the block allocation should come before
> > > the DSP boot....
> > > 
> > > Can you paste the diff for all the audio changes you have made and also
> > > the output of lsmod when this happens.
> > >
> > 
> > Sure, sorry for the number of attachments.. :p
> 
> Ok, I can see something that might be causing the potential double
> registration of the PCM driver. Can you change the cpu_dai_name in your
> machine driver to "Baytrail PCM".

Will do, thanks,
Michele

> 
> Liam
>

Comments

Liam Girdwood June 4, 2015, 10:33 a.m. UTC | #1
On Thu, 2015-06-04 at 10:59 +0200, Michele Curti wrote:
> I'm back now from a period of limited internet access, I tried to
> change the
> irqindex_host_ipc to 0 (like the others platforms)
> 
> diff --git a/sound/soc/intel/common/sst-acpi.c
> b/sound/soc/intel/common/sst-acpi.c
> index 42f293f..7cc64e3 100644
> --- a/sound/soc/intel/common/sst-acpi.c
> +++ b/sound/soc/intel/common/sst-acpi.c
> @@ -258,7 +258,7 @@ static struct sst_acpi_desc sst_acpi_baytrail_desc
> = {
>         .resindex_lpe_base = 0,
>         .resindex_pcicfg_base = 1,
>         .resindex_fw_base = 2,
> -       .irqindex_host_ipc = 5,
> +       .irqindex_host_ipc = 0,
>         .sst_id = SST_DEV_ID_BYT,
>         .resindex_dma_base = -1,
>  };
> 
> and the sound card showed up.  So I tried to play a bit with alsamixer
> and got
> some cracking noise.
> 
> Tried to play some songs but a song of 4 minutes finished in about a
> dozen of
> seconds..  Maybe the clocks are not correctly configured..
> 
> After a while I smelt a smell of burnt components and the chassis near
> the
> speakers was hot like hell.  Shutdown the laptop.
> 
> Now I'm not sure the hardware is damaged, after a couple of hours I
> tried to
> reboot and got a (strange) beep during boot, so maybe I was lucky..
> 
> Anyway, now I removed the change.

The speakers are probably being over powered so best to make sure with
alsamixer that all the gains are low or muted and all unused
inputs/outputs are muted or off before playing any audio. You can then
gradually increase the volume to the desired level. 

Liam
Juergen Bausa June 4, 2015, 5:44 p.m. UTC | #2
Liam Girdwood <liam.r.girdwood <at> linux.intel.com> writes:

> 
> > and the sound card showed up.  So I tried to play a bit with alsamixer
> > and got
> > some cracking noise.
> > 
> 
> The speakers are probably being over powered so best to make sure with
> alsamixer that all the gains are low or muted and all unused
> inputs/outputs are muted or off before playing any audio. You can then
> gradually increase the volume to the desired level. 
> 

Just found this thread. Really nice to hear, that some peaople are working
on this and that there is some progress (hope you didn't kill your soundchip).
I also have the x205 and really apreciate that you guys are putting
so much effort on it. Realy would like to help, but I have no knowledge
on sound or kernel programming.

Juergen
diff mbox

Patch

diff --git a/sound/soc/intel/common/sst-acpi.c b/sound/soc/intel/common/sst-acpi.c
index 42f293f..7cc64e3 100644
--- a/sound/soc/intel/common/sst-acpi.c
+++ b/sound/soc/intel/common/sst-acpi.c
@@ -258,7 +258,7 @@  static struct sst_acpi_desc sst_acpi_baytrail_desc = {
 	.resindex_lpe_base = 0,
 	.resindex_pcicfg_base = 1,
 	.resindex_fw_base = 2,
-	.irqindex_host_ipc = 5,
+	.irqindex_host_ipc = 0,
 	.sst_id = SST_DEV_ID_BYT,
 	.resindex_dma_base = -1,
 };