Leaked source code of windows server 2003
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.
 
 
 
 
 
 

176 lines
5.7 KiB

/*++
Copyright (c) 2002 Microsoft Corporation
Module Name:
toshiba.h
Abstract:
This module provides the definitions for the Toshiba host controller
Author(s):
Neil Sandlin (neilsa)
Revisions:
--*/
#ifndef _SDBUS_TOSHIBA_H_
#define _SDBUS_TOSHIBA_H_
//
// Memory registers
//
#define TOMHC_COMMAND 0x00
#define TOMHC_PORT_SEL 0x02
#define TOMHC_ARGUMENT 0x04
#define TOMHC_STOP_INTERNAL 0x08
#define TOMHC_TRANSFER_SECTOR_COUNT 0x0a
#define TOMHC_RESPONSE 0x0c
#define TOMHC_CARD_STATUS 0x1c
#define TOMHC_BUFFER_CTL_AND_ERR 0x1e
#define TOMHC_INTERRUPT_MASK 0x20
#define TOMHC_CARD_CLOCK_CTL 0x24
#define TOMHC_CARD_TRANSFER_LENGTH 0x26
#define TOMHC_OPTIONS 0x28
#define TOMHC_GENERAL_PORT 0x2a
#define TOMHC_ERROR_STATUS 0x2c
#define TOMHC_DATA_PORT 0x30
#define TOMHC_TRANSACTION_CONTROL 0x34
#define TOMHC_SOFTWARE_RESET 0xe0
#define TOMHC_HOST_CORE_VERSION 0xe2
#define TOMHC_MONITOR 0xe6
#define TOMHC_EXT_WRITE_PROTECT_STATUS 0xf6
#define TOMHC_EXT_CARD_DETECT_BY_CTCTZ 0xf8
#define TOMHC_EXT_CARD_DETECT_BY_DATA3 0xfa
#define TOMHC_EXT_CARD_DETECT_BY_CTCTZ_MASK 0xfc
#define TOMHC_EXT_CARD_DETECT_BY_DATA3_MASK 0xfe
//
// Bits defined in TOMHC_COMMAND (0x0)
//
#define TOMHC_CMD_MSSL 0x2000
#define TOMHC_CMD_RWDI 0x1000
#define TOMHC_CMD_NTDT 0x0800
#define TOMHC_CMD_RESP_NORM 0x0000
#define TOMHC_CMD_RESP_NONE 0x0300
#define TOMHC_CMD_RESP_R1456 0x0400
#define TOMHC_CMD_RESP_R1B 0x0500
#define TOMHC_CMD_RESP_R2 0x0600
#define TOMHC_CMD_RESP_R3 0x0700
#define TOMHC_CMD_ACMD 0x0040
#define TOMHC_CMD_AUTHENTICATE 0x0080
//
// Bits defined in TOMHC_CARD_STATUS (0x1c)
//
#define TO_EVT_RESPONSE 0x00000001
#define TO_EVT_RW_END 0x00000004
#define TO_EVT_CARD_REMOVAL 0x00000008
#define TO_EVT_CARD_INSERTION 0x00000010
#define TO_STS_CARD_PRESENT 0x00000020
#define TO_STS_WRITE_PROTECT 0x00000080
#define TOMHC_BCE_CMD_INDEX_ERROR 0x00010000
#define TOMHC_BCE_CRC_ERROR 0x00020000
#define TOMHC_BCE_END_BIT_ERROR 0x00040000
#define TOMHC_BCE_DATA_TIMEOUT 0x00080000
#define TOMHC_BCE_FIFO_OVERFLOW 0x00100000
#define TOMHC_BCE_FIFO_UNDERFLOW 0x00200000
#define TOMHC_BCE_CMD_TIMEOUT 0x00400000
#define TOMHC_BCE_MEMORY_IDLE 0x00800000
#define TO_EVT_BUFFER_FULL 0x01000000
#define TO_EVT_BUFFER_EMPTY 0x02000000
#define TOMHC_BCE_CMD_BUSY 0x40000000
#define TOMHC_BCE_ILLEGAL_ACCESS 0x80000000
//
// Bit defined in TOMHC_CARD_CLOCK_CTL
//
#define TO_CCC_CLOCK_ENABLE 0x0100
#define TO_CCC_CLOCK_DIVISOR_128 0x0020
//------------------------------------------------
// IO registers
//------------------------------------------------
#define TOIOHC_COMMAND 0x100
#define TOIOHC_CARD_SLOT_SELECT 0x102
#define TOIOHC_ARGUMENT 0x104
#define TOIOHC_TRANSFER_DATA_NUM_SET 0x10a
#define TOIOHC_RESPONSE_0 0x10c
#define TOIOHC_RESPONSE_1 0x10e
#define TOIOHC_RESPONSE_2 0x110
#define TOIOHC_RESPONSE_3 0x112
#define TOIOHC_RESPONSE_4 0x114
#define TOIOHC_RESPONSE_5 0x116
#define TOIOHC_RESPONSE_6 0x118
#define TOIOHC_RESPONSE_7 0x11a
#define TOIOHC_CARD_STATUS 0x11c
#define TOIOHC_INTERRUPT_MASK 0x120
#define TOIOHC_TRANSFER_DATA_LEN_SELECT 0x126
#define TOIOHC_CARD_OPTION 0x128
#define TOIOHC_GENERAL_PURPOSE 0x12a
#define TOIOHC_ERROR_DETAIL_1 0x12c
#define TOIOHC_ERROR_DETAIL_2 0x12e
#define TOIOHC_DATA_TRANSFER 0x130
#define TOIOHC_TRANSACTION_CONTROL 0x134
#define TOIOHC_CARD_INTERRUPT_CONTROL 0x136
#define TOIOHC_CLOCK_AND_WAIT_CONTROL 0x138
#define TOIOHC_HOST_INFORMATION 0x13a
#define TOIOHC_ERROR_CONTROL 0x13c
#define TOIOHC_LED_CONTROL 0x13e
#define TOIOHC_SOFTWARE_RESET 0x1e0
#define TOIOHC_SDIO_CORE_REVISION 0x1e2
#define TOIOHC_TOSHIBA_CORE_REVISION 0x1f0
//
// Bits defined in TOIOHC_CLOCK_AND_WAIT_CONTROL
//
#define TOIO_CWCF_CLOCK_ENABLE 0x0100
#define TOIO_CWCF_CARD_WAIT 0x0001
//
// Bits defined in TOIOHC_CARD_INTERRUPT_CONTROL
//
#define TOIO_CICF_CARD_INTERRUPT 0x1000
#define TOIO_CICF_CARD_INTMASK 0x0100
//-----------------------------------------------
// PCI Config definitions
//-----------------------------------------------
#define TOCFG_CLOCK_CONTROL 0x40
#define TOCFG_POWER_CTL1 0x48
#define TOCFG_POWER_CTL2 0x49
#define TOCFG_POWER_CTL3 0x4A
#define TOCFG_CARD_DETECT_MODE 0x4C
#define TOCFG_SD_SLOT_REGISTER 0x50
#define TO_POWER_18 0x01
#define TO_POWER_33 0x02
#endif // _SDBUS_DATA_H_