⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smc37c93x.h

📁 linux-2.6.15.6
💻 H
字号:
#ifndef __ASM_SH_SMC37C93X_H#define __ASM_SH_SMC37C93X_H/* * linux/include/asm-sh/smc37c93x.h * * Copyright (C) 2000  Kazumoto Kojima * * SMSC 37C93x Super IO Chip support *//* Default base I/O address */#define FDC_PRIMARY_BASE	0x3f0#define IDE1_PRIMARY_BASE	0x1f0#define IDE1_SECONDARY_BASE	0x170#define PARPORT_PRIMARY_BASE	0x378#define COM1_PRIMARY_BASE	0x2f8#define COM2_PRIMARY_BASE	0x3f8#define RTC_PRIMARY_BASE	0x070#define KBC_PRIMARY_BASE	0x060#define AUXIO_PRIMARY_BASE	0x000	/* XXX *//* Logical device number */#define LDN_FDC			0#define LDN_IDE1		1#define LDN_IDE2		2#define LDN_PARPORT		3#define LDN_COM1		4#define LDN_COM2		5#define LDN_RTC			6#define LDN_KBC			7#define LDN_AUXIO		8/* Configuration port and key */#define CONFIG_PORT		0x3f0#define INDEX_PORT		CONFIG_PORT#define DATA_PORT		0x3f1#define CONFIG_ENTER		0x55#define CONFIG_EXIT		0xaa/* Configuration index */#define CURRENT_LDN_INDEX	0x07#define POWER_CONTROL_INDEX	0x22#define ACTIVATE_INDEX		0x30#define IO_BASE_HI_INDEX	0x60#define IO_BASE_LO_INDEX	0x61#define IRQ_SELECT_INDEX	0x70#define DMA_SELECT_INDEX	0x74#define GPIO46_INDEX		0xc6#define GPIO47_INDEX		0xc7/* UART stuff. Only for debugging.  *//* UART Register */#define UART_RBR	0x0	/* Receiver Buffer Register (Read Only) */#define UART_THR	0x0	/* Transmitter Holding Register (Write Only) */#define UART_IER	0x2	/* Interrupt Enable Register */#define UART_IIR	0x4	/* Interrupt Ident Register (Read Only) */#define UART_FCR	0x4	/* FIFO Control Register (Write Only) */#define UART_LCR	0x6	/* Line Control Register */#define UART_MCR	0x8	/* MODEM Control Register */#define UART_LSR	0xa	/* Line Status Register */#define UART_MSR	0xc	/* MODEM Status Register */#define UART_SCR	0xe	/* Scratch Register */#define UART_DLL	0x0	/* Divisor Latch (LS) */#define UART_DLM	0x2	/* Divisor Latch (MS) */#ifndef __ASSEMBLY__typedef struct uart_reg {	volatile __u16 rbr;	volatile __u16 ier;	volatile __u16 iir;	volatile __u16 lcr;	volatile __u16 mcr;	volatile __u16 lsr;	volatile __u16 msr;	volatile __u16 scr;} uart_reg;#endif /* ! __ASSEMBLY__ *//* Alias for Write Only Register */#define thr	rbr#define tcr	iir/* Alias for Divisor Latch Register */#define dll	rbr#define dlm	ier#define fcr	iir/* Interrupt Enable Register */#define IER_ERDAI	0x0100	/* Enable Received Data Available Interrupt */#define IER_ETHREI	0x0200	/* Enable Transmitter Holding Register Empty Interrupt */#define IER_ELSI	0x0400	/* Enable Receiver Line Status Interrupt */#define IER_EMSI	0x0800	/* Enable MODEM Status Interrupt *//* Interrupt Ident Register */#define IIR_IP		0x0100	/* "0" if Interrupt Pending */#define IIR_IIB0	0x0200	/* Interrupt ID Bit 0 */#define IIR_IIB1	0x0400	/* Interrupt ID Bit 1 */#define IIR_IIB2	0x0800	/* Interrupt ID Bit 2 */#define IIR_FIFO	0xc000	/* FIFOs enabled *//* FIFO Control Register */#define FCR_FEN		0x0100	/* FIFO enable */#define FCR_RFRES	0x0200	/* Receiver FIFO reset */#define FCR_TFRES	0x0400	/* Transmitter FIFO reset */#define FCR_DMA		0x0800	/* DMA mode select */#define FCR_RTL		0x4000	/* Receiver triger (LSB) */#define FCR_RTM		0x8000	/* Receiver triger (MSB) *//* Line Control Register */#define LCR_WLS0	0x0100	/* Word Length Select Bit 0 */#define LCR_WLS1	0x0200	/* Word Length Select Bit 1 */#define LCR_STB		0x0400	/* Number of Stop Bits */#define LCR_PEN		0x0800	/* Parity Enable */#define LCR_EPS		0x1000	/* Even Parity Select */#define LCR_SP		0x2000	/* Stick Parity */#define LCR_SB		0x4000	/* Set Break */#define LCR_DLAB	0x8000	/* Divisor Latch Access Bit *//* MODEM Control Register */#define MCR_DTR		0x0100	/* Data Terminal Ready */#define MCR_RTS		0x0200	/* Request to Send */#define MCR_OUT1	0x0400	/* Out 1 */#define MCR_IRQEN	0x0800	/* IRQ Enable */#define MCR_LOOP	0x1000	/* Loop *//* Line Status Register */#define LSR_DR		0x0100	/* Data Ready */#define LSR_OE		0x0200	/* Overrun Error */#define LSR_PE		0x0400	/* Parity Error */#define LSR_FE		0x0800	/* Framing Error */#define LSR_BI		0x1000	/* Break Interrupt */#define LSR_THRE	0x2000	/* Transmitter Holding Register Empty */#define LSR_TEMT	0x4000	/* Transmitter Empty */#define LSR_FIFOE	0x8000	/* Receiver FIFO error *//* MODEM Status Register */#define MSR_DCTS	0x0100	/* Delta Clear to Send */#define MSR_DDSR	0x0200	/* Delta Data Set Ready */#define MSR_TERI	0x0400	/* Trailing Edge Ring Indicator */#define MSR_DDCD	0x0800	/* Delta Data Carrier Detect */#define MSR_CTS		0x1000	/* Clear to Send */#define MSR_DSR		0x2000	/* Data Set Ready */#define MSR_RI		0x4000	/* Ring Indicator */#define MSR_DCD		0x8000	/* Data Carrier Detect *//* Baud Rate Divisor */#define UART_CLK	(1843200)	/* 1.8432 MHz */#define UART_BAUD(x)	(UART_CLK / (16 * (x)))/* RTC register definition */#define RTC_SECONDS             0#define RTC_SECONDS_ALARM       1#define RTC_MINUTES             2#define RTC_MINUTES_ALARM       3#define RTC_HOURS               4#define RTC_HOURS_ALARM         5#define RTC_DAY_OF_WEEK         6#define RTC_DAY_OF_MONTH        7#define RTC_MONTH               8#define RTC_YEAR                9#define RTC_FREQ_SELECT		10# define RTC_UIP 0x80# define RTC_DIV_CTL 0x70/* This RTC can work under 32.768KHz clock only.  */# define RTC_OSC_ENABLE 0x20# define RTC_OSC_DISABLE 0x00#define RTC_CONTROL     	11# define RTC_SET 0x80# define RTC_PIE 0x40# define RTC_AIE 0x20# define RTC_UIE 0x10# define RTC_SQWE 0x08# define RTC_DM_BINARY 0x04# define RTC_24H 0x02# define RTC_DST_EN 0x01#endif  /* __ASM_SH_SMC37C93X_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -