RE: [PATCH -mm 0/2] RapidIO: Changes to handling of RIO switches

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Bounine, Alexandre
Date: Monday, October 25, 2010 - 6:22 am

Micha Nelissen <micha@neli.hopto.org> wrote:
every
have

The component tag is the way to identify a RIO device (switch or
endpoint).
1. it is defined by RIO spec as a register existing in both types of
devices (this provides a universal access to the identification
information by any processor).
2. the Error Management specification already uses the CT as a device
identifier.
3. the CT value is large enough to be unique for max number of endpoints
in the large system and any reasonable number of switches. BTW, I am
planning to provide a patch that defines CT fields to ensure future
compatibility.

The destid does not exists as a HW element of switches and therefore
cannot be used as a universal identification token.

get
switches).

As I answered above, destid cannot be used as a universal identification
token - it is a routing element. The destID has register in endpoints
only to provide a packet filtering.

In your patch you allocate individual destid for switches. This method
has two problems:
1. The destid for the switch needs an additional mechanism to share it
among processors in the RIO network,
2. It takes ID value away from the pool of available IDs, what will
reduce number of IDs that can be assigned to endpoints. (NOTE: I am
actually working on destID assignment scheme that will recycle destID in
case of hot-swap events, i.e. if device is extracted its destID will be
returned to the pool of available IDs and may be reused later for device
insertion).

The only case when assigning individual destid to the switch is
justified is an "empty" switch - one without any endpoints attached to
it. But that destid should be assigned to an endpoint as soon as it is
attached to that switch.  

Alex.

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH -mm 0/2] RapidIO: Changes to handling of RIO switches, Alexandre Bounine, (Thu Oct 21, 12:10 pm)
[PATCH -mm 1/2] RapidIO: Use common destid storage for end ..., Alexandre Bounine, (Thu Oct 21, 12:10 pm)
[PATCH -mm 2/2] RapidIO: Integrate rio_switch into rio_dev, Alexandre Bounine, (Thu Oct 21, 12:10 pm)
RE: [PATCH -mm 0/2] RapidIO: Changes to handling of RIO sw ..., Bounine, Alexandre, (Fri Oct 22, 9:47 am)
RE: [PATCH -mm 0/2] RapidIO: Changes to handling of RIO sw ..., Bounine, Alexandre, (Fri Oct 22, 2:04 pm)
RE: [PATCH -mm 0/2] RapidIO: Changes to handling of RIO sw ..., Bounine, Alexandre, (Mon Oct 25, 6:22 am)
RE: [PATCH -mm 0/2] RapidIO: Changes to handling of RIO sw ..., Bounine, Alexandre, (Mon Oct 25, 10:13 am)
RE: [PATCH -mm 0/2] RapidIO: Changes to handling of RIO sw ..., Bounine, Alexandre, (Tue Oct 26, 6:39 am)
RE: [PATCH -mm 0/2] RapidIO: Changes to handling of RIO sw ..., Bounine, Alexandre, (Tue Oct 26, 10:17 am)