Date: Mon, 22 Apr 1996 23:45:49 -0700 From: jordan@pongo.West.Sun.COM (Jordan Brown) Subject: Item #342: Device Support Extensions: Clarify Scope P1275 Openboot Working Group Proposal -- Proposal #:342 Ver 2 Title: Device Support Extensions: Clarify Scope Author: Jordan Brown Date: 22 April 1996 Ed/Tech: Editorial Synopsis: The scope of the Device Support Extensions document is vague. Doc & Version: Device Support Extensions (all versions) Problem: David Kahn correctly complains that the DSE does not make it clear that it is an optional supplement to the core. This proposal supplies some words to make the scope clearer. First, my perception of the intent of the DSE: The DSE defines "device_type" values in addition to those described in 1275-1994 section 3.7. It is expected that the DSE, or parts thereof, will be specified as "required" by platform bindings. It is *desired* that all platform bindings do so, in order to maximize the platform-independence of client software. One way to summarize the intent is that 1275-1994 section 3.7 is "version 1.0" of device support in Open Firmware, and the DSE is "version 1.1", supplying additional definitions, clarifications, and additional functionality. It is not intended to _conflict_ with any existing implementations. Existing implementations most likely do not provide the services described, but as long as they do not advertise the "device_type" values described they are not in conflict. For "scsi", "block", and "byte", existing implementations are likely to support only the base 1275-1994 semantics, and that's OK. A client intended for these environments will have to take this into account. Proposal: (1) Replace the "purpose" paragraph with This document specifies the semantics of "device_type" values in addition to those specified in IEEE 1275-1994 section 3.7. It also specifies some additional semantics for 1275-1994 defined "device_type" values. It is expected and recommended that new implementations comply with the specifications in this document and that new platform bindings call out this document as required for compliance. (2) In section 1. "Overview", replace It is intended that Open Firmware implementations supporting these device types will supply the methods and properties described herein. with It is recommended that Open Firmware implementations supporting the devices described herein conform to this specification. This specification does not, however, require that any particular device be supported in the specified way. What it requires is that if the device is advertised as having the specified device_type value, it should have the specified semantics. (3) In section 9 "Additional Requirements for SCSI Devices", add Note: As implementations prior to the introduction of this specification may use the "scsi" device_type value, clients must augment this information with platform-specific knowlege of whether these features are supported on this platform. (4) In section 10 "Additional Requirements for Block and Byte Devices", add at the end: Note: As implementations prior to the introduction of this specification may not support these methods, clients wishing to use these methods must either have platform-specific knowlege that they are present or must test for their presence. (5) In section 11 "Additional Requirements for Block Devices", add at the end: Note: As implementations prior to the introduction of this specification may not support these methods, clients wishing to use these methods must either have platform-specific knowlege that they are present or must test for their presence. Note for discussion: Perhaps we should define properties for "scsi", "block", and "byte" indicating that these features are present. [ P1275 Item #342 -- Received: Mon Apr 22 23:44:04 PDT 1996 ]