You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
148 lines
4.6 KiB
148 lines
4.6 KiB
/****************************************************************************
|
|
*****************************************************************************
|
|
*
|
|
* ******************************************
|
|
* * Copyright (c) 1995, Cirrus Logic, Inc. *
|
|
* * All Rights Reserved *
|
|
* ******************************************
|
|
*
|
|
* PROJECT: Laguna I (CL-GD5462) -
|
|
*
|
|
* FILE: clioctl.h
|
|
*
|
|
* AUTHOR: Benny Ng
|
|
*
|
|
* DESCRIPTION:
|
|
* This module contains the definitions of IOCTL commands
|
|
* between the NT miniport and the display.
|
|
*
|
|
* MODULES:
|
|
*
|
|
* REVISION HISTORY:
|
|
* $Log: X:/log/laguna/nt35/displays/cl546x/CLIOCTL.H $
|
|
*
|
|
* Rev 1.14 Mar 25 1998 17:56:54 frido
|
|
* Added IOCTL_STALL.
|
|
*
|
|
* Rev 1.13 Dec 10 1997 13:24:54 frido
|
|
* Merged from 1.62 branch.
|
|
*
|
|
* Rev 1.12.1.0 Nov 10 1997 11:25:14 phyang
|
|
* Added 5 IOCTL code for utilities to update registry values.
|
|
*
|
|
* Rev 1.12 Nov 03 1997 16:44:24 phyang
|
|
* Added IOCTL_GET_AGPDATASTREAMING.
|
|
*
|
|
* Rev 1.11 28 Aug 1997 15:16:06 noelv
|
|
*
|
|
* Merged with miniport CLIOCTL.H. Now we only use this one.
|
|
*
|
|
* Rev 1.10 23 Jul 1997 09:18:30 bennyn
|
|
*
|
|
* Added IOCTL_GET_BIOS_VERSION
|
|
*
|
|
* Rev 1.9 21 Jul 1997 16:21:06 bennyn
|
|
* Added IOCTL for getting EDID data
|
|
*
|
|
* Rev 1.8 20 Jun 1997 13:33:18 bennyn
|
|
*
|
|
* Added power manager data structure and #define
|
|
*
|
|
* Rev 1.7 23 Apr 1997 07:38:26 SueS
|
|
* Added IOCTL for enabling memory-mapped I/O access to PCI
|
|
* configuration registers.
|
|
*
|
|
* Rev 1.6 21 Mar 1997 13:41:20 noelv
|
|
* Combined LOG_CALLS, LOG_WRITES and LOG_QFREE into ENABLE_LOG_FILE
|
|
*
|
|
* Rev 1.5 18 Mar 1997 09:28:58 bennyn
|
|
* Added Intel DPMS support
|
|
*
|
|
* Rev 1.4 26 Nov 1996 10:15:24 SueS
|
|
* Added IOCTL for closing the log file.
|
|
*
|
|
* Rev 1.3 13 Nov 1996 17:06:58 SueS
|
|
* Added two IOCTL codes for notifying the miniport driver on
|
|
* file logging functions.
|
|
* 11/16/95 Benny Ng Initial version
|
|
*
|
|
****************************************************************************
|
|
****************************************************************************/
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
//
|
|
// The following macro(CTL_CODE) is defined in WINIOCTL.H. That file states
|
|
// that functions 2048-4095 are reserved for "customers". So I picked an
|
|
// arbitrary value of 0x900=2304.
|
|
//
|
|
#define IOCTL_CL_STRING_DISPLAY \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x900, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
#define IOCTL_CL_GET_COMMON_BUFFER \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x902, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
#if ENABLE_LOG_FILE
|
|
#define IOCTL_CL_CREATE_LOG_FILE \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x903, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
#define IOCTL_CL_WRITE_LOG_FILE \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x904, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
#define IOCTL_CL_CLOSE_LOG_FILE \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x905, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
#endif
|
|
|
|
#define IOCTL_VIDEO_ENABLE_PCI_MMIO \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x906, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
#define IOCTL_SET_HW_MODULE_POWER_STATE \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x907, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
#define IOCTL_GET_HW_MODULE_POWER_STATE \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x908, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
#define IOCTL_GET_AGPDATASTREAMING \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x90B, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
#define IOCTL_STALL \
|
|
CTL_CODE(FILE_DEVICE_VIDEO, 0x911, METHOD_BUFFERED, FILE_ANY_ACCESS)
|
|
|
|
// =====================================================================
|
|
// Define structure used for power manager
|
|
// =====================================================================
|
|
#ifndef __LGPWRMGR_H__
|
|
#define __LGPWRMGR_H__
|
|
|
|
#define ENABLE 0x1
|
|
#define DISABLE 0x0
|
|
|
|
#define ACPI_D0 0x0
|
|
#define ACPI_D1 0x1
|
|
#define ACPI_D2 0x2
|
|
#define ACPI_D3 0x3
|
|
#define TOTAL_ACPI 4
|
|
|
|
#define MOD_2D 0x0
|
|
#define MOD_STRETCH 0x1
|
|
#define MOD_3D 0x2
|
|
#define MOD_EXTMODE 0x3
|
|
#define MOD_VGA 0x4
|
|
#define MOD_RAMDAC 0x5
|
|
#define MOD_VPORT 0x6
|
|
#define MOD_VW 0x7
|
|
#define MOD_TVOUT 0x8
|
|
#define TOTAL_MOD MOD_TVOUT+1
|
|
|
|
typedef struct _LGPM_IN_STRUCT {
|
|
ULONG arg1;
|
|
ULONG arg2;
|
|
} LGPM_IN_STRUCT, *PLGPM_IN_STRUCT;
|
|
|
|
typedef struct _LGPM_OUT_STRUCT {
|
|
BOOL status;
|
|
ULONG retval;
|
|
} LGPM_OUT_STRUCT, *PLGPM_OUT_STRUCT;
|
|
|
|
#endif // #ifndef __LGPWRMGR_H__
|
|
|