[comp.unix.microport] com3 & com4 -> tty2 & tty3

sly@kralc.UUCP (sly) (04/19/89)

   I have a 286 box running uport 2.3.0 and I would like to know how to
modify the kernel to enable irq2 and irq5 for serial service.  Under dos
I am able to use com3 and com4 for running a modem and a dumb terminal.
I need to know just what modifications need to be done to the kernel using
the linkkit.  After the kernel has been modified I assume ttypatch has to 
then be used to make the deices.  Has anyone done this before?  ANY help
would be very much appreciated.

                                      Thanx in advance,
                                             |Sly|.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Gregg "Sly" Acheson.      UUNET!kralc!sly          Clark College, 
(206) 687-3360                                     Vancouver, Wa.
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

zeeff@b-tech.ann-arbor.mi.us (Jon Zeeff) (04/21/89)

>I have tty2 running under 2.3.0.  In the linkkit, you can "steal" irq5 from
>the second parallel printer device.  Have not been able to get tty3 (com4:)
>to do anything;  can't find any more interrupts to steal from other devices.

I'm now using interrupts 10 and 15 for com3 and com4 (with a non 
standard asy driver).  The AT bus has lots of free interrupts.  


-- 
  Jon Zeeff			zeeff@b-tech.ann-arbor.mi.us
  Ann Arbor, MI			sharkey!b-tech!zeeff

doug@feedme.UUCP (Doug Salot) (04/21/89)

>You can not use IRQ2 for anything under Unix - it is already used by the
>system.

Sure you can.  IRQ2 is redirected to IRQ9 on an AT; just tell the driver
to expect the 'rupts on IRQ 9.  (The real IRQ2 is used for the slave
8259A.)
-- 
doug@feedme.UUCP || ...{zardoz,dhw68k}!feedme!doug || doug%feedme@uunet.uu.net
Doug Salot,  The Poor Man's Renaissance Man  (I read *all* of the newsgroups.)

dpgerdes@osiris.cso.uiuc.edu (04/24/89)

/* Written  9:14 pm  Apr 19, 1989 by plocher%sally@Sun.COM in osiris.cso.uiuc.edu:comp.unix.microport */
In article <243@kralc.UUCP> sly@kralc.UUCP (sly) writes:
>   I have a 286 box running uport 2.3.0 and I would like to know how to
>modify the kernel to enable irq2 and irq5 for serial service.  Under dos

You can not use IRQ2 for anything under Unix - it is already used by the
system.  The asy driver should be able to use IRQ5 (I may be wrong here)
by the use of ttypattch.  The asy driver is hardwired to use a certain set 
of IRQ lines and I don't have the sources anymore to look it up.  Look
at thhe output of nm on the asy.o driver found in /usr/linkkit/lib*.a
you will find routines of the name asyXintr where x is the IRQ number
of the supported lines.   

   -John
/* End of text from osiris.cso.uiuc.edu:comp.unix.microport */

dpgerdes@osiris.cso.uiuc.edu (04/24/89)

/* Written  9:14 pm  Apr 19, 1989 by plocher%sally@Sun.COM in osiris.cso.uiuc.edu:comp.unix.microport */

>You can not use IRQ2 for anything under Unix - it is already used by the
>system.

  I am getting tired of people making statements like the above with 
no explanation.  The only thing I have been able to pin down about int 2 is 
that the EGA board uses it, if properly enabled.  With that assumption, 
I proceeded to install an Excelan board and uPort driver on int 2 (ALL the 
others were used) and I have had NO problems with it.
  I then proceeded to try the same interupt with Wollogong's (buggy) TCP 
software with a 503 board and NSE, and the board refused to work until I 
changed interupt levels.
  Any ideas as to what is really going on?

    -dave gerdes

dave@micropen (David F. Carlson) (04/25/89)

In article <42700009@osiris.cso.uiuc.edu>, dpgerdes@osiris.cso.uiuc.edu writes:
! 
! /* Written  9:14 pm  Apr 19, 1989 by plocher%sally@Sun.COM */
! 
! >You can not use IRQ2 for anything under Unix - it is already used by the
! >system.
! 
!   I am getting tired of people making statements like the above with 
! no explanation.  The only thing I have been able to pin down about int 2 is 
! that the EGA board uses it, if properly enabled.
!   Any ideas as to what is really going on?
!     -dave gerdes

First, as usual, Mr Plocher is correct in that INT 2 is unusable for all
PC/AT architecture machines (as opposed to PC bus.)  INT 2 is used to cascade
a second PIC (Programmable Interrupt Controller) so that the extra interrupts
the AT bus supports can be used.  Perhaps before "getting tired" of hearing
correct advice, purchasing some books on PC/AT architecture might be in order.
A good one is the tech ref manual for Heathkit (Zenith) PC/AT.  Alternately,
IBM would be glad to hose you for several hundred dollars for a similar manual.

-- 
David F. Carlson, Micropen, Inc.
micropen!dave@ee.rochester.edu

"The faster I go, the behinder I get." --Lewis Carroll

dpgerdes@osiris.cso.uiuc.edu (04/26/89)

/* Written 11:09 am  Apr 25, 1989 by dave@micropen in osiris.cso.uiuc.edu:comp.unix.microport */
>First, as usual, Mr Plocher is correct in that INT 2 is unusable for all
>PC/AT architecture machines (as opposed to PC bus.)  INT 2 is used to cascade
>a second PIC (Programmable Interrupt Controller) so that the extra interrupts
>the AT bus supports can be used.  Perhaps before "getting tired" of hearing

    Thanks for the information.  I never challenged whether he was correct
or not, but was merely expressing my frustration that every tech person
that has ever made a statement like the above to me has not been able to
justify it.  Maybe I should have used a better wording than "getting tired",
as it may have an unintended negative connotation against John.
    As for the remark about reading manuals, I have been through an awful
lot of DOS books looking for that information.   I have Norton's Programmer's
Guide in front of me and it goes so far to say: 
    "The reserved codes are 2, 8, 9, and 11 through 15" when talking
about hardware interrupts, again without explanation.

howardl@wb3ffv.UUCP ( WB3FFV) (04/27/89)

In article <42700009@osiris.cso.uiuc.edu>, dpgerdes@osiris.cso.uiuc.edu writes:
> 
> /* Written  9:14 pm  Apr 19, 1989 by plocher%sally@Sun.COM in osiris.cso.uiuc.edu:comp.unix.microport */
> 
> >You can not use IRQ2 for anything under Unix - it is already used by the
> >system.
> 
>   I am getting tired of people making statements like the above with 
> no explanation.  The only thing I have been able to pin down about int 2 is 
> that the EGA board uses it, if properly enabled.  With that assumption, 
> I proceeded to install an Excelan board and uPort driver on int 2 (ALL the 
> others were used) and I have had NO problems with it.
>     -dave gerdes


 I would also like to hear why you can't! I am running AT&T UNIX V/386
Release 3.2, and when I installed the Xwindow mouse driver the package 
gave me the option of using IRQ2. Needless to say I have my mouse using
IRQ2 very successfully, so I am very interested...

-------------------------------------------------------------------------------
Internet  : howardl@wb3ffv.ampr.org	|	Howard D. Leadmon
UUCP      : wb3ffv!howardl		|	Fast Computer Service, Inc.
TELEX     : 152252474     		|	P. O. Box 171 
Telephone : (301)-335-2206		|	Chase, MD  21027-0171

dave@micropen (David F. Carlson) (04/27/89)

> > >You can not use IRQ2 for anything under Unix - it is already used by the
> > >system.
> > 
!  I would also like to hear why you can't! I am running AT&T UNIX V/386
! Release 3.2, and when I installed the Xwindow mouse driver the package 
! gave me the option of using IRQ2. Needless to say I have my mouse using
! IRQ2 very successfully, so I am very interested...
! 
! Internet  : howardl@wb3ffv.ampr.org	|	Howard D. Leadmon

If you have a PC/AT style bus, IRQ2 is not even a valid bus signal!
IRQ 10, 11, 12; 14, 15 are mapped onto the AT-specific connector.
IRQ 3, 4, 5, 6, 7 are preserved onto the PC-bus commpatible connector.
Thus, a guess, is that you are not using a true AT bus compatible machine
or *your driver is polling* and not using the interrupt for a d*mn thing!

-- 
David F. Carlson, Micropen, Inc.
micropen!dave@ee.rochester.edu

"The faster I go, the behinder I get." --Lewis Carroll

vandys@hpcupt1.HP.COM (Andrew Valencia(Seattle)) (04/28/89)

/ hpcupt1:comp.unix.microport / dave@micropen (David F. Carlson) /  9:05 am  Apr 27, 1989 /
>If you have a PC/AT style bus, IRQ2 is not even a valid bus signal!

	I believe that it is the BIOS' responsibility to simulate it.
Most UNICES don't run through the BIOS, so that may be the point at
which it breaks.

					Andy

doug@feedme.UUCP (Doug Salot) (04/29/89)

>> > >You can not use IRQ2 for anything under Unix - it is already used by the
>> > >system.
>> > 
>!  I would also like to hear why you can't!
>
>If you have a PC/AT style bus, IRQ2 is not even a valid bus signal!
>Thus, a guess, is that you are not using a true AT bus compatible machine
>or *your driver is polling* and not using the interrupt for a d*mn thing!

(I thought I already posted an explanation; guess it didn't go out.)

Look at the bus signals again.  IRQ 2 on the PC (or XT) is mapped to
IRQ 9 on the AT.   If you have a device that uses IRQ 2, simply tell
the driver to expect interrupts on IRQ 9.

The real AT IRQ 2 is used to cascade the second interrupt controller,
giving you 15 interrupt lines on an AT versus 8 on a PC.
-- 
doug@feedme.UUCP || ...{zardoz,dhw68k}!feedme!doug || doug%feedme@uunet.uu.net
Doug Salot,  The Poor Man's Renaissance Man  (I read *all* of the newsgroups.)

hwh@cup.portal.com (Harold W Hankins) (05/01/89)

/ hpcupt1:comp.unix.microport / dave@micropen (David F. Carlson) /  9:05 am  Apr 27, 1989 /
>If you have a PC/AT style bus, IRQ2 is not even a valid bus signal!

My IBM Tech Reference Manual shows pin B04 (the pin that was IRQ2 on the XT)
as IRQ9.  The schematic shows IRQ9 going to the second interrupt line on the
second 8259A.  That would make any board trying to use "IRQ2" on the AT
show up at IRQ9.

Harold Hankins			hwh@cup.portal.com
Point of Sales Systems
Camarillo, CA

dpgerdes@osiris.cso.uiuc.edu (05/09/89)

/* Written  9:12 pm  May  2, 1989 by plocher%sally@Sun.COM in osiris.cso.uiuc.edu:comp.unix.microport */

>>From a low level kernel hackers view of the world like mine (interrupt
  ...

   Thanx for the complete run down.   Now when someone says "you can't use
interrupt 2"  I will know what is really going on.  Now that all this
is over with, I managed to track down the machine on which I had set up the 
ethernet as int 2 and found that I had told config that it was int 9.  So 
at some point I had tried int 9 and it worked and I promptly forgot about it.

    -dave gerdes