home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / os / vms / 12961 < prev    next >
Encoding:
Internet Message Format  |  1992-07-30  |  3.4 KB

  1. Path: sparky!uunet!olivea!decwrl!deccrl!news.crl.dec.com!news!nntpd.lkg.dec.com!xdelta.enet.dec.com!hoffman
  2. From: hoffman@xdelta.enet.dec.com (Stephen Hoffman)
  3. Newsgroups: comp.os.vms
  4. Subject: Re: Configuring Device Drivers
  5. Keywords: SYSGEN, DEVICES, CSR, VECTOR
  6. Message-ID: <1992Jul30.181456.7335@nntpd.lkg.dec.com>
  7. Date: 30 Jul 92 18:14:56 GMT
  8. References: <1992Jul30.160600.25038@natinst.com>
  9. Sender: hoffman@xdelta.enet.dec.com ()
  10. Reply-To: hoffman@xdelta.enet.dec.com ()
  11. Organization: Digital Equipment Corporation
  12. Lines: 59
  13.  
  14.  
  15. In article <1992Jul30.160600.25038@natinst.com>, dp@natinst.com (Debapriya Ray)
  16.  writes:
  17. |>Newsgroups: comp.os.vms
  18. |>Path: nntpd.lkg.dec.com!news.crl.dec.com!deccrl!decwrl!sun-barr!cs.utexas.edu
  19.     !natinst.com!dp
  20. |>From: dp@natinst.com (Debapriya Ray)
  21. |>Subject: Configuring Device Drivers
  22. |>Message-ID: <1992Jul30.160600.25038@natinst.com>
  23. |>Sender: news@natinst.com
  24. |>Nntp-Posting-Host: falcon.natinst.com
  25. |>Organization: National Instruments, Austin, TX
  26. |>Date: Thu, 30 Jul 1992 16:06:00 GMT
  27. |>Lines: 28
  28. |>
  29. |>Hi folks !
  30. |>
  31. |>    I am writing a device driver in VMS for one of our boards. Usually
  32. |>we have a couple of boards and a bunch of devices connected to them. In case
  33. |>of our UNIX drivers for similar boards, we have a program to configure the
  34. |>driver dynamically, i.e, we can change board/device addresses, change
  35. |>interrupt levels, and some other parameters on the fly. The way this is
  36. |>done is by opening the executable driver-file and writing into the .exe
  37. |>code.
  38.  
  39.     I assume you are talking about the UNIBUS and/or the Q-bus.
  40.     If so, patching the drivers is not necessary on VMS.  (You
  41.     will likely find VMS device drivers to be quite different,
  42.     probably more complex, and more dynamic than those on ULTRIX.
  43.     The two operating systems have entirely different philosophies
  44.     in this area -- and it really shows.  And I am not sure which
  45.     approach I prefer.)
  46.  
  47. |>    My question is: How are VMS drivers configured ? Is there any way at
  48. |>all of configuring VMS drivers ? Or, everything has to be hard-wired into the
  49. |>driver code itself before assembly (which is not what we want) ?...
  50.  
  51.     Most device drivers might fork to a lower IPL, but they tend to
  52.     treat the device IPL itself as a static value -- as most devices
  53.     only include the hardware necessary to support an interrupt at a
  54.     single device interrupt IPL.  (Devices can request an interrupt
  55.     at IPL 20 through IPL 23 via BIRQ4 through BIRQ7 signals, with
  56.     the interrupt granted via UNIBUS BG4 through BG7 signals.)  In
  57.     the case of Q-bus VAX Systems, there is only one grant signal,
  58.     BIAK, and thus typically only one device interrupt IPL, IPL 23. 
  59.     (VMS does include the capability to enable multilevel interrupts
  60.     on the Q-bus -- effectively simulating the UNIBUS BG4 through BG7
  61.     signals -- via the VMS SYSGEN parameter QBUS_MULT_INTR.  The Q-bus
  62.     must be correctly configured and all drivers must be designed and
  63.     implemented with QBUS_MULT_INTR support in order for the Q-bus
  64.     multilevel interrupts to operate correctly.
  65.  
  66.     The device CSR and interrupt vector can determined by qualifiers
  67.     on the SYSGEN CONNECT command -- the driver can easily read this
  68.     configuration information out of the Interrupt Dispatch Block.
  69.     (The driver can pull these values out of the IDB, specifically
  70.     looking in fields IDB$L_CSR and IDB$B_VECTOR.)  (This assumes
  71.     the particular device does not emulate a Digital-provided device,
  72.     specifically a device that is known to SYSGEN AUTOCONFIG.)
  73.