Index: Makefile =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/Makefile,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- Makefile 16 Dec 2002 10:14:27 -0000 1.1.1.1 +++ Makefile 16 Dec 2002 10:40:31 -0000 1.1.1.1.2.1 @@ -1,7 +1,7 @@ VERSION = 2 PATCHLEVEL = 4 SUBLEVEL = 18 -EXTRAVERSION = +EXTRAVERSION = -2.TS KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) Index: TSConfigFile =================================================================== RCS file: TSConfigFile diff -N TSConfigFile --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ TSConfigFile 16 Dec 2002 11:33:52 -0000 1.1.2.1 @@ -0,0 +1,591 @@ +# +# Automatically generated make config: don't edit +# +CONFIG_X86=y +CONFIG_ISA=y +# CONFIG_SBUS is not set +CONFIG_UID16=y + +# +# Code maturity level options +# +CONFIG_EXPERIMENTAL=y + +# +# Loadable module support +# +CONFIG_MODULES=y +CONFIG_MODVERSIONS=y +CONFIG_KMOD=y + +# +# Processor type and features +# +CONFIG_M386=y +# CONFIG_M486 is not set +# CONFIG_M586 is not set +# CONFIG_M586TSC is not set +# CONFIG_M586MMX is not set +# CONFIG_M686 is not set +# CONFIG_MPENTIUMIII is not set +# CONFIG_MPENTIUM4 is not set +# CONFIG_MK6 is not set +# CONFIG_MK7 is not set +# CONFIG_MELAN is not set +# CONFIG_MCRUSOE is not set +# CONFIG_MWINCHIPC6 is not set +# CONFIG_MWINCHIP2 is not set +# CONFIG_MWINCHIP3D is not set +# CONFIG_MCYRIXIII is not set +# CONFIG_X86_CMPXCHG is not set +# CONFIG_X86_XADD is not set +CONFIG_X86_L1_CACHE_SHIFT=4 +CONFIG_RWSEM_GENERIC_SPINLOCK=y +# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set +CONFIG_X86_PPRO_FENCE=y +# CONFIG_TOSHIBA is not set +# CONFIG_I8K is not set +# CONFIG_MICROCODE is not set +# CONFIG_X86_MSR is not set +# CONFIG_X86_CPUID is not set +CONFIG_NOHIGHMEM=y +# CONFIG_HIGHMEM4G is not set +# CONFIG_HIGHMEM64G is not set +CONFIG_MATH_EMULATION=y +# CONFIG_MTRR is not set +# CONFIG_SMP is not set +# CONFIG_X86_UP_APIC is not set + +# +# General setup +# +CONFIG_NET=y +# CONFIG_PCI is not set +# CONFIG_EISA is not set +# CONFIG_MCA is not set +# CONFIG_HOTPLUG is not set +# CONFIG_PCMCIA is not set +# CONFIG_HOTPLUG_PCI is not set +CONFIG_SYSVIPC=y +# CONFIG_BSD_PROCESS_ACCT is not set +CONFIG_SYSCTL=y +CONFIG_KCORE_ELF=y +# CONFIG_KCORE_AOUT is not set +CONFIG_BINFMT_AOUT=y +CONFIG_BINFMT_ELF=y +CONFIG_BINFMT_MISC=y +# CONFIG_PM is not set +# CONFIG_APM_IGNORE_USER_SUSPEND is not set +# CONFIG_APM_DO_ENABLE is not set +# CONFIG_APM_CPU_IDLE is not set +# CONFIG_APM_DISPLAY_BLANK is not set +# CONFIG_APM_RTC_IS_GMT is not set +# CONFIG_APM_ALLOW_INTS is not set +# CONFIG_APM_REAL_MODE_POWER_OFF is not set + +# +# Memory Technology Devices (MTD) +# +# CONFIG_MTD is not set + +# +# Parallel port support +# +# CONFIG_PARPORT is not set + +# +# Plug and Play configuration +# +# CONFIG_PNP is not set + +# +# Block devices +# +# CONFIG_BLK_DEV_FD is not set +# CONFIG_BLK_DEV_XD is not set +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_NBD=y +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_SIZE=4096 +CONFIG_BLK_DEV_INITRD=y +CONFIG_BLK_DEV_MSYS_DOC=m + +# +# Multi-device support (RAID and LVM) +# +# CONFIG_MD is not set + +# +# Networking options +# +CONFIG_PACKET=y +# CONFIG_PACKET_MMAP is not set +# CONFIG_NETLINK_DEV is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +# CONFIG_FILTER is not set +CONFIG_UNIX=y +CONFIG_INET=y +# CONFIG_IP_MULTICAST is not set +# CONFIG_IP_ADVANCED_ROUTER is not set +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +CONFIG_IP_PNP_BOOTP=y +# CONFIG_IP_PNP_RARP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE is not set +# CONFIG_ARPD is not set +# CONFIG_INET_ECN is not set +# CONFIG_SYN_COOKIES is not set + +# +# IP: Netfilter Configuration +# +CONFIG_IP_NF_CONNTRACK=m +# CONFIG_IP_NF_FTP is not set +# CONFIG_IP_NF_IRC is not set +# CONFIG_IP_NF_QUEUE is not set +CONFIG_IP_NF_IPTABLES=m +# CONFIG_IP_NF_MATCH_LIMIT is not set +# CONFIG_IP_NF_MATCH_MAC is not set +# CONFIG_IP_NF_MATCH_MARK is not set +# CONFIG_IP_NF_MATCH_MULTIPORT is not set +# CONFIG_IP_NF_MATCH_TOS is not set +# CONFIG_IP_NF_MATCH_AH_ESP is not set +# CONFIG_IP_NF_MATCH_LENGTH is not set +# CONFIG_IP_NF_MATCH_TTL is not set +# CONFIG_IP_NF_MATCH_TCPMSS is not set +# CONFIG_IP_NF_MATCH_STATE is not set +# CONFIG_IP_NF_MATCH_UNCLEAN is not set +# CONFIG_IP_NF_MATCH_OWNER is not set +# CONFIG_IP_NF_FILTER is not set +# CONFIG_IP_NF_NAT is not set +# CONFIG_IP_NF_MANGLE is not set +# CONFIG_IP_NF_TARGET_LOG is not set +# CONFIG_IP_NF_TARGET_ULOG is not set +# CONFIG_IP_NF_TARGET_TCPMSS is not set +# CONFIG_IP_NF_COMPAT_IPCHAINS is not set +# CONFIG_IP_NF_COMPAT_IPFWADM is not set +# CONFIG_IPV6 is not set +# CONFIG_KHTTPD is not set +# CONFIG_ATM is not set +# CONFIG_VLAN_8021Q is not set + +# +# +# +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_DECNET is not set +# CONFIG_BRIDGE is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_LLC is not set +# CONFIG_NET_DIVERT is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set +# CONFIG_NET_FASTROUTE is not set +# CONFIG_NET_HW_FLOWCONTROL is not set + +# +# QoS and/or fair queueing +# +# CONFIG_NET_SCHED is not set + +# +# Telephony Support +# +# CONFIG_PHONE is not set + +# +# ATA/IDE/MFM/RLL support +# +CONFIG_IDE=y + +# +# IDE, ATA and ATAPI Block devices +# +CONFIG_BLK_DEV_IDE=y + +# +# Please see Documentation/ide.txt for help/info on IDE drives +# +CONFIG_BLK_DEV_HD_IDE=y +CONFIG_BLK_DEV_HD=y +CONFIG_BLK_DEV_IDEDISK=y +# CONFIG_IDEDISK_MULTI_MODE is not set +# CONFIG_BLK_DEV_IDEDISK_VENDOR is not set +# CONFIG_BLK_DEV_COMMERIAL is not set +# CONFIG_BLK_DEV_IDECD is not set +# CONFIG_BLK_DEV_IDETAPE is not set +# CONFIG_BLK_DEV_IDEFLOPPY is not set + +# +# IDE chipset support/bugfixes +# +# CONFIG_BLK_DEV_CMD640 is not set +# CONFIG_IDE_CHIPSETS is not set +# CONFIG_IDEDMA_AUTO is not set +# CONFIG_DMA_NONPCI is not set +# CONFIG_BLK_DEV_IDE_MODES is not set +# CONFIG_BLK_DEV_ATARAID is not set + +# +# SCSI support +# +# CONFIG_SCSI is not set + +# +# Fusion MPT device support +# +# CONFIG_FUSION_BOOT is not set +# CONFIG_FUSION_ISENSE is not set +# CONFIG_FUSION_CTL is not set +# CONFIG_FUSION_LAN is not set + +# +# I2O device support +# +# CONFIG_I2O is not set + +# +# Network device support +# +CONFIG_NETDEVICES=y + +# +# ARCnet devices +# +# CONFIG_ARCNET is not set +# CONFIG_DUMMY is not set +# CONFIG_BONDING is not set +# CONFIG_EQUALIZER is not set +# CONFIG_TUN is not set +# CONFIG_ETHERTAP is not set + +# +# Ethernet (10 or 100Mbit) +# +CONFIG_NET_ETHERNET=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_LANCE is not set +# CONFIG_NET_VENDOR_SMC is not set +# CONFIG_NET_VENDOR_RACAL is not set +# CONFIG_AT1700 is not set +# CONFIG_DEPCA is not set +# CONFIG_HP100 is not set +CONFIG_NET_ISA=y +# CONFIG_E2100 is not set +# CONFIG_EWRK3 is not set +# CONFIG_EEXPRESS is not set +# CONFIG_EEXPRESS_PRO is not set +# CONFIG_HPLAN_PLUS is not set +# CONFIG_HPLAN is not set +# CONFIG_LP486E is not set +# CONFIG_ETH16I is not set +# CONFIG_NE2000 is not set +CONFIG_NET_PCI=y +# CONFIG_AC3200 is not set +# CONFIG_APRICOT is not set +CONFIG_CS89x0=y +# CONFIG_NET_POCKET is not set + +# +# Ethernet (1000 Mbit) +# +# CONFIG_ACENIC_OMIT_TIGON_I is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +# CONFIG_PPP is not set +# CONFIG_SLIP is not set + +# +# Wireless LAN (non-hamradio) +# +# CONFIG_NET_RADIO is not set + +# +# Token Ring devices +# +# CONFIG_TR is not set +# CONFIG_NET_FC is not set +# CONFIG_SHAPER is not set + +# +# Wan interfaces +# +# CONFIG_WAN is not set + +# +# Amateur Radio support +# +# CONFIG_HAMRADIO is not set + +# +# IrDA (infrared) support +# +# CONFIG_IRDA is not set + +# +# ISDN subsystem +# +# CONFIG_ISDN is not set + +# +# Old CD-ROM drivers (not SCSI, not IDE) +# +# CONFIG_CD_NO_IDESCSI is not set + +# +# Input core support +# +# CONFIG_INPUT is not set +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 + +# +# Character devices +# +CONFIG_VT=y +CONFIG_VT_CONSOLE=y +CONFIG_SERIAL=y +CONFIG_SERIAL_CONSOLE=y +# CONFIG_SERIAL_EXTENDED is not set +# CONFIG_SERIAL_NONSTANDARD is not set +CONFIG_UNIX98_PTYS=y +CONFIG_UNIX98_PTY_COUNT=256 + +# +# I2C support +# +# CONFIG_I2C is not set + +# +# Mice +# +# CONFIG_BUSMOUSE is not set +CONFIG_MOUSE=y +CONFIG_PSMOUSE=y +# CONFIG_82C710_MOUSE is not set +# CONFIG_PC110_PAD is not set + +# +# Joysticks +# +# CONFIG_INPUT_GAMEPORT is not set + +# +# Input core support is needed for gameports +# + +# +# Input core support is needed for joysticks +# +# CONFIG_QIC02_TAPE is not set + +# +# Watchdog Cards +# +# CONFIG_WATCHDOG is not set +# CONFIG_NVRAM is not set +# CONFIG_RTC is not set +# CONFIG_DTLK is not set +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set + +# +# Ftape, the floppy tape device driver +# +# CONFIG_FTAPE is not set +# CONFIG_AGP is not set +# CONFIG_DRM is not set +# CONFIG_MWAVE is not set + +# +# Multimedia devices +# +# CONFIG_VIDEO_DEV is not set + +# +# File systems +# +# CONFIG_QUOTA is not set +# CONFIG_AUTOFS_FS is not set +CONFIG_AUTOFS4_FS=y +# CONFIG_REISERFS_FS is not set +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EXT3_FS is not set +# CONFIG_JBD is not set +CONFIG_FAT_FS=m +CONFIG_MSDOS_FS=m +CONFIG_UMSDOS_FS=m +# CONFIG_VFAT_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_CRAMFS is not set +CONFIG_TMPFS=y +# CONFIG_RAMFS is not set +# CONFIG_ISO9660_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_VXFS_FS is not set +# CONFIG_NTFS_FS is not set +# CONFIG_HPFS_FS is not set +CONFIG_PROC_FS=y +CONFIG_DEVFS_FS=y +CONFIG_DEVFS_MOUNT=y +# CONFIG_DEVFS_DEBUG is not set +# CONFIG_DEVPTS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_EXT2_FS=y +# CONFIG_SYSV_FS is not set +# CONFIG_UDF_FS is not set +# CONFIG_UFS_FS is not set + +# +# Network File Systems +# +# CONFIG_CODA_FS is not set +# CONFIG_INTERMEZZO_FS is not set +CONFIG_NFS_FS=y +# CONFIG_NFS_V3 is not set +CONFIG_ROOT_NFS=y +CONFIG_NFSD=y +# CONFIG_NFSD_V3 is not set +CONFIG_SUNRPC=y +CONFIG_LOCKD=y +# CONFIG_SMB_FS is not set +# CONFIG_NCP_FS is not set +# CONFIG_ZISOFS_FS is not set +# CONFIG_ZLIB_FS_INFLATE is not set + +# +# Partition Types +# +# CONFIG_PARTITION_ADVANCED is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_SMB_NLS is not set +CONFIG_NLS=y + +# +# Native Language Support +# +CONFIG_NLS_DEFAULT="iso8859-1" +# CONFIG_NLS_CODEPAGE_437 is not set +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +# CONFIG_NLS_CODEPAGE_850 is not set +# CONFIG_NLS_CODEPAGE_852 is not set +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +# CONFIG_NLS_CODEPAGE_866 is not set +# CONFIG_NLS_CODEPAGE_869 is not set +# CONFIG_NLS_CODEPAGE_936 is not set +# CONFIG_NLS_CODEPAGE_950 is not set +# CONFIG_NLS_CODEPAGE_932 is not set +# CONFIG_NLS_CODEPAGE_949 is not set +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +# CONFIG_NLS_ISO8859_1 is not set +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +# CONFIG_NLS_UTF8 is not set + +# +# Console drivers +# +CONFIG_VGA_CONSOLE=y +# CONFIG_VIDEO_SELECT is not set +# CONFIG_MDA_CONSOLE is not set + +# +# Frame-buffer support +# +# CONFIG_FB is not set + +# +# Sound +# +# CONFIG_SOUND is not set + +# +# USB support +# + +# +# USB Controllers +# + +# +# USB Device Class drivers +# + +# +# SCSI support is needed for USB Storage +# + +# +# USB Human Interface Devices (HID) +# + +# +# Input core support is needed for USB HID +# + +# +# USB Imaging devices +# + +# +# USB Multimedia devices +# + +# +# Video4Linux support is needed for USB Multimedia device support +# + +# +# USB Network adaptors +# + +# +# USB port drivers +# + +# +# USB Serial Converter support +# + +# +# USB Miscellaneous drivers +# + +# +# Bluetooth support +# +# CONFIG_BLUEZ is not set + +# +# Kernel hacking +# +# CONFIG_DEBUG_KERNEL is not set Index: TSConfigFile.5500 =================================================================== RCS file: TSConfigFile.5500 diff -N TSConfigFile.5500 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ TSConfigFile.5500 16 Dec 2002 11:33:52 -0000 1.1.2.1 @@ -0,0 +1,808 @@ +# +# Automatically generated make config: don't edit +# +CONFIG_X86=y +CONFIG_ISA=y +# CONFIG_SBUS is not set +CONFIG_UID16=y + +# +# Code maturity level options +# +CONFIG_EXPERIMENTAL=y + +# +# Loadable module support +# +CONFIG_MODULES=y +CONFIG_MODVERSIONS=y +CONFIG_KMOD=y + +# +# Processor type and features +# +# CONFIG_M386 is not set +# CONFIG_M486 is not set +# CONFIG_TS_M386 is not set +CONFIG_TS_M486=y +# CONFIG_M586 is not set +# CONFIG_M586TSC is not set +# CONFIG_M586MMX is not set +# CONFIG_M686 is not set +# CONFIG_MPENTIUMIII is not set +# CONFIG_MPENTIUM4 is not set +# CONFIG_MK6 is not set +# CONFIG_MK7 is not set +# CONFIG_MELAN is not set +# CONFIG_MCRUSOE is not set +# CONFIG_MWINCHIPC6 is not set +# CONFIG_MWINCHIP2 is not set +# CONFIG_MWINCHIP3D is not set +# CONFIG_MCYRIXIII is not set +CONFIG_M486=y +TSYSTEMS=y +CONFIG_X86_WP_WORKS_OK=y +CONFIG_X86_INVLPG=y +CONFIG_X86_CMPXCHG=y +CONFIG_X86_XADD=y +CONFIG_X86_BSWAP=y +CONFIG_X86_POPAD_OK=y +# CONFIG_RWSEM_GENERIC_SPINLOCK is not set +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_X86_L1_CACHE_SHIFT=4 +CONFIG_X86_USE_STRING_486=y +CONFIG_X86_ALIGNMENT_16=y +CONFIG_X86_PPRO_FENCE=y +# CONFIG_TOSHIBA is not set +# CONFIG_I8K is not set +# CONFIG_MICROCODE is not set +# CONFIG_X86_MSR is not set +# CONFIG_X86_CPUID is not set +CONFIG_NOHIGHMEM=y +# CONFIG_HIGHMEM4G is not set +# CONFIG_HIGHMEM64G is not set +CONFIG_MATH_EMULATION=y +# CONFIG_MTRR is not set +# CONFIG_SMP is not set +# CONFIG_X86_UP_APIC is not set + +# +# General setup +# +CONFIG_NET=y +CONFIG_PCI=y +# CONFIG_PCI_GOBIOS is not set +# CONFIG_PCI_GODIRECT is not set +CONFIG_PCI_GOANY=y +CONFIG_PCI_BIOS=y +CONFIG_PCI_DIRECT=y +# CONFIG_PCI_NAMES is not set +# CONFIG_EISA is not set +# CONFIG_MCA is not set +CONFIG_HOTPLUG=y + +# +# PCMCIA/CardBus support +# +# CONFIG_PCMCIA is not set + +# +# PCI Hotplug Support +# +# CONFIG_HOTPLUG_PCI is not set +CONFIG_SYSVIPC=y +# CONFIG_BSD_PROCESS_ACCT is not set +CONFIG_SYSCTL=y +CONFIG_KCORE_ELF=y +# CONFIG_KCORE_AOUT is not set +CONFIG_BINFMT_AOUT=y +CONFIG_BINFMT_ELF=y +CONFIG_BINFMT_MISC=y +CONFIG_PM=y +# CONFIG_ACPI is not set +# CONFIG_APM is not set + +# +# Memory Technology Devices (MTD) +# +# CONFIG_MTD is not set + +# +# Parallel port support +# +# CONFIG_PARPORT is not set + +# +# Plug and Play configuration +# +# CONFIG_PNP is not set + +# +# Block devices +# +# CONFIG_BLK_DEV_FD is not set +# CONFIG_BLK_DEV_XD is not set +# CONFIG_BLK_CPQ_DA is not set +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_NBD=y +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_SIZE=4096 +CONFIG_BLK_DEV_INITRD=y +CONFIG_BLK_DEV_MSYS_DOC=m + +# +# Multi-device support (RAID and LVM) +# +# CONFIG_MD is not set + +# +# Networking options +# +CONFIG_PACKET=y +# CONFIG_PACKET_MMAP is not set +# CONFIG_NETLINK_DEV is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +# CONFIG_FILTER is not set +CONFIG_UNIX=y +CONFIG_INET=y +# CONFIG_IP_MULTICAST is not set +# CONFIG_IP_ADVANCED_ROUTER is not set +# CONFIG_IP_PNP is not set +# CONFIG_NET_IPIP is not set +# CONFIG_NET_IPGRE is not set +# CONFIG_ARPD is not set +# CONFIG_INET_ECN is not set +# CONFIG_SYN_COOKIES is not set + +# +# IP: Netfilter Configuration +# +CONFIG_IP_NF_CONNTRACK=m +# CONFIG_IP_NF_FTP is not set +# CONFIG_IP_NF_IRC is not set +# CONFIG_IP_NF_QUEUE is not set +CONFIG_IP_NF_IPTABLES=m +# CONFIG_IP_NF_MATCH_LIMIT is not set +# CONFIG_IP_NF_MATCH_MAC is not set +# CONFIG_IP_NF_MATCH_MARK is not set +# CONFIG_IP_NF_MATCH_MULTIPORT is not set +# CONFIG_IP_NF_MATCH_TOS is not set +# CONFIG_IP_NF_MATCH_AH_ESP is not set +# CONFIG_IP_NF_MATCH_LENGTH is not set +# CONFIG_IP_NF_MATCH_TTL is not set +# CONFIG_IP_NF_MATCH_TCPMSS is not set +# CONFIG_IP_NF_MATCH_STATE is not set +# CONFIG_IP_NF_MATCH_UNCLEAN is not set +# CONFIG_IP_NF_MATCH_OWNER is not set +# CONFIG_IP_NF_FILTER is not set +# CONFIG_IP_NF_NAT is not set +# CONFIG_IP_NF_MANGLE is not set +# CONFIG_IP_NF_TARGET_LOG is not set +# CONFIG_IP_NF_TARGET_ULOG is not set +# CONFIG_IP_NF_TARGET_TCPMSS is not set +# CONFIG_IP_NF_COMPAT_IPCHAINS is not set +# CONFIG_IP_NF_COMPAT_IPFWADM is not set +# CONFIG_IPV6 is not set +# CONFIG_KHTTPD is not set +# CONFIG_ATM is not set +# CONFIG_VLAN_8021Q is not set + +# +# +# +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_DECNET is not set +# CONFIG_BRIDGE is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_LLC is not set +# CONFIG_NET_DIVERT is not set +# CONFIG_ECONET is not set +# CONFIG_WAN_ROUTER is not set +# CONFIG_NET_FASTROUTE is not set +# CONFIG_NET_HW_FLOWCONTROL is not set + +# +# QoS and/or fair queueing +# +# CONFIG_NET_SCHED is not set + +# +# Telephony Support +# +# CONFIG_PHONE is not set + +# +# ATA/IDE/MFM/RLL support +# +CONFIG_IDE=y + +# +# IDE, ATA and ATAPI Block devices +# +CONFIG_BLK_DEV_IDE=y + +# +# Please see Documentation/ide.txt for help/info on IDE drives +# +CONFIG_BLK_DEV_HD_IDE=y +CONFIG_BLK_DEV_HD=y +CONFIG_BLK_DEV_IDEDISK=y +# CONFIG_IDEDISK_MULTI_MODE is not set +# CONFIG_BLK_DEV_IDEDISK_VENDOR is not set +# CONFIG_BLK_DEV_COMMERIAL is not set +# CONFIG_BLK_DEV_IDECD is not set +# CONFIG_BLK_DEV_IDETAPE is not set +# CONFIG_BLK_DEV_IDEFLOPPY is not set +CONFIG_BLK_DEV_IDESCSI=m + +# +# IDE chipset support/bugfixes +# +# CONFIG_BLK_DEV_CMD640 is not set +# CONFIG_BLK_DEV_RZ1000 is not set +# CONFIG_BLK_DEV_IDEPCI is not set +# CONFIG_IDE_CHIPSETS is not set +# CONFIG_IDEDMA_AUTO is not set +# CONFIG_DMA_NONPCI is not set +# CONFIG_BLK_DEV_IDE_MODES is not set +# CONFIG_BLK_DEV_ATARAID is not set + +# +# SCSI support +# +CONFIG_SCSI=m + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=m +CONFIG_SD_EXTRA_DEVS=10 +# CONFIG_CHR_DEV_ST is not set +# CONFIG_CHR_DEV_OSST is not set +# CONFIG_BLK_DEV_SR is not set +# CONFIG_CHR_DEV_SG is not set + +# +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs +# +# CONFIG_SCSI_DEBUG_QUEUES is not set +CONFIG_SCSI_MULTI_LUN=y +# CONFIG_SCSI_CONSTANTS is not set +# CONFIG_SCSI_LOGGING is not set + +# +# SCSI low-level drivers +# +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_7000FASST is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AHA152X is not set +# CONFIG_SCSI_AHA1542 is not set +# CONFIG_SCSI_AHA1740 is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC7XXX_OLD is not set +# CONFIG_SCSI_DPT_I2O is not set +# CONFIG_SCSI_ADVANSYS is not set +# CONFIG_SCSI_IN2000 is not set +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_MEGARAID is not set +# CONFIG_SCSI_BUSLOGIC is not set +# CONFIG_SCSI_CPQFCTS is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_DTC3280 is not set +# CONFIG_SCSI_EATA is not set +# CONFIG_SCSI_EATA_DMA is not set +# CONFIG_SCSI_EATA_PIO is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_GDTH is not set +# CONFIG_SCSI_GENERIC_NCR5380 is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_NCR53C406A is not set +# CONFIG_SCSI_NCR53C7xx is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_NCR53C8XX is not set +CONFIG_SCSI_SYM53C8XX=m +CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=4 +CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32 +CONFIG_SCSI_NCR53C8XX_SYNC=20 +# CONFIG_SCSI_NCR53C8XX_PROFILE is not set +# CONFIG_SCSI_NCR53C8XX_IOMAPPED is not set +# CONFIG_SCSI_NCR53C8XX_PQS_PDS is not set +# CONFIG_SCSI_NCR53C8XX_SYMBIOS_COMPAT is not set +# CONFIG_SCSI_PAS16 is not set +# CONFIG_SCSI_PCI2000 is not set +# CONFIG_SCSI_PCI2220I is not set +# CONFIG_SCSI_PSI240I is not set +# CONFIG_SCSI_QLOGIC_FAS is not set +# CONFIG_SCSI_QLOGIC_ISP is not set +# CONFIG_SCSI_QLOGIC_FC is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_SEAGATE is not set +# CONFIG_SCSI_SIM710 is not set +# CONFIG_SCSI_SYM53C416 is not set +# CONFIG_SCSI_DC390T is not set +# CONFIG_SCSI_T128 is not set +# CONFIG_SCSI_U14_34F is not set +# CONFIG_SCSI_ULTRASTOR is not set +# CONFIG_SCSI_DEBUG is not set + +# +# Fusion MPT device support +# +# CONFIG_FUSION is not set +# CONFIG_FUSION_BOOT is not set +# CONFIG_FUSION_ISENSE is not set +# CONFIG_FUSION_CTL is not set +# CONFIG_FUSION_LAN is not set + +# +# IEEE 1394 (FireWire) support (EXPERIMENTAL) +# +# CONFIG_IEEE1394 is not set + +# +# I2O device support +# +# CONFIG_I2O is not set + +# +# Network device support +# +CONFIG_NETDEVICES=y + +# +# ARCnet devices +# +# CONFIG_ARCNET is not set +# CONFIG_DUMMY is not set +# CONFIG_BONDING is not set +# CONFIG_EQUALIZER is not set +# CONFIG_TUN is not set +# CONFIG_ETHERTAP is not set + +# +# Ethernet (10 or 100Mbit) +# +CONFIG_NET_ETHERNET=y +# CONFIG_HAPPYMEAL is not set +# CONFIG_SUNGEM is not set +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_LANCE is not set +# CONFIG_NET_VENDOR_SMC is not set +# CONFIG_NET_VENDOR_RACAL is not set +# CONFIG_AT1700 is not set +# CONFIG_DEPCA is not set +# CONFIG_HP100 is not set +# CONFIG_NET_ISA is not set +CONFIG_NET_PCI=y +# CONFIG_PCNET32 is not set +# CONFIG_ADAPTEC_STARFIRE is not set +# CONFIG_AC3200 is not set +# CONFIG_APRICOT is not set +# CONFIG_CS89x0 is not set +# CONFIG_TULIP is not set +# CONFIG_DE4X5 is not set +# CONFIG_DGRS is not set +CONFIG_DM9102=y +# CONFIG_EEPRO100 is not set +# CONFIG_FEALNX is not set +# CONFIG_NATSEMI is not set +# CONFIG_NE2K_PCI is not set +# CONFIG_8139CP is not set +# CONFIG_8139TOO is not set +# CONFIG_SIS900 is not set +# CONFIG_EPIC100 is not set +# CONFIG_SUNDANCE is not set +# CONFIG_TLAN is not set +# CONFIG_VIA_RHINE is not set +# CONFIG_WINBOND_840 is not set +# CONFIG_NET_POCKET is not set + +# +# Ethernet (1000 Mbit) +# +# CONFIG_ACENIC is not set +# CONFIG_DL2K is not set +# CONFIG_NS83820 is not set +# CONFIG_HAMACHI is not set +# CONFIG_YELLOWFIN is not set +# CONFIG_SK98LIN is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_PPP=m +# CONFIG_PPP_MULTILINK is not set +# CONFIG_PPP_ASYNC is not set +# CONFIG_PPP_SYNC_TTY is not set +# CONFIG_PPP_DEFLATE is not set +# CONFIG_PPP_BSDCOMP is not set +# CONFIG_PPPOE is not set +# CONFIG_SLIP is not set + +# +# Wireless LAN (non-hamradio) +# +# CONFIG_NET_RADIO is not set + +# +# Token Ring devices +# +# CONFIG_TR is not set +# CONFIG_NET_FC is not set +# CONFIG_RCPCI is not set +# CONFIG_SHAPER is not set + +# +# Wan interfaces +# +# CONFIG_WAN is not set + +# +# Amateur Radio support +# +# CONFIG_HAMRADIO is not set + +# +# IrDA (infrared) support +# +# CONFIG_IRDA is not set + +# +# ISDN subsystem +# +# CONFIG_ISDN is not set + +# +# Old CD-ROM drivers (not SCSI, not IDE) +# +# CONFIG_CD_NO_IDESCSI is not set + +# +# Input core support +# +CONFIG_INPUT=m +CONFIG_INPUT_KEYBDEV=m +CONFIG_INPUT_MOUSEDEV=m +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +# CONFIG_INPUT_JOYDEV is not set +# CONFIG_INPUT_EVDEV is not set + +# +# Character devices +# +CONFIG_VT=y +CONFIG_VT_CONSOLE=y +CONFIG_SERIAL=y +CONFIG_SERIAL_CONSOLE=y +# CONFIG_SERIAL_EXTENDED is not set +# CONFIG_SERIAL_NONSTANDARD is not set +CONFIG_UNIX98_PTYS=y +CONFIG_UNIX98_PTY_COUNT=256 + +# +# I2C support +# +# CONFIG_I2C is not set + +# +# Mice +# +# CONFIG_BUSMOUSE is not set +CONFIG_MOUSE=y +CONFIG_PSMOUSE=y +# CONFIG_82C710_MOUSE is not set +# CONFIG_PC110_PAD is not set + +# +# Joysticks +# +# CONFIG_INPUT_GAMEPORT is not set +# CONFIG_INPUT_SERIO is not set + +# +# Joysticks +# +# CONFIG_INPUT_IFORCE_USB is not set +# CONFIG_QIC02_TAPE is not set + +# +# Watchdog Cards +# +# CONFIG_WATCHDOG is not set +# CONFIG_INTEL_RNG is not set +# CONFIG_NVRAM is not set +# CONFIG_RTC is not set +# CONFIG_DTLK is not set +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set +# CONFIG_SONYPI is not set + +# +# Ftape, the floppy tape device driver +# +# CONFIG_FTAPE is not set +# CONFIG_AGP is not set +# CONFIG_DRM is not set +# CONFIG_MWAVE is not set + +# +# Multimedia devices +# +CONFIG_VIDEO_DEV=m + +# +# Video For Linux +# +CONFIG_VIDEO_PROC_FS=y + +# +# Video Adapters +# +# CONFIG_VIDEO_PMS is not set +# CONFIG_VIDEO_CPIA is not set +# CONFIG_VIDEO_STRADIS is not set + +# +# Radio Adapters +# +# CONFIG_RADIO_CADET is not set +# CONFIG_RADIO_RTRACK is not set +# CONFIG_RADIO_RTRACK2 is not set +# CONFIG_RADIO_AZTECH is not set +# CONFIG_RADIO_GEMTEK is not set +# CONFIG_RADIO_GEMTEK_PCI is not set +# CONFIG_RADIO_MAXIRADIO is not set +# CONFIG_RADIO_MAESTRO is not set +# CONFIG_RADIO_SF16FMI is not set +# CONFIG_RADIO_TERRATEC is not set +# CONFIG_RADIO_TRUST is not set +# CONFIG_RADIO_TYPHOON is not set +# CONFIG_RADIO_ZOLTRIX is not set + +# +# File systems +# +# CONFIG_QUOTA is not set +# CONFIG_AUTOFS_FS is not set +CONFIG_AUTOFS4_FS=y +# CONFIG_REISERFS_FS is not set +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +# CONFIG_HFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EXT3_FS is not set +# CONFIG_JBD is not set +CONFIG_FAT_FS=m +CONFIG_MSDOS_FS=m +CONFIG_UMSDOS_FS=m +# CONFIG_VFAT_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_CRAMFS is not set +CONFIG_TMPFS=y +# CONFIG_RAMFS is not set +CONFIG_ISO9660_FS=m +# CONFIG_JOLIET is not set +# CONFIG_ZISOFS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_VXFS_FS is not set +# CONFIG_NTFS_FS is not set +# CONFIG_HPFS_FS is not set +CONFIG_PROC_FS=y +CONFIG_DEVFS_FS=y +CONFIG_DEVFS_MOUNT=y +# CONFIG_DEVFS_DEBUG is not set +CONFIG_DEVPTS_FS=y +# CONFIG_QNX4FS_FS is not set +# CONFIG_ROMFS_FS is not set +CONFIG_EXT2_FS=y +# CONFIG_SYSV_FS is not set +# CONFIG_UDF_FS is not set +# CONFIG_UFS_FS is not set + +# +# Network File Systems +# +# CONFIG_CODA_FS is not set +# CONFIG_INTERMEZZO_FS is not set +CONFIG_NFS_FS=y +# CONFIG_NFS_V3 is not set +CONFIG_NFSD=y +# CONFIG_NFSD_V3 is not set +CONFIG_SUNRPC=y +CONFIG_LOCKD=y +# CONFIG_SMB_FS is not set +# CONFIG_NCP_FS is not set +# CONFIG_ZISOFS_FS is not set +# CONFIG_ZLIB_FS_INFLATE is not set + +# +# Partition Types +# +# CONFIG_PARTITION_ADVANCED is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_SMB_NLS is not set +CONFIG_NLS=y + +# +# Native Language Support +# +CONFIG_NLS_DEFAULT="iso8859-1" +# CONFIG_NLS_CODEPAGE_437 is not set +# CONFIG_NLS_CODEPAGE_737 is not set +# CONFIG_NLS_CODEPAGE_775 is not set +# CONFIG_NLS_CODEPAGE_850 is not set +# CONFIG_NLS_CODEPAGE_852 is not set +# CONFIG_NLS_CODEPAGE_855 is not set +# CONFIG_NLS_CODEPAGE_857 is not set +# CONFIG_NLS_CODEPAGE_860 is not set +# CONFIG_NLS_CODEPAGE_861 is not set +# CONFIG_NLS_CODEPAGE_862 is not set +# CONFIG_NLS_CODEPAGE_863 is not set +# CONFIG_NLS_CODEPAGE_864 is not set +# CONFIG_NLS_CODEPAGE_865 is not set +# CONFIG_NLS_CODEPAGE_866 is not set +# CONFIG_NLS_CODEPAGE_869 is not set +# CONFIG_NLS_CODEPAGE_936 is not set +# CONFIG_NLS_CODEPAGE_950 is not set +# CONFIG_NLS_CODEPAGE_932 is not set +# CONFIG_NLS_CODEPAGE_949 is not set +# CONFIG_NLS_CODEPAGE_874 is not set +# CONFIG_NLS_ISO8859_8 is not set +# CONFIG_NLS_CODEPAGE_1250 is not set +# CONFIG_NLS_CODEPAGE_1251 is not set +# CONFIG_NLS_ISO8859_1 is not set +# CONFIG_NLS_ISO8859_2 is not set +# CONFIG_NLS_ISO8859_3 is not set +# CONFIG_NLS_ISO8859_4 is not set +# CONFIG_NLS_ISO8859_5 is not set +# CONFIG_NLS_ISO8859_6 is not set +# CONFIG_NLS_ISO8859_7 is not set +# CONFIG_NLS_ISO8859_9 is not set +# CONFIG_NLS_ISO8859_13 is not set +# CONFIG_NLS_ISO8859_14 is not set +# CONFIG_NLS_ISO8859_15 is not set +# CONFIG_NLS_KOI8_R is not set +# CONFIG_NLS_KOI8_U is not set +# CONFIG_NLS_UTF8 is not set + +# +# Console drivers +# +CONFIG_VGA_CONSOLE=y +# CONFIG_VIDEO_SELECT is not set +# CONFIG_MDA_CONSOLE is not set + +# +# Frame-buffer support +# +# CONFIG_FB is not set + +# +# Sound +# +# CONFIG_SOUND is not set + +# +# USB support +# +CONFIG_USB=m +# CONFIG_USB_DEBUG is not set + +# +# Miscellaneous USB options +# +CONFIG_USB_DEVICEFS=y +# CONFIG_USB_BANDWIDTH is not set +# CONFIG_USB_LONG_TIMEOUT is not set + +# +# USB Controllers +# +# CONFIG_USB_UHCI is not set +# CONFIG_USB_UHCI_ALT is not set +CONFIG_USB_OHCI=m + +# +# USB Device Class drivers +# +CONFIG_USB_BLUETOOTH=m +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_ISD200 is not set +# CONFIG_USB_STORAGE_DPCM is not set +# CONFIG_USB_STORAGE_HP8200e is not set +CONFIG_USB_STORAGE_SDDR09=y +# CONFIG_USB_STORAGE_JUMPSHOT is not set +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m + +# +# USB Human Interface Devices (HID) +# +CONFIG_USB_HID=m +# CONFIG_USB_HIDDEV is not set +CONFIG_USB_KBD=m +CONFIG_USB_MOUSE=m +# CONFIG_USB_WACOM is not set + +# +# USB Imaging devices +# +CONFIG_USB_DC2XX=m +# CONFIG_USB_MDC800 is not set +CONFIG_USB_SCANNER=m +CONFIG_USB_MICROTEK=m +CONFIG_USB_HPUSBSCSI=m + +# +# USB Multimedia devices +# +CONFIG_USB_IBMCAM=m +CONFIG_USB_OV511=m +CONFIG_USB_PWC=m +CONFIG_USB_SE401=m +CONFIG_USB_STV680=m +CONFIG_USB_VICAM=m +CONFIG_USB_DSBR=m +CONFIG_USB_DABUSB=m + +# +# USB Network adaptors +# +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_CATC is not set +# CONFIG_USB_CDCETHER is not set +# CONFIG_USB_USBNET is not set + +# +# USB port drivers +# + +# +# USB Serial Converter support +# +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_GENERIC=y +# CONFIG_USB_SERIAL_BELKIN is not set +# CONFIG_USB_SERIAL_WHITEHEAT is not set +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +# CONFIG_USB_SERIAL_EMPEG is not set +# CONFIG_USB_SERIAL_FTDI_SIO is not set +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_IPAQ=m +# CONFIG_USB_SERIAL_IR is not set +# CONFIG_USB_SERIAL_EDGEPORT is not set +# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set +# CONFIG_USB_SERIAL_KEYSPAN is not set +# CONFIG_USB_SERIAL_MCT_U232 is not set +# CONFIG_USB_SERIAL_KLSI is not set +# CONFIG_USB_SERIAL_PL2303 is not set +# CONFIG_USB_SERIAL_CYBERJACK is not set +# CONFIG_USB_SERIAL_XIRCOM is not set +# CONFIG_USB_SERIAL_OMNINET is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_RIO500 is not set + +# +# Bluetooth support +# +# CONFIG_BLUEZ is not set + +# +# Kernel hacking +# +# CONFIG_DEBUG_KERNEL is not set Index: Documentation/Configure.help =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/Documentation/Configure.help,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- Documentation/Configure.help 16 Dec 2002 10:16:54 -0000 1.1.1.1 +++ Documentation/Configure.help 16 Dec 2002 10:40:31 -0000 1.1.1.1.2.1 @@ -3867,6 +3867,8 @@ - "Winchip-2" for IDT Winchip 2. - "Winchip-2A" for IDT Winchips with 3dNow! capabilities. - "CyrixIII" for VIA Cyrix III or VIA C3. + - "TS-386Ex" for Technologic Systems Intel 386EX based SBCs. + - "TS-ElanSC520" for Technologic Systems AMD ELANSC520 based SBCs. If you don't know what to do, choose "386". Index: arch/i386/config.in =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/arch/i386/config.in,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- arch/i386/config.in 16 Dec 2002 10:16:04 -0000 1.1.1.1 +++ arch/i386/config.in 16 Dec 2002 10:40:31 -0000 1.1.1.1.2.1 @@ -29,6 +29,8 @@ choice 'Processor family' \ "386 CONFIG_M386 \ 486 CONFIG_M486 \ + TS-386EX CONFIG_TS_M386 \ + TS-ELAN-AMDSC520 CONFIG_TS_M486 \ 586/K5/5x86/6x86/6x86MX CONFIG_M586 \ Pentium-Classic CONFIG_M586TSC \ Pentium-MMX CONFIG_M586MMX \ @@ -46,6 +48,15 @@ # # Define implied options from the CPU selection here # +if [ "$CONFIG_TS_M386" = "y" ]; then + define_bool CONFIG_M386 y + define_bool TSYSTEMS y +fi + +if [ "$CONFIG_TS_M486" = "y" ]; then + define_bool CONFIG_M486 y + define_bool TSYSTEMS y +fi if [ "$CONFIG_M386" = "y" ]; then define_bool CONFIG_X86_CMPXCHG n Index: arch/i386/kernel/process.c =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/arch/i386/kernel/process.c,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- arch/i386/kernel/process.c 16 Dec 2002 10:16:04 -0000 1.1.1.1 +++ arch/i386/kernel/process.c 16 Dec 2002 11:21:10 -0000 1.1.1.1.2.1 @@ -280,6 +280,16 @@ { unsigned long flags; +#ifdef CONFIG_TS_M386 +// 20010219 mtj this enables the watchdog on the intel 386EX, the watchdog +// output is tied to the PLD and causes the system reset line to assert. + outw( 0x0000, 0xF4C0 ); + outw( 0x0020, 0xF4C2 ); + outw( 0xF01E, 0xF4C8 ); + outw( 0x0FE1, 0xF4C8 ); +#endif + + cli(); /* Write zero to CMOS register number 0x0f, which the BIOS POST Index: drivers/char/Config.in =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/drivers/char/Config.in,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- drivers/char/Config.in 16 Dec 2002 10:14:29 -0000 1.1.1.1 +++ drivers/char/Config.in 16 Dec 2002 11:27:52 -0000 1.1.1.1.2.1 @@ -169,6 +169,12 @@ tristate ' Intel i810 TCO timer / Watchdog' CONFIG_I810_TCO tristate ' Mixcom Watchdog' CONFIG_MIXCOMWD tristate ' SBC-60XX Watchdog Timer' CONFIG_60XX_WDT +# if [ "$CONFIG_TS_386" = "y" ]; then +# tristate ' Technologic Systems 386EX SBC Watchdog Timer' CONFIG_TS386_WDT +# fi + if [ "$CONFIG_TS_M486" = "y" ]; then + tristate ' Technologic Systems 5x00 SBC Watchdog Timer' CONFIG_TS486_WDT + fi tristate ' W83877F (EMACS) Watchdog Timer' CONFIG_W83877F_WDT tristate ' ZF MachZ Watchdog' CONFIG_MACHZ_WDT fi @@ -240,4 +246,7 @@ tristate 'ACP Modem (Mwave) support' CONFIG_MWAVE fi +if [ "$TSYSTEMS" = "y" ]; then + tristate ' Analog to Digital driver for Technologic Systems SBC' CONFIG_TSA2D +fi endmenu Index: drivers/char/Makefile =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/drivers/char/Makefile,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- drivers/char/Makefile 16 Dec 2002 10:14:27 -0000 1.1.1.1 +++ drivers/char/Makefile 16 Dec 2002 11:27:52 -0000 1.1.1.1.2.1 @@ -34,6 +34,10 @@ CONSOLE =console.o SERIAL =serial.o +ifdef TSYSTEMS +obj-y += auto485.o +endif + ifeq ($(ARCH),s390) KEYMAP = KEYBD = @@ -215,6 +219,8 @@ obj-$(CONFIG_NWBUTTON) += nwbutton.o obj-$(CONFIG_NWFLASH) += nwflash.o +obj-$(CONFIG_TSA2D) += a2d_driver.o + # Only one watchdog can succeed. We probe the hardware watchdog # drivers first, then the softdog driver. This means if your hardware # watchdog dies or is 'borrowed' for some reason the software watchdog @@ -226,6 +232,8 @@ obj-$(CONFIG_IB700_WDT) += ib700wdt.o obj-$(CONFIG_MIXCOMWD) += mixcomwd.o obj-$(CONFIG_60XX_WDT) += sbc60xxwdt.o +obj-$(CONFIG_TS386_WDT) += ts_386wdt.o +obj-$(CONFIG_TS486_WDT) += ts_486wdt.o obj-$(CONFIG_WDT) += wdt.o obj-$(CONFIG_WDTPCI) += wdt_pci.o obj-$(CONFIG_21285_WATCHDOG) += wdt285.o Index: drivers/char/a2d_driver.c =================================================================== RCS file: drivers/char/a2d_driver.c diff -N drivers/char/a2d_driver.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ drivers/char/a2d_driver.c 26 Dec 2002 12:05:14 -0000 1.1.2.2 @@ -0,0 +1,277 @@ + +#ifdef MODVERSIONS +#include +#endif + +#include +#include +#include +#include + +#include +#include +#include + +#include "a2d_driver.h" + +/* Todo: + * Make ugly section of code into beautiful + * support asynchronous operations + */ + +spinlock_t spinlock; + +struct a2d_info_s { + unsigned char channelno; + unsigned char polar_mode ; /* false: unipolar + true : bipolar + */ + unsigned char range; /* true: Range1 (5v range) + false: Range2 (10v range) + */ + signed int data; + char error; + struct semaphore sem; +}; + +static devfs_handle_t dev_parent; +static struct a2d_info_s a2d_info[CHANNELS_MAX]; + +static int fop_open (struct inode * inode, struct file * filep){ + int channelno = MINOR(inode->i_rdev) - 1; + + MOD_INC_USE_COUNT; + + if (channelno >= CHANNELS_MAX) + return -ENODEV; + return 0; +} + +static int fop_close (struct inode *inode, struct file *filep) { + MOD_DEC_USE_COUNT; + return 0; +} + +int fop_ioctl ( struct inode *inode, struct file *filep, + unsigned int cmd, unsigned long arg) +{ + int channelno = MINOR(inode->i_rdev) - 1; + int user_a2dinfo; + + if (channelno >= CHANNELS_MAX) + return -ENODEV; + + switch (cmd) + { + case TSA2D_CONFIG: + a2d_info[channelno].polar_mode = arg & A2D_BIPOLAR; + //if not set, then unipolar + a2d_info[channelno].range = arg & A2D_RANGE2; + //if not set, then range1 + break; + case TSA2D_SHOWCONFIG: + user_a2dinfo = 0; + user_a2dinfo |= a2d_info[channelno].polar_mode + | a2d_info[channelno].range ; + return user_a2dinfo; + break; + default: + return -EINVAL; + break; + }; + + return 0; +} + +static loff_t fop_nollseek (struct file *filep, loff_t offset, int whence) +{ + return -ESPIPE; +} + +static ssize_t fop_read (struct file *filep, char *buf, + size_t count, loff_t *ppos) +{ + int channelno; + int ret; + int len = sizeof(a2d_info[channelno].data); + unsigned long res; + + ret = 0; + channelno = MINOR(filep->f_dentry->d_inode->i_rdev) - 1; + if (channelno >= CHANNELS_MAX) + return -ENODEV; + + if (*ppos < 0) + return -EINVAL; + if (count <= 0) + return 0; + + if ( down_interruptible ( &a2d_info[channelno].sem) ) + return -ERESTARTSYS ; + + if ( len > *ppos) { + len -= *ppos ; + if (len > count) + len = count; + ret = len; + res = copy_to_user(buf, &a2d_info[channelno].data, len); + if ( res != 0) + ret = -EFAULT; + else + *ppos +=len; + } + + up (&a2d_info[channelno].sem); + return ret; +} + +static signed int a2d_convert (unsigned char command) { + int status; + signed int result; + int lsb, msb; + char i = 0; + + outb(command, A2D_PORT); + /* Damn this is ugly */ + status = inb(A2D_BUSY_PORT); + while ( (status & A2D_BUSY_BIT) != 0 && i < 50) { + status = inb(A2D_BUSY_PORT); + i++ ; + } + if ( i >= 50) { + //timeout, conversion never finished + printk("a2d_driver.o: TIMEOUT READING A2D DEVICE\n"); + printk("status was 0x%x\n", status); + return -EIO; + } + lsb = inb(A2D_PORT); + msb = inb(A2D_PORT + 1); + result = (msb << 8) | lsb; + + return result; + +} + + +static ssize_t fop_write (struct file *filep, const char * buff, size_t count, loff_t *ppos) +{ + int channelno; + char command = 0; + + channelno = MINOR(filep->f_dentry->d_inode->i_rdev) - 1; + + if (channelno >= CHANNELS_MAX) + return -ENODEV; + + /* only one write should be serviced at a time + * as they invoke a conversion request and + * change value of a2d_info[i].data + */ + if ( down_interruptible ( &a2d_info[channelno].sem) ) + return -ERESTARTSYS ; + + spin_lock (&spinlock); + command = channelno | a2d_info[channelno].polar_mode + | a2d_info[channelno].range; + a2d_info[channelno].data = a2d_convert(command); + spin_unlock (&spinlock); + + *ppos = 0; + up ( &a2d_info[channelno].sem); + + /* We only care that a write took place. + * We don't care what was written, so + * just signal that all data was recieved + */ + + return count ; +} + +struct file_operations a2d_fops = { + owner: THIS_MODULE, //2.4.x compliant only + llseek: fop_nollseek, + read: fop_read , + write: fop_write , + open: fop_open , + release:fop_close , + ioctl: fop_ioctl, +}; + +int a2d_register () { + int i; + char name[4]; + + dev_parent = devfs_mk_dir(NULL, "AtoD", NULL); + + for (i =0; i < CHANNELS_MAX; i++) { + sprintf (name, "%i", i); + devfs_register ( dev_parent, name, + DEVFS_FL_DEFAULT | DEVFS_FL_AUTO_DEVNUM , + 0, 0, S_IFCHR | S_IRUGO | S_IWUGO, &a2d_fops, 0); + } + + return 0; +} + +void a2d_remove () { + devfs_handle_t de; + int i; + char name[4]; + + if (MOD_IN_USE) { + printk( KERN_WARNING "module in use, removal refused\n"); + return ; + } + + for (i = 0; i< CHANNELS_MAX; i++) { + sprintf (name, "%i", i); + de = devfs_find_handle (dev_parent, name, + 0,0,DEVFS_SPECIAL_CHR,0); + devfs_unregister (de); /* if null, this function + should do nothing */ + } + + devfs_unregister(dev_parent); +} + +int a2d_init () { + int result, i; + struct sbc_info *sbc; + + /*check that A2D is installed in PLD*/ + sbc = get_sbcinfo (); + if ( !sbc->AtoD) { + printk ( KERN_WARNING "a2d.o: AtoD option not installed\n"); + remove_sbcinfo (sbc); + return -1; + } else + remove_sbcinfo (sbc); + + for (i = 0; i < CHANNELS_MAX; i++) { + a2d_info[i].channelno = i; + a2d_info[i].polar_mode = 0; + a2d_info[i].range = 0; + a2d_info[i].data = 0; + sema_init(&a2d_info[i].sem, 1); + } + + result = a2d_register (); + + if ( result < 0 ) { + return result; + } + + spin_lock_init (&spinlock); + + printk (KERN_NOTICE "a2d.o: Technologic Systems %s\n", A2D_VER); + printk ( KERN_NOTICE "a2d.o: Module Loaded\n"); + return 0; +} + +module_init (a2d_init); +module_exit (a2d_remove); + +MODULE_AUTHOR("Liberty Young; Technologic Systems"); +MODULE_LICENSE("Dual MPL/GPL"); +MODULE_DESCRIPTION("Driver for TS SBCs with a Maxim 197 AtoD converter"); +MODULE_SUPPORTED_DEVICE("Technologic Systems SBC with AtoD"); Index: drivers/char/a2d_driver.h =================================================================== RCS file: drivers/char/a2d_driver.h diff -N drivers/char/a2d_driver.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ drivers/char/a2d_driver.h 16 Dec 2002 11:10:59 -0000 1.1.2.1 @@ -0,0 +1,43 @@ +/* a2d_driver.h + * Technologic Systems + * Liberty Young Liberty/at/embeddedx86/dot/com + * 12.5.2002 + * + * This driver is for any 3x00, 5x00 series Single Board Computers + * with the Analog to Digital option installed in the PLD and using + * the MAXIM 197 AtoD chip. + * + * No warranty is implied, or given, with this device driver. + */ +#define A2D_PORT 0x196 + +#ifdef CONFIG_TS_M386 +# define A2D_BUSY_PORT 0xF860 +# define A2D_BUSY_BIT 0x20 +#elif CONFIG_TS_M486 +# define A2D_BUSY_PORT 0x195 +# define A2D_BUSY_BIT 0x01 +#endif + +#define CHANNELS_MAX 8 /* 0 TO 7 channels on device */ +#define A2D_VER "12.8.2002 Ver 1.02" + +#define A2D_MAJOR 242 +/* Control bits of a2d command + * bits 0-2 selected channel (0 - 7) + * bits 3 uni/bipolar ( 0 = unipolar (ie 0 to +5V) + * ( 1 = bipolar (ie -5 to +5V) + * bit 4 selected range (0 = 5v range , 1 = 10V range) + * bit 5-7 padded zero (unused) + */ + +#define A2D_BIPOLAR 0x08 +#define A2D_UNIPOLAR 0x00 +#define A2D_RANGE1 0x00 //0 TO 5V range +#define A2D_RANGE2 0x10 //0 TO 10V range + +#define A2D_MAGICNUM 0xD1 +#define TSA2D_CONFIG _IOW(A2D_MAGICNUM, 1, int) +#define TSA2D_SHOWCONFIG _IOR(A2D_MAGICNUM, 2, int) + + Index: drivers/char/auto485.c =================================================================== RCS file: drivers/char/auto485.c diff -N drivers/char/auto485.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ drivers/char/auto485.c 26 Dec 2002 12:05:15 -0000 1.1.2.2 @@ -0,0 +1,197 @@ +#include +#include +#include +#include +#include + +/* + * Liberty Young Technologic Systems + * 11/02 + * auto485.c (de)Set RTS mode of the Single Board Computer + * (de)Set auto485 mode of the Single Board Computer + */ + +extern int tty_get_baud_rate(struct tty_struct *tty); + +static void disable_rtsmode ( void ) { + unsigned char portval; + portval = inb(0x75); + portval &= 0xBF; + outb(portval, 0x75); +} + +static void enable_rtsmode ( void) { + unsigned char portval; + portval = inb(0x75); + portval |= 0x40; + outb(portval, 0x75); +} + +static void disable_auto485( void ) { + unsigned char portval; + + portval = inb(0x75); + portval &= 0x7F; + outb(portval, 0x75); +} + +//note: we could use roundf here with C99 compliant compilers +//but instead, we've opted not to deal with the extra code size +static int ugly_roundf (float x) { + float temp; + temp =x ; + temp = temp + 0.5; + return (int)temp; +} + +static int enable_auto485 ( unsigned int board_id, unsigned int datalength, int baud, int port) { + float timervalue; + unsigned char portval; + struct tv_sigbits { + u8 lsb; + u8 msb; + }; + union uTV { + struct tv_sigbits sigbit; + u16 TV; + } loadvalue; + + //now we have to check for a Baud rate of no less than 9600 and no more than 115200 + if ( (baud < 9600) || (baud > 115200) ) { + printk("serial.c: BaudRates less than 9600\n"); + printk("or greater than 115200 are not allowed\n"); + return -1; + } + if (board_id == 5300) { + if (port != 0x3F8) { + printk("auto485.c: this board only supports RS485 on COM1\n"); + return -1; + } + timervalue = (115200.0 / baud) * 2.0; + + loadvalue.TV = ugly_roundf(timervalue); + printk("loadvalue = %d\n", loadvalue.TV); + printk("loadvalue LSB is 0x%02x\n", loadvalue.sigbit.lsb); + printk("loadvalue MSB is 0x%02x\n", loadvalue.sigbit.msb); + + portval = inb(0x61); + portval |= 0x03; + outb(portval, 0x61); + printk("write to I/O 0x61 value 0x%02x\n", portval); + + outb(0xB6, 0x43); /* Timer2 into 'square mode' */ + outb(loadvalue.sigbit.lsb, 0x42); + outb(loadvalue.sigbit.msb, 0x42); + + if (datalength == 9){ + printk("writing 0xC0 to I/O 75h\n"); + outb(0xC0, 0x75); + } + if (datalength == 8){ + printk("writing 0x80 to I/O 75h\n"); + outb(0x80, 0x75); + } + } + + if (board_id == 5400){ + if (port != 0x3F8) { + printk("auto485.c: this board only supports RS485 on COM1\n"); + return -1; + } + timervalue = ((((115200.0 / baud) * 3200.0) / 31) - 3); + loadvalue.TV = ugly_roundf(timervalue); + + printk("loadvalue = %d\n", loadvalue.TV); + printk("loadvalue LSB is 0x%02x\n", loadvalue.sigbit.lsb); + printk("loadvalue MSB is 0x%02x\n", loadvalue.sigbit.msb); + + portval = inb(0x61); + portval |= 0x02; + portval &= 0xFE; + outb(portval, 0x61); + + + outb(0xB2, 0x43); /* Timer2 into 'one-shot' mode */ + outb(loadvalue.sigbit.lsb, 0x42); + outb(loadvalue.sigbit.msb, 0x42); + + if (datalength == 9) + outb(0xC0, 0x75); + if (datalength == 8) + outb(0x80, 0x75); + + } + if (board_id == 5500){ + if (port != 0x3E8) { + printk("auto485.c: this board only supports RS485 on COM3\n"); + return -1; + } + if (datalength == 9) + outb(0xC0, 0x75); + if (datalength == 8) + outb(0x80, 0x75); + } + + return 0; +} + +int sbc_serial_modes ( struct async_struct *info, unsigned int cmd, + unsigned int *value) +{ + struct sbc_info *sbc; + int error; + unsigned int arg, datalength ; + int baud, cflag; + + error = 0; + sbc = get_sbcinfo(); + arg = *value; + //is this operation even permissable? + if (!sbc->auto485){ + remove_sbcinfo (sbc); + printk("serial.c: Sorry, this board does not support auto485\n"); + printk("check /proc/SBC/info for features supported\n"); + return -1; //this should be an actual errno + } + switch (cmd) { + case TIOC_SBCC485: + if (arg & AUTO485){ + printk("disableing auto485\n"); + disable_auto485(); + } + if (arg & RTSMODE){ + printk("disableing rts mode\n"); + disable_rtsmode () ; + } + break; + case TIOC_SBCS485: + if ( arg & AUTO485) { + cflag = info->tty->termios->c_cflag; + baud = tty_get_baud_rate (info->tty); + printk("SETTING auto485\n"); + + if (!(cflag & CS8)){ + printk("auto485.c: Currently only handles CS8\n"); + return -1; + } + datalength = 8; + if ( cflag & PARENB) + datalength = datalength + 1; + + printk("cflag & PARENB:%d\n", cflag & PARENB); + error = enable_auto485 ( sbc->board_id, + datalength, baud, info->port); + } + if (arg & RTSMODE) { + printk("setting rts mode\n"); + enable_rtsmode(); + } + break; + } + + remove_sbcinfo (sbc); + return error; +} + + + Index: drivers/char/pc_keyb.c =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/drivers/char/pc_keyb.c,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- drivers/char/pc_keyb.c 16 Dec 2002 10:14:29 -0000 1.1.1.1 +++ drivers/char/pc_keyb.c 16 Dec 2002 11:19:36 -0000 1.1.1.1.2.1 @@ -484,7 +484,7 @@ static unsigned char handle_kbd_event(void) { unsigned char status = kbd_read_status(); - unsigned int work = 10000; + unsigned int work = 100; while ((--work > 0) && (status & KBD_STAT_OBF)) { unsigned char scancode; @@ -506,9 +506,11 @@ status = kbd_read_status(); } - +#ifndef TSYSTEMS if (!work) printk(KERN_ERR "pc_keyb: controller jammed (0x%02X).\n", status); +#endif + return status; } Index: drivers/char/serial.c =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/drivers/char/serial.c,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- drivers/char/serial.c 16 Dec 2002 10:14:27 -0000 1.1.1.1 +++ drivers/char/serial.c 16 Dec 2002 11:15:52 -0000 1.1.1.1.2.1 @@ -57,9 +57,13 @@ * 10/00: add in optional software flow control for serial console. * Kanoj Sarcar (Modified by Theodore Ts'o) * + * 11/02: (unofficial) added in option to control Technologic Systems + * Single Board Computers' auto485 mode and RTS mode on/off + * Liberty Young + * */ -static char *serial_version = "5.05c"; +static char *serial_version = "5.05c-TS"; static char *serial_revdate = "2001-07-08"; /* @@ -261,6 +265,11 @@ /* number of characters left in xmit buffer before we ask for more */ #define WAKEUP_CHARS 256 +#ifdef TSYSTEMS +extern int sbc_serial_modes (struct async_struct *info, unsigned int cmd, unsigned *value); +#endif + + /* * IRQ_timeout - How long the timeout should be for each IRQ * should be after the IRQ has been active. @@ -2687,7 +2696,9 @@ /* "setserial -W" is called in Debian boot */ printk ("TIOCSER?WILD ioctl obsolete, ignored.\n"); return 0; - + case TIOC_SBCC485: + case TIOC_SBCS485: + return sbc_serial_modes (info,cmd,(unsigned int *)arg); default: return -ENOIOCTLCMD; } Index: drivers/char/ts_486wdt.c =================================================================== RCS file: drivers/char/ts_486wdt.c diff -N drivers/char/ts_486wdt.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ drivers/char/ts_486wdt.c 16 Dec 2002 11:30:37 -0000 1.1.2.1 @@ -0,0 +1,176 @@ +/* + * AMD ELAN SC520 Watch Dog Timer Driver + * (c) Technologic Systems (info@embeddedx86.com) + * author: Liberty Young (liberty@embeddedx86.com) + * + * Technologic Systems does not admit any liability nor any warranty for + * this software or any of its use(s). This software is provided AS-IS. + * + * + * Version: 0.1.0 December 2001 + * L.Y. Initial Version + * + * This code is processor specific. It only works for the AMD Elan SC520 + * on-chip Watchdog Timer + * and was developed for use in the Technologic Systems' Elan based Single + * Board Computers + * + * Portions of this code is based off the W83877F Computer Watchdog Timer + * driver by Scott Jennings + */ + +#ifdef MODVERSIONS +#include +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include + +#include "ts_486wdt.h" + +#define LOG_LEVEL KERN_INFO + +static unsigned long wdtmrctl; + +static int sc520_wdt_ping (void ) +{ + writew (WDT_RESET_KEYSEQ1, (unsigned long) wdtmrctl) ; + writew (WDT_RESET_KEYSEQ2, (unsigned long) wdtmrctl) ; + + dprintk("WDT was written to\n"); + + return 1; +} + + + +static void sc520_wdt_startup (unsigned long enable) +{ + + union sc520_wdtmrctl_reg wdtregister; + wdtregister.wdtmrctl.wdt_ctl = 0XD0; + + if (enable >= 1) + wdtregister.wdtmrctl.exp_timeout = (unsigned int) enable; + else + wdtregister.wdtmrctl.exp_timeout = 0x10; + + writew ( WDT_EN_KEYSEQ1, (unsigned long) wdtmrctl); + writew ( WDT_EN_KEYSEQ2, (unsigned long) wdtmrctl); + printk (LOG_LEVEL "\nAMD Elan SC520 WDT enable sequence\n"); + + dprintk("\value of wdtmrctl_register: %x\n", wdtregister.wdtmrctl_reg); + + printk(LOG_LEVEL "\nAMD Elan SC520 WDT started with timeout of %xh \n", wdtregister.wdtmrctl.exp_timeout); + writew (wdtregister.wdtmrctl_reg, (unsigned long) wdtmrctl); +} + + +/* + * /dev/watchdog handling + */ + +static loff_t fop_nollseek (struct file * filep, loff_t offset, int whence) +{ + return -ESPIPE; +} + +static ssize_t fop_read (struct file * filep, char * buf, size_t count, loff_t * ppos) +{ + return -EINVAL; +} + +static ssize_t fop_write (struct file * filep, const char * buff, size_t count, loff_t *ppos) +{ + /*no seeking allowed!*/ + if (ppos !=&filep->f_pos) + return -ESPIPE; + + if (sc520_wdt_ping ()) + return count; + else + return EIO; +} + + +static int fop_open (struct inode * inode, struct file * filep) +{ + return 0 ; +} + + + +int fop_ioctl (struct inode *inode, struct file *filep, + unsigned int cmd, unsigned long arg) +{ + switch (cmd) + { + case WDT_PING: + if (sc520_wdt_ping()) + return 0; + else + return EIO; + break; + case WDT_BEGIN: + sc520_wdt_startup(arg); + return 0; + break; + default: + return -EINVAL; + break; + }; +} + +struct file_operations sc520_wdt_fops = { + /* tagged interface is NOT C compliant; GNU specific */ + + owner: THIS_MODULE, //2.4.x compliant onl + llseek: fop_nollseek, + read: fop_read, + write: fop_write, + open: fop_open, + ioctl: fop_ioctl, +}; + +int init_module () { +#ifdef CONFIG_DEVFS_FS + if (devfs_register (NULL, "amdwdt", DEVFS_FL_AUTO_DEVNUM, WDT_MAJOR,0, + S_IFCHR | S_IRUGO | S_IWUGO, &sc520_wdt_fops, 0) < 0) { +#else + if ( register_chrdev ( WDT_MAJOR, "AMD Elan SC520 WatchDogTimer", + &sc520_wdt_fops) < 0) { +#endif + printk( KERN_WARNING "AMD SC520 Watch Dog Timer failed to registration"); + return -ENODEV ; + } else + wdtmrctl = (unsigned long) ioremap (SC520_WDTMRCTL, sizeof(union sc520_wdtmrctl_reg) ); + + printk (LOG_LEVEL "AMD Elan SC520 WatchDogTimer Module loaded\n") ; + return 0; + + +} + + +void cleanup_module () { +#ifdef CONFIG_DEVFS_FS + devfs_handle_t de; + de = devfs_find_handle (NULL, "amdwdt", 0,0,DEVFS_SPECIAL_CHR,0); + devfs_unregister (de); +#else + unregister_chrdev ( WDT_MAJOR, "AMD_SC520_WDT"); +#endif + iounmap((void *) wdtmrctl); + printk(LOG_LEVEL "WDT module was removed."); +} + + + + Index: drivers/char/ts_486wdt.h =================================================================== RCS file: drivers/char/ts_486wdt.h diff -N drivers/char/ts_486wdt.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ drivers/char/ts_486wdt.h 16 Dec 2002 11:30:37 -0000 1.1.2.1 @@ -0,0 +1,68 @@ +/*********************************************** + * Technologic Systems Liberty Young + * + * This driver only works with linux kernel 2.4.18 or compatible + * and only implements the basic features of the AMD SC520 Elan's WDT. + * Those features are starting the WDT with a user specified timeout, + * and reseting the WDT's counter. Of course, should the counter never + * be reseted, the Microprocessor its self will cause a hardware reset. + * Advanced features such as an interrupt timeout, of the "soft" timeout, + * are not supported. + * Though those features kinda defeat the purpose of a WD in an embedded + * system :) + * + * Time Out Value + * A simple equation for figuring out the timeout value is as follows + * (from the AMD Elans user's manual): + * Duration = 2 ^ (timeout value) / (33 MHz crystal frequency) + * + * Dec 2001 Created + * Nov 2002 Slight modifications + * + */ + + +#define SC520_WDTMRCTL 0XDFCB0 +#define SC520_WDT_MAGICNUM 0x57 //"W" +#define WDT_MAJOR 30 + +#define WDT_PING _IOW(SC520_WDT_MAGICNUM, 6, int) + +#define WDT_BEGIN _IO(SC520_WDT_MAGICNUM,0) + +#ifdef DEBUG +#define dprintk(x...) printk(## x) +#else +#define dprintk(x...) +#endif + +#define WDT_EN_KEYSEQ1 0x3333 +#define WDT_EN_KEYSEQ2 0XCCCC + +#define WDT_RESET_KEYSEQ1 0XAAAA +#define WDT_RESET_KEYSEQ2 0X5555 + +/* the WDT's MRCTL register*/ +struct sc520_wdtmrctl_def { + __u8 exp_timeout ; //exponential timeout + __u8 wdt_ctl ; //bits that control and set Watchdog timer + +}; + +union sc520_wdtmrctl_reg { + struct sc520_wdtmrctl_def wdtmrctl; + __u16 wdtmrctl_reg; +}; + + +/* the WDT's Count Low register*/ +struct sc520_wdtmrcntl_reg { + __u16 wdt_cntrl ; +}; + +/* the WDT's Count High Register*/ +struct sc520_wdtmrcnth_reg { + __u16 wdt_cntrh ; +}; + + Index: drivers/misc/Makefile =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/drivers/misc/Makefile,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- drivers/misc/Makefile 16 Dec 2002 10:14:36 -0000 1.1.1.1 +++ drivers/misc/Makefile 16 Dec 2002 11:43:29 -0000 1.1.1.1.2.1 @@ -11,6 +11,9 @@ O_TARGET := misc.o +obj-y := ts_sbcinfo.o +export-objs := ts_sbcinfo.o + include $(TOPDIR)/Rules.make fastdep: Index: drivers/misc/ts_sbcinfo.c =================================================================== RCS file: drivers/misc/ts_sbcinfo.c diff -N drivers/misc/ts_sbcinfo.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ drivers/misc/ts_sbcinfo.c 26 Dec 2002 13:22:25 -0000 1.1.2.3 @@ -0,0 +1,280 @@ +/* + * ts_sbcinfo.c + * Liberty Young Technologic Systems + * spam_filter(email): liberty(at)embeddedx86.com/dot/com + * These functions add proc entries to display information + * about the SingleBoardComputer +*/ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +struct sbc_info ts_sbc; + +struct sbc_info *get_sbcinfo ( void ) { + struct sbc_info *info; + info = NULL; + + info = kmalloc (sizeof(struct sbc_info), GFP_KERNEL); + if (!info) + return info; + + memset (info, 0, sizeof(struct sbc_info)); + *info = ts_sbc; + return info; +} +void remove_sbcinfo ( struct sbc_info *info) +{ + kfree (info); +} + +void sbc_flipled ( int direction) { + struct sbc_info *info; + unsigned int temp; + + info = get_sbcinfo(); + if ( !info) + return; + switch (info->board_id) { + case TS5300: + case TS5400: + case TS5500: + //request region? + temp = inb(0x77); + temp &= 0x01; //bit 0 is LED bit + temp = ~temp & 0x01; + outb(temp, 0X77); + default: + break; + } + + remove_sbcinfo (info); +} + + +EXPORT_SYMBOL(remove_sbcinfo); +EXPORT_SYMBOL(get_sbcinfo); + +static int sbc_setinfo ( struct sbc_info *sbc){ + unsigned int err, temp; + + memset( sbc, 0, sizeof(struct sbc_info)); + err = check_region(0x74,4); + if (err < 0) + return err; + + request_region(0x74, 4, "TS-SBC"); + + temp = inb(IO_SBCID); + switch (temp) { + case TS5400: + sbc->board_id = 5400; + break; + case TS5300: + sbc->board_id = 5300; + break; + case TS5500: + sbc->board_id = 5500; + break; + case TS3300: + sbc->board_id = 3300; + break; + case TS3200: + sbc->board_id = 3200; + break; + case TS3100: + sbc->board_id = 3100; + default: + sbc->board_id = 0; + } + //0x75 is Option Code I/O + temp = inb(0x75); + + //check for SRAM option + switch (sbc->board_id) { + case 5300: + case 3400: + case 3300: + case 3200: + if (temp & 0x01) + sbc->sram = 1; + break; + default: + break; + } + + //Does board support Analog to Digital support? + switch (sbc->board_id) { + case 5500: + case 3300: + if (temp & 0x04) + sbc->AtoD = 1; + break; + default: + break; + } + + //Is board set up to do RS485 and auto485? + //only 5300(rev c), 5400, and 5500 can + //at this point + switch ( sbc->board_id) { + case 5400: + case 5500: + if ( (temp & 0x02) == 0x02){ + sbc->RS485 = 1; + sbc->auto485 = 1; //they just have it + } + break; + case 5300: + if ( (temp & 0x02) == 0x02) + sbc->RS485 = 1; + + if (temp & 0x0A) + sbc->auto485 = 1; + break; + default: + sbc->auto485=0; + break; + } + + /* 0x76 is another Option code */ + temp = inb(0x76); + + //check for Industrial Temp + if (temp & 0x02) + sbc->industrial = 1; + + //check for external reset pin + switch (sbc->board_id) { + case 3400: + case 5500: + if (temp & 0x01) + sbc->extrst = 1; + break; + default: + sbc->extrst = 0; + } + + // 0x77 is Jumpers and LED...bits 1 - 7 are r/o + // bit 0 is r /w + // 5x00 only + + temp = inb(0x77); + + switch (sbc->board_id){ + case 5500: + case 5400: + case 5300: + sbc->jumpers = (temp & 0xFE); + break; + default: + sbc->jumpers = 0; + } + + release_region(0x74,4); + + return 0; +} + +static int sbc_read_proc(char *page, char **start, off_t off, + int count, int *eof, void *data) +{ + char jumpers [24]; + int len = 0; + unsigned int temp; + + len += sprintf(page + len, "Board ID: TS-%d\n", + ts_sbc.board_id ); + len += sprintf(page + len, "RS485: %s\n", + ts_sbc.RS485 ? "yes" : "no"); + len += sprintf(page + len, "AnalogToDigital: %s\n", + ts_sbc.AtoD ? "yes" : "no"); + len += sprintf(page + len, "Auto485: %s\n", + ts_sbc.auto485 ? "yes" : "no"); + len += sprintf(page + len, "SRAM: %s\n", + ts_sbc.sram ? "yes" : "no"); + len += sprintf(page + len, "External Reset: %s\n", + ts_sbc.extrst ? "yes" : "no"); + + //Jumper reads are only 5x00 + switch (ts_sbc.board_id) { + case TS5300: + case TS5400: + case TS5500: + request_region(0x77, 1, "TS-SBC"); + temp = inb(0x77); + len += sprintf(page + len, "JPS: "); + + if (temp & 0x02) + len += sprintf(page + len, "JP1 "); + if (temp & 0x04) + len += sprintf(page + len, "JP2 "); + if (temp & 0x08) + len += sprintf(page + len, "JP3 "); + if (temp & 0x10) + len += sprintf(page + len, "JP4 "); + if (temp & 0x20) + len += sprintf(page + len, "JP5 "); + if (temp & 0x80) + len += sprintf(page + len, "JP8"); + len += sprintf(page +len, "\n"); + break; + default: + break; + } + + + if (len <= off+count) + *eof = 1; + *start = page + off; + len -= off; + if (len > count) + len =count; + + return len; +} + +static void sbc_remove_proc (struct proc_dir_entry *entry) { + remove_proc_entry (entry->name, + entry->parent); + entry = NULL; +} + +static int init_sbc_proc( void ) { + struct proc_dir_entry *entry, *parent_dir ; + int err; + + parent_dir = proc_mkdir("SBC", NULL); + if (parent_dir == NULL) + return -ENOMEM; + + entry = create_proc_read_entry ("info", S_IRUGO, parent_dir, sbc_read_proc, 0); + + if (entry == NULL) { + sbc_remove_proc (entry); + printk("ts_sbcinfo.c: unable to create proc entry SBC/info"); + return -ENOMEM; + } + + err = sbc_setinfo (&ts_sbc); + if (err < 0 ) { + sbc_remove_proc( entry); + sbc_remove_proc (parent_dir); + printk("ts_sbcinfo.c: Problems determing SBC information..Error %d\n",err); + return err; + } + + return 0; +} + + +__initcall(init_sbc_proc); + Index: include/asm-i386/ioctls.h =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/include/asm-i386/ioctls.h,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- include/asm-i386/ioctls.h 16 Dec 2002 10:15:49 -0000 1.1.1.1 +++ include/asm-i386/ioctls.h 16 Dec 2002 11:17:54 -0000 1.1.1.1.2.1 @@ -68,6 +68,9 @@ #define TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ #define TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ +#define TIOC_SBCC485 _IOW('T',0x70,int) /*TS SBC RTS/485 mode Clear */ +#define TIOC_SBCS485 _IOW('T',0x71, int) /*TS SBC RTS/485 mode Set */ + /* Used for packet mode */ #define TIOCPKT_DATA 0 #define TIOCPKT_FLUSHREAD 1 Index: include/asm-i386/timex.h =================================================================== RCS file: /home/public/cvs/Linux/KernelWork/SourceTrees/Linux-2.4.18/include/asm-i386/timex.h,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -u -b -B -u -U3 -r1.1.1.1 -r1.1.1.1.2.1 --- include/asm-i386/timex.h 16 Dec 2002 10:15:49 -0000 1.1.1.1 +++ include/asm-i386/timex.h 16 Dec 2002 10:40:31 -0000 1.1.1.1.2.1 @@ -11,6 +11,10 @@ #ifdef CONFIG_MELAN # define CLOCK_TICK_RATE 1189200 /* AMD Elan has different frequency! */ +#elif CONFIG_TS_M386 +# define CLOCK_TICK_RATE 1000000 /*Technologic Systems's 386EX SBCs have own frequency */ +#elif CONFIG_TS_M486 +# define CLOCK_TICK_RATE 1192809 /* the Elan SC520 also has its own frequency*/ #else # define CLOCK_TICK_RATE 1193180 /* Underlying HZ */ #endif Index: include/linux/ts_sbc.h =================================================================== RCS file: include/linux/ts_sbc.h diff -N include/linux/ts_sbc.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ include/linux/ts_sbc.h 26 Dec 2002 12:57:47 -0000 1.1.2.2 @@ -0,0 +1,38 @@ +/* + * ts_sbc.h + * Liberty Young Technologic Systems + * spam_filter(email): liberty(at)embeddedx86.com/dot/com +*/ + +#define TS5300 0x50 +#define TS5400 0x40 +#define TS5500 0x60 +#define TS3300 0x30 +#define TS3200 0X32 +#define TS3100 0x31 +#define IO_SBCID 0x74 + + +#ifndef TSYSTEMS +# error "compilation without -DTSYSTEMS (or the like)" +#endif + + +#define AUTO485 1 +#define RTSMODE 2 +/*describes the SBC and Options installed*/ +struct sbc_info { + int board_id; + char RS485; + char AtoD; + char RS422; + char Ethernet; + char auto485; + char extrst; //external reset + char sram; + char industrial; + char jumpers; +}; + +extern struct sbc_info *get_sbcinfo (void ) ; +extern void remove_sbcinfo (struct sbc_info *info);