> Services

Title: DeviceFS Service calls
Authors: David De Vorchik, Tim Dobson
History:
        19-Apr-91 DDV Created.
        20-Apr-91 DDV Improved information on Service_DeviceDead (r3).
        29-May-91 TMD Corrected some typos.


INTRODUCTION
------------

DeviceFS will issue several service calls during its time, it issues them to
inform the device drivers when it has been installed, it is about to die and
when a particular device has been killed.

The following can be generated:

 Service_DeviceFSStarting (&70)
 Service_DeviceFSDying (&71)
 Service_DeviceDead (&79)



Service_DeviceFSStarting
------------------------

  in: r1   = Service_DeviceFSStarting
 
 out: -

This code is issued when the module wants the device drivers to re-register
with DeviceFS, the call is issued during the module initialisation.  In this
case it is actually issued on a callback to ensure that the module has been
correctly linked into the module chain.



Service_DeviceFSDying
---------------------

  in: r0   = 0
      r1   = Service_DeviceFSDying
      
 out: -

This is issued when DeviceFS is about to be killed, the device driver will
already have had all of its streams closed and will have received the
DeviceFS_DeviceDead service.



Service_DeviceDead
------------------

  in: r0   = 0
      r1   = Service_DeviceDead
      r2   = handle of device / =0 if all
                if r2 >0 then
                      r3  -> device name (r1 +0 on register) / =0 if parent dead

 out: -

This is issued to inform the specified device that it has been killed, this
is usually caused when another device of the same name is registered and the
original one has been killed to stop duplicates.
