From 5e246b850df563224be26f1d409cf66fd6c968df Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Fri, 8 Aug 2008 17:12:47 +0200 Subject: ALSA: Kill snd_assert() in other places Kill snd_assert() in other places, either removed or replaced with if () with snd_BUG_ON(). Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela --- sound/sh/aica.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sound/sh/aica.c') diff --git a/sound/sh/aica.c b/sound/sh/aica.c index 54df8baf916f..55031d0a6558 100644 --- a/sound/sh/aica.c +++ b/sound/sh/aica.c @@ -106,7 +106,8 @@ static void spu_memset(u32 toi, u32 what, int length) { int i; unsigned long flags; - snd_assert(length % 4 == 0, return); + if (snd_BUG_ON(length % 4)) + return; for (i = 0; i < length; i++) { if (!(i % 8)) spu_write_wait(); -- cgit v1.2.3 From 418c8f89911dd3d4930221def3bd56b38b051789 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Sun, 14 Sep 2008 21:32:33 +0200 Subject: ALSA: Fix section for snd-aica platform driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Don't use __init but __devinit to define probe function. A pointer to snd_aica_probe is passed to the core via platform_driver_register and so the function must not disappear after the module is loaded. Using __init and having HOTPLUG=y and SND_AICA=m the following probably oopses: echo -n AICA > /sys/bus/platform/driver/AICA/unbind echo -n AICA > /sys/bus/platform/driver/AICA/bind Strange enough add_aicamixer_controls which is only called by snd_aica_probe was already using __devinit. While at it move the remove function to .devexit.text section. Signed-off-by: Uwe Kleine-König Cc: Adrian McMenamin Cc: Paul Mundt Cc: Jaroslav Kysela Cc: Andrew Morton Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela --- sound/sh/aica.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'sound/sh/aica.c') diff --git a/sound/sh/aica.c b/sound/sh/aica.c index 55031d0a6558..7c920f3e7fe3 100644 --- a/sound/sh/aica.c +++ b/sound/sh/aica.c @@ -590,7 +590,7 @@ static int __devinit add_aicamixer_controls(struct snd_card_aica return 0; } -static int snd_aica_remove(struct platform_device *devptr) +static int __devexit snd_aica_remove(struct platform_device *devptr) { struct snd_card_aica *dreamcastcard; dreamcastcard = platform_get_drvdata(devptr); @@ -602,7 +602,7 @@ static int snd_aica_remove(struct platform_device *devptr) return 0; } -static int __init snd_aica_probe(struct platform_device *devptr) +static int __devinit snd_aica_probe(struct platform_device *devptr) { int err; struct snd_card_aica *dreamcastcard; @@ -651,7 +651,7 @@ static int __init snd_aica_probe(struct platform_device *devptr) static struct platform_driver snd_aica_driver = { .probe = snd_aica_probe, - .remove = snd_aica_remove, + .remove = __devexit_p(snd_aica_remove), .driver = { .name = SND_AICA_DRIVER}, }; -- cgit v1.2.3