Commit Graph

714 Commits

Author SHA1 Message Date
eeh 3cee90e0e1 Need to provide a consdev to the cons_attach_input call now. 2000-05-21 14:36:15 +00:00
eeh 424619ca1a Fix the sparc64 console.
Unlike the other Sun machines, UltraSPARCs can have consoles run on different
chips than zs, so we need to support them.  So, here we go:

	Add a new PROM console driver with a major number and everything.
	This is the default driver if nothing else attaches.  It does not
	use the keyboard driver since the PROM translates keystrokes itself.
	(Unfortunately it also swallows L1-A).

	Have the keyboard driver take over the console when it attaches on a
	serial port.  When a serial port detects a keyboard and attaches the
	keyboard driver, it needs to provide a set of consdev vectors.  They
	keyboard driver will use those to send I/O to the keyboard and mouse.
2000-05-19 05:26:16 +00:00
thorpej 463931b3ba Nuke dk_establish() from orbit except from those ports which still use
it to determine the boot device: mvme68k, pc532, macppc, ofppc.  Those
platforms should be changed to use device_register().  In the mean time,
those ports defined __BROKEN_DK_ESTABLISH.
2000-05-16 05:45:44 +00:00
pk 1bf775b965 Conform bus_dmamem_{alloc,map} usage to bus_dma(9) specs. 2000-05-09 22:42:08 +00:00
pk 2d12c9e33b The bus_dma(9) implementation now allocates DVMA addresses in
bus_dmamap_load_*() routines only. Note that DMA memory buffers
allocated with bus_dmamem_alloc() _must_ be loaded by bus_dmamap_load_raw().
2000-05-09 22:39:35 +00:00
mycroft a7fb64072e Fix the RCS tag format. Duh. 2000-05-08 03:11:06 +00:00
mycroft f8e0411615 Make the audioamd assembler code compile again. 2000-05-08 03:09:54 +00:00
mycroft f5bd37be57 Make the SPARC audioamd driver at least *compile*. Well, the C code, that is.
*sigh*
2000-05-08 02:44:31 +00:00
augustss 361f2141f7 Adapt to new am7930 driver. PR 10033 from Gregory McGarry. 2000-05-02 06:35:12 +00:00
pk a558005cec When constructing `ri_devcmap[]', pack four instances of the LUTs in each
32 bit wide entry (as not documented in the non-existent rasops(9)..)
2000-04-17 20:37:28 +00:00
pk 470504f184 Use screen attributes passed to our hardware rasops routines.
Move colormap initialization to cg6reset(), so this is also done
on last close of the framebuffer device (e.g. after X server shutdown).
2000-04-16 22:17:03 +00:00
pk a644297344 Initialize the rasops device colormap to match colormaps used by
our supported devices (including even coloured text on the console).
2000-04-16 22:12:05 +00:00
pk 065ce82243 Switch initial colormap setup again to be compatible with the PROM's,
i.e. background at index 0: white, foreground at index 255: black.

Also, allocate a slice for an ANSI colormap, so we can experiment
with coloured text on the bare console.
2000-04-16 22:07:24 +00:00
pk 8505eb6375 Slight optimization when searching the video parameter table. 2000-04-16 21:01:43 +00:00
pk 20c3689343 Initialize local variable `bt' in cgthree_attach(). 2000-04-14 19:36:43 +00:00
thorpej 4044b5a41c Use separate callouts for motor-on and motor-off. Fixes a condition
where the floppy driver would wedge because a motor-on timeout would
be cancelled by another I/O operation cancelling a motor-off timeout.

