PATH 
ADC Home > Documentation > Hardware > Device Managers and Drivers > PCI Card Services > Designing PCI Cards and Drivers for Power Macintosh Computers


  

Fast Path Mode

Fast Path is an optional optimization wherein the driver supplies the client with a precomputed packet header for a given destination. The client caches the header and copies it directly into packets addressed to that destination before passing them to the driver. The client first requests a header by sending the driver an M_IOCTL message with its ioc_cmd field set to DL_IOC_HDR_INFO and its chained data block containing the dl_unitdata_req_t structure that the client would normally use to send packets to that particular destination. If the driver does not support fast path, it simply responds with an N_IOCNAK message. STREAMS drivers respond with NAK to any IOCTL they can't handle.

If the driver supports fast path, it responds with an M_IOCACK message with the chained data block containing the precomputed header. In the case of 802.2 packets, the length field of the precomputed header is set to 0. The client prepends the header to outgoing packets and passes them to the driver as M_DATA messages. The driver then sends the packet as is, filling in the 802.2 length field if necessary.

Note

The data block returned in the M_IOCACK should not be modified by the client, and it should always be copied with copyb rather than dupb, since the driver may modify it before sending the packet.


© 1999 Apple Computer, Inc. – (Last Updated 26 March 99)