Some Solaris platforms support the VME bus as a peripheral expansion bus to allow VME devices to be connected to the system. Drivers for these devices need to use driver configuration files to inform the system that the device hardware may be present. The configuration file also must specify the device addresses on the VMEbus and any interrupt capabilities that the device may have.
Configuration files for VME bus device drivers should identify the parent bus driver implicitly using the class keyword. This removes the dependency on the name of the particular bus driver involved since this may be named differently on different platforms. See driver.conf(4) for further details of configuration file syntax.
All bus drivers of class vme recognise the following properties:
Address Space Value A16D16 0x2d A24D16 0x3d A32D16 0xd A16D32 0x6d A24D32 0x7d A32D32 0x4d
All VM Ebus device drivers must provide reg properties. The first two integer elements of this property are used to construct the address part of the device name under /devices.
Only devices that generate interrupts need to provide interrupts properties.
Here is a configuration file called SUNW,diskctrl.conf for a VME bus disk controller card called SUNW,diskctrl.
The device provides two sets of registers, both should be accessed with supervisor accesses and the A16D32 address modifier bits (16 bits of address, 32 bit data transfers). Both registers occupy 32 bytes; one register set starts at address 0xee80, the other is at 0xef00. The device can generate interrupts at VME level 2 with a VME vector number of 0x92.
# # Copyright (c) 1992, by Sun Microsystems, Inc. # #ident "@(#)SUNW,diskctrl.conf 1.4 92/05/11 SMI" name="SUNW,diskctrl" class="vme" reg=0x6d,0xee80,32,0x6d,0xef00,32 interrupts=2,0x92;
ANSI/IEEE Std 1014-1987: IEEE Standard for a Versatile Backplane Bus: VMEbus