Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ vme_address(3C) — CX/UX 6.20

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

shmbind(2)

vme_address(3C)

NAME

vme_address − obtain a (H)VME physical address

SYNOPSIS

#include <sys/types.h>
#include <ml/pin.h>

u_int vme_address (addr, bus, type)
u_int addr;
int bus;
int type;

DESCRIPTION

When passed an A16 or A24 bit VME address, vme_address() will return the corresponding 32 bit physical address that the process may use on a shmbind(2) system service call or shmconfig(1M) command.  This routine is only provided as an aid for binding VME addresses into user space; it does NOT automatically bind the returned physical address into the process’s virtual address space.  This must be done by the process with a call to shmbind(2). 
 
The addr parameter should contain the A16 or A24 address, the bus parameter should contain VME_ADR_PRIMARY for primary, or VME_ADR_SECONDARY for secondary I/O bus, and the type parameter should contain a VME_ADR_A16 for A16, or a VME_ADR_A24 for A24 bit addresses. 

RETURN VALUE

Upon successful completion, the 32 bit physical address is returned.  Otherwise, a value of -1 is returned and errno is set to indicate the error. 

ERRORS

If one of the following conditions is detected, vme_address() will return -1 and set errno to the following value:

[EINVAL] The bus or type parameter was not valid. 

[EINVAL] The addr parameter is not a valid A16 or A24 bit address. 

SEE ALSO

shmbind(2)

CX/UX Programmer’s Reference Manual

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026