Main Page Modules Alphabetical List Data Structures File List Data Fields Globals # IXP425 Feature Control (IxFeatureCtrl) API The Public API for the IXP425 Feature Control. More...
## Modules
Software Configuration for Access Component
| This section describes software configuration in access component. The configuration can be changed at run-time. ixFeatureCtrlSwConfigurationCheck( ) will be used across applicable access component to check the configuration. ixFeatureCtrlSwConfigurationWrite( ) is used to write the software configuration.

## Defines
#define | IX_FEATURE_CTRL_COMPONENT_DISABLED
| Hardware Component is disabled/unavailable. Return status by ixFeatureCtrlComponentCheck().
#define | IX_FEATURE_CTRL_COMPONENT_ENABLED
| Hardware Component is available. Return status by ixFeatureCtrlComponentCheck().
#define | IX_FEATURE_CTRL_SILICON_TYPE_A0
| This is the value of A0 Silicon in product ID.
#define | IX_FEATURE_CTRL_SILICON_TYPE_B0
| This is the value of B0 Silicon in product ID.
#define | IX_FEATURE_CTRL_SILICON_STEPPING_MASK
| This is the mask of silicon stepping in product ID.
#define | IX_FEATURE_CTRL_XSCALE_FREQ_533
| This is the value of 533MHz XScale Core in product ID.
#define | IX_FEATURE_CTRL_XSCALE_FREQ_400
| This is the value of 400MHz XScale Core in product ID.
#define | IX_FEATURE_CTRL_XSCALE_FREQ_266
| This is the value of 266MHz XScale Core in product ID.
#define | IX_FEATURE_CTRL_XSCALE_FREQ_MASK
| This is the mask of XScale Core in product ID.
#define | IX_FEATURECTRL_REG_LOC_RCOMP
| The bit location for RComp Circuitry.
#define | IX_FEATURECTRL_REG_LOC_USB
| The bit location for USB Controller.
#define | IX_FEATURECTRL_REG_LOC_HASH
| The bit location for Hashing Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_AES
| The bit location for AES Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_DES
| The bit location for DES Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_HDLC
| The bit location for HDLC Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_AAL
| The bit location for AAL Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_HSS
| The bit location for HSS Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_UTOPIA
| The bit location for UTOPIA Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_ETH0
| The bit location for Ethernet 0 Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_ETH1
| The bit location for Ethernet 1 Coprocessor.
#define | IX_FEATURECTRL_REG_LOC_NPEA
| The bit location for NPE A.
#define | IX_FEATURECTRL_REG_LOC_NPEB
| The bit location for NPE B.
#define | IX_FEATURECTRL_REG_LOC_NPEC
| The bit location for NPE C.
#define | IX_FEATURECTRL_REG_LOC_PCI
| The bit location for PCI Controller.
#define | IX_FEATURECTRL_REG_LOC_UTOPIA_PHY_LIMIT
| The bit location for Utopia PHY Limit Status.
#define | IX_FEATURECTRL_RCOMP
| The Component Name for RCOMP Circuitry. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_USB
| The Component Name for USB Controller. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_HASH
| The Component Name for Hashing Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_AES
| The Component Name for AES Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_DES
| The Component Name for DES Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_HDLC
| The Component Name for HDLC Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_AAL
| The Component Name for AAL Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_HSS
| The Component Name for HSS Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_UTOPIA
| The Component Name for Utopia Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_ETH0
| The Component Name for Ethernet 0 Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_ETH1
| The Component Name for Ethernet 1 Coprocessor. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_NPEA
| The Component Name for NPE A. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_NPEB
| The Component Name for NPE B. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_NPEC
| The Component Name for NPE C. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_PCI
| The Component Name for PCI Controller. The name will be used for ixFeatureCtrlComponentCheck().
#define | IX_FEATURECTRL_REG_UTOPIA_32PHY
| Maximum UTOPIA PHY available to IXP425 is 32.
#define | IX_FEATURECTRL_REG_UTOPIA_16PHY
| Maximum UTOPIA PHY available to IXP425 is 16.
#define | IX_FEATURECTRL_REG_UTOPIA_8PHY
| Maximum UTOPIA PHY available to IXP425 is 8.
#define | IX_FEATURECTRL_REG_UTOPIA_4PHY
| Maximum UTOPIA PHY available to IXP425 is 4.
## Typedefs
typedef UINT32 | IxFeatureCtrlReg
| Feature Control Register that contains hardware components' availability information.
typedef UINT32 | IxFeatureCtrlProductId
| Product ID of Silicon that contains Silicon Stepping and Maximum XScale Core Frequency information.
typedef UINT32 | IxFeatureCtrlComponentType
| The component type used for ixFeatureCtrlComponentCheck().
## Functions
IxFeatureCtrlReg | ixFeatureCtrlRead (void)
| This function reads out the CURRENT value of Feature Control Register. The current value may not be the same as that of the hardware component availability.
IxFeatureCtrlReg | ixFeatureCtrlHwCapabilityRead (void)
| This function reads out the hardware capability of a silicon type as defined in feature control register.This value is different from that returned by ixFeatureCtrlRead() because this function returns the actual hardware component availability.
void | ixFeatureCtrlWrite (IxFeatureCtrlReg expUnitReg)
| This function write the value stored in IxFeatureCtrlReg expUnitReg to the Feature Control Register.
IX_STATUS | ixFeatureCtrlComponentCheck (IxFeatureCtrlComponentType componentType)
| This function will check the availability of hardware component specified as componentType value.
IxFeatureCtrlProductId | ixFeatureCtrlProductIdRead (void)
| This function will return IXP425 product ID i.e. CP15, Register 0.
IX_STATUS | ixFeatureCtrlSwConfigurationCheck (IxFeatureCtrlSwConfig swConfigType)
| This function checks whether the specified software configuration is enabled or disabled.
void | ixFeatureCtrlSwConfigurationWrite (IxFeatureCtrlSwConfig swConfigType, BOOL enabled)
| This function enable/disable the specified software configuration.
void | ixFeatureCtrlIxp400SwVersionShow (void)
| This function shows the current software release information for IXP400.
## Detailed Description The Public API for the IXP425 Feature Control. ## Define Documentation
#define IX_FEATURE_CTRL_COMPONENT_DISABLED
| Hardware Component is disabled/unavailable. Return status by ixFeatureCtrlComponentCheck(). Definition at line 85 of file IxFeatureCtrl.h.
#define IX_FEATURE_CTRL_COMPONENT_ENABLED
| Hardware Component is available. Return status by ixFeatureCtrlComponentCheck(). Definition at line 95 of file IxFeatureCtrl.h.
#define IX_FEATURE_CTRL_SILICON_STEPPING_MASK
| This is the mask of silicon stepping in product ID. Definition at line 149 of file IxFeatureCtrl.h.
#define IX_FEATURE_CTRL_SILICON_TYPE_A0
| This is the value of A0 Silicon in product ID. Definition at line 131 of file IxFeatureCtrl.h.
#define IX_FEATURE_CTRL_SILICON_TYPE_B0
| This is the value of B0 Silicon in product ID. Definition at line 140 of file IxFeatureCtrl.h.
#define IX_FEATURE_CTRL_XSCALE_FREQ_266
| This is the value of 266MHz XScale Core in product ID. Definition at line 176 of file IxFeatureCtrl.h.
#define IX_FEATURE_CTRL_XSCALE_FREQ_400
| This is the value of 400MHz XScale Core in product ID. Definition at line 167 of file IxFeatureCtrl.h.
#define IX_FEATURE_CTRL_XSCALE_FREQ_533
| This is the value of 533MHz XScale Core in product ID. Definition at line 158 of file IxFeatureCtrl.h.
#define IX_FEATURE_CTRL_XSCALE_FREQ_MASK
| This is the mask of XScale Core in product ID. Definition at line 185 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_AAL
| The Component Name for AAL Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 444 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_AES
| The Component Name for AES Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 414 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_DES
| The Component Name for DES Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 424 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_ETH0
| The Component Name for Ethernet 0 Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 474 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_ETH1
| The Component Name for Ethernet 1 Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 484 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_HASH
| The Component Name for Hashing Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 404 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_HDLC
| The Component Name for HDLC Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 434 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_HSS
| The Component Name for HSS Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 454 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_NPEA
| The Component Name for NPE A. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 494 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_NPEB
| The Component Name for NPE B. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 504 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_NPEC
| The Component Name for NPE C. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 514 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_PCI
| The Component Name for PCI Controller. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 524 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_RCOMP
| The Component Name for RCOMP Circuitry. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 384 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_AAL
| The bit location for AAL Coprocessor. Definition at line 288 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_AES
| The bit location for AES Coprocessor. Definition at line 261 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_DES
| The bit location for DES Coprocessor. Definition at line 270 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_ETH0
| The bit location for Ethernet 0 Coprocessor. Definition at line 315 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_ETH1
| The bit location for Ethernet 1 Coprocessor. Definition at line 324 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_HASH
| The bit location for Hashing Coprocessor. Definition at line 252 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_HDLC
| The bit location for HDLC Coprocessor. Definition at line 279 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_HSS
| The bit location for HSS Coprocessor. Definition at line 297 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_NPEA
| The bit location for NPE A. Definition at line 333 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_NPEB
| The bit location for NPE B. Definition at line 342 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_NPEC
| The bit location for NPE C. Definition at line 351 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_PCI
| The bit location for PCI Controller. Definition at line 360 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_RCOMP
| The bit location for RComp Circuitry. Definition at line 234 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_USB
| The bit location for USB Controller. Definition at line 243 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_UTOPIA
| The bit location for UTOPIA Coprocessor. Definition at line 306 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_LOC_UTOPIA_PHY_LIMIT
| The bit location for Utopia PHY Limit Status. Definition at line 369 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_UTOPIA_16PHY
| Maximum UTOPIA PHY available to IXP425 is 16. Definition at line 544 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_UTOPIA_32PHY
| Maximum UTOPIA PHY available to IXP425 is 32. Definition at line 534 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_UTOPIA_4PHY
| Maximum UTOPIA PHY available to IXP425 is 4. Definition at line 564 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_REG_UTOPIA_8PHY
| Maximum UTOPIA PHY available to IXP425 is 8. Definition at line 554 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_USB
| The Component Name for USB Controller. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 394 of file IxFeatureCtrl.h.
#define IX_FEATURECTRL_UTOPIA
| The Component Name for Utopia Coprocessor. The name will be used for ixFeatureCtrlComponentCheck(). Definition at line 464 of file IxFeatureCtrl.h.
## Typedef Documentation
IxFeatureCtrlComponentType
| The component type used for ixFeatureCtrlComponentCheck(). Definition at line 654 of file IxFeatureCtrl.h.
IxFeatureCtrlProductId
| Product ID of Silicon that contains Silicon Stepping and Maximum XScale Core Frequency information. Definition at line 644 of file IxFeatureCtrl.h.
IxFeatureCtrlReg
| Feature Control Register that contains hardware components' availability information. Definition at line 634 of file IxFeatureCtrl.h.
## Function Documentation
IX_STATUS ixFeatureCtrlComponentCheck | ( | IxFeatureCtrlComponentType | componentType | ) |
  | This function will check the availability of hardware component specified as componentType value. Usage Example: if(IX_FEATURE_CTRL_COMPONENT_DISABLED != ixFeatureCtrlComponentCheck(IX_FEATURECTRL_ETH0)) if(IX_FEATURE_CTRL_COMPONENT_ENABLED == ixFeatureCtrlComponentCheck(IX_FEATURECTRL_PCI)) This function is typically called during component initialization time. Parameters:
  IxFeatureCtrlComponentType | (in)componentType - the type of a component as defined above as IX_FEATURECTRL_XXX (Exp: IX_FEATURECTRL_PCI, IX_FEATURECTRL_ETH0)
Returns: IX_FEATURE_CTRL_COMPONENT_ENABLED if component is available IX_FEATURE_CTRL_COMPONENT_DISABLED if component is unavailable
IxFeatureCtrlReg ixFeatureCtrlHwCapabilityRead | ( | void |  | ) |
| This function reads out the hardware capability of a silicon type as defined in feature control register.This value is different from that returned by ixFeatureCtrlRead() because this function returns the actual hardware component availability. The bit location of each hardware component is defined above. A value of '1' in bit means the hardware component is not available. A value of '0' means the hardware component is available. Returns: IxFeatureCtrlReg - the hardware capability of IXP425. Warning: This function must not be called when IXP425 is running as the result is undefined.
void ixFeatureCtrlIxp400SwVersionShow | ( | void |  | ) |
| This function shows the current software release information for IXP400. Returns: none
IxFeatureCtrlProductId ixFeatureCtrlProductIdRead | ( | void |  | ) |
| This function will return IXP425 product ID i.e. CP15, Register 0. Returns: IxFeatureCtrlProductId - the value of product ID.
IxFeatureCtrlReg ixFeatureCtrlRead | ( | void |  | ) |
| This function reads out the CURRENT value of Feature Control Register. The current value may not be the same as that of the hardware component availability. The bit location of each hardware component is defined above. A value of '1' in bit means the hardware component is not available. A value of '0' means the hardware component is available. Returns: IxFeatureCtrlReg - the current value of IXP425 Feature Control Register
IX_STATUS ixFeatureCtrlSwConfigurationCheck | ( | IxFeatureCtrlSwConfig | swConfigType | ) |
  | This function checks whether the specified software configuration is enabled or disabled. Usage Example: if(IX_FEATURE_CTRL_SWCONFIG_DISABLED != ixFeatureCtrlSwConfigurationCheck(IX_FEATURECTRL_ETH_LEARNING)) if(IX_FEATURE_CTRL_SWCONFIG_ENABLED == ixFeatureCtrlSwConfigurationCheck(IX_FEATURECTRL_ETH_LEARNING)) This function is typically called during access component initialization time. Parameters:
  IxFeatureCtrlSwConfig | (in)swConfigType - the type of a software configuration defined in IxFeatureCtrlSwConfig enumeration.
Returns: IX_FEATURE_CTRL_SWCONFIG_ENABLED if software configuration is enabled. IX_FEATURE_CTRL_SWCONFIG_DISABLED if software configuration is disabled.
void ixFeatureCtrlSwConfigurationWrite | ( | IxFeatureCtrlSwConfig | swConfigType,
|  | BOOL | enabled
| ) |
  | This function enable/disable the specified software configuration. Usage Example: ixFeatureCtrlSwConfigurationWrite(IX_FEATURECTRL_ETH_LEARNING, TRUE) is used to enable Ethernet Learning Feature ixFeatureCtrlSwConfigurationWrite(IX_FEATURECTRL_ETH_LEARNING, FALSE) is used to disable Ethernet Learning Feature Parameters:
  IxFeatureCtrlSwConfig | (in)swConfigType - the type of a software configuration defined in IxFeatureCtrlSwConfig enumeration.
  BOOL | (in)enabled - To enable(TRUE) / disable (FALSE) the specified software configuration.
Returns: none
void ixFeatureCtrlWrite | ( | IxFeatureCtrlReg | expUnitReg | ) |
  | This function write the value stored in IxFeatureCtrlReg expUnitReg to the Feature Control Register. The bit location of each hardware component is defined above. The write is only effective on available hardware components. Writing '1' in a bit will software disable the respective hardware component. A '0' will mean that the hardware component will remain to be operable. Parameters:
  IxFeatureCtrlReg | (in)expUnitReg - The value to be written to feature control register.
Returns: none
Automatically generated from sources. © Intel Corp. 2003