uclinux串口驅動程序
uclinux串口驅動程序源代碼:
/*
?*? linux/drivers/char/serial_44b0.c
?*
?*? Copyright (C) 1991, 1992? Linus Torvalds
?*? Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997,
?* ??1998, 1999? Theodore Ts'o
?*
?*? Extensively rewritten by Theodore Ts'o, 8/16/92 -- 9/14/92.? Now
?*? much more extensible to support other serial cards based on the
?*? 16450/16550A UART's.? Added support for the AST FourPort and the
?*? Accent Async board.?
?*
?*? set_serial_info fixed to set the flags, custom divisor, and uart
?* ?type fields.? Fix suggested by Michael K. Johnson 12/12/92.
?*
?*? 11/95: TIOCMIWAIT, TIOCGICOUNT by Angelo Haritsis <ah@doc.ic.ac.uk>
?*
?*? 03/96: Modularised by Angelo Haritsis <ah@doc.ic.ac.uk>
?*
?*? rs_set_termios fixed to look also for changes of the input
?*????? flags INPCK, BRKINT, PARMRK, IGNPAR and IGNBRK.
?*??????????????????????????????????????????? Bernd Anh鋟pl 05/17/96.
?*
?*? 1/97:? Extended dumb serial ports are a config option now.?
?*???????? Saves 4k.?? Michael A. Griffith <grif@acm.org>
?*
?*? 8/97: Fix bug in rs_set_termios with RTS
?*??????? Stanislav V. Voronyi <stas@uanet.kharkov.ua>
?*
?*? 3/98: Change the IRQ detection, use of probe_irq_o*(),
?*?? suppress TIOCSERGWILD and TIOCSERSWILD
?*?? Etienne Lorrain <etienne.lorrain@ibm.net>
?*
?*? 4/98: Added changes to support the ARM architecture proposed by
?* ?? Russell King
?*
?*? 5/99: Updated to include support for the XR16C850 and ST16C654
?*??????? uarts.? Stuart MacDonald <stuartm@connecttech.com>
?*
?*? 8/99: Generalized PCI support added.? Theodore Ts'o
?*
?*? 3/00: Rid circular buffer of redundant xmit_cnt.? Fix a
?*?? few races on freeing buffers too.
?*?? Alan Modra <alan@linuxcare.com>
?*
?*? 5/00: Support for the RSA-DV II/S card added.
?*?? Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
?*
?*? 6/00: Remove old-style timer, use timer_list
?*??????? Andrew Morton <andrewm@uow.edu.au>
?*
?*? 7/00: Support Timedia/Sunix/Exsys PCI cards
?*
?*? 7/00: fix some returns on failure not using MOD_DEC_USE_COUNT.
?*?? Arnaldo Carvalho de Melo <acme@conectiva.com.br>
?*
?* 10/00: add in optional software flow control for serial console.
?*?? Kanoj Sarcar <kanoj@sgi.com>? (Modified by Theodore Ts'o)
?*
?* 09/02: modify by wesley king for s3c44b0's serial console.
?*?? Qin Wei <king@micetek.com.cn>
?*
?* 01/03: modify by wesley king for s3c44b0's serial console, support ev44b0ii.
?*?? Qin Wei <king@micetek.com.cn>
?*
?*/
static char *serial_version = "1.10";
static char *serial_revdate = "2003-01-15";
/*
?* Serial driver configuration section.? Here are the various options:
?*
?* CONFIG_HUB6
?*??Enables support for the venerable Bell Technologies
?*??HUB6 card.
?*
?* CONFIG_SERIAL_MANY_PORTS
?* ??Enables support for ports beyond the standard, stupid
?* ??COM 1/2/3/4.
?*
?* CONFIG_SERIAL_MULTIPORT
?* ??Enables support for special multiport board support.
?*
?* CONFIG_SERIAL_SHARE_IRQ
?* ??Enables support for multiple serial ports on one IRQ
?*
?* CONFIG_SERIAL_DETECT_IRQ
?*??Enable the autodetection of IRQ on standart ports
?*
?* SERIAL_PARANOIA_CHECK
?* ??Check the magic number for the async_structure where
?* ??ever possible.
?*/
#include
#include
#undef SERIAL_PARANOIA_CHECK
#define CONFIG_SERIAL_NOPAUSE_IO
#define SERIAL_DO_RESTART
/* Set of debugging defines */
#undef SERIAL_DEBUG_INTR
#undef SERIAL_DEBUG_OPEN
#undef SERIAL_DEBUG_FLOW
#undef SERIAL_DEBUG_RS_WAIT_UNTIL_SENT
#undef SERIAL_DEBUG_PCI
#undef SERIAL_DEBUG_AUTOCONF
/* Sanity checks */
// Qinwei : for using polling mode to send char on serial port
//#define UARTPOLLING
#undef UARTPOLLING
#ifdef UARTPOLLING
#define RS_STROBE_TIME 10*HZ
#else
#define RS_STROBE_TIME 10
#endif
#define RS_ISR_PASS_LIMIT 256
#if defined(__i386__) && (defined(CONFIG_M386) || defined(CONFIG_M486))
#define SERIAL_INLINE
#endif
?
/*
?* End of serial driver configuration section.
?*/
#include
#include
#include
#include
#ifdef LOCAL_HEADERS
#include "serial_local.h"
#else
#include
#include
//#include
#include
#define LOCAL_VERSTRING ""
#endif
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#if (LINUX_VERSION_CODE >= 131343)
#include
#endif
#if (LINUX_VERSION_CODE >= 131336)
#include
#endif
#include
#ifdef CONFIG_SERIAL_SAMSUNG_CONSOLE
#include
#endif
#ifdef CONFIG_MAGIC_SYSRQ
#include
#endif
#ifdef CONFIG_LEDMAN
#include
#endif
/*
?* All of the compatibilty code so we can compile serial.c against
?* older kernels is hidden in serial_compat.h
?*/
#if defined(LOCAL_HEADERS) || (L
非常好我支持^.^
(1) 100%
不好我反對
(0) 0%
下載地址
uclinux串口驅動程序下載
相關電子資料下載
- 用于單片機的uCLinux和Linux有什么區(qū)別? 258
- 用于單片機的uCLinux和Linux有什么區(qū)別? 235
- 鴻蒙系統(tǒng)用什么語言開發(fā) 3718
- 基于ColdFire5307處理器和uClinux操作系統(tǒng)實現(xiàn)數(shù)據(jù)采集系統(tǒng)的設計 1572
- 基于uClinux和S3C4510B微處理器實現(xiàn)家庭網絡中央控制器的設計 1715
- 基于uClinux和微控制器實現(xiàn)嵌入式Socket通信的應用方案 1221
- 基于uClinux和Nios II處理器實現(xiàn)電網參數(shù)遠程測控系統(tǒng)的設計 1314
- 基于uClinux和微處理器實現(xiàn)嵌入式Socket通信的應用方案 3075
- 基于LPC2210芯片和uClinux實現(xiàn)導航定位信息獲取模塊的設計 1449
- 以uClinux為背景,介紹中斷驅動的I/O設備驅動的開發(fā) 1086