From: Michele Curti <michele.curti@gmail.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org
Subject: Re: writing an alsa driver
Date: Wed, 27 May 2015 10:54:40 +0200 [thread overview]
Message-ID: <20150527085440.GA4445@dellaz> (raw)
In-Reply-To: <s5h7fruecx4.wl-tiwai@suse.de>
On Wed, May 27, 2015 at 08:45:43AM +0200, Takashi Iwai wrote:
> At Sat, 23 May 2015 18:32:51 +0200,
> Michele Curti wrote:
> >
> > On Thu, May 21, 2015 at 04:52:32PM +0200, Michele Curti wrote:
> > > Hi all,
> > > I'm going to *try* to "write" a driver for the sound card on my new laptop,
> > > an asus x205ta.
> > >
> > > To be fair I have almost no experience but I'm hoping that all the code is
> > > already present and it only needs some adaptations.
> > >
> > > The cpu is a intel bay trail z3735f, the sound card is a realtek rt5648 that
> > > has the same product Id of the rt5645 (0x6308).
> > >
> > > I see in kernel sources:
> > > - the codec driver
> > > sound/soc/codecs/rt5645.c
> > > - a baytrail board that uses the rt5640
> > > sound/soc/intel/boards/byt-rt5640.c
> > > - a braswell board that uses the rt5645
> > > sound/soc/intel/boards/cht_bsw_rt5645.c
> > >
> > > What do you think? Is it feasible, given a good amount of free-time? :p
> > >
> > > Thanks,
> > > Michele
> >
> >
> > So I started.. :)
> > At the end of the email there is the patch.
> >
> >
> > What I did:
> > - copied the board file byt-rt5640.c to byt-rt5645.c
> > - find&replace 5640->5645 in byt-rt5645.c
> > - added acpi device id to detect the sound card
> > - added kernel config SND_SOC_INTEL_BYT_RT5645_MACH to select the driver
> >
> >
> > Nothing works.
> >
> > But at least the right modules are loaded it seems.. Here the output of
> > "lsmod | grep snd":
> > snd_soc_sst_baytrail_pcm 24576 0
> > snd_soc_sst_ipc 16384 1 snd_soc_sst_baytrail_pcm
> > snd_soc_sst_dsp 36864 2 snd_soc_sst_baytrail_pcm,snd_soc_sst_ipc
> > snd_soc_sst_byt_rt5645_mach 16384 0
> > snd_soc_rt5645 94208 0
> > regmap_i2c 16384 1 snd_soc_rt5645
> > snd_soc_rl6231 16384 1 snd_soc_rt5645
> > snd_soc_core 159744 3 snd_soc_rt5645,snd_soc_sst_baytrail_pcm,snd_soc_sst_byt_rt5645_mach
> > snd_compress 20480 1 snd_soc_core
> > dw_dmac_core 28672 2 dw_dmac,snd_soc_sst_dsp
> > snd_pcm 90112 3 snd_soc_rt5645,snd_soc_core,snd_soc_sst_baytrail_pcm
> > snd_timer 28672 1 snd_pcm
> > snd 57344 4 snd_soc_core,snd_timer,snd_pcm,snd_compress
> > soundcore 16384 1 snd
> > snd_soc_sst_acpi 16384 0
> >
> >
> > And dmesg tells me:
> > [ +1.386847] rt5645 i2c-10EC5648:00: Failed to reguest IRQ: -22
> > [ +0.000102] rt5645 i2c-10EC5648:00: Fail gpio_request hp_det_gpio
> > [ +0.000094] rt5645 i2c-10EC5648:00: Fail gpio_direction hp_det_gpio
> > [ +0.088989] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.062539] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.021995] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.001828] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.016646] i2c_hid i2c-PDEC3393:00: error in i2c_hid_init_report size:7 / ret_size:4
> > [ +0.002541] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.004755] brcmfmac: brcmf_sdio_drivestrengthinit: No SDIO Drive strength init done for chip 43340 rev 2 pmurev 20
> > [ +0.003586] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.002844] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.001705] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.011199] i2c_hid i2c-PDEC3393:00: error in i2c_hid_init_report size:19 / ret_size:4
> > [ +0.018094] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.067913] i2c_hid i2c-ELAN0100:00: error in i2c_hid_init_report size:633 / ret_size:7
> > [ +0.004378] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.000145] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.000980] i2c_hid i2c-ELAN0100:00: error in i2c_hid_init_report size:131 / ret_size:7
> > [ +0.000949] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.020845] (NULL device *): ipc: error DSP boot timeout
> > [ +0.213465] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.036706] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +0.008144] byt-rt5645 byt-rt5645: ASoC: CPU DAI baytrail-pcm-audio not registered
> > [ +1.811435] brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Jun 17 2014 11:48:43 version 6.10.190.49 (r485840) FWID 01-8744bcd2
> > [ +0.014526] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
> > [ +0.092535] brcmfmac: brcmf_add_if: ERROR: netdev:wlan0 already exists
> > [ +0.000011] brcmfmac: brcmf_add_if: ignore IF event
> >
> >
> > For now I'm at a standstill and I don't understand a lot of things...
> > I will read the code.. :)
> >
> > Regards,
> > Michele
> >
> > Signed-off-by: Michele Curti <michele.curti@gmail.com>
>
> Keyon, could you take a look?
>
>
> Takashi
Thank you! In that patch I did a typo:
> > index 0000000..5bdb56e
> > --- /dev/null
> > +++ b/sound/soc/intel/boards/byt-rt5645.c
> > @@ -0,0 +1,222 @@
> > +/*
[snip]
> > +
> > +static struct snd_soc_dai_link byt_rt5645_dais[] = {
> > + {
> > + .name = "Baytrail Audio",
> > + .stream_name = "Audio",
> > + .cpu_dai_name = "baytrail-pcm-audio",
> > + .codec_dai_name = "rt5645-aif1",
> > + .codec_name = "i2c-10EC56458:00",
here. This must be "i2c-10EC5648:00", but errors remain the same...
The error
> > [ +0.020845] (NULL device *): ipc: error DSP boot timeout
made me think that I chose the wrong platform/machine because:
- it is stange that device is NULL
- it is strange that dsp doesn't work after loading the firmware.
So instead of adapting the boards/byt-rt5640.c I tried to adapt
boards/bytcr_rt5640.c that uses
.cpu_dai_name = "ssp2-port",
.platform_name = "sst-mfld-platform",
I got a "dummy sound card" but no hardware sound card..
I remember that the errors
> > [ +1.386847] rt5645 i2c-10EC5648:00: Failed to reguest IRQ: -22
> > [ +0.000102] rt5645 i2c-10EC5648:00: Fail gpio_request hp_det_gpio
> > [ +0.000094] rt5645 i2c-10EC5648:00: Fail gpio_direction hp_det_gpio
remain. Now I don't have access to the laptop, so I cannot post the new
errors that showed up, but if you want me to make some experiments, I'll
do :)
Thanks,
Michele
PS: for the dumb things that I write, forgive me :p
next prev parent reply other threads:[~2015-05-27 8:54 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-21 14:52 writing an alsa driver Michele Curti
2015-05-23 16:32 ` Michele Curti
2015-05-27 6:45 ` Takashi Iwai
2015-05-27 8:54 ` Michele Curti [this message]
2015-05-27 18:41 ` Liam Girdwood
2015-05-27 20:13 ` Michele Curti
2015-05-28 11:31 ` Liam Girdwood
2015-05-28 12:53 ` Michele Curti
2015-05-28 13:21 ` Liam Girdwood
2015-05-28 19:17 ` Michele Curti
2015-05-29 9:42 ` Liam Girdwood
2015-05-29 13:17 ` Michele Curti
2015-06-01 11:06 ` Liam Girdwood
2015-06-04 7:09 ` Marcus Bannerman
2015-06-04 9:04 ` Michele Curti
2015-06-04 8:59 ` Michele Curti
2015-06-04 10:33 ` Liam Girdwood
2015-06-04 17:44 ` Juergen Bausa
2015-06-04 19:39 ` Michele Curti
2015-06-05 7:00 ` Jarkko Nikula
2015-06-08 8:26 ` Michele Curti
2015-06-08 8:49 ` Michele Curti
2015-06-13 13:47 ` Luka Karinja
2015-06-15 16:46 ` Michele Curti
2015-06-15 17:04 ` Liam Girdwood
2015-06-16 20:50 ` Michele Curti
2015-06-17 9:16 ` Liam Girdwood
2015-06-17 21:34 ` Michele Curti
2015-06-18 11:14 ` Vinod Koul
2015-06-18 18:47 ` Michele Curti
2015-06-19 7:54 ` Vinod Koul
2015-06-19 8:12 ` Michele Curti
2015-06-17 6:39 ` Jarkko Nikula
2015-06-23 9:09 ` Michele Curti
2015-06-23 9:51 ` Liam Girdwood
2015-06-24 10:21 ` Vinod Koul
2015-06-24 11:31 ` Antonio Ospite
2015-06-24 11:40 ` Liam Girdwood
2015-06-24 16:04 ` Vinod Koul
2015-06-24 18:21 ` Michele Curti
2015-06-25 3:24 ` Vinod Koul
2015-06-25 7:39 ` Michele Curti
2016-03-03 11:11 ` Michele Curti
2016-03-03 11:27 ` Vinod Koul
2016-03-03 13:08 ` Michele Curti
2016-03-03 16:20 ` Pierre-Louis Bossart
2016-03-04 11:07 ` Michele Curti
-- strict thread matches above, loose matches on Subject: below --
2015-07-22 20:05 Marco Bodega
2015-07-24 20:54 ` Michele Curti
2015-08-10 14:12 Johnny
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=20150527085440.GA4445@dellaz \
--to=michele.curti@gmail.com \
--cc=alsa-devel@alsa-project.org \
--cc=tiwai@suse.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.