* [PATCH 1/5] aoa: feature gpio layer: fix IRQ access
2006-07-18 17:28 [PATCH 0/5] powerpc sound, some more patches Johannes Berg
@ 2006-07-18 17:28 ` Johannes Berg
2006-07-18 18:45 ` Benjamin Herrenschmidt
2006-07-18 17:28 ` [PATCH 2/5] aoa: fix toonie codec Johannes Berg
` (4 subsequent siblings)
5 siblings, 1 reply; 13+ messages in thread
From: Johannes Berg @ 2006-07-18 17:28 UTC (permalink / raw)
To: linuxppc-dev; +Cc: alsa-devel
The IRQ rework caused some hiccups here, in some cases we call
get_irq without a device node. This patch makes it catch that
case and return NO_IRQ when it happens, along with changing the
place where the irq is checked to check for NO_IRQ instead of -1.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
--- linux-2.6-fetch.orig/sound/aoa/core/snd-aoa-gpio-feature.c 2006-07-16 22:10:02.467630929 +0200
+++ linux-2.6-fetch/sound/aoa/core/snd-aoa-gpio-feature.c 2006-07-16 22:13:41.891630929 +0200
@@ -112,7 +112,10 @@ static struct device_node *get_gpio(char
static void get_irq(struct device_node * np, int *irqptr)
{
- *irqptr = irq_of_parse_and_map(np, 0);
+ if (np)
+ *irqptr = irq_of_parse_and_map(np, 0);
+ else
+ *irqptr = NO_IRQ;
}
/* 0x4 is outenable, 0x1 is out, thus 4 or 5 */
@@ -322,7 +325,7 @@ static int ftr_set_notify(struct gpio_ru
return -EINVAL;
}
- if (irq == -1)
+ if (irq == NO_IRQ)
return -ENODEV;
mutex_lock(¬if->mutex);
--
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/5] aoa: feature gpio layer: fix IRQ access
2006-07-18 17:28 ` [PATCH 1/5] aoa: feature gpio layer: fix IRQ access Johannes Berg
@ 2006-07-18 18:45 ` Benjamin Herrenschmidt
0 siblings, 0 replies; 13+ messages in thread
From: Benjamin Herrenschmidt @ 2006-07-18 18:45 UTC (permalink / raw)
To: Johannes Berg; +Cc: linuxppc-dev, alsa-devel
On Tue, 2006-07-18 at 19:28 +0200, Johannes Berg wrote:
> plain text document attachment (aoa-get-irq-fix.patch)
> The IRQ rework caused some hiccups here, in some cases we call
> get_irq without a device node. This patch makes it catch that
> case and return NO_IRQ when it happens, along with changing the
> place where the irq is checked to check for NO_IRQ instead of -1.
>
> Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
>
> --- linux-2.6-fetch.orig/sound/aoa/core/snd-aoa-gpio-feature.c 2006-07-16 22:10:02.467630929 +0200
> +++ linux-2.6-fetch/sound/aoa/core/snd-aoa-gpio-feature.c 2006-07-16 22:13:41.891630929 +0200
> @@ -112,7 +112,10 @@ static struct device_node *get_gpio(char
>
> static void get_irq(struct device_node * np, int *irqptr)
> {
> - *irqptr = irq_of_parse_and_map(np, 0);
> + if (np)
> + *irqptr = irq_of_parse_and_map(np, 0);
> + else
> + *irqptr = NO_IRQ;
> }
>
> /* 0x4 is outenable, 0x1 is out, thus 4 or 5 */
> @@ -322,7 +325,7 @@ static int ftr_set_notify(struct gpio_ru
> return -EINVAL;
> }
>
> - if (irq == -1)
> + if (irq == NO_IRQ)
> return -ENODEV;
>
> mutex_lock(¬if->mutex);
>
> --
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 2/5] aoa: fix toonie codec
2006-07-18 17:28 [PATCH 0/5] powerpc sound, some more patches Johannes Berg
2006-07-18 17:28 ` [PATCH 1/5] aoa: feature gpio layer: fix IRQ access Johannes Berg
@ 2006-07-18 17:28 ` Johannes Berg
2006-07-18 17:28 ` [PATCH 3/5] make snd-powermac load even when it cant bind the device Johannes Berg
` (3 subsequent siblings)
5 siblings, 0 replies; 13+ messages in thread
From: Johannes Berg @ 2006-07-18 17:28 UTC (permalink / raw)
To: linuxppc-dev; +Cc: alsa-devel
This patch fixes the toonie codec to be actually usable.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
--- linux-2.6-fetch.orig/sound/aoa/codecs/snd-aoa-codec-toonie.c 2006-07-18 11:40:32.363476868 +0200
+++ linux-2.6-fetch/sound/aoa/codecs/snd-aoa-codec-toonie.c 2006-07-18 11:52:29.783476868 +0200
@@ -51,6 +51,13 @@ static struct transfer_info toonie_trans
{}
};
+static int toonie_usable(struct codec_info_item *cii,
+ struct transfer_info *ti,
+ struct transfer_info *out)
+{
+ return 1;
+}
+
#ifdef CONFIG_PM
static int toonie_suspend(struct codec_info_item *cii, pm_message_t state)
{
@@ -69,6 +76,7 @@ static struct codec_info toonie_codec_in
.sysclock_factor = 256,
.bus_factor = 64,
.owner = THIS_MODULE,
+ .usable = toonie_usable,
#ifdef CONFIG_PM
.suspend = toonie_suspend,
.resume = toonie_resume,
@@ -79,19 +87,20 @@ static int toonie_init_codec(struct aoa_
{
struct toonie *toonie = codec_to_toonie(codec);
+ /* nothing connected? what a joke! */
+ if (toonie->codec.connected != 1)
+ return -ENOTCONN;
+
if (aoa_snd_device_new(SNDRV_DEV_LOWLEVEL, toonie, &ops)) {
printk(KERN_ERR PFX "failed to create toonie snd device!\n");
return -ENODEV;
}
- /* nothing connected? what a joke! */
- if (toonie->codec.connected != 1)
- return -ENOTCONN;
-
if (toonie->codec.soundbus_dev->attach_codec(toonie->codec.soundbus_dev,
aoa_get_card(),
&toonie_codec_info, toonie)) {
printk(KERN_ERR PFX "error creating toonie pcm\n");
+ snd_device_free(aoa_get_card(), toonie);
return -ENODEV;
}
--
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 3/5] make snd-powermac load even when it cant bind the device
2006-07-18 17:28 [PATCH 0/5] powerpc sound, some more patches Johannes Berg
2006-07-18 17:28 ` [PATCH 1/5] aoa: feature gpio layer: fix IRQ access Johannes Berg
2006-07-18 17:28 ` [PATCH 2/5] aoa: fix toonie codec Johannes Berg
@ 2006-07-18 17:28 ` Johannes Berg
2006-07-18 17:28 ` [PATCH 4/5] aoa: platform function gpio: ignore errors from functions that dont exist Johannes Berg
` (2 subsequent siblings)
5 siblings, 0 replies; 13+ messages in thread
From: Johannes Berg @ 2006-07-18 17:28 UTC (permalink / raw)
To: linuxppc-dev; +Cc: alsa-devel
This patch makes snd-powermac load when it can't bind the device right
away. That's the expected behaviour for hotplugging, but fixes an
important problem I was seeing with doing a modprobe snd-powermac with
a version that refuses loading on machines with layout-id: snd-powermac
would create a bunch of uevents and then refuse to load, the uevents
causing udev to reload it again, ad eternum.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
--- linux-2.6-fetch.orig/sound/ppc/powermac.c 2006-07-18 18:16:53.633476868 +0200
+++ linux-2.6-fetch/sound/ppc/powermac.c 2006-07-18 18:40:39.243476868 +0200
@@ -181,21 +181,14 @@ static int __init alsa_card_pmac_init(vo
if ((err = platform_driver_register(&snd_pmac_driver)) < 0)
return err;
device = platform_device_register_simple(SND_PMAC_DRIVER, -1, NULL, 0);
- if (!IS_ERR(device)) {
- if (platform_get_drvdata(device))
- return 0;
- platform_device_unregister(device);
- err = -ENODEV;
- } else
- err = PTR_ERR(device);
- platform_driver_unregister(&snd_pmac_driver);
- return err;
+ return 0;
}
static void __exit alsa_card_pmac_exit(void)
{
- platform_device_unregister(device);
+ if (!IS_ERR(device))
+ platform_device_unregister(device);
platform_driver_unregister(&snd_pmac_driver);
}
--
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 4/5] aoa: platform function gpio: ignore errors from functions that dont exist
2006-07-18 17:28 [PATCH 0/5] powerpc sound, some more patches Johannes Berg
` (2 preceding siblings ...)
2006-07-18 17:28 ` [PATCH 3/5] make snd-powermac load even when it cant bind the device Johannes Berg
@ 2006-07-18 17:28 ` Johannes Berg
2006-07-18 17:28 ` [PATCH 5/5] add MAINTAINERS entry for snd-aoa Johannes Berg
2006-07-25 14:17 ` [Alsa-devel] [PATCH 0/5] powerpc sound, some more patches Takashi Iwai
5 siblings, 0 replies; 13+ messages in thread
From: Johannes Berg @ 2006-07-18 17:28 UTC (permalink / raw)
To: linuxppc-dev; +Cc: alsa-devel
Sometimes we simply want to turn off or on everything, and when recently a
warning was added when a certain platform function can't be called, this
triggered all the time in those cases. This patch shows the warning only if
the error was different from the function not existing.
The alternative would be to not even try calling the function when it
doesn't exist by first checking which exist and then only calling those that
do, but that adds complexity that isn't necessary.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
--- linux-2.6-fetch.orig/sound/aoa/core/snd-aoa-gpio-pmf.c 2006-07-18 19:24:30.273476868 +0200
+++ linux-2.6-fetch/sound/aoa/core/snd-aoa-gpio-pmf.c 2006-07-18 19:24:55.103476868 +0200
@@ -18,7 +18,7 @@ static void pmf_gpio_set_##name(struct g
\
if (unlikely(!rt)) return; \
rc = pmf_call_function(rt->node, #name "-mute", &args); \
- if (rc) \
+ if (rc && rc != -ENODEV) \
printk(KERN_WARNING "pmf_gpio_set_" #name \
" failed, rc: %d\n", rc); \
rt->implementation_private &= ~(1<<bit); \
--
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 5/5] add MAINTAINERS entry for snd-aoa
2006-07-18 17:28 [PATCH 0/5] powerpc sound, some more patches Johannes Berg
` (3 preceding siblings ...)
2006-07-18 17:28 ` [PATCH 4/5] aoa: platform function gpio: ignore errors from functions that dont exist Johannes Berg
@ 2006-07-18 17:28 ` Johannes Berg
2006-07-25 14:17 ` [Alsa-devel] [PATCH 0/5] powerpc sound, some more patches Takashi Iwai
5 siblings, 0 replies; 13+ messages in thread
From: Johannes Berg @ 2006-07-18 17:28 UTC (permalink / raw)
To: linuxppc-dev; +Cc: alsa-devel
This adds me into the MAINTAINERS file for the AOA driver.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
--- linux-2.6-fetch.orig/MAINTAINERS 2006-07-18 13:39:52.543476868 +0200
+++ linux-2.6-fetch/MAINTAINERS 2006-07-18 13:57:27.843476868 +0200
@@ -292,6 +292,13 @@ L: info-linux@geode.amd.com
W: http://www.amd.com/us-en/ConnectivitySolutions/TechnicalResources/0,,50_2334_2452_11363,00.html
S: Supported
+AOA (Apple Onboard Audio) ALSA DRIVER
+P: Johannes Berg
+M: johannes@sipsolutions.net
+L: linuxppc-dev@ozlabs.org
+L: alsa-devel@alsa-project.org
+S: Maintained
+
APM DRIVER
P: Stephen Rothwell
M: sfr@canb.auug.org.au
--
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Alsa-devel] [PATCH 0/5] powerpc sound, some more patches
2006-07-18 17:28 [PATCH 0/5] powerpc sound, some more patches Johannes Berg
` (4 preceding siblings ...)
2006-07-18 17:28 ` [PATCH 5/5] add MAINTAINERS entry for snd-aoa Johannes Berg
@ 2006-07-25 14:17 ` Takashi Iwai
2006-07-25 15:13 ` Johannes Berg
5 siblings, 1 reply; 13+ messages in thread
From: Takashi Iwai @ 2006-07-25 14:17 UTC (permalink / raw)
To: Johannes Berg; +Cc: linuxppc-dev, alsa-devel
At Tue, 18 Jul 2006 19:28:41 +0200,
Johannes Berg wrote:
>
> Here's a new and hopefully final round of patches fixing problems with my
> new snd-aoa driver. There are fixes for the PPC Mac Mini as well as for a
> problem with snd-powermac that I had noticed.
Thanks, now all patches are on ALSA tree.
Takashi
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Alsa-devel] [PATCH 0/5] powerpc sound, some more patches
2006-07-25 14:17 ` [Alsa-devel] [PATCH 0/5] powerpc sound, some more patches Takashi Iwai
@ 2006-07-25 15:13 ` Johannes Berg
2006-07-25 15:21 ` Takashi Iwai
2006-07-25 21:52 ` Benjamin Herrenschmidt
0 siblings, 2 replies; 13+ messages in thread
From: Johannes Berg @ 2006-07-25 15:13 UTC (permalink / raw)
To: Takashi Iwai; +Cc: linuxppc-dev, alsa-devel
Takashi Iwai wrote:
> Thanks, now all patches are on ALSA tree.
Thanks.
These should still go into 2.6.18, will that be possible?
johannes
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Alsa-devel] [PATCH 0/5] powerpc sound, some more patches
2006-07-25 15:13 ` Johannes Berg
@ 2006-07-25 15:21 ` Takashi Iwai
2006-08-05 16:09 ` Johannes Berg
2006-07-25 21:52 ` Benjamin Herrenschmidt
1 sibling, 1 reply; 13+ messages in thread
From: Takashi Iwai @ 2006-07-25 15:21 UTC (permalink / raw)
To: Johannes Berg; +Cc: linuxppc-dev, alsa-devel
At Tue, 25 Jul 2006 17:13:19 +0200 (CEST),
Johannes Berg wrote:
>
> Takashi Iwai wrote:
>
> > Thanks, now all patches are on ALSA tree.
>
> Thanks.
> These should still go into 2.6.18, will that be possible?
Agreed.
Jaroslav, could you update alsa git tree for pushing?
We have ca. 20 pending fixes including these ppc-patches.
Takashi
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Alsa-devel] [PATCH 0/5] powerpc sound, some more patches
2006-07-25 15:13 ` Johannes Berg
2006-07-25 15:21 ` Takashi Iwai
@ 2006-07-25 21:52 ` Benjamin Herrenschmidt
2006-07-26 17:19 ` Johannes Berg
1 sibling, 1 reply; 13+ messages in thread
From: Benjamin Herrenschmidt @ 2006-07-25 21:52 UTC (permalink / raw)
To: Johannes Berg; +Cc: Takashi Iwai, linuxppc-dev, alsa-devel
On Tue, 2006-07-25 at 17:13 +0200, Johannes Berg wrote:
> Takashi Iwai wrote:
>
> > Thanks, now all patches are on ALSA tree.
>
> Thanks.
> These should still go into 2.6.18, will that be possible?
They should still, for sure. Johannes, please sync with Paulus since I
think you posted previous version of at least some of these that he's
about to push to Linus via the powerpc tree.
Ben.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [Alsa-devel] [PATCH 0/5] powerpc sound, some more patches
2006-07-25 21:52 ` Benjamin Herrenschmidt
@ 2006-07-26 17:19 ` Johannes Berg
0 siblings, 0 replies; 13+ messages in thread
From: Johannes Berg @ 2006-07-26 17:19 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: Takashi Iwai, linuxppc-dev, alsa-devel
[-- Attachment #1: Type: text/plain, Size: 378 bytes --]
On Tue, 2006-07-25 at 16:52 -0500, Benjamin Herrenschmidt wrote:
> They should still, for sure. Johannes, please sync with Paulus since I
> think you posted previous version of at least some of these that he's
> about to push to Linus via the powerpc tree.
Hm, I don't think I ever posted 'final' versions of these that I signed
off, but I'll take a look.
johannes
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 828 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread