亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? t128.h

?? 內(nèi)核是系統(tǒng)的心臟
?? H
字號(hào):
/*
 * Trantor T128/T128F/T228 defines
 *	Note : architecturally, the T100 and T128 are different and won't work
 *
 * Copyright 1993, Drew Eckhardt
 *	Visionary Computing
 *	(Unix and Linux consulting and custom programming)
 *	drew@colorado.edu
 *      +1 (303) 440-4894
 *
 * DISTRIBUTION RELEASE 3. 
 *
 * For more information, please consult 
 *
 * Trantor Systems, Ltd.
 * T128/T128F/T228 SCSI Host Adapter
 * Hardware Specifications
 * 
 * Trantor Systems, Ltd. 
 * 5415 Randall Place
 * Fremont, CA 94538
 * 1+ (415) 770-1400, FAX 1+ (415) 770-9910
 * 
 * and 
 *
 * NCR 5380 Family
 * SCSI Protocol Controller
 * Databook
 *
 * NCR Microelectronics
 * 1635 Aeroplaza Drive
 * Colorado Springs, CO 80916
 * 1+ (719) 578-3400
 * 1+ (800) 334-5454
 */

/*
 * $Log: t128.h,v $
 */

#ifndef T128_H
#define T128_H

#define T128_PUBLIC_RELEASE 3

#define TDEBUG_INIT	0x1
#define TDEBUG_TRANSFER 0x2

/*
 * The trantor boards are memory mapped. They use an NCR5380 or 
 * equivalent (my sample board had part second sourced from ZILOG).
 * NCR's recommended "Pseudo-DMA" architecture is used, where 
 * a PAL drives the DMA signals on the 5380 allowing fast, blind
 * transfers with propper handshaking. 
 */

/*
 * Note : a boot switch is provided for the purpose of informing the 
 * firmware to boot or not boot from attached SCSI devices.  So, I imagine
 * there are fewer people who've yanked the ROM like they do on the Seagate
 * to make bootup faster, and I'll probably use this for autodetection.
 */
#define T_ROM_OFFSET		0

/*
 * Note : my sample board *WAS NOT* populated with the SRAM, so this
 * can't be used for autodetection without a ROM present.
 */
#define T_RAM_OFFSET		0x1800

/*
 * All of the registers are allocated 32 bytes of address space, except
 * for the data register (read/write to/from the 5380 in pseudo-DMA mode)
 */ 
#define T_CONTROL_REG_OFFSET	0x1c00	/* rw */
#define T_CR_INT		0x10	/* Enable interrupts */
#define T_CR_CT			0x02	/* Reset watchdog timer */

#define T_STATUS_REG_OFFSET	0x1c20	/* ro */
#define T_ST_BOOT		0x80	/* Boot switch */
#define T_ST_S3			0x40	/* User setable switches, */
#define T_ST_S2			0x20	/* read 0 when switch is on, 1 off */
#define T_ST_S1			0x10
#define T_ST_PS2		0x08	/* Set for Microchannel 228 */
#define T_ST_RDY		0x04	/* 5380 DRQ */
#define T_ST_TIM		0x02	/* indicates 40us watchdog timer fired */
#define T_ST_ZERO		0x01	/* Allways zero */

#define T_5380_OFFSET		0x1d00	/* 8 registers here, see NCR5380.h */

#define T_DATA_REG_OFFSET	0x1e00	/* rw 512 bytes long */

#ifndef ASM
int t128_abort(Scsi_Cmnd *, int);
int t128_biosparam(int, int, int*);
int t128_detect(int);
const char *t128_info(void);
int t128_queue_command(Scsi_Cmnd *, void (*done)(Scsi_Cmnd *));
int t128_reset(Scsi_Cmnd *);

#ifndef NULL
#define NULL 0
#endif

#ifndef CMD_PER_LUN
#define CMD_PER_LUN 2
#endif

#ifndef CAN_QUEUE
#define CAN_QUEUE 32 
#endif

/* 
 * I hadn't thought of this with the earlier drivers - but to prevent
 * macro definition conflicts, we shouldn't define all of the internal
 * macros when this is being used solely for the host stub.
 */

#ifdef HOSTS_C

#define TRANTOR_T128 {"Trantor T128/T128F/T228", t128_detect, t128_info,\
	NULL, t128_queue_command, t128_abort, t128_reset, NULL, 	\
	t128_biosparam, 						\
	/* can queue */ CAN_QUEUE, /* id */ 7, SG_ALL,			\
	/* cmd per lun */ CMD_PER_LUN , 0, 0}

#else

#define NCR5380_implementation_fields \
    volatile unsigned char *base

#define NCR5380_local_declare() \
    volatile unsigned char *base

#define NCR5380_setup(instance) \
    base = (volatile unsigned char *) (instance)->base

#define T128_address(reg) (base + T_5380_OFFSET + ((reg) * 0x20))

#if !(TDEBUG & TDEBUG_TRANSFER) 
#define NCR5380_read(reg) (*(T128_address(reg)))
#define NCR5380_write(reg, value) (*(T128_address(reg)) = (value))
#else
#define NCR5380_read(reg)						\
    (((unsigned char) printk("scsi%d : read register %d at address %08x\n"\
    , instance->hostno, (reg), T128_address(reg))), *(T128_address(reg)))

#define NCR5380_write(reg, value) {					\
    printk("scsi%d : write %02x to register %d at address %08x\n", 	\
	    instance->hostno, (value), (reg), T128_address(reg));	\
    *(T128_address(reg)) = (value);					\
}
#endif

#define NCR5380_intr t128_intr
#define NCR5380_queue_command t128_queue_command
#define NCR5380_abort t128_abort
#define NCR5380_reset t128_reset

/* 15 14 12 10 7 5 3 
   1101 0100 1010 1000 */
   
#define T128_IRQS 0xc4a8 

