On Wed, 2011-01-12 at 11:39 +0100, Marco d'Itri wrote: > reassign 609747 linux-2.6 > thanks > > On Jan 12, Daniel Kahn Gillmor <dkg@fifthhorseman.net> wrote: > > > Could udev have detected this and loaded the module automatically > > somehow? I saw the same behavior on an eMac recently as well. I can > Maybe, as long as the kernel is fixed to provide the information needed. This is a platform driver, which implies no mechanism for auto- detection, yet it uses OpenFirmware information. So please try this patch: --- From: Ben Hutchings <ben@decadent.org.uk> Date: Wed, 12 Jan 2011 14:09:20 +0000 Subject: [PATCH] ALSA: powermac: Add MODULE_DEVICE_TABLE based on OF 'compatible' names MODULE_SUPPORTED_DEVICE() is not implemented, so does not enable the module to be auto-loaded. List all the OpenFirmware 'compatible' names we look for when detecting the sound chip. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> --- sound/ppc/powermac.c | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletions(-) diff --git a/sound/ppc/powermac.c b/sound/ppc/powermac.c index a2b69b8..4db785b 100644 --- a/sound/ppc/powermac.c +++ b/sound/ppc/powermac.c @@ -31,9 +31,18 @@ #define CHIP_NAME "PMac" MODULE_DESCRIPTION("PowerMac"); -MODULE_SUPPORTED_DEVICE("{{Apple,PowerMac}}"); MODULE_LICENSE("GPL"); +static const struct of_device_id of_device_ids[] = { + { .compatible = "screamer" }, + { .compatible = "burgundy" }, + { .compatible = "daca" }, + { .compatible = "tumbler" }, + { .compatible = "snapper" }, + { } +}; +MODULE_DEVICE_TABLE(of, of_device_ids); + static int index = SNDRV_DEFAULT_IDX1; /* Index 0-MAX */ static char *id = SNDRV_DEFAULT_STR1; /* ID for this card */ static int enable_beep = 1; --- Ben. -- Ben Hutchings Once a job is fouled up, anything done to improve it makes it worse.
Attachment:
signature.asc
Description: This is a digitally signed message part