Commit Graph

291 Commits

Author SHA1 Message Date
leo
baa16e912c Rename lpt to lp on some places to avoid botches between files.isa and
files.atari.
1997-07-30 15:43:23 +00:00
leo
b61a48cef7 Include 'locators.h' 1997-07-30 15:32:37 +00:00
jtk
ca1bba150a use locator defines in "locators.h" to index cf_loc[] 1997-07-17 03:16:39 +00:00
jtk
b4777471db use locator defines in "locators.h" to index cf_loc[] 1997-07-17 01:52:54 +00:00
leo
de78b4c0e9 Garbage collect bell-ioctl's. 1997-07-15 06:48:05 +00:00
leo
1c21c4994d Make sure the card is probed once. 1997-07-09 14:38:02 +00:00
leo
d4c5e4e6fe Add code to set pitch and duration of the keyboard bell. (Thomas Gerner). 1997-06-29 20:30:49 +00:00
leo
b61541d6c2 Be consistent with more pedantic bus.h. 1997-06-25 12:15:54 +00:00
thorpej
afe2bc9b9e In wdsize():
- If the partition is already open, skip the open/close step.  (Sync with
  other disk drivers).
- foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
  from the disklabel accordingly.
1997-06-24 00:41:29 +00:00
veego
b04f321b06 s/atari_round_page/m68k_round_page/ 1997-06-10 18:45:05 +00:00
leo
f42858310e Use m68k cacheops 1997-06-04 14:33:49 +00:00
leo
c803f7baa9 Add serial driver for 68901 UART (modem1 port). 1997-05-25 12:41:27 +00:00
leo
c05eddf7f5 Fix the 'shifting screens' bug on the Falcon. This solution is not perfect
since it gives a bit of flicker while switching frame buffers. From
Thomas Gerner.
1997-05-19 21:07:05 +00:00
leo
7c2c0c846c - Provide the reasonable size that can/may be mmap-ed. This might differ
from the current frame buffer size.
- The et-driver now allows for a 16Kb io-region (was 8Kb) that can be
  mapped. The XFree server uses this.
1997-04-25 19:25:38 +00:00
leo
d5733f126e Allow formatting of 360Kb floppies. 1997-04-25 19:18:04 +00:00
leo
9c9b9aefc9 Make Hades DMA transfers work in polling mode with all interrupts
disabled. This makes dumps to scsi work.
1997-04-06 12:42:44 +00:00
leo
ff152e48d5 The atari-TT really has no IDE-interface. 1997-04-02 20:33:10 +00:00
leo
061e737731 Add wd-driver. The driver is basically the driver present in the arm32
port (Thanks Mark!) with a few atari specific things and the bad block
handling disabled.
1997-04-01 08:17:44 +00:00
leo
67c47d4b56 Remove a hardcoded interrupt handler. Now uses intr_establish() for the
SCSI-drq handler on the Hades.
1997-03-30 21:08:19 +00:00
leo
103e8967c4 Add a space to the attach message. 1997-03-30 21:04:13 +00:00
leo
e4a48696a6 Add member to bitmap struct that gives the size of mappable memory. 1997-03-13 12:37:08 +00:00
leo
7e288e08c3 Use vme_mask, not sys_mask to enable the SCC interrupt. 1997-03-10 14:41:43 +00:00
leo
60bde8d1ca Fix a kernel-dump that occurred when accessing a grf-device that was configured
in the config file but not found by the autoconfig code.
1997-02-26 12:28:40 +00:00
leo
5e2ca8918d Use generic date conversion module. 1997-02-26 12:26:36 +00:00
leo
a6b3b4a841 Add option to sleep until ST_DMA becomes available. 1997-01-27 07:54:40 +00:00
leo
43795f8930 Don't set the PA_SER2 bit by default, this has the nasty side effect that
it disables the IDE hardware on the Falcon (Thanks Markus ;-) ). A function
is provided to toggle the bit.
1997-01-21 20:41:07 +00:00
leo
81fd2d7dc6 This should have been part of the keyboard-modifier changes. 1997-01-12 22:15:24 +00:00
leo
3e345f741d Use the mask register to block the interrups, not the enable register. This
enables the interrupt to be shared (with IDE for example ;-) ).
1997-01-12 15:46:37 +00:00
leo
4b8a9a883c Fix return value of the interrupt function. 1997-01-12 15:44:45 +00:00
leo
7a0c8fa119 Handle keyboard modifiers *before* handing the keycodes to either the
console driver or the DDB keyboard functions. This prevents annoyances
with out of sync modifier stati.
1997-01-10 21:24:25 +00:00
leo
2fa61d9691 Allow the control registers to be mapped too. 1997-01-10 21:00:36 +00:00
leo
1f4324fd52 Record physical addresses in the bitmap structure instead of VA's. The
latter breaks the mmap-functions.
1997-01-10 20:59:27 +00:00
leo
d1538cb3c0 Don't try to init the keyboard interrupts in cngetc(). This caused the
keyboard to hang when booting directly into the debugger.
1997-01-08 11:28:03 +00:00
leo
0713c0ee88 Fix a rather nasty thinko that made the keyboard useless on the Falcon.
Thanks to Markus Kilbinger for finding it.
1997-01-04 23:30:21 +00:00
leo
54608785fb The ST-DMA driver now uses intr_establish. 1997-01-01 21:14:47 +00:00
leo
493e4aaebb The Hades floppy driver now uses intr_establish(). Also the interrupt
accounting is fixed (ie. counted as the right interrupt).
1997-01-01 21:12:56 +00:00
pk
c4a0dfb011 omission in last commit: ramdisk.h => md.h 1996-12-28 23:50:44 +00:00
pk
a8b4babc16 rename: ramdisk => md 1996-12-28 23:37:26 +00:00
leo
223682435b Oops, this one was missed in the BROKEN_INDIRECT_CONFIG cruisade. 1996-12-28 23:26:36 +00:00
leo
c4b08fe059 Add intr_establish/disestablish functions. Currently only the lpt-driver
is converted to use them...
1996-12-26 23:25:01 +00:00
leo
c6e901c459 Get rid of BROKEN_INDIRECT_CONFIG 1996-12-20 16:20:57 +00:00
leo
291ced55a4 Get rid of BROKEN_INDIRECT_CONFIG 1996-12-20 12:49:35 +00:00
leo
421158437b Tweak the clockframe structure a bit so we are able to save a few cycles
at interrupt time. (From Gordon Ross).
1996-12-18 12:35:19 +00:00
leo
9f8a5d9694 Move up the initialisations for the delay routine in the initialisation
process. It's now also available to the different device probes.
1996-12-16 22:03:23 +00:00
leo
de3b8c8e4b Implement an rtc-device. Credits for the idea goes to Wolfgang Solfrank.
Because there is no way yet to tell init(1) to execute commands before
single user-mode is entered, the inittodr() function is still partly
functional. It retrieves the value of the RTC and sets the time as if
the RTC was running at UTC. The resettodr() function is a No-Op. The
RTC can only be changed by a write to /dev/rtc.
The TIMEZONE and DST options are no longer needed and removed from the
config files.
1996-12-16 21:24:00 +00:00
leo
ae092ee765 Merge the formatting code from the i386-port. 1996-12-14 13:47:12 +00:00
thorpej
d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
leo
f9ace39811 Plug some spl-holes in the lp-driver. Also be more strict in protecting
the register access to the psg-chip. The combination of those bugs
caused the printer to print garbage sometimes.
1996-11-17 13:47:09 +00:00
leo
d3ef248436 Shift screen a bit to the left. 1996-11-17 13:39:40 +00:00
leo
643abfa146 Make splbio really splbio. All holes now seem to be plugged. At least
on the Hades & TT030.
1996-11-17 13:38:03 +00:00
thorpej
490126b07a Use bitmask_snprintf(). 1996-11-13 06:48:24 +00:00
leo
27c222f3e8 Add frequency table for Hades. 1996-11-10 21:52:37 +00:00
leo
76cc53af70 Hades floppy driver. 1996-11-09 22:27:25 +00:00
leo
758e7a3708 Adapt to the change in the floppy minor-number sceme. 1996-11-08 14:17:08 +00:00
leo
5f28db13df - Make it's behaviour on minor numbers identical to that of the Hades
floppy driver.
- Fixup format types in the debug-printf's
- Don't print empty lines on unconfigured drives.
- When a drive is detected, show it's default format.

 ---- Warning: minor numbers are shifted! ---
1996-11-06 14:03:15 +00:00
leo
86c616102f select -> poll 1996-10-16 12:57:11 +00:00
christos
17f5b2a175 backout previous kprintf changes 1996-10-13 04:10:34 +00:00
leo
3d5284e11e - Fix configuration name of 'lpt'
- add 'pcibus' as a mainbus device.
1996-10-11 21:07:02 +00:00
leo
64096bf6d1 - add a iteet_ioctl function so iteconfig(1) can be used to select the
screen geometry.
- Re-arrange et_loadmode() and et_inittextmode() to write into shadow
  register set instead of writing to the card-registers directly.
- provide et_hwsave()/et_hwrest() functions to transfer the card-registers
  to and from the shadow set.
1996-10-11 21:02:48 +00:00
leo
6cfe8836c4 *** empty log message *** 1996-10-11 21:01:26 +00:00
leo
b88d6013b6 Remove grf_ite_ioctl(). Replace it by 'itexx_ioctl' that is configurable
per ite-type.
1996-10-11 20:50:34 +00:00
christos
60dd5ceebe printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:06:28 +00:00
thorpej
b1b86c0c98 Merge the netbsd-1-2 branch into the mainline. 1996-10-08 23:40:40 +00:00
leo
3b5c181c8b Checkpointing my et4000 work. Note that the et-console will not be
functional until the minimal pci-support is checked in.
1996-10-04 07:27:52 +00:00
leo
f97dcb95be The KDASSERT macro is now defined in libkern 1996-09-25 15:10:15 +00:00
leo
8e7f6c2cf5 Catchup with -current:
- Extra argument to boot()
  - select -> poll
1996-09-25 15:03:20 +00:00
leo
0e805391a3 Prepare for (soon to come) et4000 PCI console 1996-09-16 06:49:03 +00:00
leo
ef074b3031 Prepare for (soon to come) et4000 PCI console. 1996-09-16 06:43:32 +00:00
leo
11c0ef7354 atari_realconfig now defined in <atari/device.h> 1996-09-16 06:27:11 +00:00
leo
70747dc24f Add support for Hades platform. 1996-09-16 06:20:44 +00:00
mycroft
b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
cgd
71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd
2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
leo
3a68f68754 Don't use an absolute I/O adress. 1996-08-23 11:14:59 +00:00
leo
6aab91675e Revert to polled-DMA on Falcon. 1996-08-16 08:25:46 +00:00
leo
4b5bff0d0f During a rather lengthy debug session with Markus Kilbinger (Thanks again!),
we managed to kill the following SCSI-driver bugs for the Falcon:
   - The Byte_Count_zero bit of the falcon DMA controller does not always
     tell the truth! This caused the SCSI-driver to choke on devices that
     disconnected in the middle of a DMA-transfer (mostly removables).
   - Printing debug info about the 5380 on the Falcon is *only* permitted
     when DMA is not active.
   - Some functions forgot to remove possibly pending sofware interrupts
   - Some debug options didn't allow debugging a single target while they
     could easily be made to do so. This is fixed.
1996-07-05 19:35:35 +00:00
leo
f1af6a2252 Add missing spl0() call. 1996-07-05 19:22:21 +00:00
leo
1301d25702 Pull down from release. Sorry, should have been the other way around.... 1996-06-18 11:10:04 +00:00
leo
d84f4c4b18 Add tty_attach() calls. 1996-06-18 05:54:59 +00:00
leo
0b59a91269 Add missing spl(x). (Jason Thorpe) 1996-05-30 13:41:58 +00:00
leo
b4ca145026 Get in sync with the mac68k version of the 5380 driver. Also increase
the maximum values of wait_req_xx() functions so some old (slow) scsi-1 drives
will work.
1996-05-15 09:21:29 +00:00
leo
dd8fd30935 Prototype + -Wall fixes. 1996-05-15 07:28:51 +00:00
leo
5f0e599c40 Remove a line of debugging code. 1996-05-14 10:25:01 +00:00
leo
b26b45a14d Corrections for removed <sys/cpu.h> and some more prototypes. 1996-04-26 06:59:15 +00:00
leo
7f0e5ecf77 - Fixup the ipending function for the Falcon. This seemed to be the source
of a lot of instability problems on the Falcon. I also enabled DMA on
  interrupt basis for the Falcon.
- Try to handle targets that request too much data more sanely.
- Some fixups for strict prototypes + -Wall

