35,10 → 35,9 |
extern void spk_mksound(unsigned int hz, unsigned int ticks); |
extern void spk_nosound(unsigned long ignored); |
|
extern int input_installed; |
static int speaker_installed; |
|
/* User Functions */ |
|
void speaker_sound(unsigned int hz, unsigned int ticks) |
{ |
spk_mksound(hz, ticks); |
50,11 → 49,18 |
} |
|
/* Init the Linux Speaker Driver */ |
int SPEAK26_installed() |
{ |
return speaker_installed; |
} |
|
int SPEAK26_init() |
{ |
int ret; |
|
if (input_installed == FALSE) |
if (speaker_installed == TRUE) return 0; |
|
if (INPUT26_installed() == FALSE) |
if (INPUT26_init()) { |
printk(KERN_ERR "Unable to open Input SubSystem.\n"); |
return -1; |
72,13 → 78,21 |
return -1; |
} |
|
speaker_installed = TRUE; |
|
return 0; |
} |
|
int SPEAK26_close() |
{ |
if (!speaker_installed) |
return -1; |
|
speaker_exit(); |
pcspkr_exit(); |
|
speaker_installed = TRUE; |
|
return 0; |
} |
|