From enami tsugutomo <enami@sm.sony.co.jp>.
2000-04-07 16:58:53 +00:00
pk 99dbc425e9 Use copyin/copyout to get a colormap from/to user space.
Also, prepare for the case of a colormap maintained in kernel space.
2000-04-04 21:47:17 +00:00
thorpej d11a9a62e2 Fix fallout from callout. 2000-04-04 17:20:54 +00:00
pk b6a73eb3a1 Make this compile without RASTERCONSOLE too. 2000-03-31 12:58:54 +00:00
pk a41d265271 Add hardware acceleration features for use with the RASTERCONSOLE option.
Code posted on port-sparc by `der Mouse'; it was slightly re-arranged to
fit the layout of this driver.
2000-03-30 13:57:50 +00:00
tsutsui 9100212ef0 Add a "sc_rev" member to ncr5380_softc and handle CXD1180 quirk
in MI ncr5380sbc.
2000-03-25 15:27:54 +00:00
hannken 43e3ea96f3 Fix typos from last commit (callout). 2000-03-24 11:46:46 +00:00
hannken f7049d302a Fix a typo from last commit. 2000-03-24 10:30:12 +00:00
thorpej 7b918b4088 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:40:33 +00:00
pk 5eb7625f42 findzs() is now used only by the kgbd initialision code. 2000-03-21 12:48:45 +00:00
pk c5bbc50487 Delete debugging printf(). 2000-03-21 11:24:02 +00:00
pk 436638ab3a Call rcons_ttyinit() on first open. 2000-03-20 11:27:16 +00:00
pk c1813da35e Use fb_is_console(); retract fbconstty & fbnode from service. 2000-03-19 15:38:45 +00:00
pk aca7e7fa24 Just don't force the baud rate in the driver, ever. 2000-03-19 14:58:02 +00:00
pk c969f1b7df Add `fb_is_console()', which is a helper function for frame buffer
device drivers used to decide whether or not to act as console output.
2000-03-19 13:48:44 +00:00
pk 0ed0e258db Declare the prom stdio nodes and arguments. 2000-03-19 13:25:10 +00:00
pk 41fb5989fe Revise console device handling:
* do not require a `zs' driver for console handling
	* run the console on PROM primitives until a device recognises
	  itself as a console device during normal autoconfiguration.
	* allow (keyboard) devices to take over the input channel of
	  the PROM primitive-based console device.

As a result, consinit() is much simplified and does no longer have
to "detect" devices to setup a working console device. This complexity
has moved to individual drivers which interpret the PROM information
after they have attached to decide whether or not to act as a console.
2000-03-19 13:22:14 +00:00
mycroft 0af581a1a1 Add a ncr5380_attach() routine which does part of the initialization, attaches
the scsibus, and does the addref/delref dance.
2000-03-18 16:13:22 +00:00
jdc e8a33a63d1 Add port power management ioctls. 2000-03-14 21:24:54 +00:00
jdc 797ac20035 Add power management hooks. 2000-03-14 21:20:51 +00:00
soren 95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +00:00
garbled ea089cf90c New features:
tctrl now initializes the state of the internal LCD icons.  The icons
are unprogrammed at boot time.  This incidentally makes the DC-POWER icon
work.

Fixes:
Fix my stupidity in the ENVSYS stuff, and actually follow the API.
2000-03-09 07:04:08 +00:00
thorpej a183d34f04 - Implement cnbell() -- ring the console bell. The cn_bell entrypoint
is optional.
- Add cn_bell to statically allocated consdevs as appropriate.
2000-03-06 21:36:05 +00:00
pk 5b285d9509 Just skip matching the `slave' property against `cf_unit'. 2000-02-14 18:07:37 +00:00
pk b518dc6dfc Eliminate much of the goo in setting up zs device addressing. 2000-02-12 12:51:03 +00:00
thorpej fe551f0e64 Fix a bug in disksort_*() which caused non-optimal ordering when multiple
active partitions were on a single spindle.  Add a b_rawblkno member to
struct buf which contains the non-partition-relative block number to sort
by.
2000-02-07 20:16:47 +00:00
pk de608f33e1 Don't use PROM the virtual address (if any) for the device registers;
they are not reliably mapped.  Also, unmap registers if the device
cannot be configured properly.
2000-02-07 11:44:15 +00:00
pk a5d6b10bad fdcstatus() formatting. 2000-01-28 15:46:20 +00:00
pk 9cfc74c312 Report write-protected disks. 2000-01-24 16:52:02 +00:00
pk 18ad190b10 * b_cylin -> b_cylinder; deals with PR9283.
* a few optimizations & misc. style updates.
2000-01-23 22:19:12 +00:00
thorpej 52242fdf9f Update for sys/buf.h/disksort_*() changes. 2000-01-21 23:28:59 +00:00
pk f8ac5484fa Medium sized code overhaul:
* Improve communication between the `hard' and `soft' interrupt handlers
  to better distinguish various interrupt sources.
* Eliminate several race conditions where we would set a time out handler
  only after starting the command on the hardware.
* Handle most timeouts by resetting the controller; there isn't much chance
  of recovery in any other way.  Currently, the exception is a timeout
  on I/O, in which case we first try to pulse the controller's TC line
  in order to abort the pseudo-dma sequence.  Apparently, "normal"
  conditions can induce such a timeout when there's no disk in the drive.
* Reduce the formatting gap parameter to 0x54.
* On the obio bus, interpret the `status' attribute.
* Minimize console diagnostic output if the errors we get appear to be
  caused by the absence of a disk.
2000-01-21 13:22:01 +00:00
pk 725c6438c1 Use bus_space(9) functions to access the controller registers.
Add probes to the attach routines before poking the chip to see
where the registers are located.
2000-01-17 16:57:15 +00:00
pk c6b6f3883a Remove old-style boot device recognition. 2000-01-11 12:59:43 +00:00
garbled e89216c73c avoid uninterruptable sleep on a CMD_REQ ioctl. 1999-12-17 00:32:25 +00:00