* emu10k1_audio_open?? 2.5.2 problem
@ 2002-01-15 14:14 Frank Jacobberger
2002-01-15 14:19 ` Nikita Gergel
0 siblings, 1 reply; 2+ messages in thread
From: Frank Jacobberger @ 2002-01-15 14:14 UTC (permalink / raw)
To: linux-kernel
gcc -D__KERNEL__ -I/usr/src/linux-2.5.2/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer
-fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2
-march=i686 -DMODULE -DMODVERSIONS -include
/usr/src/linux-2.5.2/include/linux/modversions.h -c -o audio.o audio.c
audio.c: In function `emu10k1_audio_open':
audio.c:1101: invalid operands to binary &
make[3]: *** [audio.o] Error 1
make[3]: Leaving directory `/usr/src/linux-2.5.2/drivers/sound/emu10k1'
make[2]: *** [_modsubdir_emu10k1] Error 2
make[2]: Leaving directory `/usr/src/linux-2.5.2/drivers/sound'
make[1]: *** [_modsubdir_sound] Error 2
make[1]: Leaving directory `/usr/src/linux-2.5.2/drivers'
make: *** [_mod_drivers] Error 2
What to do?
Thanks,
Frank
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: emu10k1_audio_open?? 2.5.2 problem
2002-01-15 14:14 emu10k1_audio_open?? 2.5.2 problem Frank Jacobberger
@ 2002-01-15 14:19 ` Nikita Gergel
0 siblings, 0 replies; 2+ messages in thread
From: Nikita Gergel @ 2002-01-15 14:19 UTC (permalink / raw)
To: Frank Jacobberger; +Cc: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1064 bytes --]
On Tue, 15 Jan 2002 07:14:24 -0700
Frank Jacobberger <f1j@xmission.com> wrote:
> gcc -D__KERNEL__ -I/usr/src/linux-2.5.2/include -Wall
> -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer
> -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2
> -march=i686 -DMODULE -DMODVERSIONS -include
> /usr/src/linux-2.5.2/include/linux/modversions.h -c -o audio.o audio.c
> audio.c: In function `emu10k1_audio_open':
> audio.c:1101: invalid operands to binary &
> make[3]: *** [audio.o] Error 1
> make[3]: Leaving directory `/usr/src/linux-2.5.2/drivers/sound/emu10k1'
> make[2]: *** [_modsubdir_emu10k1] Error 2
> make[2]: Leaving directory `/usr/src/linux-2.5.2/drivers/sound'
> make[1]: *** [_modsubdir_sound] Error 2
> make[1]: Leaving directory `/usr/src/linux-2.5.2/drivers'
> make: *** [_mod_drivers] Error 2
>
> What to do?
I've already contributed patch for 2.5 kernels to fix this. There are problems with 'MINOR' function.
Look in attach for the patch.
--
Nikita Gergel System Administrator
Moscow, Russia YAUZA-Telecom
[-- Attachment #2: emu10k1.diff --]
[-- Type: application/octet-stream, Size: 2645 bytes --]
diff -u --recursive --new-file v2.5.1/linux/drivers/sound/emu10k1/audio.c linux/drivers/sound/emu10k1/audio.c
--- v2.5.1/linux/drivers/sound/emu10k1/audio.c Tue Oct 9 21:53:00 2001
+++ linux/drivers/sound/emu10k1/audio.c Wed Jan 9 10:00:00 2002
@@ -1098,7 +1098,7 @@
static int emu10k1_audio_open(struct inode *inode, struct file *file)
{
- int minor = MINOR(inode->i_rdev);
+ int emu_minor = minor(inode->i_rdev);
struct emu10k1_card *card = NULL;
struct list_head *entry;
struct emu10k1_wavedevice *wave_dev;
@@ -1110,7 +1110,7 @@
list_for_each(entry, &emu10k1_devs) {
card = list_entry(entry, struct emu10k1_card, list);
- if (!((card->audio_dev ^ minor) & ~0xf) || !((card->audio_dev1 ^ minor) & ~0xf))
+ if (!((card->audio_dev ^ emu_minor) & ~0xf) || !((card->audio_dev1 ^ emu_minor) & ~0xf))
goto match;
}
@@ -1206,7 +1206,7 @@
woinst->buffer.fragment_size = 0;
woinst->buffer.ossfragshift = 0;
woinst->buffer.numfrags = 0;
- woinst->device = (card->audio_dev1 == minor);
+ woinst->device = (card->audio_dev1 == emu_minor);
woinst->timer.state = TIMER_STATE_UNINSTALLED;
woinst->num_voices = 1;
for (i = 0; i < WAVEOUT_MAXVOICES; i++) {
diff -u --recursive --new-file v2.5.1/linux/drivers/sound/emu10k1/midi.c linux/drivers/sound/emu10k1/midi.c
--- v2.5.1/linux/drivers/sound/emu10k1/midi.c Tue Oct 9 21:53:00 2001
+++ linux/drivers/sound/emu10k1/midi.c Wed Jan 9 10:00:00 2002
@@ -87,7 +87,7 @@
static int emu10k1_midi_open(struct inode *inode, struct file *file)
{
- int minor = MINOR(inode->i_rdev);
+ int emu_minor = minor(inode->i_rdev);
struct emu10k1_card *card = NULL;
struct emu10k1_mididevice *midi_dev;
struct list_head *entry;
@@ -98,7 +98,7 @@
list_for_each(entry, &emu10k1_devs) {
card = list_entry(entry, struct emu10k1_card, list);
- if (card->midi_dev == minor)
+ if (card->midi_dev == emu_minor)
goto match;
}
diff -u --recursive --new-file v2.5.1/linux/drivers/sound/emu10k1/mixer.c linux/drivers/sound/emu10k1/mixer.c
--- v2.5.1/linux/drivers/sound/emu10k1/mixer.c Tue Oct 9 21:53:00 2001
+++ linux/drivers/sound/emu10k1/mixer.c Wed Jan 9 10:00:00 2002
@@ -640,7 +640,7 @@
static int emu10k1_mixer_open(struct inode *inode, struct file *file)
{
- int minor = MINOR(inode->i_rdev);
+ int emu_minor = minor(inode->i_rdev);
struct emu10k1_card *card = NULL;
struct list_head *entry;
@@ -649,7 +649,7 @@
list_for_each(entry, &emu10k1_devs) {
card = list_entry(entry, struct emu10k1_card, list);
- if (card->ac97.dev_mixer == minor)
+ if (card->ac97.dev_mixer == emu_minor)
goto match;
}
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2002-01-15 14:20 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-01-15 14:14 emu10k1_audio_open?? 2.5.2 problem Frank Jacobberger
2002-01-15 14:19 ` Nikita Gergel
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.