📄 sockpd.h
字号:
/*++
THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.
Copyright (c) 1995, 1996, 1997 Microsoft Corporation
Copyright (c) NEC Electronics Inc. 1998.
Module Name:
sockpd.h
Abstract:
This file implements the PCMCIA platform dependent structures and
definitions.
Functions:
Notes:
--*/
// aaaa
//#include <eagle.h>
#define EXCA_REGISTER_OFFSET 0x800
//--------------------------------------------------------//
// SOCKET TYPE //
// Register Index No. //
//--------------------------------------------------------//
#define INDEX_CHIP_REVISION 0x00 //
#define INDEX_INTERFACE_STATUS 0x01 //
#define INDEX_POWER_CONTROL 0x02 //
#define INDEX_INTERRUPT_AND_GENERAL_CONTROL 0x03 //
#define INDEX_CARD_STATUS_CHANGE 0x04 //
#define INDEX_MANAGEMENT_INTERRUPT_CONFIGURATION 0x05 //
#define INDEX_MAPPING_ENABLE 0x06 //
#define INDEX_IO_WINDOW_CONTROL 0x07 //
#define INDEX_IO_MAP0_START_ADDRESS_LOW 0x08 //
#define INDEX_IO_MAP0_START_ADDRESS_HI 0x09 //
#define INDEX_IO_MAP0_END_ADDRESS_LOW 0x0A //
#define INDEX_IO_MAP0_END_ADDRESS_HI 0x0B //
#define INDEX_IO_MAP1_START_ADDRESS_LOW 0x0C //
#define INDEX_IO_MAP1_START_ADDRESS_HI 0x0D //
#define INDEX_IO_MAP1_END_ADDRESS_LOW 0x0E //
#define INDEX_IO_MAP1_END_ADDRESS_HI 0x0F //
#define INDEX_MEMORY_MAP0_START_ADDRESS_LOW 0x10 //
#define INDEX_MEMORY_MAP0_START_ADDRESS_HI 0x11 //
#define INDEX_MEMORY_MAP0_END_ADDRESS_LOW 0x12 //
#define INDEX_MEMORY_MAP0_END_ADDRESS_HI 0x13 //
#define INDEX_MEMORY_MAP0_ADDRESS_OFFSET_LOW 0x14 //
#define INDEX_MEMORY_MAP0_ADDRESS_OFFSET_HI 0x15 //
#define INDEX_MISC_CONTROL1 0x16 //
#define INDEX_MEMORY_MAP1_START_ADDRESS_LOW 0x18 //
#define INDEX_MEMORY_MAP1_START_ADDRESS_HI 0x19 //
#define INDEX_MEMORY_MAP1_END_ADDRESS_LOW 0x1A //
#define INDEX_MEMORY_MAP1_END_ADDRESS_HI 0x1B //
#define INDEX_MEMORY_MAP1_ADDRESS_OFFSET_LOW 0x1C //
#define INDEX_MEMORY_MAP1_ADDRESS_OFFSET_HI 0x1D //
#define INDEX_MISC_CONTROL2 0x1E //
#define INDEX_MODE_CONTROL1 0x1F
#define INDEX_MEMORY_MAP2_START_ADDRESS_LOW 0x20 //
#define INDEX_MEMORY_MAP2_START_ADDRESS_HI 0x21 //
#define INDEX_MEMORY_MAP2_END_ADDRESS_LOW 0x22 //
#define INDEX_MEMORY_MAP2_END_ADDRESS_HI 0x23 //
#define INDEX_MEMORY_MAP2_ADDRESS_OFFSET_LOW 0x24 //
#define INDEX_MEMORY_MAP2_ADDRESS_OFFSET_HI 0x25 //
#define INDEX_MEMORY_MAP3_START_ADDRESS_LOW 0x28 //
#define INDEX_MEMORY_MAP3_START_ADDRESS_HI 0x29 //
#define INDEX_MEMORY_MAP3_END_ADDRESS_LOW 0x2A //
#define INDEX_MEMORY_MAP3_END_ADDRESS_HI 0x2B //
#define INDEX_MEMORY_MAP3_ADDRESS_OFFSET_LOW 0x2C //
#define INDEX_MEMORY_MAP3_ADDRESS_OFFSET_HI 0x2D //
#define EXT_INDEX 0x2E //
#define EXT_DATA 0x2F //
#define INDEX_MEMORY_MAP4_START_ADDRESS_LOW 0x30 //
#define INDEX_MEMORY_MAP4_START_ADDRESS_HI 0x31 //
#define INDEX_MEMORY_MAP4_END_ADDRESS_LOW 0x32 //
#define INDEX_MEMORY_MAP4_END_ADDRESS_HI 0x33 //
#define INDEX_MEMORY_MAP4_ADDRESS_OFFSET_LOW 0x34 //
#define INDEX_MEMORY_MAP4_ADDRESS_OFFSET_HI 0x35 //
#define INDEX_IO_MAP0_ADDRESS_OFFSET_LOW 0x36 //
#define INDEX_IO_MAP0_ADDRESS_OFFSET_HI 0x37 //
#define INDEX_IO_MAP1_ADDRESS_OFFSET_LOW 0x38 //
#define INDEX_IO_MAP1_ADDRESS_OFFSET_HI 0x39 //
//--------------------------------------------------------//
// ExCA Extended Registers //
//--------------------------------------------------------//
#define MEM_WIN0_SAU 0x40 //
#define MEM_WIN1_SAU 0x41 //
#define MEM_WIN2_SAU 0x42 //
#define MEM_WIN3_SAU 0x43 //
#define MEM_WIN4_SAU 0x44 //
#define IO_SETUP_TIM 0x80 //
#define IO_CMD_TIM 0x81 //
#define IO_HOLD_TIM 0x82 //
#define MEM0_SETUP_TIM 0x84 //
#define MEM0_CMD_TIM 0x85 //
#define MEM0_HOLD_TIM 0x86 //
#define MEM1_SETUP_TIM 0x88 //
#define MEM1_CMD_TIM 0x89 //
#define MEM1_HOLD_TIM 0x8A //
#define MEM_TIM_SEL1 0x8C //
#define MEM_TIM_SEL2 0x8D //
#define MEM_WIN_PWEN 0x91 //
//--------------------------------------------------------//
// SOCKET //
// Data Register //
//--------------------------------------------------------//
// REGISTER INDEX No.01 Bit TABLE //
//--------------------------------------------------------//
#define DATA_CARD_POWER_ON (1<<6)
#define DATA_READY_BUSY (1<<5)
#define DATA_WRITE_PROTECT (1<<4)
#define DATA_CARD_DETECT_CD2 (1<<3)
#define DATA_CARD_DETECT_CD1 (1<<2)
#define DATA_BATTERY_VOLTAGE_DETECT_BVD2 (1<<1)
#define DATA_BATTERY_VOLTAGE_DETECT_BVD1 (1<<0)
//--------------------------------------------------------//
// REGISTER INDEX No.02 Bit TABLE //
//--------------------------------------------------------//
#define DATA_CARD_ENABLE (1<<7)
#define CARD_OUT_EN (1<<7)
#define VCC1 0x10
#define VCC0 0x08
#define VPP1 0x02
#define VPP0 0x01
//--------------------------------------------------------//
// REGISTER INDEX No.03 Bit TABLE //
//--------------------------------------------------------//
#define DATA_CARD_RESET 0x40 //
#define DATA_CARD_IS_IO 0x20 //
#define DATA_IRQ_BIT3 0x08 //
#define DATA_IRQ_BIT2 0x04 //
#define DATA_IRQ_BIT1 0x02 //
#define DATA_IRQ_BIT0 0x01 //
//--------------------------------------------------------//
// REGISTER INDEX No.04 Bit TABLE //
//--------------------------------------------------------//
#define DATA_DETECT_CHANGE 0x08 //
#define DATA_READY_CHANGE 0x04 //
#define DATA_BATTERY_WARNING 0x02 //
#define DATA_BATTERY_DEAD_OR_STS_CHG 0x01 //
//--------------------------------------------------------//
// REGISTER INDEX No.05 Bit TABLE //
//--------------------------------------------------------//
#define DATA_MANAGEMENT_IRQ_BIT3 0x80 //
#define DATA_MANAGEMENT_IRQ_BIT2 0x40 //
#define DATA_MANAGEMENT_IRQ_BIT1 0x20 //
#define DATA_MANAGEMENT_IRQ_BIT0 0x10 //
#define DATA_CARD_DETECT_ENABLE 0x08 //
#define DATA_READY_ENABLE 0x04 //
#define DATA_BATTERY_WARNING_ENABLE 0x02 //
#define DATA_BATTERY_DEAD_STSCHG_ENABLE 0x01 //
//--------------------------------------------------------//
// REGISTER INDEX No.06 Bit TABLE //
//--------------------------------------------------------//
#define DATA_IO_MAP1_ENABLE 0x80 //
#define DATA_IO_MAP0_ENABLE 0x40 //
#define DATA_MEMORY_MAP4_ENABLE 0x10 //
#define DATA_MEMORY_MAP3_ENABLE 0x08 //
#define DATA_MEMORY_MAP2_ENABLE 0x04 //
#define DATA_MEMORY_MAP1_ENABLE 0x02 //
#define DATA_MEMORY_MAP0_ENABLE 0x01 //
//--------------------------------------------------------//
// REGISTER INDEX No.07 Bit TABLE //
//--------------------------------------------------------//
#define DATA_AUTO_SIZE_IO_WINDOW1 0x20 //
#define DATA_IO_WINDOW1_SIZE 0x10 //
#define DATA_AUTO_SIZE_IO_WINDOW0 0x02 //
#define DATA_IO_WINDOW0_SIZE 0x01 //
//--------------------------------------------------------//
// REGISTER INDEX No.08 ,0C Bit TABLE //
// //
// I/O MAP0,1 START ADDRESS LOW : START ADDRESS Bit 7-0 //
//--------------------------------------------------------//
//--------------------------------------------------------//
// REGISTER INDEX No.09 ,0D Bit TABLE //
// //
// I/O MAP0,1 START ADDRESS HIGH : START ADDRESS Bit 15-8 //
//--------------------------------------------------------//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -