Commit Graph

289 Commits

Author SHA1 Message Date
mhitch
af7ddd3659 Set up the physical addresses for DMAPTR/NEXTPTR before adjusting for
unaligned transfers and adjust the physical address to align the transfer.
If the buffer end just crossed the page boundary, the computation of the
NEXTPTR physical address resulted in using -1.  The cleanup at the end of
the DMA transfer would try to copy the residual data to physical address
0x1ffffffc.  This would silently corrupt data on the R3000 and usually
would hang the R4000.
2000-09-28 03:11:29 +00:00
nisimura
bf7a6e6857 Found glyph pixel order inverted on screen. 2000-09-13 02:11:14 +00:00
nisimura
c8321c45a7 Found glyph pixel order inverted on screen. 2000-09-12 09:45:48 +00:00
nisimura
59178ec7b4 Use dev/{rasops,wsfont} instead of awesome dev/rcons. Still much to do
before being useful.
2000-09-09 06:15:17 +00:00
nisimura
48ff19c98b u_char -> u_int for function argument and return of Zilog register
manipulation helper functions; no loss, no gain, for Alpha processor.
2000-09-09 06:08:42 +00:00
tsutsui
83f94dc417 Regen. 2000-07-20 07:11:28 +00:00
tsutsui
4af0fbdb1a Add PMAG-JA framebuffer. 2000-07-20 06:38:39 +00:00
thorpej
693ff4c94d PAGE_SIZE -> IOASIC_DMA_BLOCKSIZE in one last place. From Izumi Tsutsui. 2000-07-18 06:14:05 +00:00
thorpej
b91d520dc9 Back out previous. It is no longer needed, as both the Alpha
and DECstation IOASIC drivers clear the appropriate interrupts
in the dispatch routine.
2000-07-18 06:12:33 +00:00
thorpej
5e275d7012 Clear the DMA pointer reload interrupt bits in the IOASIC_INTR
register to prevent interrups from looping on the Alpha.

From Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>.
2000-07-17 17:43:16 +00:00
thorpej
8746b7c870 - Write the registers 7930 registers properly on the Alpha (it's
different than on the DECstation).
- Use IOASIC_DMA_BLOCKSIZE instead of PAGE_SIZE.

Should make this work on the Alpha.  From discussion with
Izumi Tsutsui, Gregory McGarry, and Chris Demetriou, and
much reading of EK-D3SYS-PM.
2000-07-17 04:37:27 +00:00
thorpej
887bebaa71 Define IOASIC_DMA_BLOCKSIZE (4096 bytes). 2000-07-17 02:18:17 +00:00
thorpej
8623daff6d G/c some unused (and incorrect, for our usage) definitions. 2000-07-17 02:17:13 +00:00
thorpej
95f72dd4aa Use the IOASIC_DMA_ADDR() macro now that it is fixed. 2000-07-17 01:29:02 +00:00
thorpej
cd6fa19644 Make sure to get the upper 5 bits of the page address mixed in
in IOASIC_DMA_ADDR(), as the le_ioasic attachment does.  Noted
by Gregory McGarry.
2000-07-17 01:28:16 +00:00
nisimura
4f051180a0 - Use PMAD-BA name for device match logic. It's not a real TURBOchannel
device and the id string is not found in option ROM string, but
  ULTRIX/OSF1 call it so anyway.
- Squash IOASIC DMA buffer allocation into device attach() sequence.
2000-07-11 04:10:25 +00:00
nisimura
30c1d4ba1c - Withdraw ZS_IOASIC_DMA conditional which has never been useful.
- Sanitize ZS register access.
2000-07-05 07:50:57 +00:00
nisimura
728e424e54 Repopulate 4 files, zs_ioasic.c and zs_ioasicvar.h from arch/alpha/tc,
zskbd.c and zsms.c from dev/dec/, respectively.  No functionality
change this time.
2000-07-05 02:48:50 +00:00
nisimura
87eac96162 Make sure to settle tcdsreg.h and tcdsvar.h in /usr/include/dev/tc/. 2000-07-04 02:31:21 +00:00
nisimura
1de4ec68b4 Repopulate TCDS dual channel SCSI adapter to MI dev/tc, squashing
internals for better layering between TCDS DMA ASIC and ASC SCSI
controller.
2000-07-04 02:22:08 +00:00
mrg
a14baa8257 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-28 17:05:20 +00:00
mrg
2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb
889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
gmcgarry
6ab5c3364c - add mmap support
- correct bug which wouldn't free allocated DMA segments
2000-06-12 22:40:20 +00:00
gmcgarry
c2a8e26e11 - remove conditional compilation on NAUDIO
- use preprocessor for constants
2000-06-05 23:02:04 +00:00
gmcgarry
a5156a5c97 Cleanup #if 0 cruft. 2000-06-04 22:21:09 +00:00
cgd
cffb580806 Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
2000-06-04 19:14:14 +00:00
gmcgarry
9ee45aaf3a Remove wbflush(). These are not necessary with the new IOASIC bus_space
framework.  From Tohru Nishimura.
2000-06-01 21:46:17 +00:00
cgd
e4c35df1c9 kill __P in these files. (I had to look at them anyway with an eye for
adding some protos... and adding them with __P seems wrong, but mixing
__P and not __P in the same file seems wrong too, so...)
2000-06-01 00:22:52 +00:00
gmcgarry
57e5e86ed1 Merge pmax and alpha ISDN register definitions. 2000-05-28 06:13:40 +00:00
augustss
621ef4d785 Add am7930 audio driver. 2000-05-02 06:43:05 +00:00
augustss
169ac5b3c1 Remove register declarations. 2000-03-30 12:41:09 +00:00
thorpej
fc96443d15 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 07:01:25 +00:00
nisimura
f52c9620bc Place 34 by 80 console at the center of screen. 2000-03-16 05:50:57 +00:00
nisimura
0b765ee6f8 Retain rendering performance lossage by rasops, but suffering
flexibility in turn; this renderer is 2B stroke (less than 16 pixel
width) font only.  If 1B stroke (less than 8 pixel width) font is
ever supported, the font data should be converted into 2B stroke
during font initialization process.  'wsfont_realize()' is to be
proposed in order to have 'CPU and/or accelerator hardware friendly'
format to squeeze maxinum performance.
2000-03-16 05:48:28 +00:00
nisimura
220005d941 Eliminate unused sc_cookie field of struct ioasic_softc. 2000-03-15 03:07:44 +00:00
nisimura
65da099cb1 Unnecessary to enclose device driver body with #if NASC > 0. 2000-03-14 08:23:29 +00:00
nisimura
2eb68c00d2 Respect video console colour designation by configration file. 2000-03-14 08:04:06 +00:00
nisimura
80c0893a8b Switch to improved flexible video console text rasterizer provided by
rasops and wsfont.
2000-03-14 06:25:21 +00:00
mhitch
e65044e30d Get rid of hook for dk_establish() - pmax will now use device_register(). 2000-03-06 03:08:32 +00:00
mhitch
3b06f6f887 Fix boot device detection. Device probes are not done when adapters are
configured, but after all adapters have been configured.  When multiple
adapters are present, only the last configured adapter could be matched
to the boot device slot.  The adapter attach routines now check if that
adapter slot matches the boot device slot and saves the softc pointer
for that controller.  Then when the disks are configured, dk_establish()
matches the appropriate controller.
2000-03-04 05:43:51 +00:00
nisimura
3e02ded337 Improvement on SFB enabled copycol(); still yet under development,
it miserably fails on corner cases.
2000-02-18 06:51:51 +00:00
thorpej
29ae6dbe05 We're given a K1SEG address already. 2000-02-11 01:32:42 +00:00
nisimura
42e4e9fd0c Add the missing piece of previous mod. 2000-02-08 04:35:03 +00:00
nisimura
c6641d91a8 Merge IOASIC register definitions. 2000-02-03 08:13:44 +00:00
nisimura
8e27abd255 Use bus_space_{write,read} for IOASIC register access. 2000-02-03 05:16:30 +00:00
simonb
a5f53c3682 Don't use magic number for lance buffer address. 2000-01-10 13:32:02 +00:00
ad
d1a62749c4 s/NVRCSR/NVR_CSR/ 2000-01-07 10:43:13 +00:00
enami
cadfd97e07 Replace WSFONT_L2R/R2L with WSDISPLAY_FONTORDER_L2R/R2L. 2000-01-07 02:57:17 +00:00
drochner
f6ee10996d regen 2000-01-05 12:15:00 +00:00