Re: [RFC PATCH 2/3] ASoC: Intel: bdw-rt5677: fix module load/unload issues

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





This doesn't answer the question: why is the machine driver not
requesting the GPIO on device model probe?

I *think* it's due to the need to use the codec component->dev, which is only available with the dailink callbacks - not on platform device probe which ends with the card registration.


The issue happens when running our test scripts, which do a set a rmmod in a
specific order: rmmod of the machine driver, then doing an rmmod of the
codec driver. Somehow the second fails with the 'module in use error'.

It's probably because the devm_ release does not happen when the card is
unregistered and the machine driver resources released since we use the
component device. There might very well be a bug somewhere in the devm_
handling, I just don't have a clue how to debug this - and the .exit() makes
sense regardless in other cases unrelated to GPIOs.

So you've removed the driver which will have unbound the device but devm
actions don't seem to have fired?  That seems worrying...

Well, the devm uses the component device, not the card device, so when removing the machine driver nothing should happen. The problem seems to be in the removal of the codec and component drivers.

We tried to use the card device instead but then the gpiod_get fails.




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux