Skip to contentSkip to conversation

2.4.7-ac11: Updated emu10k1 driver

PATCH In review Robert Love 3 participants 9 messages Aug 10, 2001 – Aug 11, 2001

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 2.4.7-ac11: Updated emu10k1 driver

Available at http://tech9.net/rml/linux/patch-rml-2.4.7-ac11-emu10k1
(its 190k).

First, I know its big but that is the result of not keeping the driver in sync for some time now. Don't blame me, I am not the maintainer. I am tired of patching my patched-ac kernel with this patch!

This brings 2.4.7-ac11 to the OSS Creative Open Source driver v0.15 (specifically, a CVS dump from today, 20010810). The previous version was v0.7, dating _200008_.

Changes 0.7 -> 0.15:
Uses the kernel ac97, rear speaker volume support, dsp patch support, AC3 passthru support, support for 5.1 cards, sequencer support, bug fixes. see linux/drivers/sound/emu10k1/main.c for more details.

Changes from official CVS -> this patch:
* Uses the kernel's Makefile (updated for 0.15)
* Actually uses the kernel's ac97 support from linux/sound

Tested and in use now.

Alan, please consider merging this. I know it is big but how else will we ever get it back in sync? I will work to keep it up to date if it falls behind again.

Signature · 3 lines
Robert M. Love
rml at ufl.edu
rml at tech9.net
#1 lore raw
Quoted 3 lines

Alan, please consider merging this. I know it is big but how else will we ever get it back in sync? I will work to keep it up to date if it falls behind again.

Is there ar reason the maintainer hasnt submitted it yet ?

#2 lore raw
Quoted 5 lines · Alan Cox
Quoted 3 lines

Alan, please consider merging this. I know it is big but how else will we ever get it back in sync? I will work to keep it up to date if it falls behind again.

Is there ar reason the maintainer hasnt submitted it yet ?

The "maintainer" is listed as Creative. They have not updated anything in a year (in the kernel tree; their CVS tree gets frequent updates). There was a thread a month or so ago where the emu10k1 was mentioned and the reply was "get the updated driver" -- I asked why the kernel driver was so old and I was told a patch was floating around but it had not been merged. I have never seen this patch, so I replied I would do it myself.

It took awhile but here it is.

I don't think there is a reason as in "its beta code" or "it needs to remain a module for licensing reasons" -- its solid (admittedly better than what is in there now, has more features, and is GLPed).

With the exception of the two modifications listed, its right from the Creative CVS tree. It compiles. It works for me.

Signature · 3 lines
Robert M. Love
rml at ufl.edu
rml at tech9.net
#3 lore raw
Quoted 2 lines

The "maintainer" is listed as Creative. They have not updated anything in a year (in the kernel tree; their CVS tree gets frequent updates).

I've kind of assumed Rui was maintainer for a long time now. Creative seem to have basically ditched it and run

#4 lore raw
Quoted 5 lines · Alan Cox
Quoted 2 lines

The "maintainer" is listed as Creative. They have not updated anything in a year (in the kernel tree; their CVS tree gets frequent updates).

I've kind of assumed Rui was maintainer for a long time now. Creative seem to have basically ditched it and run

I didn't know this. The MAINTAINERS file lists Creative and gives what looks like a generic email address, although I know not to trust that file. Perhaps it should be updated.

I would not mind being a liason between the Creative Open Source development and the official kernel -- creating and forwarding patches and so forth, but I am not really involved in the drivers development.

I just want to keep a driver I use up to date.

Signature · 3 lines
Robert M. Love
rml at ufl.edu
rml at tech9.net
#5 lore raw
In reply to Robert Love
Quoted 3 lines · Robert Love

This brings 2.4.7-ac11 to the OSS Creative Open Source driver v0.15 (specifically, a CVS dump from today, 20010810). The previous version was v0.7, dating _200008_.

A revision of the patch is available at
http://www.tech9.net/rml/linux/patch-rml-2.4.7-ac11-emu10k1-2
and
http://www.tech9.net/rml/linux/patch-rml-2.4.7-emu10k1-2
for 2.4.7-ac11 and 2.4.7, respectively. note the new 2.4.7 patch -- it should apply cleanly to 2.4.7-pre series, too.

the previous patch included some portability wrappers that were unneeded in the mainline kernel. the new patch is thus smaller and cleaner.

the previous code should have no problem -- especially if used not as a module -- and compile to the same code.

Signature · 7 lines
Robert M. Love
rml at ufl.edu
rml at tech9.net
-- 
Robert M. Love
rml at ufl.edu
rml at tech9.net
#6 lore raw
In reply to Robert Love
Quoted 2 lines · Robert Love

A revision of the patch is available at
http://www.tech9.net/rml/linux/patch-rml-2.4.7-ac11-emu10k1-2

It doesn't build. The module stuff in joystick.c conflicts with main.c during linking, you sort of have to decide whether or not the joystick port driver is seperate or is a part of the entire emu10k1 module. By the way, is the joystick port driver intended to replace the one selected under the character devices -> joystick selection?

Exact text of error:

ld -m elf_i386 -r -o emu10k1.o audio.o cardmi.o cardmo.o cardwi.o cardwo.o ecard.o efxmgr.o emuadxmg.o hwaccess.o irqmgr.o joystick.o main.o midi.o mixer.o passthrough.o recmgr.o timer.o voicemgr.o main.o(.modinfo+0x40): multiple definition of `__module_author' joystick.o(.modinfo+0x80): first defined here
ld: Warning: size of symbol `__module_author' changed from 67 to 81 in main.o
main.o(.modinfo+0xa0): multiple definition of `__module_description' joystick.o(.modinfo+0xe0): first defined here
ld: Warning: size of symbol `__module_description' changed from 83 to 96 in main.o
main.o: In function `init_module':
main.o(.text+0x1970): multiple definition of `init_module' joystick.o(.text+0x220): first defined here
main.o: In function `cleanup_module':
main.o(.text+0x19b0): multiple definition of `cleanup_module' joystick.o(.text+0x260): first defined here

John

#7 lore raw
Quoted 5 lines · John Cavan

It doesn't build. The module stuff in joystick.c conflicts with main.c during linking, you sort of have to decide whether or not the joystick port driver is seperate or is a part of the entire emu10k1 module. By the way, is the joystick port driver intended to replace the one selected under the character devices -> joystick selection?

hm, edit drivers/sound/emu10k1/Makefile and remove the object reference for `joystick.o' -- i dont compile as a module so i missed this, thanks.

and then enable the joystick under character devices -> joysticks

i have updated the patches to release 3:
http://tech9.net/rml/linux/patch-rml-2.4.7-ac11-emu10k1-3
and
http://tech9.net/rml/linux/patch-rml-2.4.7-emu10k1-3

Signature · 3 lines
Robert M. Love
rml at ufl.edu
rml at tech9.net