Also, the KTR_POLLING kernel option has been removed, so it must be
removed from kernel configs that have it.
-BUSLOGIC AND STALLION ISA SUPPORT REMOVED
------------------------------------------
+BUSLOGIC, CYCLADES AND STALLION ISA SUPPORT REMOVED
+---------------------------------------------------
The bt(4) driver for Buslogic SCSI adapters has been made PCI only. ISA
cards will no longer be detected.
The same has been done for Stallion multiport serial controllers. stli(4)
has been completely removed (along with the stlload(8) and stlstty(8)
-utilities) and stl(4) was changed to support only PCI cards. Both drivers
-are i386 only.
+utilities) and stl(4) was changed to support only PCI cards. Similarly,
+ISA support was removed from cy(4) too. All these drivers are i386 only.
+-----------------------------------------------------------------------+
+ UPGRADING DRAGONFLY FROM 3.0 to later versions +
#include <machine/clock.h>
#include <machine/psl.h>
-#include <bus/isa/isa_device.h>
#include "cyreg.h"
#include <machine_base/isa/ic/cd1400.h>
void siointr(void *);
static int cy_units (cy_addr cy_iobase, int cy_align);
-static int sioattach (struct isa_device *dev);
static void cd1400_channel_cmd (struct com_s *com, int cmd);
static void cd1400_channel_cmd_wait (struct com_s *com);
static void cd_etc (struct com_s *com, int etc);
static int commctl (struct com_s *com, int bits, int how);
static int comparam (struct tty *tp, struct termios *t);
static inthand2_t siopoll;
-static int sioprobe (struct isa_device *dev);
static void siosettimeout (void);
static int siosetwater (struct com_s *com, speed_t speed);
static int comspeed (speed_t speed, u_long cy_clock,
static struct com_s *p_com_addr[NSIO];
#define com_addr(unit) (p_com_addr[unit])
-struct isa_driver siodriver = {
- sioprobe, sioattach, driver_name
-};
-
static d_open_t sioopen;
static d_close_t sioclose;
static d_write_t siowrite;
static int volatile RxFifoThreshold = (CD1400_RX_FIFO_SIZE / 2);
static int
-sioprobe(struct isa_device *dev)
-{
- cy_addr iobase;
-
- iobase = (cy_addr)dev->id_maddr;
-
- /* Cyclom-16Y hardware reset (Cyclom-8Ys don't care) */
- cy_inb(iobase, CY16_RESET, 0); /* XXX? */
- DELAY(500); /* wait for the board to get its act together */
-
- /* this is needed to get the board out of reset */
- cy_outb(iobase, CY_CLEAR_INTR, 0, 0);
- DELAY(500);
-
- return (cy_units(iobase, 0) == 0 ? 0 : -1);
-}
-
-static int
cy_units(cy_addr cy_iobase, int cy_align)
{
int cyu;
return (cyu);
}
-static int
-sioattach(struct isa_device *isdp)
-{
- int adapter;
-
- lwkt_gettoken(&tty_token);
- adapter = cyattach_common((cy_addr) isdp->id_maddr, 0);
- if (adapter < 0) {
- lwkt_reltoken(&tty_token);
- return (0);
- }
-
- /*
- * XXX
- * This kludge is to allow ISA/PCI device specifications in the
- * kernel config file to be in any order.
- */
- if (isdp->id_unit != adapter) {
- kprintf("cy%d: attached as cy%d\n", isdp->id_unit, adapter);
- isdp->id_unit = adapter; /* XXX */
- }
- isdp->id_intr = (inthand2_t *)siointr;
- /* isdp->id_ri_flags |= RI_FAST; XXX unimplemented - use newbus! */
- lwkt_reltoken(&tty_token);
- return (1);
-}
-
/*
* NOTE: Must be called with tty_token held
*/
{"sio", "8250/16450/16550 Serial port", 0, CLS_COMMS},
{"cx", "Cronyx/Sigma multiport sync/async adapter",0, CLS_COMMS},
-{"cy", "Cyclades multiport async adapter", 0, CLS_COMMS},
{"si", "Specialix SI/XIO/SX async adapter", 0, CLS_COMMS},
{"ppc", "Parallel Port chipset", 0, CLS_COMMS},