Commit Graph

31 Commits

Author SHA1 Message Date
jkim
7524282161 Move VT switching hack for suspend/resume from bus drivers to syscons.c
using event handlers.  A different version was

Submitted by:	Taku YAMAMOTO (taku at tackymt dot homeip dot net)
2011-05-09 18:46:49 +00:00
nyan
5f53690fd7 Reduce diffs against syscons_isa.c. No functional changes. 2010-05-26 11:31:57 +00:00
nyan
e718e442ec MFi386: part of 189421
- If there are no syscons hints at all, assume there is a single sc0 device
    anyway.  The console probe will still fail unless a VGA adapter is found.
2009-03-06 11:10:31 +00:00
nyan
ec844a0ec0 Always set the bell_pitch to 800. This catch up with the sysbeep() argument
changing.
2008-04-08 13:10:57 +00:00
phk
f5d8b74690 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.
2008-03-26 22:02:51 +00:00
phk
fa71439e44 The "free-lance" timer in the i8254 is only used for the speaker
these days, so de-generalize the acquire_timer/release_timer api
to just deal with speakers.

The new (optional) MD functions are:
	timer_spkr_acquire()
	timer_spkr_release()
and
	timer_spkr_setfreq()

the last of which configures the timer to generate a tone of a given
frequency, in Hz instead of 1/1193182th of seconds.

Drop entirely timer2 on pc98, it is not used anywhere at all.

Move sysbeep() to kern/tty_cons.c and use the timer_spkr*() if
they exist, and do nothing otherwise.

Remove prototypes and empty acquire-/release-timer() and sysbeep()
functions from the non-beeping archs.

This eliminate the need for the speaker driver to know about
i8254frequency at all.  In theory this makes the speaker driver MI,
contingent on the timer_spkr_*() functions existing but the driver
does not know this yet and still attaches to the ISA bus.

Syscons is more tricky, in one function, sc_tone(), it knows the hz
and things are just fine.

In the other function, sc_bell() it seems to get the period from
the KDMKTONE ioctl in terms if 1/1193182th second, so we hardcode
the 1193182 and leave it at that.  It's probably not important.

Change a few other sysbeep() uses which obviously knew that the
argument was in terms of i8254 frequency, and leave alone those
that look like people thought sysbeep() took frequency in hertz.

This eliminates the knowledge of i8254_freq from all but the actual
clock.c code and the prof_machdep.c on amd64 and i386, where I think
it would be smart to ask for help from the timecounters anyway [TBD].
2008-03-26 20:09:21 +00:00
phk
632e5d39f7 Rename timer0_max_count to i8254_max_count.
Rename timer0_real_max_count to i8254_real_max_count and make it static.
Rename timer_freq to i8254_freq and make it a loader tunable.
2008-03-26 15:03:24 +00:00
jhb
3a7dab48bd Use pause() rather than tsleep() on explicit global dummy variables. 2007-02-27 17:22:30 +00:00
nyan
89dd273d00 Remove unneeded include. 2006-05-08 12:05:04 +00:00
nyan
99f1b22233 - Move timerreg.h to <arch>/include and split i8253 specific defines into
i8253reg.h, and add some defines to control a speaker.
- Move PPI related defines from i386/isa/spkr.c into ppireg.h and use them.
- Move IO_{PPI,TIMER} defines into ppireg.h and timerreg.h respectively.
- Use isa/isareg.h rather than <arch>/isa/isa.h.

Tested on: i386, pc98
2005-05-14 09:10:02 +00:00
nyan
7d03ad1458 Change a directory layout for pc98.
- Move MD files into <arch>/<arch>.
  - Move bus dependent files into <arch>/<bus>.
Rename some files to more suitable names.

Repo-copied by:	peter
Discussed with:	imp
2005-05-10 12:02:18 +00:00
nyan
af1d64472e Merged from sys/isa/syscons_isa.c revision 1.24. 2003-10-31 13:48:24 +00:00
jhb
17958a749f - Use the new resource_disabled() helper function to see if devices are
disabled.
- Change the apm driver to match the acpi driver's behavior by checking to
  see if the device is disabled in the identify routine instead of in the
  probe routine.  This way if the device is disabled it is never created.

Note that a few places (ips(4), Alpha SMP) used "disable" instead of
"disabled" for their hint names, and these hints must be changed to
"disabled".  If this is a big problem, resource_disabled() can always be
changed to honor both names.
2003-07-02 16:09:02 +00:00
nyan
4743c6079e Merged from sys/isa/syscons_isa.c revision 1.21. 2003-01-15 13:12:12 +00:00
nyan
617ebb340b Merged from sys/isa/syscons_isa.c revision 1.20. 2002-10-22 15:22:49 +00:00
nyan
f353241d39 Merged from sys/isa/syscons_isa.c revision 1.19. 2002-10-17 12:54:51 +00:00
nyan
879fee156b Merged from sys/isa/syscons_isa.c revision 1.18. 2002-09-16 07:11:43 +00:00
nyan
81a72cd354 Merged from the following changes.
sys/dev/syscons/scvgarndr.c revision  1.11
sys/dev/syscons/scvtb.c     revision  1.8
sys/dev/syscons/syscons.c   revisions 1.361, 1.363, 1.364, 1.365 and 1.366
sys/isa/atkbd_isa.c         revision  1.9
sys/isa/syscons_isa.c       revision  1.17
2001-07-14 03:26:02 +00:00
nyan
d80add6a08 Merged from sys/isa/syscons_isa.c revision 1.16. 2001-06-26 11:46:42 +00:00
kato
a961cceaf1 Used kbio.h and consio.h instead of machine/console.h. 2000-10-20 10:35:44 +00:00
nyan
9eb054a3a5 Changed default cursor shape to non-blink mode.
Submitted by:	Tomokazu HARADA <tkhara@osk4.3web.ne.jp>
2000-08-08 09:28:32 +00:00
nyan
b5738d479e Merge from the following changes.
sys/conf/files.i386		1.321
sys/dev/syscons/syscons.c	1.343
sys/i386/isa/spkr.c		1.46
sys/isa/fd.c			1.183 and 1.185
sys/isa/syscons_isa.c		1.14
sys/isa/vga_isa.c		1.18
2000-07-11 12:50:34 +00:00
kato
d015bc83c1 Merged from sys/isa/syscons_isa.c revision 1.13. 2000-06-17 04:54:50 +00:00
nyan
ed031b005e Merge from the following changes.
File				Revision
sys/conf/files.i386		1.303 and 1.304
sys/dev/kbd/atkbd.c		1.23
sys/dev/syscons/scterm-sc.c	1.2
sys/dev/syscons/scvgarndr.c	1.5
sys/dev/syscons/scvtb.c		1.5
sys/dev/syscons/syscons.c	1.335
sys/isa/syscons_isa.c		1.11
sys/isa/vga_isa.c		1.17
2000-03-29 12:26:41 +00:00
kato
e65ad563e9 Synced with the sc driver in the sys/dev/syscons directory.
Submitted by:	yokota
2000-01-20 15:16:49 +00:00
kato
8aecc90c7c Change isa_get/set_flags() to device_get/set_flags().
Submitted by:	dfr
1999-09-07 11:17:09 +00:00
peter
3b842d34e8 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
phk
ee871b6440 Merge the cons.c and cons.h to the best of my ability. alpha may or
may not compile, I can't test it.
1999-08-09 10:35:05 +00:00
kato
ff830804c6 Added copyright.
Pointed out by:	yokota
1999-07-03 08:50:45 +00:00
kato
3e3cf46989 Merge with sys/isa/syscons_isa.c and sys/dev/syscons/syscons.c
revisions 1.6 and 1.308, respectively.

Pointed-out by:		yokota
1999-06-24 12:13:08 +00:00
kato
2e2fe43a35 PC98 part of the second phase of syscons reorganization.
Submitted by:	yokota
1999-06-24 10:51:40 +00:00