Thanks to Markus Kilbinger for providing the debugging support.
1996-04-26 06:50:12 +00:00
leo
df8c6afda1 Ignore joystick packages when running in 3b. emulation mode. 1996-04-23 11:02:01 +00:00
leo
18dd6b0909 Prototypes. 1996-04-19 20:35:31 +00:00
leo
b3fadef7e0 Yet more prototyping and -Wall fixes. 1996-04-18 08:51:11 +00:00
leo
6e40f439fc Part of restructuring done for 3-button mouse support. 1996-04-12 19:55:28 +00:00
leo
658385632c Prototyping. 1996-04-12 09:05:14 +00:00
leo
9402dcae81 Add 3-button mouse support. 1996-04-12 08:39:22 +00:00
leo
e4a9d09efb Add 3-button mouse support. 1996-04-12 08:37:03 +00:00
christos
933d138841 Change %r -> %: as for recursive printf's 1996-03-30 21:01:21 +00:00
leo
ccde176c63 Small nits because of changes in ym2149 handling. 1996-03-27 12:15:28 +00:00
leo
28e46e648f Add centronics printer driver. 1996-03-27 10:20:44 +00:00
leo
72e826cbd4 Remove rd_match_hook(). 1996-03-27 10:13:09 +00:00
leo
c5a7f4e977 Take out direct access to the YM2149. The chip definitions are moved
from video.h to ym2149reg.h.
1996-03-27 10:07:45 +00:00
leo
8106a55133 And more proto's..... 1996-03-20 13:11:56 +00:00
leo
e0aeb3dc13 Another bit of prototyping... 1996-03-20 12:41:30 +00:00
leo
7b7df70d77 Fix typo in neew config changes. 1996-03-20 08:17:48 +00:00
leo
38432e7448 Debugger() prototype is in systm.h, don't define Debugger() here. 1996-03-19 13:15:34 +00:00
thorpej
82d914d090 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:26:49 +00:00
thorpej
5c67e5fad9 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:16:48 +00:00
leo
55b65fb49a Switch to the mi ramdisk driver. 1996-03-14 21:41:04 +00:00
leo
7da79507e9 Take the type of the attached monitor into account when selecting a
display-mode. Includes hack to make things work on non-VGA monitors.
1996-03-10 11:42:35 +00:00
leo
77e4824146 Just prototyping. 1996-03-08 21:54:53 +00:00
leo
a91a46bc0f When having a perfect match on the resolution, try to match the screen
depth as best we can.
1996-03-08 21:52:50 +00:00
leo
bb2b6106da Fix a bug in the DCD handling. Because the state of the DCD line was
kept in a soft-copy that wasn't initialized on open, it sometimes happend
that a change of the carrier got lost. Also fixed some prototypes.
1996-03-08 21:50:40 +00:00
leo
db7d722c4b A bit of reshuffling. Also some stricter prototyping. 1996-02-22 21:07:05 +00:00
leo
c9dfd5cb44 First bunch of changes due to stricter prototype checking. 1996-02-22 10:10:44 +00:00
leo
2708c1593e Oops, should have been updated in conjunction with ncr5380.c . 1996-02-14 08:09:47 +00:00
leo
35d120d71d Some extra range-tests on the RTC values. 1996-02-11 12:42:19 +00:00
leo
8d7918526b Various small fixes. 1996-02-10 22:10:45 +00:00
mycroft
9d9a70a5a2 Fix #includes. 1996-02-02 18:05:36 +00:00
gwr
c2c1c1b11a Move struct definitions to MD code. 1996-01-24 19:21:40 +00:00
leo
1481622cdb Fixes 'hanging' problem when closing a serial port. 1996-01-23 09:35:15 +00:00
leo
9186c7668f The changes frpm Paul Goyette with respect to the driver trace require
DBG_PID to be defined to an interger value....make it so.
1996-01-14 13:06:37 +00:00
thorpej
5b39541e48 New generic disk framework. Highlights:
- New metrics handling.  Metrics are now kept in the new
	  `struct disk'.  Busy time is now stored as a timeval, and
	  transfer count in bytes.

	- Storage for disklabels is now dynamically allocated, so that
	  the size of the disk structure is not machine-dependent.

	- Several new functions for attaching and detaching disks, and
	  handling metrics calculation.

Old-style instrumentation is still supported in drivers that did it before.
However, old-style instrumentation is being deprecated, and will go away
once the userland utilities are updated for the new framework.

For usage and architectural details, see the forthcoming disk(9) manual
page.
1996-01-07 22:01:38 +00:00
leo
57a3b5b00c Keep more debugging history (Paul Goyette). Synced with mac68k version. 1996-01-06 20:17:15 +00:00
leo
356a61ab95 Add an nvram-driver. This driver makes it possible to read/write the
configuration info stored in the nvram on the mc146818.
1996-01-06 20:10:41 +00:00
leo
c8574c59f7 Allow selection of Falcon (videl) video modes other than the mode selected
on startup (Thomas Gerner).
1996-01-02 20:59:20 +00:00
leo
b46db7160c - Remove an unwanted interference between the 2 channels.
- Allocate the ringbuffer on a channel's first open.
1995-12-25 14:16:50 +00:00
leo
1e5442c0ba Fixes for devices that don't support linked commands. (Paul Goyette) 1995-12-18 20:37:51 +00:00
leo
64f1b42bb4 Correct PCLK value. 1995-12-16 21:45:31 +00:00
leo
8dff161947 Make sure that the motor will be turned off when a floppy is inserted. 1995-12-10 14:25:12 +00:00
leo
70875fa68f Return a more sensible errno when someone is trying to set the unsupported
mdmbuf option.
1995-12-03 14:32:39 +00:00
leo
ca1cc64e20 Remove forgotten #endif 1995-12-01 19:51:53 +00:00
leo
291d8cbf3a Add kernel option for separate {stat,prof}clock 1995-11-30 21:52:46 +00:00
jtc
0cd793449e merge in changes from 1.1 release branch 1995-11-30 00:56:23 +00:00
leo
3b8542c63a The Falcon needs a delay after writing the dma_data register (Thomas Gerner) 1995-11-06 21:13:38 +00:00
leo
ebc6d5a705 Use general bound-check function. 1995-10-14 20:17:46 +00:00
leo
0e5fe20560 - Cleanup the arbitration
- Make sure the MON_BUSY flag is cleared after a DMA transfer. Otherwise
  we might end up with a 'lost-busy' situation unexpectedly. This will
  prevent the 5380 from driving the bus, which is not funny during
  reselections.
1995-10-08 13:34:23 +00:00
leo
7d3bc89420 Get in sync with the mac68k version to incorporate Allen Briggs' changes
- emit MSG_ABORT/MSG_REJECT at the right times:
 - make MIN_PHYS machine dependent.
1995-10-05 08:52:53 +00:00
leo
7af927b56d Make sure the prototypes and inline definitions are included. 1995-09-23 20:29:16 +00:00
leo
f28a41635b Make them compliant to iso-8859-1 (Thomas Gerner). 1995-09-23 20:25:34 +00:00
leo
c150cc4d37 PROF -> GPROF 1995-09-23 20:23:28 +00:00
leo
a2a0fe9c66 - Handle devices that do not support identify messages (Allen Briggs)
- Add pdma_ready() hook (Allen Briggs)
- Increase timeout to 1000 (Matthias Pfaller)
1995-09-16 14:15:10 +00:00
leo
e34d65cb12 - Fix a timing bug in the loop, that was introduced in the previous version.
- Added some code to reject unsupported messages correctly.
1995-09-12 19:58:53 +00:00
leo
7640742d5b Fix possibly endless loop (mycroft) and add fix requested by Allen Briggs. 1995-09-05 07:02:21 +00:00
leo
eb9d1db57a Right align color values in the bytes. 1995-09-04 19:41:39 +00:00
leo
eee0dbbda7 Allow chars > 0x7f to be displayed on the ite's 1995-09-04 19:39:21 +00:00
leo
9c9abeb6c3 Add Falcon video support. Thanks to Thomas Gerner. 1995-08-20 18:17:09 +00:00
leo
34e65502e7 - make sure that there is 1 pending software interrupt max.
- read status before character, so the status won't be lost (Thomas Gerner)
- accumulate as much interrupts as possible in zshard()
1995-08-20 13:28:10 +00:00
leo
6b9a15416a - Add 'restbyte' handling for TT.
- Don't _ever_ do DMA for less than 512 bytes on the Falcon
- Fix bug in autosense-handling. Now asks for the correct number of bytes.
  Now it won't read ghost bytes on the tape anymore.
- Add missing braces as suggested by Matthias Pfaller
- Make it possible to debug requests on a specified number of targets
- Add debug option to show only transaction with error code != 0
1995-08-19 12:36:21 +00:00
leo
44d433786d Remove 2 wrong proto-types. 1995-08-17 20:32:50 +00:00
mycroft
80d7b0695a minphys() functions really should return void. 1995-08-12 20:30:45 +00:00
leo
24644e5151 New version of NCR5380-SCSI driver. This version is far more generic than
the previous version. The machine dependent part contains the configuration
for both the TT and FALCON. The configuration files have been changed to
select SCSI-support for either TT, Falcon or both.
The configuration file for the Atari-Falcon will only get _really_ usefull
when the Falcon video part is finished.
1995-08-11 20:01:15 +00:00
leo
cd73c9f0cb Add middle button emulation. 1995-07-27 06:35:46 +00:00
leo
2826d4fa30 A forgotten file for the kbdmap fixes. 1995-07-25 13:49:26 +00:00
cgd
ffe4785a58 update SCSI minphys routines' definitions to match standard minphys()
definition and usage.
1995-07-24 07:33:32 +00:00