Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ hbagetinfo(D4I) — UnixWare 2.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought






       hbagetinfo(D4I)                                      hbagetinfo(D4I)


       NAME
             hbagetinfo - HBA driver get device information structure

       SYNOPSIS
             #include <sys/sdi.h>

       DESCRIPTION
             The hbagetinfo structure is used to obtain HBA device
             information, often to pass HBA-specific data from the HBA to
             SDI.

          Return Values
             None.

       USAGE
             This structure is used by getinfo(D2I), which is called by
             sdi_name(D3I).  It is used to supply the caller, typically a
             target driver, with information about a device connected to a
             Host Bus Adapter.

          Structure Members
             The hbagetinfo structure is defined as follows:

             struct hbagetinfo {     /* Structure used to pass up HBA-specific
                                         data from HBA to SDI */
                     char *name;     /* Device name */
                     char iotype;    /* Specifies device I/O capabilities */
                                     /* For example, DMA, PIO, scatter/gather,
                                         and so on.*/
                     bcb_t *bcbp;    /* Breakup control block defining device
                                         properties */
             };

             The  name   is   a   character   array   that   is   typically
             ``HA #  TC #'',  with  the  host adapter number and the target
             controller ID filled in.

             The device I/O capabilities, in iotype, include:

            F_PIO  a programmed I/O device

            F_SCGTH
                    supports scatter-gather DMA





                           Copyright 1994 Novell, Inc.               Page 1













      hbagetinfo(D4I)                                      hbagetinfo(D4I)


           F_RMB  uses removable media

           F_DMA_32
                   supports 32-bit DMA

           F_DMA_24
                   supports 24-bit DMA

           F_HDWREA
                   supports hardware bad-block reassignment

            The bcbp is a pointer to an uninitialized  bcb(D4)  structure.
            The  HBA  getinfo  routine  must first check the bcbp field of
            hbagetinfo,  and  if  non-NULL,  the  bcb  structure  must  be
            initialized.    The   bcb_physreqp   element  within  the  bcb
            structure is a pointer to the physreq(D4)  structure  that  is
            also initialized by getinfo.  (See bcb(D4) and physreq(D4) for
            information about the elements of these structures.)

            The elements of  the  bcb  and  physreq  structures,  uniquely
            identify  the  characteristics of the device, the capabilities
            of the controller, and  the  features  supported  by  the  HBA
            driver.   The target drivers use this information to determine
            the type(or types) of addressing the HBA driver supports,  the
            buffer  alignment and size requirements of the controller, and
            DMA characteristics, if any.

            All fields of the bcb and physreq structures  are  initialized
            by getinfo except for bcb_granularity, which is initialized by
            the target drivers when the device is opened.

      REFERENCES
            bcb(D4), getinfo(D2I), physreq(D4), sdi_name(D3I)















                          Copyright 1994 Novell, Inc.               Page 2








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026