[Letux-kernel] AESS driver

H. Nikolaus Schaller hns at goldelico.com
Tue Jul 10 08:05:37 CEST 2018


Hi Marek,
I merged letux-4.17.3 (and replaced the gab driver merge conflict by the new version).
Then I added the firmware ED had sent by mail and got this:

root at letux:~# lsmod|fgrep aess
snd_soc_omap_aess      61440  2 snd_soc_omap_abe_twl6040,snd_soc_omap_mcpdm
root at letux:~# dmesg|fgrep aess
[    6.349644] aess 401f1000.aess: ASoC: invalid header size for type 0 at offset 0x0 size 0x1a5e8.
[    6.362569] aess 401f1000.aess: request for AESS FW failed -22
[    6.373974] aess 401f1000.aess: ASoC: failed to probe component -22
root at letux:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: H58040000encode [HDMI 58040000.encoder], device 0: HDMI 58040000.encoder snd-soc-dummy-dai-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
root at letux:~# ls -l /lib/firmware/omap_aess-adfw.bin 
-rw-r--r-- 1 root root 108008 Jul 10 05:57 /lib/firmware/omap_aess-adfw.bin
root at letux:~# file /lib/firmware/omap_aess-adfw.bin
/lib/firmware/omap_aess-adfw.bin: data
root at letux:~# xxd /lib/firmware/omap_aess-adfw.bin | head -10
0000000: 436f 5341 0100 0000 0500 0000 0000 0000  CoSA............
0000010: a032 0f00 4404 0000 0500 0000 444c 3120  .2..D.......DL1 
0000020: 4571 7561 6c69 7a65 7200 0000 0000 0000  Equalizer.......
0000030: 0000 0000 0000 0000 0000 0000 0683 8300  ................
0000040: 0300 0000 0000 0000 3b00 0000 0000 0000  ........;.......
0000050: 0000 0000 0500 0000 ffff ffff 466c 6174  ............Flat
0000060: 2052 6573 706f 6e73 6500 0000 0000 0000   Response.......
0000070: 0000 0000 0000 0000 0000 0000 3830 3048  ............800H
0000080: 7a20 4850 4620 3064 4200 0000 0000 0000  z HPF 0dB.......
0000090: 0000 0000 0000 0000 0000 0000 3830 3048  ............800H
root at letux:~# 

This seems to confirm that the firmware blob is not what the driver code expects...

BR,
Nikolaus


