vme_config(1M)
NAME
vme_config − VME configuration utility
SYNOPSIS
Store configuration in nonvolatile memory
vme_config [−f cfgfile] [−D name] [−U name]
Display address map for address modifier
vme_config −m address_modifier [−f cfgfile] [−D name] [−U name]
Display holes in address map for address modifier
vme_config −h address_modifier [−f cfgfile] [−D name] [−U name]
Display entity information
vme_config −e entity_name [−f cfgfile] [−D name] [−U name]
Perform syntax check
vme_config −c [−f cfgfile] [−D name] [−U name]
Display the CPU/card number
vme_config −N
Set the CPU/card number
vme_config −N cpu_number
DESCRIPTION
The vme_config utility creates a VME system configuration by reading required resources from an ASCII configuration file. The configuration file specifies what address ranges each processor, card, or shared memory space occupies, which interrupt levels each processor handles, and assigns other VME resources. The configuration file format is described in vme.CFG(4).
When vme_config is invoked without command line parameters, it generates a configuration from the default file /etc/vme/vme.CFG. The configuration information for the current CPU is saved to the system’s nonvolatile memory.
The current CPU is identified by the CPU number stored in nonvolatile memory. This value may be changed by using the −N cpu_number option. For more information on VME configuration and configuration file format, see the HP-UX 10.20 VME Services Guide.
vme_config should be run before system shutdown to install cards or other processors.
Storing configuration information to nonvolatile memory requires that the vme2 device driver be installed in the kernel. The vme2 device driver is in the VME_SERV fileset.
Options
vme_config recognizes the following options in the combinations specified in the SYNOPSIS section:
−c Perform a syntax check on the configuration file. The configuration is not saved in the system’s nonvolatile memory.
−e entity_name
Display information about the specified entity. entity_name is the name of a processor, card, or memory entity declared in the configuration file. This option is useful in determining where vme_config has placed dynamically locatable memory entities. For more information on dynamically configured memory entities, see vme.CFG(4).
−f cfgfile
Use the specified configuration file instead of /etc/vme/vme.CFG.
−h address_modifier
Display the holes in the address map of the address space indicated by the specified address modifier. This option is helpful in determining where a new card or CPU can be placed.
−m address_modifier
Display the address map of the address space indicated by the specified address modifier. See vme.CFG(4).
−N Print the CPU/card number of this processor (in decimal) on standard output.
−N cpu_number
Change the CPU/card number of this processor.
Options passed to cpp:
−D name
−D name=def
Passed to cpp to define name as if by a #define directive. If no =def is given, name is defined as 1.
−U name
Passed to cpp to remove any initial definition of name.
The −D option has lower precedence than the −U option. Thus, if the same name is used in both a −D option and a −U option, the name is undefined, regardless of the order of the options.
Configuration Process
To configure a VME system, follow these steps. For further information, refer to the HP-UX 10.20 VME Services Guide.
1. Create a configuration file /etc/vme/vme.CFG and edit another file to reflect the desired VME system. Information on cards or other processors should be provided by the vendor. Information on HP processors is available in example configuration files in the directory /etc/vme.
2. Execute vme_config on each HP-UX processor in the VME system, using the same configuration file for every processor. vme_config builds a conflict-free configuration, then saves the configuration to nonvolatile memory (NVM).
3. Install appropriate drivers and device files.
4. Shut down the system.
5. Install the other processors and cards. Some cards have hardware switches that must be set according to the configuration. Refer to the card’s documentation for information about any hardware switches.
6. Reboot the system. The HP-UX kernel initializes the VME hardware according to the contents of NVM.
EXAMPLES
Loading nonvolatile memory with configuration specified in /etc/vme/vme.CFG.
vme_config
Loading nonvolatile memory with configuration specified in a different file.
vme_config -f my_cfg.CFG
Changing the CPU number.
vme_config -N 2
Displaying address space generated from a specific file.
vme_config -f my_cfg.CFG -m A24
RETURN VALUES
vme_config returns the following values:
0 Successful completion.
1 There is a syntax error in the configuration file.
2 There is an internal or system error.
WARNINGS
vme_config asks for confirmation before overwriting values stored in nonvolatile memory.
A system reboot is required before the stored configuration information takes effect.
The vme2 device driver must be in the kernel before vme_config can save configuration information in nonvolatile memory. The vme2 driver is in the fileset VME-SERV.
AUTHOR
vme_config was developed by HP.
FILES
/etc/vme/vme.CFG
The default CFG file.
/etc/vme/example.CFG
An example CFG file showing various record formats.
/etc/vme/example2.CFG
An example CFG file showing a configuration for two HP processors in the same VME system.
/etc/vme/example3.CFG
An example CFG file showing a configuration for many processors and cards in the same VME system.
/var/adm/vme/system.log
This file contains the current system configuration.
SEE ALSO
bp_config(1m), cpp(1), vme.CFG(4).
HP-UX 10.20 VME Services Guide.
DIAGNOSTICS
Error messages are displayed on standard output.
Warning 000: Memory collision detected
vme_config detected a memory range collision, which implies that two or more memory entities were assigned address ranges that overlap.
If a memory overlap exists, multiple hardware devices can attempt to put data on the data transfer bus simultaneously. This causes data bus contention, which will probably cause a system crash.
However, because certain types of hardware may allow memory range overlaps, memory collisions are flagged as a warning rather than an error. This warning may be ignored only if the conditions under which it occurs are fully understood.
Because memory collisions occur when two or more entities attempt to map into the same memory range, you can resolve the collision by moving one of the entities. Recall that an entity can only be moved to an address range that the underlying hardware supports.
Use the command vme_config −h address_modifier to show the current unused addresses in the requested address space.
Warning 001: Unknown record keyword
The beginning of a new record was expected, but the word or symbol found is not a known record keyword.
Because HP-UX and HP-RT use different utilities to provide VME configuration functionality, the keyword may indicate a record used by one utility and not the other.
Also ensure you didn’t make a typographical error in the keyword.
Warning 002: Unknown CPU option
An option used with a processor declaration record is not a known option.
Ensure you didn’t make a typographical error in the option.
Warning 003: Unknown or user address modifier. No range checking.
The address modifier specified in a memory record is either incorrect or a user address modifier (0x10−0x1f).
If it is a user address modifier, vme_config cannot determine if the address ranges associated with entities within this memory record are correct. vme_config will still detect address collisions.
Warning 004: Address will be truncated to fit address space
Certain cards can occupy multiple address spaces that have different maximum address limitations. For these cards, the appropriate most significant bits of the address are truncated for the smaller of the spaces.
For example, if a card responds to both A16 and A24 space, it ignores the upper 8 bits for addresses above 64 KB (64 KB is the maximum address for A16 space). Hence, the address 0x004567 will be 0x004567 in both A24 and A16 space. The address 0x034567 will be 0x034567 in A24 space and 0x004567 in A16 space.
vme_config performs similar truncation when building memory maps for entities that exist in more than one address space.
If the card you are using supports address truncation, you can safely ignore this warning. If you are not sure if your card supports this truncation, do not ignore this warning. Instead, create a configuration that does not generate the warning:
• If the memory record uses the form starting_address−ending_address or starting_address:size, change the hard-coded addresses.
• If the memory record uses the form align requirement:size, addresses are allocated dynamically. In dynamic allocation, vme_config attempts to allocate the same address in all spaces.
This warning is produced if vme_config cannot allocate the same address in all spaces. Hence, some other entity is occupying the correct space and its memory record should be changed.
Warning 005: Unknown hint
A hint associated with an entity is not in the list of currently known hints.
Because HP-UX and HP-RT use different utilities to provide VME configuration functionality, the hint may be used by one utility and not the other.
Also ensure you didn’t make a typographical error in the hint.
Warning 006: Unknown VME ID or wildcard. No checking will be performed
If the ID associated with a processor in a processor record is not known or is a wildcard (indicating that it is a non-HP processor), vme_config cannot perform consistency checking on the resources assigned to that processor.
Warning 007: Not all interrupt request lines assigned to processors
One or more interrupt request lines have not been assigned to a processor. Interrupt assignments are made in interrupt records in the configuration file.
If the interrupt request line is not used by any card or software driver in the system, this warning may be ignored.
Warning 008: sgc_rod=value is obsolete. Use keep_bus=value instead.
The sgc_rod={TRUE|FALSE} field is obsolete. Use the keep_bus={TRUE|FALSE} field instead, and set it to FALSE (the default), unless you want a minor improvement in VME transfer rate at the expense of the performance of all other subsystems.
Warning 009: eir_pass=value is obsolete. Use keep_bus=value instead.
The eir_pass={TRUE|FALSE} field is obsolete. Use the keep_bus={TRUE|FALSE} field instead, and set it to FALSE (the default), unless you want a minor improvement in VME transfer rate at the expense of the performance of all other subsystems.
Warning 010: a24_direct_mapped_size is obsolete.
Use access=direct_map_to PA_address instead.
Explicit a24_direct_mapped_size records are no longer used. Instead, use a memory record to declare a memory entity. Set access=direct_map_to PA_address, where PA_address is the PA address target of the direct mapped window. (For HP Models 742 and 747, PA_address must be 0.)
Warning 011: Entity records are obsolete.
Move name, hints, and permissions to memory records.
A version of vme_config prior to HP-UX 9.05 defined memory entities with a combination of entity records and memory records. This version defines memory entities with an enhanced memory record, and no longer uses entity records. For more information, see .
Warning 012: Cannot set slave mapper on non-HP processor
access=slave can only be used for memory supplied by HP processors. For memory supplied by third-party processors or VME cards, omit the access= field.
Warning 013: Cannot set FIFO on non-HP processor
access=fifo can only be used for memory supplied by HP processors. For memory supplied by third-party processors or VME cards, omit the access= field.
Warning 014: Cannot set location monitor on non-HP processor
access=loc_mon can only be used for memory supplied by HP processors. For memory supplied by third-party processors or VME cards, omit the access= field.
Warning 015: Cannot set direct mapped window on non-HP processor
access=direct_map_to PA_address can only be used for memory supplied by HP processors. For memory supplied by third-party processors or VME cards, omit the access= field.
Warning 017: Cannot set DMA parameters on non-HP processor
vme_config cannot configure DMA hardware on third-party processors. If you are using an HP processor, check the ID field in the proc record.
Warning 018: Cannot set DMA parameters on HP Model 742 or 747
HP Models 742 and 747 do not have a DMA controller.
Warning 019: DMA parameters already set
DMA parameters for this processor have already been set. Delete the duplicate dma_params record. (Subsequent dma_params records overwrite previous values.)
Warning 020: Duplicate field
This record contains two or more entries for the same field. Delete the duplicate fields. Note that subsequent fields overwrite previous values.
Syntax Error 100: Newline expected
The current line should be terminated by a newline. This error usually occurs on the first line of a complex record. vme_config uses the ordering of { and newline to distinguish between single line and complex records.
Syntax Error 101: ’{’ expected
An opening brace ({) is expected here. This error usually occurs on the first line of a complex record. vme_config uses the ordering of { and newline to distinguish between single line and complex records. Complex records are indicated by a { occurring before the first newline in the record.
For example, a correct format of a memory record looks like this:
// Space for A32 direct mapped window
memory A32 {
// address Name Card or Proc Options
// Name
align 256M:256M i7a32dw hp747i access=direct_map_to 0x0
hints=SYSTEM_ONLY, PRIVATE
}
An incorrect format looks like this:
// Space for A32 direct mapped window
memory A32
{
// address Name Card or Proc Options
// Name
align 256M:256M i7a32dw hp747i access=direct_map_to 0x0
hints=SYSTEM_ONLY, PRIVATE
}
Syntax Error 102: Processor name expected
A processor name is required for processor description records. The first character of the name must be one of a−z, A−Z, and _. The subsequent characters can be any of a−z, A−Z, 0−9, and _. The name cannot contain more than 80 characters.
Syntax Error 103: End address expected
The − range indicator in a memory record indicates that the memory entity will be described as a starting and ending address pair. The ending address is missing.
An address must be an integer constant. See Syntax Error 120 for a definition of integer constants.
Syntax Error 104: Unexpected input
An unrecognizable sequence of ASCII values was found in the configuration file.
Syntax Error 105: CPU/Card number must be between 0 and 31
vme_config allows no more than 32 different cards or processors in the system.
Syntax Error 106: Card or processor has non-unique CPU/Card number
The CPU/card number of this entity conflicts with that of a previously declared entity.
For third-party processors and cards, use a wildcard (*). The wildcard tells vme_config to choose a unique CPU/card number.
Syntax Error 107: Undeclared memory entity name
vme_config could not find a memory entity, card, or processor name. Ensure you didn’t make a typographical error in the name.
Syntax Error 108: Address/size combination exceeds space
This error occurs if the ending address exceeds the boundary of the current address space.
An address range consists of all of the addresses between the starting address and the ending address. If you specified a size instead of an ending address, the ending address can be determined by adding the entity’s size (minus 1 byte) to the starting address.
Change the hard-coded address, then run vme_config again.
Syntax Error 109: ’=’ expected
The assignment operator (=) is used to assign a value to a parameter. This error indicates that the value cannot be assigned because the assignment operator is missing.
Syntax Error 110: Access, permission, or hints field expected
In memory records, only access, permission, or hint fields can follow the card or processor name field.
Syntax Error 111: Card or processor name is expected
Memory entities must always be associated with a card or processor that supplies the physical memory backing the entity. You must supply a card or processor name that was defined in another card or processor record.
CPU/card number in nonvolatile memory:number
Syntax Error 113: No processor record associated with this CPU/card
number
vme_config uses the CPU/card number stored in the computer’s nonvolatile memory to determine which processor record in the configuration file to use. In this case, the stored CPU/card number does not correspond to a CPU/card number in any processor record.
Syntax Error 114: Timeout value expected: [10|20|40|80|160|320|640|1000]
Valid timeout values are 10, 20, 40, 80, 160, 320, 640, or 1000 (microseconds). This field must contain one of these values.
Syntax Error 115: Arbitration mode expected: [PRI|RRS]
The arbitration mode must be Priority (PRI) or Round Robin Select (RRS).
Syntax Error 116: Request mode expected: [RWD|ROR|FAIR]
The processor bus request mode must be one of the following: Release When Done (RWD), Release on Request (ROR), or Fair (FAIR).
Syntax Error 117: Request level expected: [BR0|BR1|BR2|BR3]
The processor bus request level must be one of the following: BR0, BR1, BR2, or BR3.
Syntax Error 120: Incorrect integer constant.
Integer constants must be of the following form (shown as a regular expression):
[0-9]* decimal notation
0[0-7]* octal notation
0x[0-9a-fA-F]* hexadecimal notation
All integer constants may also have a K, M, or G suffix. K indicates the value is in kilobytes (1024 bytes), M indicates megabytes (1,048,576 bytes), and G indicates gigabytes (1,073,741,824 bytes). If no suffix is used, the value is assumed to be in bytes. Including any K, M, or G multiplier, integer constants cannot exceed 4,294,967,294.
Syntax Error 121: Interrupt request line(s) previously assigned
An interrupt request line was assigned to more than one processor. Only one processor can be assigned to each interrupt request line.
Syntax Error 122: Card name expected
A card name is required for card description records. The first character of the name must be one of a−z, A−Z, and _. The subsequent characters can be any of a−z, A−Z, 0−9, and _. The name cannot contain more than 80 characters.
Syntax Error 123: Range or size indicator expected: ’:’ or ’-’
Address descriptions that begin with a starting address must have one of the following forms:
starting_address:size e.g., 0x00100000:8K
starting_address−ending_address e.g., 0x00100000−0x00101fff
Syntax Error 124: Size indicator expected: ’:’
The size indicator (:) is expected because a size must always be associated with an alignment requirement in a memory record.
Syntax Error 125: Memory range/size/alignment or ’}’ expected
The syntax of a memory record is not correct. vme_config found something other than expected.
Syntax Error 126: Slot 1 keyword expected
If a slot 1 function record is specified, only timeout, arb_mode, or powerup_reset fields are allowed because these are the only Slot 1 functions that can be set on an HP processor (slot 1 card).
Syntax Error 127: One or more address modifiers and ’{’ expected
A memory record may contain multiple address modifiers. The address modifier list immediately follows the keyword memory and ends with the opening brace of the complex record.
This error indicates that something other than a recognized address modifier or list terminator appeared in the list.
Syntax Error 128: Nonzero value for alignment required for nonzero size
The alignment requirement of an entity must be a nonzero value if the size is nonzero. For shared memory, the alignment requirement should be rounded up to 4 KB.
Note that a zero size is equivalent to not specifying a memory requirement for an entity. This is useful with C preprocessor #defines.
Syntax Error 129: Interrupt request line [1-7] or ’}’ expected
This error indicates that vme_config expects either a valid interrupt request line or a closing brace (}) to close the interrupt record. The valid interrupt request lines are 1, 2, 3, 4, 5, 6, and 7.
Syntax Error 130: Alignment boundary value expected
The keyword align must be followed by an integer representing the alignment requirement.
See Syntax Error 120 for a definition of integer constants.
Syntax Error 131: Size value expected
A size value is expected here. This value must be an integer. See Syntax Error 120 for a definition of integer constants.
Syntax Error 132: User defined subspace value [0x0-0xf] expected
The subspaces within the user defined address modifier range must be specified. The value must be an integer in the range 0x0 through 0xf (0 to 15). See Syntax Error 120 for a definition of integer constants.
Syntax Error 133: Permissions value expected
An integer value is expected for the permission field. For information on permission setting, see the HP-RT system administration documentation.
See Syntax Error 120 for a definition of integer constants.
Syntax Error 134: CPU/card number or wildcard expected
All memory objects must have a unique CPU/card number.
For third-party processors and cards, use a wildcard (*). The wildcard tells vme_config to choose a unique CPU/card number. However, some HP-RT applications may require a specific CPU/card number.
Syntax Error 135: Memory entity name expected
All memory entity declarations must have names.
Syntax Error 136: Undeclared processor name
A processor name was referenced but was not previously declared in a processor record.
Syntax Error 140: Exceeded the maximum string length of 80 characters
The maximum length of a symbolic name is 80 characters.
Syntax Error 141: Processor ID or Wildcard expected
A processor record must have an ID or indicate that it does not by using a wildcard.
Syntax Error 142: Processor requires an explicit CPU/Card number
For HP processors, you must provide an explicit CPU/card number.
A CPU/card number is stored in the nonvolatile memory of every HP processor and should match the CPU/card number in the processor record. The number can be modified with the vme_config −N number option.
Syntax Error 143: Maximum number of entities exceeded. Max is 100
The maximum number of entities is 100. The maximum number of entities is different from the maximum CPU/Card number, because a card or processor can be referenced by multiple entities.
Syntax Error 144: Illegal shared memory address modifier on HP CPU
Address modifiers for shared memory regions provided by an HP processor’s local memory cannot be any of the following:
A16 A24NP A24SP A32NP A32SP
In addition, HP Models 742 and 747 cannot use A24L or A32L.
Syntax Error 145: Cannot allocate VME address space for slave mapper
vme_config could not locate an unused 1 MB piece of memory to allocate for the slave mapper.
In the cfgfile, comment out a large A24 or A32 memory entity, then use the command vme_config −h address_modifier, which allows you to view the empty locations in the affected memory space.
Syntax Error 146: Shared memory entity not in same 1M window as previous
All shared memory entities for a particular processor must be located within the same 1 MB window. This window begins on a 1 MB boundary.
Syntax Error 147: Shared memory entity size cannot exceed 1M
The total of all shared memory for a particular processor must be 1 MB or less in size. This error indicates that the size is larger than 1 MB.
Syntax Error 148: Shared memory entity crosses a 1M boundary
Shared memory cannot cross a 1 MB boundary, due to the constraints of the underlying shared memory mapping hardware. Change the location of the shared memory.
Syntax Error 149: Shared memory entity cannot fit into 1M window
There is not enough space left for this shared memory entity in the current shared memory window.
Syntax Error 150: Duplicate proc, card, or memory entity name
Processor, card, and memory entity names must be unique.
Syntax Error 151: HP processor memory requirements not met
HP Models 742 and 747 have the following memory requirements:
• 1 KB on a 1-KB alignment boundary in A16, A24, and A32 space, access=fifo.
• 1 KB on a 1-KB alignment boundary in A16, A24, and A32 space, access=loc_mon.
• 256 MB on a 256-MB alignment boundary in A32 space, access=direct_map_to 0.
All other HP processors have the following memory requirements:
• 1 KB or 4 bytes on a 1-KB or 4-byte alignment boundary in A16, A24, and A32 space, access=fifo.
• 1 KB or 2 bytes on a 1-KB or 2-byte alignment boundary in A16, A24, and A32 space, access=loc_mon.
See /sbin/lib/vme/example2.CFG for example records.
Syntax Error 152: Only one Slot 1 function record allowed
A configuration file can contain only one slot 1 function data record. This error indicates that more than one slot 1 record exists.
Syntax Error 153: Conflicting memory declarations for memory entity
This error indicates that a memory entity cannot be allocated as specified. For example, the specified address and size may exceed the maximum address of the address space.
Syntax Error 156: keep_bus condition expected: [true|false]
The keep_bus value may be TRUE or FALSE. Set it to FALSE (the default) unless you want a minor improvement in VME transfer rate at the expense of the performance of all other subsystems.
Syntax Error 157: vme_sysreset condition expected: [true|false]
The vme_sysreset value may be TRUE or FALSE. The default is TRUE, which causes the system to reset when a VME sysreset signal is received.
On HP Models 742 and 747, this option cannot be set FALSE. This option does not apply to third party slot 1 controllers.
Syntax Error 158: pb_reset condition expected: [true|false]
The pb_reset value may be TRUE or FALSE. The default is TRUE, which causes the system to reset when the processor’s reset button is pushed.
On HP Models 742 and 747, this option cannot be set FALSE. This option does not apply to third party slot 1 controllers.
Syntax Error 159: powerup_reset condition expected: [true|false]
The powerup_reset value may be TRUE or FALSE. The default is TRUE, which causes the slot 1 HP processor to assert VME sysreset when HP-UX initializes the VME subsystem. This option does not apply to third party slot 1 controllers.
Syntax Error 160: Access type expected:
[fifo|loc_mon|direct_map_to PA_address]
If the memory is supplied by an HP processor, four access types are supported: slave, fifo, loc_mon, and direct_map_to PA_address. See "Memory Records" in HP-UX 10.20 VME Services Guide.
For memory supplied by non-HP processors or VME cards, omit the access= field.
Syntax Error 161: Main memory address (direct map target) expected
The PA address of the direct map target must be specified as access=direct_map_to PA_address.
Syntax Error 162: Direct map can only be in A24 or A32 space
Memory declared with access=direct_map_to PA_address cannot be accessed in A16 space.
Syntax Error 164: FIFO already assigned
This HP processor’s FIFO has already been assigned (access=fifo) to another memory entity.
Syntax Error 165: Location monitor already assigned
This HP processor’s location monitor has already been assigned (access=loc_mon) to another memory entity.
Syntax Error 166: A24 direct mapped window already assigned
This HP processor’s A24 direct mapped window has already been assigned (access=direct_map_to PA_address) to another memory entity.
Syntax Error 167: A32 direct mapped window already assigned
This HP processor’s A32 direct mapped window has already been assigned (access=direct_map_to PA_address) to another memory entity.
Syntax Error 168: FIFO must be 1K in size, aligned on a 1K boundary
This message applies only to HP Models 742 and 747. Check the size and address alignment of the memory entity with access=fifo.
Syntax Error 169: FIFO must be 1K or 4 bytes in size,
aligned on a 1K or 4 byte boundary
Check the size and address alignment of the memory entity with access=fifo.
Syntax Error 170: Location monitor must be 1K bytes in size,
aligned on a 1K boundary
This message applies only to HP Models 742 and 747. Check the size and address alignment of the memory entity with access=loc_mon.
Syntax Error 171: Location monitor must be 1K or 2 bytes in size,
aligned on a 1K or 2 byte boundary
Check the size and address alignment of the memory entity with access=loc_mon.
Syntax Error 172: A24 direct mapped window must be 0, 1M, 2M, 4M,
or 8M bytes in size, with natural alignment
This message applies only to HP Models 742 and 747. Check the size and address alignment of the memory entity with access=direct_map_to PA_address. Both the VME address and the PA address must be aligned to the size of the window (natural alignment).
Syntax Error 173: A24 direct map must be 0, 64K, 128K, 256K,
1M, 2M, 4M, or 8M bytes in size, with natural alignment
Check the size and address alignment of the memory entity with access=direct_map_to PA_address. Both the VME address and the PA address must be aligned to the size of the window (natural alignment).
Syntax Error 174: A24 direct mapped window target address must be zero
This message applies only to HP Models 742 and 747. The A24 direct mapped window can only map to PA memory address 0 (access=direct_map_to 0).
Syntax Error 175: A24 direct mapped window target address
must be naturally aligned
The direct mapped window must be naturally aligned. For example, a 64 KB window must be aligned on a 64 KB boundary, a 2 MB window must be aligned on a 2 MB boundary, and so on.
Syntax Error 176: A32 direct mapped window must be 256M bytes in size,
aligned on a 256M boundary
This message applies only to HP Models 742 and 747. The A32 direct mapped window is a fixed 256 MB in size.
Syntax Error 177: A32 direct mapped window must be 0, 64K, 128K, 256K,
1M, 2M, 4M, 8M, 16M, 32M, 64M, 128M, 256M, 512M, or 1G bytes in size, with natural alignment
Check the size and address alignment of the memory entity with access=direct_map_to PA_address. The direct mapped window must be naturally aligned. For example, a 64 KB window must be aligned on a 64-KB boundary, a 2 MB window must be aligned on a 2-MB boundary, and so on.
Syntax Error 178: A32 direct mapped window target address must be zero
This message applies only to HP Models 742 and 747. The A32 direct mapped window can only map to PA memory address 0 (access=direct_map_to 0).
Syntax Error 179: A32 direct mapped window target address
must be naturally aligned
The direct mapped window must be naturally aligned. For example, a 64 KB window must be aligned on a 64-KB boundary, a 2 MB window must be aligned on a 2-MB boundary, and so on.
Syntax Error 180: DMA bus ownership time expected: 0 − 51 (microseconds)
The third field in the dma_params must be the bus ownership time. The default value is 51 microseconds.
Syntax Error 181: DMA bus wait time expected: 0 − 51 (microseconds)
The fourth field in the dma_params must be the bus wait time. The default value is 0.
Syntax Error 182: DMA option expected: [req_lv|req_mode|keep_bus]
For information on the valid DMA options, see the HP-UX 10.20 VME Services Guide.
Syntax Error 183: VME address collision with memory entity name
The memory entity on the indicated line number overlaps with the previously-defined memory entity name. Change the address specification of one or both memory entities.
Syntax Error 184: Cannot allocate VME address space
for this memory entity
The memory entity on the indicated line number was declared with an align alignment:size address specification. vme_config could not find an unused VME address range in the specified address modifier codes for this memory entity.
Comment out the memory entity that caused the error. Then run vme_config −h address_modifier, specifying the address modifier that the memory entity would use. Using the information that this command provides, try to rearrange other memory entities to create an unused address range for this memory entity.
Syntax Error 185: Slave mapper collision with memory entity name
The cfgfile specified a shared memory entity. All shared memory entities must be located within the 1 MB piece of memory used by the slave mapper. When vme_config tried to allocate a 1 MB piece for the slave mapper that included the shared memory entity, the slave mapper collided with a previously defined entity.
Change the address specification of the specified shared memory entity, the memory entity it collided with, or both.
Internal Error 200: VME device special file "/dev/vme2" open failed
vme_config saves configuration information to the nonvolatile memory of the current system. It uses the vme2 device driver. If this device driver is not in the current HP-UX kernel, the open of the device special file will fail.
To determine if the vme2 driver is in the kernel, see "Verifying the vme2 Driver" in the HP-UX 10.20 VME Network Services Guide.
Internal Error 201: Memory allocation failure
vme_config must allocate various structures for its internal operation. This message indicates that a memory allocation has failed.
To fix this error, increase the value of the kernel parameter maxdsize. See the HP-UX System Administration Tasks manual for information on the maxdsize parameter and changing kernel parameters with SAM.
Internal Error 202: VME device special file "/dev/vme2"
cannot be created
vme_config saves configuration information to the nonvolatile memory of the current system. It uses the vme2 device driver.
vme_config will normally create the device special file if it does not exist. This error indicates such an attempt has failed.
Try removing the /dev/vme2 file and running vme_config again.
Internal Error 203: VME device special file "/dev/vme2" ioctl failed
vme_config saves configuration information in the nonvolatile memory of the current system. It uses ioctls with the vme2 device driver. This error indicates that one of those ioctls has failed. The most likely cause is that your version of vme_config is not compatible with your version of HP-UX.
Internal Error 204: Cannot open the input file
The current configuration file cannot be opened. This may mean that /sbin/lib/vme/vme.CFG has been removed, or that the file name specified by a −f option does not exist. Ensure that the file name does not contain a typographical error.
Internal Error 205: Attempted execution of "/lib/cpp" failed
vme_config first passes the configuration file through the C preprocessor cpp. In this case, execution of the preprocessor failed. Ensure that /lib/cpp exists.
Internal Error 206: "/lib/cpp" generated errors
vme_config first passes the configuration file through the C preprocessor cpp. In this case, cpp has generated errors of its own. These messages are displayed on your screen. For more information on cpp error format and how to fix the errors, see cpp(1).
Internal Error 207: Cannot create "/var/adm/vme/system.log"
The current configuration is stored in the file /var/adm/vme/system.log. This file could not be created.
Internal Error 208: Cannot remove previous "/var/adm/vme/system.log"
The current configuration is stored in the file /var/adm/vme/system.log. The previous version of this file could not be removed.
Internal Error 209: Cannot remove "/tmp/vmecfgpid"
During execution, vme_config uses a temporary file named /tmp/vmecfgpid, where pid represents the process ID of vme_config. If the configuration is successful, this file becomes /var/adm/vme/system.log. The /tmp/vmecfgpid file could not be removed.
Internal Error 210: CPU/Card number must be between 0 and 31
The CPU/card number specified with the −N option must be between 0 and 31.
Diagnostic Error Messages
These errors indicate conditions that you probably cannot fix yourself. Please contact your Hewlett-Packard support representative for assistance.
Diagnostic Error 300: "/lib/cpp" created an unknown directive
vme_config first passes the configuration file through the C preprocessor cpp. In this case, cpp has generated an output directive that vme_config cannot interpret.
Diagnostic Error 301: Cannot close the input file
The current configuration file cannot be closed.
Diagnostic Error 302: "/lib/cpp" output file cannot be opened
vme_config first passes the configuration file through the C preprocessor cpp. In this case, vme_config cannot open the output file that cpp created.
Diagnostic Error 303: Cannot close device special file "/dev/vme2"
vme_config saves configuration information to the nonvolatile memory of the current system. In this case, the device special file could not be closed.
Hewlett-Packard Company — HP-UX Rel. 10.20: August, 1996