Adding alsa list + intel devs (Sorry for that ) Inline answers for Charles Keepax questions bellow: 2017-05-08 5:24 GMT-03:00 Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>: > On Sun, May 07, 2017 at 10:42:31PM -0300, Paulo Sergio wrote: >> Hi, >> >> >> I'm trying to make wm5102 work on Lenovo Yoga 2 1051F (Baytrail) again >> and would like some tips. >> >> With a revised machine driver code [1] ( based on bytcr_rt5640 and >> some ports from Lenovo kernel [2]) I can initialize >> and setting routes with alsa mixer [3], I still don't have sound. >> >> However now if I connect 'HPOUT1' to 'Tone Generator 1' I can hear the 1k tone. >> Question: When I do this association, it is using my route? (in my >> case CODEC OUT -> SSP0 TX -> AIF1RX) >> Or this internal tone generator has a direct link to HPOUTs? >> >> Here's some lines from my dmesg output while attemptig to play >> something (complete dmesg - see [4]): >> >> [ 211.801176] arizona spi-WM510204:00: FLL1: Fref=25000000 Fout=49152000 >> [ 211.801184] arizona spi-WM510204:00: FLL1: Fvco=98304000Hz >> [ 211.801190] arizona spi-WM510204:00: FLL1: GCD=4000 >> [ 211.801195] arizona spi-WM510204:00: FLL1: N=7 THETA=a8d LAMBDA=c35 >> [ 211.801200] arizona spi-WM510204:00: FLL1: FRATIO=0(0) OUTDIV=2 REFCLK_DIV=1 >> [ 211.801204] arizona spi-WM510204:00: FLL1: GAIN=4 >> [ 211.801210] arizona spi-WM510204:00: 173 <= a8d >> [ 211.801227] arizona spi-WM510204:00: 174 <= c35 >> [ 211.801234] arizona spi-WM510204:00: 176 <= 40 >> [ 211.801241] arizona spi-WM510204:00: 179 <= 10 >> [ 211.813301] arizona spi-WM510204:00: 172 <= 8007 >> [ 211.813353] arizona spi-WM510204:00: 171 <= 1 >> [ 211.813366] arizona spi-WM510204:00: FLL1: Waiting for FLL lock... >> [ 211.814098] arizona spi-WM510204:00: d23 => 100 >> [ 211.814641] arizona spi-WM510204:00: d23 => 101 >> [ 211.814651] arizona spi-WM510204:00: FLL1: FLL locked (1 polls) >> [ 211.814660] arizona spi-WM510204:00: SYSCLK set to 49152000Hz >> [ 211.814668] arizona spi-WM510204:00: SYSCLK set to 49152000Hz >> [ 211.814675] arizona spi-WM510204:00: 101 <= 300 >> [ 211.814882] wm5102-codec wm5102-codec: AIF1: BCLK 1536000Hz LRCLK 48000Hz >> [ 211.814892] arizona spi-WM510204:00: 80 <= 3 >> [ 211.815191] arizona spi-WM510204:00: 4dc <= 0 >> [ 211.815339] arizona spi-WM510204:00: 4dd <= 0 >> [ 211.815460] arizona spi-WM510204:00: 80 <= 0 >> [ 211.815662] sst-mfld-platform sst-mfld-platform: Enter: enable=1 >> port_name=ssp0-port >> [ 211.816833] wm5102-codec wm5102-codec: AIF1: BCLK 1536000Hz LRCLK 48000Hz >> [ 211.816845] arizona spi-WM510204:00: 80 <= 3 >> [ 211.817030] arizona spi-WM510204:00: 4dc <= 0 >> [ 211.817287] arizona spi-WM510204:00: 4dd <= 0 >> >> Thanks in advance! >> >> >> [1] - https://github.com/pstglia/linux/tree/lenovo_yoga2_returns >> [2] - https://github.com/lenovo-yt2-dev/android_kernel_lenovo_baytrail/blob/cm-12.1/sound/soc/intel/board/byt_bl_wm5102.c >> [3] - https://drive.google.com/file/d/0BxO6THtB865fQnQyZkx6c05Nbjg/view?usp=sharing >> [4] - https://drive.google.com/file/d/0BxO6THtB865fRy0xV3F0elRrUHM/view?usp=sharing > > OK good news you are getting sound from the Tone generator, that > likely implies things are setup sensibly on the CODEC side. My > suspicion would be that data is not making it over the I2S. > Probalby worth copying the Intel guys on the email, as I don't > know know much about that side of things. Copied alsa list and Intel guys (hit reply instead of reply all - my apologies) > > How are you setting up the I2S? As in which side is master, what > format are you using? Also do you see any over/underflow error, > does the system complain with "Error playing sample". The only part where I2S is explicity used on machine driver is this setting on backend DAI (SSP0-Codec) dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_CBS_CFS, And after setting the routes using routes mentioned on [3], I have no errors, but no sound Note: Based on Lenovo code, I concluded this device uses ssp0, so I'm using a fw file "fw_sst_0f28_ssp0.bin" posted another thread. Could use the hacks used on kernel 4.11, but as I'm still testing with kernel 4.4, using this fw would make things easier x86_64:/data # alsa_aplay -v TNT.mp3 Playing raw data 'TNT.mp3' : Unsigned 8 bit, Rate 8000 Hz, Mono Plug PCM: Rate conversion PCM (48000, sformat=U8) Converter: linear-interpolation Protocol version: 10002 Its setup is: stream : PLAYBACK access : RW_INTERLEAVED format : U8 subformat : STD channels : 1 rate : 8000 exact rate : 8000 (8000/1) msbits : 8 buffer_size : 4000 period_size : 1000 period_time : 125000 tstamp_mode : NONE period_step : 1 avail_min : 1000 period_event : 0 start_threshold : 4000 stop_threshold : 4000 silence_threshold: 0 silence_size : 0 boundary : 262144000 Slave: Route conversion PCM (sformat=S16_LE) Transformation table: 0 <- 0 1 <- 0 Its setup is: stream : PLAYBACK access : MMAP_INTERLEAVED format : U8 subformat : STD channels : 1 rate : 48000 exact rate : 48000 (48000/1) msbits : 8 buffer_size : 24000 period_size : 6000 period_time : 125000 tstamp_mode : NONE period_step : 1 avail_min : 6000 period_event : 0 start_threshold : 24000 stop_threshold : 24000 silence_threshold: 0 silence_size : 0 boundary : 1572864000 Slave: Hardware PCM card 0 'baytrailcraudio' device 0 subdevice 0 Its setup is: stream : PLAYBACK access : MMAP_INTERLEAVED format : S16_LE subformat : STD channels : 2 rate : 48000 exact rate : 48000 (48000/1) msbits : 16 buffer_size : 24000 period_size : 6000 period_time : 125000 tstamp_mode : NONE period_step : 1 avail_min : 6000 period_event : 0 start_threshold : 24000 stop_threshold : 24000 silence_threshold: 0 silence_size : 0 boundary : 1572864000 appl_ptr : 0 hw_ptr : 0 Regards, Pstglia _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel