Bug 4823 - alsa modules snd_virmidi & snd_mpu401 won't load.
alsa modules snd_virmidi & snd_mpu401 won't load.
Status: CLOSED PATCH_ALREADY_AVAILABLE
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA)
i386 Linux
: P2 normal
Assigned To: Jaroslav Kysela
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2005-06-30 07:59 UTC by egag
Modified: 2006-02-14 07:52 UTC (History)
3 users (show)

See Also:
Kernel Version: 2.6.12 2.6.12.1 2.6.12.2
Tree: Mainline
Regression: ---


Attachments

Description egag 2005-06-30 07:59:18 UTC
Distribution:Slackware 10.1

Hardware Environment:pc, asus-a7v600x mobo, amp sempron 3000 cpu, via 8233ac97
sound.

Software Environment:

kernelconfig -sound part:
-----
CONFIG_SOUND=m

# Advanced Linux Sound Architecture

CONFIG_SND=m
CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SEQ_DUMMY is not set
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=m
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set


# Generic devices
CONFIG_SND_MPU401_UART=m
CONFIG_SND_DUMMY=m
CONFIG_SND_VIRMIDI=m
CONFIG_SND_MTPAV=m
CONFIG_SND_SERIAL_U16550=m
CONFIG_SND_MPU401=m

# PCI devices
CONFIG_SND_AC97_CODEC=m
CONFIG_SND_VIA82XX=m
----------

file /etc/modprobe.conf
---------
# --- ALSACONF verion 1.0.8 ---
alias snd-card-0 snd-via82xx
alias sound-slot-0 snd-via82xx
# --- END: Generated by ALSACONF, do not edit. ---
alias snd-card-1 snd-mpu401
options snd-mpu401 port=0x0300 irq=10
alias sound-slot-1 snd-card-1
alias sound-service-1-0 snd-mixer-oss
alias sound-service-1-1 snd-seq-oss
alias sound-service-1-3 snd-pcm-oss
alias sound-service-1-12 snd-pcm-oss
----------

no userprograms running.

Problem Description:

commands " #modprobe snd_virmidi " and " #modprobe snd_mpu401 " give an error
" no such device " on the commandline and " device not found or device busy "
in the log.

in kernel 2.6.11.11 and lower, it works.
from 2.6.12 and up i get the errors.

Steps to reproduce:
-compile a kernel 2.6.12(.x) and type " modprobe snd_virmidi " or " modprobe
snd_mpu401 "
( using similar modprobe.conf file with correct port & irq value )

i'll be glad to give more data if needed.

egag
Comment 1 Andrew Morton 2005-07-28 23:00:25 UTC
Is this problem still present in 2.6.13-rc4?

Thanks.
Comment 2 egag 2005-07-29 05:56:23 UTC
---
compiled kernel 2.6.13.rc4 and half of the prob. is solved.
snd_virmidi loads ok, but snd_mpu401 gives the following error :

------------
root@slack21:/home/egag# uname -r
2.6.13-rc4
root@slack21:/home/egag# modprobe snd_mpu401
FATAL: Error inserting snd_mpu401
(/lib/modules/2.6.13-rc4/kernel/sound/drivers/mpu401/snd-mpu401.ko): No such device
------------

greetings,

egag
Comment 3 Alan Grimes 2005-08-05 11:38:42 UTC
I have a cmipci compatible card 
####
0000:02:04.0 Multimedia audio controller: C-Media Electronics Inc CM8738 (rev 10)
####

And I can't use the MPU port either. 

dmesg after attempting to play several midi files: 
###################
cmd: 0xff failed at 0x330 (status = 0xff, data = 0xff)
cmd: 0x3f failed at 0x330 (status = 0xff, data = 0xff)
rawmidi drain error (avail = 0, buffer_size = 4096)
rawmidi drain error (avail = 4095, buffer_size = 4096)
cmd: 0xff failed at 0x330 (status = 0xff, data = 0xff)
cmd: 0x3f failed at 0x330 (status = 0xff, data = 0xff)
rawmidi drain error (avail = 0, buffer_size = 4096)
rawmidi drain error (avail = 4095, buffer_size = 4096)
###################
Comment 4 Takashi Iwai 2005-08-08 08:19:01 UTC
Remove module options for snd-mpu401.  As default, the driver will probe via PNP
(ACPI).

To #3: do you really use snd-mpu401 driver?  It's different from snd-mpu401-uart
module.
Comment 5 Alan Grimes 2005-08-08 10:12:37 UTC
on my setup, the MPU-401 functionality APPARENTLY comes from the cmipci module. 

According to the documentation shipped with 2.6.12, it should work automaticly.
-- it doesn't. 

According to the documentation in 2.6.13-rcX, you need to set a module option to
assign it a port. -- I did, the device now appears in the /dev tree but doesn't
work. =( 
Comment 6 egag 2005-08-09 09:23:57 UTC
compiled 2.6.13-rc5, this time with acpi.
also removed options for mpu-401.
both modules load and show up in jack as usable devices.

also tried 2.6.12.4 ( acpi + no snd-mpu options ).
here snd-virmidi won't load. ( snd_mpu401 is ok )

excuse me my ignorance but i always used apm as it worked ok, 
and i'm wondering how i could have know about such changes ? 
( i mean "don't use options for mpu401 " and " use acpi " )
should i read all kernel-doc's everytime i try another kernel ?
( and was that in the doc.'s ?)

anyways, i'll use 2.6.13-rc5 for now to see how it goes and skip 2.6.12.x.
thanks for the input.

egag
Comment 7 CASTET Matthieu 2005-09-06 02:15:00 UTC
>excuse me my ignorance but i always used apm as it worked ok, 
>and i'm wondering how i could have know about such changes ? 
>( i mean "don't use options for mpu401 " and " use acpi " )
using isapnp with apm should also worked.

Did you pass the correct options ?
Which option did you pass ?
Comment 8 Andrew Morton 2005-09-14 22:49:20 UTC
Can we have an update on this bug please.  Retesting 2.6.14-rc1
would be useful.
Comment 9 egag 2005-09-17 07:37:02 UTC
all works with 2.6.13. ( with acpi, not with apm ). 
will try 2.6.14-rcx when i've got some time.


Note You need to log in before you can comment on or make changes to this bug.