[alsa-devel] [PATCH]: ARM DaVinci ASoC: Fix module unload error
Hugo Villeneuve
hugo at hugovil.com
Fri Feb 13 18:47:09 CET 2009
On Fri, 13 Feb 2009 12:39:39 +0530
chaithrika at ti.com wrote:
> From: Chaithrika U S <chaithrika at ti.com>
>
> Fix for the error when the audio module is unloaded.
> On unregistering the platform_device, platform_device_release will
> free the platform data.If platform data is static the kernel panics
> when it is freed. Instead use the platform device helper function to
> add data.
>
> This change has been tested on DM644x EVM.
>
> Signed-off-by: Chaithrika U S <chaithrika at ti.com>
> ---
> sound/soc/davinci/davinci-evm.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/sound/soc/davinci/davinci-evm.c
> b/sound/soc/davinci/davinci-evm.c index 1aad262..95c44bf 100644
> --- a/sound/soc/davinci/davinci-evm.c
> +++ b/sound/soc/davinci/davinci-evm.c
> @@ -225,7 +225,7 @@ static int __init evm_init(void)
>
> platform_set_drvdata(evm_snd_device, &evm_snd_devdata);
> evm_snd_devdata.dev = &evm_snd_device->dev;
> - evm_snd_device->dev.platform_data = data;
> + platform_device_add_data(evm_snd_device, data, sizeof(data));
Hi,
I modified your patch for the SFFSDR board and it also fixed the
problem. Thank-you.
Can you include the fix for the SFFSDR also in your patch? Here is the
modification for the SFFSDR:
diff --git a/sound/soc/davinci/davinci-sffsdr.c
b/sound/soc/davinci/davinci-sffsdr.c index a304ada..6e46258 100644
--- a/sound/soc/davinci/davinci-sffsdr.c
+++ b/sound/soc/davinci/davinci-sffsdr.c
@@ -128,7 +128,7 @@ static int __init sffsdr_init(void)
platform_set_drvdata(sffsdr_snd_device, &sffsdr_snd_devdata);
sffsdr_snd_devdata.dev = &sffsdr_snd_device->dev;
- sffsdr_snd_device->dev.platform_data = &sffsdr_snd_data;
+ platform_device_add_data(sffsdr_snd_device, &sffsdr_snd_data,
sizeof(sffsdr_snd_data));
ret = platform_device_add_resources(sffsdr_snd_device,
sffsdr_snd_resources,
More information about the Alsa-devel
mailing list