#endif /* else def HOSTS_C */
#endif /* ndef ASM */
#endif /* T128_H */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人综合在线| 一区二区成人在线视频| 欧美日韩国产综合视频在线观看| 国产亚洲人成网站| 成人中文字幕在线| 中文字幕色av一区二区三区| 97se亚洲国产综合自在线不卡| 亚洲男同性恋视频| 欧美日韩国产在线播放网站| 美女www一区二区| 久久综合色8888| 成人性生交大片| 曰韩精品一区二区| 欧美一区二区久久| 国产不卡一区视频| 一区二区在线观看免费视频播放| 欧美日韩视频在线第一区| 日本成人在线看| 国产欧美va欧美不卡在线| aaa欧美色吧激情视频| 亚洲午夜一区二区| 久久综合狠狠综合| 91片黄在线观看| 日本va欧美va瓶| 久久久蜜桃精品| 欧美怡红院视频| 国产一区二区在线免费观看| 亚洲欧美日韩中文字幕一区二区三区 | 欧美aⅴ一区二区三区视频| 日韩美女视频在线| 精品粉嫩aⅴ一区二区三区四区| 国产精品资源在线看| 亚洲一级在线观看| www国产成人| 精品视频一区二区三区免费| 国产乱子伦视频一区二区三区| 亚洲一区二区视频| 国产日产精品一区| 欧美福利一区二区| 成人激情av网| 精品一区二区三区在线观看| 亚洲视频一区二区在线观看| 日韩免费高清视频| 91高清视频在线| 成人性生交大合| 激情欧美日韩一区二区| 亚洲一区在线观看免费观看电影高清| 亚洲精品在线电影| 欧美精品丝袜久久久中文字幕| 不卡的av在线播放| 国产一区欧美一区| 青椒成人免费视频| 一区二区三区四区不卡在线 | 91在线免费看| 国产一区激情在线| 美女一区二区久久| 午夜av一区二区三区| 中文字幕亚洲欧美在线不卡| 欧美精品一区二区三区视频 | 日韩一区二区三区在线| 欧洲色大大久久| 99精品视频在线观看| 岛国精品在线播放| 国产在线一区观看| 激情欧美一区二区| 蜜臀久久久99精品久久久久久| 五月天精品一区二区三区| 一区二区三区欧美日| 亚洲蜜臀av乱码久久精品| 国产精品视频九色porn| 久久久电影一区二区三区| 精品国产91洋老外米糕| 欧美大片在线观看一区二区| 4438x成人网最大色成网站| 在线观看精品一区| 欧美系列一区二区| 日本韩国一区二区三区视频| 国产亚洲一区字幕| 国产亚洲精品bt天堂精选| 久久久亚洲综合| 久久久亚洲精华液精华液精华液| 精品成人一区二区三区四区| 日韩欧美高清dvd碟片| 欧美一级二级三级蜜桃| 日韩欧美一级精品久久| 26uuu久久天堂性欧美| 久久婷婷一区二区三区| 久久精品人人做人人综合| 国产日韩精品视频一区| 中文字幕免费观看一区| 国产精品成人免费在线| 亚洲免费成人av| 亚洲最新视频在线观看| 偷窥少妇高潮呻吟av久久免费 | 五月天久久比比资源色| 免费欧美在线视频| 久久99精品国产麻豆婷婷洗澡| 精彩视频一区二区| 成人h版在线观看| 色狠狠桃花综合| 欧美日韩精品一区二区三区四区| 91精品国产综合久久久久久久久久 | 日韩黄色在线观看| 天堂资源在线中文精品| 久久99精品视频| av中文字幕在线不卡| 欧美午夜寂寞影院| 精品免费99久久| 中文字幕日韩一区| 五月开心婷婷久久| 国产高清不卡一区| 欧美在线视频日韩| 久久综合狠狠综合久久综合88| 国产精品国产三级国产| 婷婷中文字幕一区三区| 国产精品一二一区| 91成人在线观看喷潮| 精品成人在线观看| 一个色综合av| 国产麻豆精品95视频| 欧美性xxxxxx少妇| 久久久久久久久久久电影| 亚洲综合色成人| 国产寡妇亲子伦一区二区| 欧美三级韩国三级日本三斤| 国产亚洲视频系列| 婷婷久久综合九色综合伊人色| 国产不卡视频在线观看| 91精选在线观看| 亚洲三级免费观看| 国产精品一区二区黑丝| 欧美日韩在线播放| 国产精品久久福利| 男男视频亚洲欧美| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 丁香另类激情小说| 美女看a上一区| 欧美日韩在线播| 一区二区三区在线观看动漫| 欧美高清在线精品一区| 亚洲国产精品久久久男人的天堂| 国产精品一区二区你懂的| 欧美系列一区二区| 国产精品不卡一区| 国产一区二区福利| 欧美一区二区在线观看| 中文字幕一区二区5566日韩| 韩国精品主播一区二区在线观看 | 日韩毛片一二三区| 国内精品伊人久久久久影院对白| 在线观看网站黄不卡| 国产精品免费人成网站| 精品一区二区影视| 日韩欧美在线不卡| 性做久久久久久免费观看| 91成人网在线| 亚洲欧美一区二区三区国产精品 | 国产日产欧美一区二区三区| 激情综合网天天干| 日韩欧美国产麻豆| 蜜臀精品久久久久久蜜臀| 欧美巨大另类极品videosbest| 一区二区三区波多野结衣在线观看 | 在线免费精品视频| 国产精品日产欧美久久久久| 国产真实乱子伦精品视频| 欧美一级欧美三级| 日本不卡一二三区黄网| 91精品国产福利在线观看| 亚洲3atv精品一区二区三区| 欧美系列一区二区| 亚洲成国产人片在线观看| 欧美亚洲国产一区二区三区va| 伊人婷婷欧美激情| 91福利在线免费观看| 亚洲第一搞黄网站| 欧美日韩和欧美的一区二区| 亚洲www啪成人一区二区麻豆| 在线视频欧美精品| 亚洲成av人片一区二区三区| 欧美三片在线视频观看| 午夜激情久久久| 欧美一级片免费看| 国产一区二区电影| 国产日产欧美一区二区视频| av在线一区二区| 亚洲免费观看高清完整版在线观看 | 中文字幕一区二区三区四区不卡 | 国内精品久久久久影院薰衣草| 一区二区三区在线播| 欧美日韩国产精品自在自线| 日本sm残虐另类| 久久精品日韩一区二区三区| 成人夜色视频网站在线观看| 日韩一区中文字幕| 欧美在线免费观看视频| 蜜桃av一区二区在线观看| 久久久国际精品| 色综合咪咪久久| 日韩av电影天堂|