CSX_MODIFYWINDOW(9F) Kernel Functions for Drivers CSX_MODIFYWINDOW(9F)

NAME


csx_ModifyWindow - modify window attributes

SYNOPSIS


#include <sys/pccard.h>


int32_t csx_ModifyWindow(window_handle_t wh, modify_win_t *mw);


INTERFACE LEVEL


illumos DDI Specific (illumos DDI)

PARAMETERS


wh
Window handle returned from csx_RequestWindow(9F).


mw
Pointer to a modify_win_t structure.


DESCRIPTION


This function modifies the attributes of a window allocated by the
csx_RequestWindow(9F) function.


Only some of the window attributes or the access speed field may be
modified by this request. The csx_MapMemPage(9F) function is also used to
set the offset into PC Card memory to be mapped into system memory for
paged windows. The csx_RequestWindow(9F) and csx_ReleaseWindow(9F)
functions must be used to change the window base or size.

STRUCTURE MEMBERS


The structure members of modify_win_t are:

uint32_t Attributes; /* window flags */
uint32_t AccessSpeed; /* window access speed */


The fields are defined as follows:

Attributes
This field is bit-mapped and defined as follows:

WIN_MEMORY_TYPE_CM
Window points to Common Memory
area. Set this to map the window
to Common Memory.


WIN_MEMORY_TYPE_AM
Window points to Attribute
Memory area. Set this to map the
window to Attribute Memory.


WIN_ENABLE
Enable Window. The client must
set this to enable the window.


WIN_ACCESS_SPEED_VALID
AccessSpeed valid. The client
must set this when the
AccessSpeed field has a value
that the client wants set for
the window.


AccessSpeed
The bit definitions for this field use the format of the
extended speed byte of the Device ID tuple. If the
mantissa is 0 (noted as reserved in the PC Card 95
Standard), the lower bits are a binary code representing a
speed from the list below. Numbers in the first column are
codes; items in the second column are speeds.

0
Reserved: do not use


1
250 nsec


2
200 nsec


3
150 nsec


4
100 nsec


5 - 7
Reserved: do not use

It is recommended that clients use the
csx_ConvertSpeed(9F) function to generate the appropriate
AccessSpeed values rather than manually perturbing the
AccessSpeed field.


RETURN VALUES


CS_SUCCESS
Successful operation.


CS_BAD_HANDLE
Window handle is invalid.


CS_NO_CARD
No PC Card in socket.


CS_BAD_OFFSET
Error getting/setting window hardware
parameters.


CS_BAD_WINDOW
Error getting/setting window hardware
parameters.


CS_BAD_SPEED
AccessSpeed is invalid.


CS_UNSUPPORTED_FUNCTION
No PCMCIA hardware installed.


CONTEXT


This function may be called from user or kernel context.

SEE ALSO


csx_ConvertSpeed(9F), csx_MapMemPage(9F), csx_ReleaseWindow(9F),
csx_RequestWindow(9F)


PC Card 95 Standard, PCMCIA/JEIDA

July 19, 1996 CSX_MODIFYWINDOW(9F)