HUB_SET_PIOMODE

Section: (9)
Updated: 09 October 2005
Index Return to Main Contents

 

NAME

hub_set_piomode - set pio mode for a given hub  

SYNOPSIS

"SYNOPSIS"

void hub_set_piomode (nasid_t nasid);  

ARGUMENTS

nasid
physical node ID for the hub in question
 

DESCRIPTION

Put the hub into either ``PIO conveyor belt'' mode or ``fire-and-forget'' mode. To do this, we have to make absolutely sure that no PIOs are in progress so we turn off access to all widgets for the duration of the function.

XXX - This code should really check what kind of widget we're talking to. Bridges can only handle three requests, but XG will do more. How many can crossbow handle to widget 0? We're assuming 1.

XXX - There is a bug in the crossbow that link reset PIOs do not return write responses. The easiest solution to this problem is to leave widget 0 (xbow) in fire-and-forget mode at all times. This only affects pio's to xbow registers, which should be rare.  

DESCRIPTION

Put the hub into either ``PIO conveyor belt'' mode or ``fire-and-forget'' mode. To do this, we have to make absolutely sure that no PIOs are in progress so we turn off access to all widgets for the duration of the function.

XXX - This code should really check what kind of widget we're talking to. Bridges can only handle three requests, but XG will do more. How many can crossbow handle to widget 0? We're assuming 1.

XXX - There is a bug in the crossbow that link reset PIOs do not return write responses. The easiest solution to this problem is to leave widget 0 (xbow) in fire-and-forget mode at all times. This only affects pio's to xbow registers, which should be rare.


 

Index

NAME
SYNOPSIS
ARGUMENTS
DESCRIPTION
DESCRIPTION

This document was created by man2html, using the manual pages.
Time: 00:02:12 GMT, October 09, 2005