[lkml]   [2010]   [Oct]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Subject[PATCH -mm 0/2] RapidIO: Changes to handling of RIO switches
    The following two patches are produced as result of the discussion
    referenced below:

    Switches in RapidIO subsystem are presented the same way as endpoints - by
    using rio_dev structure plus an additional switch-specific extension allocated
    separately. This separation between two objects describing a RIO switch device
    also is reflected in the way how RIO address is stored for endpoints and
    switches. Proposed patches are attempt to address issues brought by differences
    in endpoint and switch handling in RapidIO subsystem.

    1. Using one storage location common for switches and endpoints eliminates
    unnecessary device type checks during maintenance access operations.
    While destination IDs and hop counts have different meaning for endpoints and
    switches, this does not prevent us from storing them in the primary RIO device
    structure (rio_dev) for both types.
    The logic that assigns destination IDs to RIO devices stays unchanged - as
    before, switches use an associated destination ID because they do not have
    their own physical ID. The hop_count is set to 0xff for endpoints and to the
    actual value for switches.

    2. Convert RIO switch device structures (rio_dev + rio_switch) into single
    allocation unit. This change is based on the fact that RIO switches are using
    common RIO device objects anyway. Allocating RIO switch objects as RIO devices
    with added space for switch information simplifies handling of RIO switch device

    Alexandre Bounine (2):
    RapidIO: Use common destid storage for endpoints and switches
    RapidIO: Integrate rio_switch into rio_dev

    drivers/rapidio/rio-scan.c | 139 ++++++++++++++++++-----------------
    drivers/rapidio/rio-sysfs.c | 4 +-
    drivers/rapidio/rio.c | 74 ++++++-------------
    drivers/rapidio/switches/idt_gen2.c | 93 ++++++++---------------
    drivers/rapidio/switches/idtcps.c | 6 +-
    drivers/rapidio/switches/tsi568.c | 13 +--
    drivers/rapidio/switches/tsi57x.c | 56 ++++++--------
    include/linux/rio.h | 90 +++++++++++------------
    include/linux/rio_drv.h | 72 +++---------------
    9 files changed, 214 insertions(+), 333 deletions(-)


     \ /
      Last update: 2010-10-21 21:21    [W:0.020 / U:0.244 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site