Further cleanup of sound generation in syscons:
The timer_spkr_*() functions take care of the enabling/disabling of the speaker. Test on the existence of timer_spkr_*() functions, rather than architectures.
This commit is contained in:
parent
6ea3dc3746
commit
1d73a9dc74
@ -43,8 +43,6 @@ __FBSDID("$FreeBSD$");
|
|||||||
|
|
||||||
#include <machine/clock.h>
|
#include <machine/clock.h>
|
||||||
#include <machine/md_var.h>
|
#include <machine/md_var.h>
|
||||||
#include <machine/ppireg.h>
|
|
||||||
#include <machine/timerreg.h>
|
|
||||||
#include <machine/pc/bios.h>
|
#include <machine/pc/bios.h>
|
||||||
|
|
||||||
#include <vm/vm.h>
|
#include <vm/vm.h>
|
||||||
@ -272,18 +270,12 @@ sc_get_bios_values(bios_values_t *values)
|
|||||||
int
|
int
|
||||||
sc_tone(int herz)
|
sc_tone(int herz)
|
||||||
{
|
{
|
||||||
#if defined(__i386__) || defined(__amd64__)
|
#if defined(HAS_TIMER_SPKR)
|
||||||
if (herz) {
|
if (herz) {
|
||||||
/* set command for counter 2, 2 byte write */
|
|
||||||
if (timer_spkr_acquire())
|
if (timer_spkr_acquire())
|
||||||
return EBUSY;
|
return EBUSY;
|
||||||
/* set pitch */
|
|
||||||
timer_spkr_setfreq(herz);
|
timer_spkr_setfreq(herz);
|
||||||
/* enable counter 2 output to speaker */
|
|
||||||
ppi_spkr_on();
|
|
||||||
} else {
|
} else {
|
||||||
/* disable counter 2 output to speaker */
|
|
||||||
ppi_spkr_off();
|
|
||||||
timer_spkr_release();
|
timer_spkr_release();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -38,8 +38,6 @@
|
|||||||
#include <sys/sysctl.h>
|
#include <sys/sysctl.h>
|
||||||
|
|
||||||
#include <machine/clock.h>
|
#include <machine/clock.h>
|
||||||
#include <machine/ppireg.h>
|
|
||||||
#include <machine/timerreg.h>
|
|
||||||
|
|
||||||
#include <pc98/pc98/pc98_machdep.h>
|
#include <pc98/pc98/pc98_machdep.h>
|
||||||
|
|
||||||
@ -227,16 +225,10 @@ sc_tone(int herz)
|
|||||||
{
|
{
|
||||||
|
|
||||||
if (herz) {
|
if (herz) {
|
||||||
/* enable counter 1 */
|
|
||||||
ppi_spkr_on();
|
|
||||||
/* set command for counter 1, 2 byte write */
|
|
||||||
if (timer_spkr_acquire())
|
if (timer_spkr_acquire())
|
||||||
return EBUSY;
|
return EBUSY;
|
||||||
/* set pitch */
|
|
||||||
timer_spkr_setfreq(herz);
|
timer_spkr_setfreq(herz);
|
||||||
} else {
|
} else {
|
||||||
/* disable counter 1 */
|
|
||||||
ppi_spkr_off();
|
|
||||||
timer_spkr_release();
|
timer_spkr_release();
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user