Messages in this thread |  | | Subject | SB16 initialisation - success | From | Duncan Roe <> | Date | Wed, 11 Sep 1996 12:29:00 +1000 |
| |
Hi Hannu,
With both patches, soft reboot works again. Many thanks!
For your confirmation, I append the patches. I had a spot of bother with tabs becoming spaces and trailing spaces being lost, so you should indeed send Linus your originals rather than take them from this mail.
For anyone who wants to try it, "patch -l" *may* work.
Cheers ... Duncan.
------------------------------------------------------------------------- *** sb_common.c.old Mon Sep 9 12:45:01 1996 --- sb_common.c Mon Sep 9 12:45:43 1996 *************** *** 674,682 **** devc->dev = num_audiodevs; devc->caps = hw_config->driver_use_1;
- irq2devc[hw_config->irq] = devc; - devc->irq_ok = 0; - if (snd_set_irq_handler (hw_config->irq, sbintr, "sound blaster", devc->osp) < 0) { --- 674,679 ---- *************** *** 684,689 **** --- 681,689 ---- irq2devc[hw_config->irq] = NULL; return; } + + irq2devc[hw_config->irq] = devc; + devc->irq_ok = 0;
if (devc->major == 4) if (!sb16_set_irq_hw (devc, devc->irq)) /* Unsupported IRQ */ ------------------------------------------------------------------------- *** sb_common.c.old Tue Sep 10 09:36:48 1996 --- sb_common.c Tue Sep 10 09:39:56 1996 *************** *** 705,711 **** }
#ifndef NO_SB_IRQ_TEST ! for (n = 0; n < 3 && devc->irq_ok == 0; n++) if (sb_dsp_command (devc, 0xf2)) /* Cause interrupt immediately */ { int i; --- 705,713 ---- }
#ifndef NO_SB_IRQ_TEST ! if (devc->major != 4 || devc->minor > 11) /* Not Sb16 v4.5 or v4.11 */ ! { ! for (n = 0; n < 3 && devc->irq_ok == 0; n++) if (sb_dsp_command (devc, 0xf2)) /* Cause interrupt immediately */ { int i; *************** *** 723,728 **** --- 725,731 ---- { DDB (printk ("IRQ test OK (IRQ%d)\n", devc->irq)); } + } #endif
request_region (hw_config->io_base, 16, "sound blaster"); -------------------------------------------------------------------------
|  |