Subject: RE: P1394> May 1394 PWG Definitions

From: "Atsushi Nakamura" <[email-masked]>
Date: Fri, 22 May 1998 16:14:27 +0900

First of all,
The defintion of "function" is for p1212r FDS purposes.
We may not even have to define "function" for the PWG profile, but it is needed
 for FDS.
I apologize if I should of done this in the 1212 reflector.

Alan said; 
>
>The definition of a function seems to indicate that a function is a unit.
>

It CAN be considered that way in a ceratin implementation, but we CONNOT 
say that is the ONLY way we have to see it.
 (Especially in the case of FDS, where we have to start thinking
about other protocols.)
At one point in the discussison, Brian had mentioned that some people may
consider a service as a function, and visa-versa. I agree to this idea, and I guess
we are not allowed to give an answer (restriction) to the relationship between a
function and a  unit.
We agreed a unit corresponds to a driver (in the case of the PWG profile). 
If so, the relationship of a driver to a function is implementation specific.

The only restrictions I think I can make for "function" are : 

1) A part of the unit architecture (not meaning a part of the unit, but meaning
    a part of this architecture i.e. part of a node, module, or whatever)
2) A collection(meaning 1 or more) of services
3) User identifiable

I cannot think of more resrtictions to add and still make the definition consistant
within 1212  

ats

>
>by Atsushi Nakamura
>----
>My shot at definition of "function":
>A function is part of the unit architecture and is an instance of a device 
>model, e.g.,   mass storage, CD-ROM or printer. A function is usually a 
>collection of services that are user identifiable.
>-----
>
>The definition of a function seems to indicate that a function is a unit.
>

---

From: [email-masked]
Date: Fri, 22 May 1998 08:22:36 -0700

I am still unclear about the definition of a function vs unit & 
     service.
     
     I do believe that since the PWG has found 1212 to be normative the 
     1212 definition and the PWG definition should serve the same purpose.
     
     Alan

______________________________ Reply Separator _________________________________
Subject: RE: P1394> May 1394 PWG Definitions
Author:  Non-HP-atsnaka ([email-masked]) at HP-Roseville,mimegw3
Date:    5/22/98 12:14 AM

First of all,
     
Alan said; 
     
consider a service as a function, and visa-versa. I agree to this idea, and I gu
ess

     
I cannot think of more resrtictions to add and still make the definition consist
ant
within 1212  
     
ats

---

From: "Gregory A. LeClair" <[email-masked]>
Date: Fri, 22 May 1998 09:23:31 -0700

Hi Randy,

I don't see where this would preclude two different LUNs from being 'instances' of the same service.

It becomes an implementation decision.

Greg

-----Original Message-----
From:	Randy Turner [SMTP:[email-masked]]
Sent:	Thursday, May 21, 1998 9:34 PM
To:	[email-masked]
Cc:	[email-masked]
Subject:	Re: P1394> May 1394 PWG Definitions

Hi guys,

Help me refresh my memory.

The definition of a service below says there is a one-to-one correspondence
between a LUN and a service, and that services are independent of each
other. Does this imply that LUN (1)  and LUN (2) within a particular unit
CANNOT be "instances" of the same service?

Randy

At 03:05 PM 5/21/98 -0700, you wrote:
>Here are the definitions that we came up with at the May 1394, PWG
meeting. We 
>did not achieve rough consensus on the definitions for a queue and a
function so
>please comment.
>
>Thanks,
>Alan
>
>
>-----
>Unit: Synonymous with a Unit Directory. A unit has a one to one
correspondence 
>with a device driver. From SBP-2: A component of a Serial Bus node that
provides
>processing, memory, I/O or some other functionality. Once the node is 
>initialized, the unit provides a CSR interface that is typically accessed by 
>device driver software at an initiator. A node may have multiple units,
which 
>normally operate independently of each other. Within this standard, a unit
is 
>equivalent to a target.
>
>Service: A sub component of a unit that operates on a set of tasks
independent 
>of other services of the same unit. For SBP-2, there is a one-to-one 
>correspondence between a service and a logical unit (LUN). For example, a 
>printer (unit) might implement a PDL service responsible for data flow to
the 
>printer and a management service responsible for control and status.
>
>-----
>Queue: A collection of ORBS that proceed or block independent of other
queues.

---

From: "Gregory A. LeClair" <[email-masked]>
Date: Sat, 23 May 1998 10:12:59 -0700

I think we need to expand the idea of function == unit on a 1:1 ratio

More like function == unit on a 1:n ratio

Isn't this where we came up with the term Function in the beginning?

A physical device (functional unit) or portion thereof (MFP case)
that uses one or more protocols (unit dir[s] level)
and has a 'unit architecture' which is represented in 
Configuration ROM by one or more Unit Directory entries
which contain one or more service entry points.

GregL

-----Original Message-----
From:	[email-masked] [SMTP:[email-masked]]
Sent:	Friday, May 22, 1998 2:04 PM
To:	[email-masked]
Cc:	[email-masked]; [email-masked]; [email-masked]
Subject:	RE: P1394> May 1394 PWG Definitions

     Sounds to me like Greg is starting to zone in on what a function is.

     Only part that does not quit gel is that since a function can be made up of 
     one or more units then do we differ from the 1212 function == unit view?

     Alan

______________________________ Reply Separator _________________________________
Subject: RE: P1394> May 1394 PWG Definitions
Author:  Non-HP-gleclair ([email-masked]) at HP-Roseville,uugw3
Date:    5/22/98 9:15 AM

We equated a function to a unit directory. We called it a 'Unit' to equate 
it to the 1212 unit definition.
     
If we need to include function from the point of view of 1212r - (based on 
what we've been discussing)
     
A printer (Function) may be implemented with one or more protocols (Units) 
which may allow access to one or more services (LUNs)
     
Therefore, the definition of function would seem to be
'The higher level capability of the Module / device which is accessed by 
one of the Units. A singular function may be supported by more than one 
Unit.'
     
Comments?
     
Greg

-----Original Message-----
From:   [email-masked] 
[SMTP:[email-masked]] 
Sent:   Friday, May 22, 1998 8:23 AM
To:     [email-masked]
Cc:     [email-masked]; [email-masked] 
Subject:        RE: P1394> May 1394 PWG Definitions
     
I am still unclear about the definition of a function vs unit & service.
     
I do believe that since the PWG has found 1212 to be normative the 1212 
definition and the PWG definition should serve the same purpose.
     
     Alan

______________________________ Reply Separator 
_________________________________
Subject: RE: P1394> May 1394 PWG Definitions
Author:  Non-HP-atsnaka ([email-masked]) at HP-Roseville,mimegw3 
Date:    5/22/98 12:14 AM

First of all,
The defintion of "function" is for p1212r FDS purposes.
We may not even have to define "function" for the PWG profile, but it is 
needed
 for FDS.
I apologize if I should of done this in the 1212 reflector.
     
Alan said;
     
It CAN be considered that way in a ceratin implementation, but we CONNOT 
say that is the ONLY way we have to see it.
 (Especially in the case of FDS, where we have to start thinking
about other protocols.)
At one point in the discussison, Brian had mentioned that some people may 
consider a service as a function, and visa-versa. I agree to this idea, and 
I gu
ess
we are not allowed to give an answer (restriction) to the relationship 
between a
function and a  unit.
We agreed a unit corresponds to a driver (in the case of the PWG profile). 
If so, the relationship of a driver to a function is implementation 
specific.

1) A part of the unit architecture (not meaning a part of the unit, but 
meaning
    a part of this architecture i.e. part of a node, module, or whatever)
2) A collection(meaning 1 or more) of services 
3) User identifiable
     
I cannot think of more resrtictions to add and still make the definition 
consist
ant
within 1212
     
ats

---

From: Jeff Schnitzer <[email-masked]>
Date: Wed, 27 May 1998 09:34:26 -0400

From: "Turner, Randy" <[email-masked]>
To: "[email-masked]'" <[email-masked]>
Subject: RE: P1394> May 1394 PWG Definitions
Date: Tue, 26 May 1998 10:29:44 -0700

I was assuming that "current 1212 definitions" would not be an issue,
and that p1212r would take our requirements into account and revise how
config ROM is structured? With the almost non-existent 1394 product
base, I'm also assuming there are no legacy 1212 issues do deal with.

