[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