> Am 09.07.2018 um 21:56 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
> 
> 
>> Am 09.07.2018 um 20:36 schrieb Belisko Marek <marek.belisko at gmail.com>:
>> 
>> Hi Nikolaus,
>> On Mon, Jul 9, 2018 at 8:08 PM H. Nikolaus Schaller <hns at goldelico.com> wrote:
>>> 
>>> Hi Marek,
>>> 
>>>> Am 05.07.2018 um 16:31 schrieb Belisko Marek <marek.belisko at gmail.com>:
>>>> 
>>>> Moving forward a bit:
>>>> dmesg | grep -i aess
>>>> [    6.698601] aess 401f1000.aess: ASoC: dai register 401f1000.aess #6
>>>> [    6.722268] aess 401f1000.aess: ASoC: invalid header size for type
>>>> 0 at offset 0x0 size 0x1a5e8.
>>>> [    6.778381] aess 401f1000.aess: request for AESS FW failed -22
>>>> [    6.784506] aess 401f1000.aess: ASoC: failed to probe component -22
>>>> 
>>>> looks like I need to grab some other FW. Everything (wip) pushed to:
>>>> work-aess-4.17.3
>>>> 
>>>> BR,
>>>> 
>>>> marek
>>>> On Thu, Jul 5, 2018 at 3:26 PM Belisko Marek <marek.belisko at gmail.com> wrote:
>>>>> 
>>>>> Hi Nikolaus,
>>>>> 
>>>>> yes it needs more patches from ti, working on it.
>>>>> 
>>>>> BR,
>>>>> 
>>>>> marek
>>>>> On Thu, Jul 5, 2018 at 3:22 PM H. Nikolaus Schaller <hns at goldelico.com> wrote:
>>>>>> 
>>>>>> 
>>>>>>> Am 05.07.2018 um 10:53 schrieb Belisko Marek <marek.belisko at gmail.com>:
>>>>>>> 
>>>>>>> Hi Nikouals,
>>>>>>> 
>>>>>>> on my aess branch when added compatible to dts I cannot boot kernel at all:
>>>>>>> [    0.000000] Booting Linux on physical CPU 0x0
>>>>>>> [    0.000000] Linux version 4.17.0-letux+ (marek at mbuntu) (gcc version
>>> 
>>> I have tried to compile, which went fine, and I was able to boot.
>>> But I did not have installed the firmware...
>>> 
>>> Some observations:
>>> 1. the kernel reports to be letux-4.17.0 and not 4.17.3
>> OK this is minor stuff I think.
> 
> Well, for example, letux-4.17.0 does not have our GAB out-of-bounds write fix.
> So this may trigger unexpected side-effects. And there were also other minor
> issues.
> 
>> My problem now is that during FW
>> loading I get an parse error. So IMO it looks like FW is not correct.
>> I need to dig to the code in soc-topology.c what it is parsing and try
>> to find such areas in actual firmware.
> 
> Ok, fine that you have a traceable symptom!
> 
> BR,
> Nikolaus
> 
> 
>>> 
>>> root at letux:~# uname -a
>>> Linux letux 4.17.0-letux+ #2535 SMP PREEMPT Mon Jul 9 17:32:57 CEST 2018 armv7l GNU/Linux
>>> root at letux:~#
>>> 
>>> I'd suggest to merge/rebase on top of letux-4.17.3
>>> (http://git.goldelico.com/?p=letux-kernel.git;a=shortlog;h=refs/heads/letux-4.17.3)
>>> because that version includes some significant fixes and this may be part of your trouble.
>>> 
>>> 2. aess driver is loaded (but not firmware)
>>> 
>>> root at letux:~# dmesg|fgrep aess
>>> [    6.044004] omap-abe-twl6040 sound: Direct firmware load for omap_aess-adfw.bin failed with error -2
>>> [    6.095322] omap-abe-twl6040 sound: Failed to load firmware omap_aess-adfw.bin: -2
>>> root at letux:~#
>>> 
>>> root at letux:~# lsmod|fgrep abe
>>> snd_soc_omap_abe_twl6040    20480  0
>>> snd_soc_twl6040        28672  1 snd_soc_omap_abe_twl6040
>>> snd_soc_omap_mcbsp     24576  1 snd_soc_omap_abe_twl6040
>>> snd_soc_omap_aess      61440  2 snd_soc_omap_abe_twl6040,snd_soc_omap_mcpdm
>>> root at letux:~#
>>> 
>>> 3. aplay does only report the HDMI encoder
>>> 
>>> root at letux:~# aplay -l
>>> **** List of PLAYBACK Hardware Devices ****
>>> card 0: H58040000encode [HDMI 58040000.encoder], device 0: HDMI 58040000.encoder snd-soc-dummy-dai-0 []
>>> Subdevices: 1/1
>>> Subdevice #0: subdevice #0
>>> root at letux:~#
>>> 
>>> I hope this helps to move forwards.
>>> 
>>> BR,
>>> Nikolaus
>>> 
>> 
>> BR,
>> 
>> marek
>> 
>> -- 
>> as simple and primitive as possible
>> -------------------------------------------------
>> Marek Belisko - OPEN-NANDRA
>> Freelance Developer
>> 
>> Ruska Nova Ves 219 | Presov, 08005 Slovak Republic
>> Tel: +421 915 052 184
>> skype: marekwhite
>> twitter: #opennandra
>> web: http://open-nandra.com
> 
> _______________________________________________
> http://projects.goldelico.com/p/gta04-kernel/
> Letux-kernel mailing list
> Letux-kernel at openphoenux.org
> http://lists.goldelico.com/mailman/listinfo.cgi/letux-kernel



More information about the Letux-kernel mailing list