Randy

	-----Original Message-----
	From:	Greg Shue [SMTP:[email-masked]]
	Sent:	Tuesday, May 26, 1998 10:11 AM
	To:	[email-masked]
	Cc:	[email-masked]
	Subject:	Re: P1394> May 1394 PWG Definitions

	Ats wrote:
	> I do not intend to take this up as a problem, but I feel 1394 protocols
	> (current actual usage) do not equate units with functions, but as
	> protocols. (ex. AV/C unit, SBP-2 unit, etc.)
	> Under this circumstances and understanding, equating units to drivers seemed
	> to fit. 

	The big struggle I have with current 1212 definitions is that
	they do equate *_SW_VERSION with a monolithic driver (where *
	could be either Module, Node, or Unit), and they don't provide a
	way of encoding arbitrary number of layers of drivers into the
	Config ROM.  Under this idea, all other layers would have to
	be queried using the identified driver.  And this makes sense
	when we remember that 1212 is a Control and Status REGISTER
	Architecture.  Now we're trying to encode things well beyond
	the register layer.  :-)

	> Greg said : 
	> >I think we need to expand the idea of function : unit on a 1:1 ratio
	> 
	> True. Another point is 
	> 1) function : unit on a 1:n ratio......1 function using/supported by one or more protocols
	>               (unit dir level)
	> 2) function : unit on a n:1 ratio......one or more functions supported by 1 protocol.
	>               (unit dir level)
	> 
	> Though the PWG profile may allow  only 1), both have to be allowed  
	> looking from the point of 1212 (and any protocols).

	We may also need to look at the problem of how to encode multiple
	layers of protocols needed to access a function.

	-- 
	Greg Shue
	Hewlett-Packard Company
	Office Products Division			[email-masked]
	----------------------------------------------------------------

---

From: Greg LeClair <[email-masked]>
Date: Wed, 27 May 1998 15:57:17 -0700

Greg,

I think you may be touching on a couple of points here that tie into 
what we want to put into Config ROM and the location - in a Unit dir 
or in the 'Function' branch.

Some clarifications though:
"Equating *_SW_VERSION with a monolithic driver "
	- 1212 states 'I/O driver software'

"all other layers would have to be queried using the identified driver"
	- Or assumed based on other info in the Config ROM - just using R/W transactions

"And this makes sense when we remember that 1212 is a Control and Status REGISTER
Architecture.  Now we're trying to encode things well beyond the register layer."
	- See page 15, Section 2.1 - item d. Are we out of scope?

ISSUES:
1. Function is something which doesn't consistently map to existing 1212 structure (Y/N)
	- If yes, what is the 1212 structure?
	- If no, what should the structure be in 1212r (FDS?)

2. How much function info SHALL be required in the Config ROM for an implementation.
	- Fixed for all device classes
	- Common subset with vendor or organization unique extensions.

Comments?

Regards,

Greg LeClair

---

From: Greg LeClair <[email-masked]>
Date: Wed, 27 May 1998 15:32:32 -0700

So...

AN> Your comments seems to say function==unit==protocols. 

Well, actually I was trying to get across the fact that function did not 
directly equate to a unit. 

My 2nd try at "function" (and brevity) : 
Function - A capability of the node which is accessed by one or more units.

Regards,
Greg

-----Original Message-----
From:	Atsushi Nakamura [SMTP:[email-masked]]
Sent:	Sunday, May 24, 1998 7:48 PM
To:	[email-masked]'; Greg LeClair
Cc:	Peter Johansson; '1394 PWG'
Subject:	RE: P1394> May 1394 PWG Definitions

I had thought that units were equated to drivers from the discussions
in Virginia and it sounded good to me. (Sorry if I misunderstood) 

>A printer (Function) may be implemented with one or more protocols (Units) 

[Greg LeClair]  Your comments seems to say function==unit==protocols. 
 
No personal offense. In fact, you stated one of my initial concerns when I saw 
the 1212 definition of units for the first time, and how 1394 uses it. I felt some
inconsistency with the 1212 definition of units, and actual usage.
I do not intend to take this up as a problem, but I feel 1394 protocols
(current actual usage) do not equate units with functions, but as
protocols. (ex. AV/C unit, SBP-2 unit, etc.)
Under this circumstances and understanding, equating units to drivers seemed
to fit. 

--
Anyway, I think the following comments will make sense either way.
(units==drivers and units==functions)

True. Another point is 

So...
My 2nd try at "function" : 
'The higher level capability of the Module / node which is accessed by
one or more units, e.g., mass storage, CD-ROM or printer. 
A function is usually a collection of services that are user identifiable.
A function can be accessed by multiple units, and multiple functions can 
be accessed by one unit.'
--

The "function_class entry" of  FDS will represent :
an (physical) instance model of a function

Ats