Hi again
2016-05-09 11:22 GMT-03:00 Charles Keepax ckeepax@opensource.wolfsonmicro.com:
alsa_amixer -Dhw:0 cset name='HPOUT1L Input 1 Volume' 32 alsa_amixer -Dhw:0 cset name='HPOUT1R Input 1' AIF1RX2 alsa_amixer -Dhw:0 cset name='HPOUT1R Input 1 Volume' 32 alsa_amixer -Dhw:0 cset name='Headset Mic Switch' on
From your machine driver I would have expected this last control to be "Headphone Switch", although I do appear to see things turning on in your log so I guess that switch is already on?
It was already on. But just in case, I've added it to alsa_amixer cmd list
Added also the routes/controls that Pierre pointed on his github UCM ( see [1] )
Overall, I would say it looks good. One thing I would perhaps try, connect up this path as you have been doing, but whilst the audio is playing (or attempting to at least) connect the route:
'HPOUT1R Input 1' 'Tone Generator 1'
This will hook the right headphone channel up to the chips internal 1k tone generator. Careful it will be loud, but its a good check to make sure the clocks are all happy inside the chip. If you hear that tone, I would say the CODEC side looks happy, but let me know how you get on.
We tried, but unfortunatelly no tone when hooking the tone generator. Saved dmesg, logcat and alsa_amixer output in case you want to take a look [2]
I'm still having this message on logcat: "out_write: error -1 - cannot prepare channel: Device or resource busy" which happens when trying to ioctl SNDRV_PCM_IOCTL_PREPARE to /dev/snd/pcmC0D0p
Maybe the problem is something wrong/missing on Machine Driver... Pierre said It would be good base the code on bytcr_5640...
* * *
I tried also other thing. So far I've been changing host_ipc_index from 5 to 0 on atom/sst/sst_acpi, because this device's DSDT uses a different IRQ order from what drivers expect. It allows fw loading and card registering, but I was wondering if the other index entries are mapped by the driver.
To ensure all indexes are read in the position driver wants, I modified irq order on DSDT, reverted ipc_host_index to 5 and tried booting it. I tested it, but the results are the samewhen using original DSDT and changing host_ipc_index to 0. Saved replaced DSDT and logs here [3]
* * *
Regards Pstglia
[1] - https://drive.google.com/file/d/0BxO6THtB865fQnQyZkx6c05Nbjg/view?usp=sharin... [2] - https://drive.google.com/folderview?id=0BxO6THtB865fZk5sSEdrbTVsREU&usp=... [3] - https://drive.google.com/folderview?id=0BxO6THtB865fWGU1MTlJazBnZzg&usp=...