PC-CARD hooks. Someday it will actually enable working code. :)

Reviewed by:	phk
Submitted by:	Tatsumi Hosokawa <hosokawa@mt.cs.keio.ac.jp> & BSD Nomads

I re-wrote alot of this, but the ideas are based on the code from the
most recent pccard-snapshot.
This commit is contained in:
Nate Williams 1996-03-12 15:39:26 +00:00
parent dc92971788
commit 5d9d7f34a7
7 changed files with 599 additions and 29 deletions

260
etc/defaults/pccard.conf Normal file
View File

@ -0,0 +1,260 @@
# Sample PCCARD configuration file
#
# Removing all IRQ conflicts from this file can't be done because of some
# IRQ-selfish PC-cards. So if you want to use some of these cards in
# your machine, you will be forced to modify their IRQ parameters from
# the following list.
#
# IRQ == 0 means "allocate free IRQ from IRQ pool"
# IRQ == 16 means "do not use IRQ (e.g. PIO mode)"
#
# $Id$
# Generally available IO ports
io 0x240-0x360
# Generally available IRQs (Built-in sound-card owners remove 5)
irq 3 5 10 11 13 15
# Available memory slots
memory 0xd4000 96k
#IBM PCMCIA Ethernet I/II
card "IBM Corp." "Ethernet"
config 0x1 "ed0" 11
ether 0xff0
insert echo IBM PCMCIA Ethernet inserted
insert /etc/pccard_ether ed0
remove echo IBM PCMCIA Ethernet removed
remove /sbin/ifconfig ed0 delete
# MACNICA UE2212
# Very slow! (PIO mode)
card "PCMCIA" "UE2212"
config 0x1 "ed0" 11 0x10
ether 0xff0
insert echo MACNICA UE2212 inserted
insert /etc/pccard_ether ed0
remove echo MACNICA UE2212 card removed
remove /sbin/ifconfig ed0 delete
# Accton EN2212
# Very slow! (PIO mode)
card "ACCTON" "EN2212"
config 0x1 "ed0" 11 0x10
ether 0xff0
insert echo Accton EN2212 inserted
insert /etc/pccard_ether ed0
remove echo Accton EN2212 removed
remove /sbin/ifconfig ed0 delete
# 3Com Etherlink III 3C589B, 3C589C
card "3Com Corporation" "3C589"
config 0x1 "nep0" 11
insert echo 3Com Etherlink III inserted
insert /etc/pccard_ether nep0
# insert /etc/pccard_ether nep0 link0
remove echo 3Com Etherlink III removed
remove /sbin/ifconfig nep0 delete
# Farallon EtherMac
card "Farallon" "ENet"
config 0x1 "nep0" 11
insert echo Farallon EtherMac inserted
insert /etc/pccard_ether nep0
# insert /etc/pccard_ether nep0 link0
remove echo Farallon EtherMac removed
remove /sbin/ifconfig nep0 delete
# Fujitsu MBH10302
card "PCMCIA MBH10302" "01"
config 0x14 "fe0" 10
insert echo Fujitsu MBH10302 inserted
insert /etc/pccard_ether fe0
remove echo Fujitsu MBH10302 removed
remove /sbin/ifconfig fe0 delete
# NextCom J Link NC5310
card "NextComK.K." "NC5310 Ver1.0 "
config 0x14 "fe0" 10
insert echo NextCom J Link NC5310 inserted
insert /etc/pccard_ether fe0
remove echo NextCom J Link NC5310 removed
remove /sbin/ifconfig fe0 delete
# AIWA PV-JF288
card "AIWA CO.,LTD." "PV-JF288 "
config 0x23 "sio2" 10
insert echo AIWA PV-JF288 inserted
remove echo AIWA PV-JF288 removed
# Megahertz XJ1144
card "MEGAHERTZ" "XJ1144"
config 0x23 "sio2" 10
insert echo Megahertz XJ1144 inserted
remove echo Megahertz XJ1144 removed
# Megahertz XJ2144 (US)
card "MEGAHERTZ" "XJ2144"
config 0x23 "sio2" 10
insert echo Megahertz XJ2144 inserted
remove echo Megahertz XJ2144 removed
# Megahertz XJ2144 (JP)
card "MEGAHERTZ" "XJ2144-81"
config 0x23 "sio2" 10
insert echo Megahertz XJ2144 inserted
remove echo Megahertz XJ2144 removed
# Megahertz XJ2288
card "MEGAHERTZ" "XJ2288"
config 0x23 "sio2" 10
insert echo Megahertz XJ2288 inserted
remove echo Megahertz XJ2288 removed
# Omron ME2814 FAX/DATA MODEM
card "OMRON" "ME2814 FAX/DATA MOD"
config 0x23 "sio2" 3
insert echo OMRON ME2814 Modem inserted
remove echo OMRON ME2814 Modem removed
# TDK 14.4 FAX/Data Modem
card "TDK" "DF1414 DATA/FAX MOD"
config 0x23 "sio2" 10
insert echo TDK DF1414 inserted
remove echo TDK DF1414 removed
# TDK 14.4 FAX/Data Modem
card "TDK" "DF1414EX DATA/FAX M"
config 0x23 "sio2" 10
insert echo TDK DF1414 inserted
remove echo TDK DF1414 removed
# Panasonic Modem Card TO-706C
card "Panasonic" "TO-706C"
config 0x23 "sio2" 10
insert echo Panasonic TO-706C inserted
remove echo Panasonic TO-706C removed
# Panasonic Modem Card TO-706C
card "Panasonic" "TO-CAF288"
config 0x23 "sio2" 10
insert echo Panasonic TO-CAF288 inserted
remove echo Panasonic TO-CAF288 removed
# NewMedia 14.4K FAX/Data Modem
card "CIRRUS LOGIC" "FAX MODEM"
config 0x23 "sio2" 10
insert echo Newmedia 14.4 Modem inserted
remove echo Newmedia 14.4 Modem removed
# Omron MD24XCA FAX/Data Modem
card "OMRON Corp." "MD24XCA"
config 0x23 "sio2" 16
reset 10000
insert echo OMRON MD24XCA Modem inserted
remove echo OMRON MD24XCA Modem removed
# Hayes OPTIMA 288 FAX/Data Modem
# currently does not work on my machine
card "Hayes" "OPTIMA 288 + FAX fo"
config 0x24 "sio2" 5
reset 10000
insert echo Optima 288 inserted
remove echo Optima 288 removed
# PREMAX FM288 FAX/Data Modem
card "PREMAX" "FM288 "
config 0x23 "sio2" 10
insert echo PREMAX FM288 Modem inserted
remove echo PREMAX FM288 Modem removed
# Novalink NovaModem 144
card "NovaLink Tech." "NovaModem 144 "
config 0x23 "sio2" 10
insert echo NovaModem 144 Modem inserted
remove echo NovaModem 144 Modem removed
# US Robotics Sportster PCMCIA V.34
# US Robotics COURIER PCMCIA V.34
card "USRobotics" "PCMCIA 28800 Data/F"
config 0x3 "sio2" 3
insert echo USRobotics PCMCIA Modem inserted
remove echo USRobotics PCMCIA Modem removed
# Xircom CreditCard Ethernet+Modem (Modem only !!!)
card "Xircom" "CreditCard Ethernet"
config 0x23 "sio2" 3
insert echo Xircom CreditCard Modem inserted
remove echo Xircom CreditCard Modem removed
# GATEWAY 2000 FAX/Data Modem (14.4K)
card "GATEWAY2000" "CC3144"
config 0x22 "sio3" 7
insert echo GATEWAY2000 FAX/Data Modem inserted
remove echo GATEWAY2000 FAX/Data Modem removed
# IBM Push/Pop Modem (14.4K)
card "IBM" "Push/Pop Modem(14.4"
config 0x22 "sio2" 5
insert echo IBM Push/Pop Modem inserted
remove echo IBM Push/Pop Modem removed
# BUG Linkboy D64K (ISDN)
card "BUG Inc." "Linkboy D64K"
config 0x23 "sio2" 3
insert echo BUG Linkboy D64K inserted
remove echo BUG Linkboy D64K removed
# NTT DoCoMo DATA/FAX Adapter
card "NTT DoCoMo" "PCMCIA DATA/FAX ADA"
config 0x22 "sio3" 10 0x82
insert echo NTT DoCoMo DATA/FAX Adapter inserted
remove echo NTT DoCoMo DATA/FAX Adapter removed
# Panasonic FM-RADIO card
card "Panasonic" "CF-JVR101"
config 0x22 "sio3" 16
insert echo Panasonic FM radio card inserted
remove echo Panasonic FM radio card removed
# SunDisk Flash ATA
# (OEM: Epson Flash Packer)
card "SunDisk" "SDP5"
config 0x3 "wdc1" 7
insert echo Sundisk Flash ATA inserted
remove echo Sundisk Flash ATA removed
card "SunDisk" "SDP"
config 0x3 "wdc1" 7
insert echo SunDisk Flash ATA Inserted
remove echo SunDisk Flash ATA Removed
# Midori Elec Fast Flash
card "Midori Elec." "FAST FLASH"
config 0x3 "wdc1" 9
insert echo Midori Elec Fast FLASH inserted
remove echo Midori Elec Fast FLASH removed
# Maxtor 131MB Type III HDD
card "Maxtor" "MXL131"
config 0x03 "wdc1" 10
insert echo Maxtor 131MB HDD inserted
remove echo Maxtor 131MB HDD removed
# Adaptec SlimSCSI
card "Adaptec, Inc." "APA-1460 SCSI Host "
config 0x9 "aic0" 10
insert echo Adaptec Slim SCSI inserted
remove echo Adaptec Slim SCSI removed
# NewMedia Bustoaster SCSI
card "New Media" "SCSI"
config 0x22 "aic0" 10
insert echo New Media Bus Toaster inserted
remove echo New Media Bus Toaster removed
# REX5535AC, REX5535X SCSI
card "PCMCIA SCSI MBH1040" "01"
config 0x3a "spc0" 11
insert echo REX-5535 SCSI card inserted
remove echo REX-5535 SCSI card removed

View File

@ -1,27 +0,0 @@
#
# Sample configuration file for PCMCIA/PCCARD support.
#
# Pool parameters.
#
io 0x280 - 0x360
irq 3 5 6 8 9 10 15
memory 0xd4000 96k
#
# Card database.
#
# card "RPTI LTD." "EP400" # NE2000 clone
# ether 0x110
# config 0x30 "ed0" 5
# config 0x31 "ed1" 6
# insert ifconfig $device physical $ether
# insert ifconfig $device bean
card "MEGAHERTZ" "CC3144"
config 0x21 "sio1" 5
card "Digital" "PCMCIA 28,800 V.34 "
config 0x03 "sio1" 10
card "IBM Corp." "Ethernet"
ether 0xff0
config 0x41 "ed0" 5

260
etc/pccard.conf.sample Normal file
View File

@ -0,0 +1,260 @@
# Sample PCCARD configuration file
#
# Removing all IRQ conflicts from this file can't be done because of some
# IRQ-selfish PC-cards. So if you want to use some of these cards in
# your machine, you will be forced to modify their IRQ parameters from
# the following list.
#
# IRQ == 0 means "allocate free IRQ from IRQ pool"
# IRQ == 16 means "do not use IRQ (e.g. PIO mode)"
#
# $Id$
# Generally available IO ports
io 0x240-0x360
# Generally available IRQs (Built-in sound-card owners remove 5)
irq 3 5 10 11 13 15
# Available memory slots
memory 0xd4000 96k
#IBM PCMCIA Ethernet I/II
card "IBM Corp." "Ethernet"
config 0x1 "ed0" 11
ether 0xff0
insert echo IBM PCMCIA Ethernet inserted
insert /etc/pccard_ether ed0
remove echo IBM PCMCIA Ethernet removed
remove /sbin/ifconfig ed0 delete
# MACNICA UE2212
# Very slow! (PIO mode)
card "PCMCIA" "UE2212"
config 0x1 "ed0" 11 0x10
ether 0xff0
insert echo MACNICA UE2212 inserted
insert /etc/pccard_ether ed0
remove echo MACNICA UE2212 card removed
remove /sbin/ifconfig ed0 delete
# Accton EN2212
# Very slow! (PIO mode)
card "ACCTON" "EN2212"
config 0x1 "ed0" 11 0x10
ether 0xff0
insert echo Accton EN2212 inserted
insert /etc/pccard_ether ed0
remove echo Accton EN2212 removed
remove /sbin/ifconfig ed0 delete
# 3Com Etherlink III 3C589B, 3C589C
card "3Com Corporation" "3C589"
config 0x1 "nep0" 11
insert echo 3Com Etherlink III inserted
insert /etc/pccard_ether nep0
# insert /etc/pccard_ether nep0 link0
remove echo 3Com Etherlink III removed
remove /sbin/ifconfig nep0 delete
# Farallon EtherMac
card "Farallon" "ENet"
config 0x1 "nep0" 11
insert echo Farallon EtherMac inserted
insert /etc/pccard_ether nep0
# insert /etc/pccard_ether nep0 link0
remove echo Farallon EtherMac removed
remove /sbin/ifconfig nep0 delete
# Fujitsu MBH10302
card "PCMCIA MBH10302" "01"
config 0x14 "fe0" 10
insert echo Fujitsu MBH10302 inserted
insert /etc/pccard_ether fe0
remove echo Fujitsu MBH10302 removed
remove /sbin/ifconfig fe0 delete
# NextCom J Link NC5310
card "NextComK.K." "NC5310 Ver1.0 "
config 0x14 "fe0" 10
insert echo NextCom J Link NC5310 inserted
insert /etc/pccard_ether fe0
remove echo NextCom J Link NC5310 removed
remove /sbin/ifconfig fe0 delete
# AIWA PV-JF288
card "AIWA CO.,LTD." "PV-JF288 "
config 0x23 "sio2" 10
insert echo AIWA PV-JF288 inserted
remove echo AIWA PV-JF288 removed
# Megahertz XJ1144
card "MEGAHERTZ" "XJ1144"
config 0x23 "sio2" 10
insert echo Megahertz XJ1144 inserted
remove echo Megahertz XJ1144 removed
# Megahertz XJ2144 (US)
card "MEGAHERTZ" "XJ2144"
config 0x23 "sio2" 10
insert echo Megahertz XJ2144 inserted
remove echo Megahertz XJ2144 removed
# Megahertz XJ2144 (JP)
card "MEGAHERTZ" "XJ2144-81"
config 0x23 "sio2" 10
insert echo Megahertz XJ2144 inserted
remove echo Megahertz XJ2144 removed
# Megahertz XJ2288
card "MEGAHERTZ" "XJ2288"
config 0x23 "sio2" 10
insert echo Megahertz XJ2288 inserted
remove echo Megahertz XJ2288 removed
# Omron ME2814 FAX/DATA MODEM
card "OMRON" "ME2814 FAX/DATA MOD"
config 0x23 "sio2" 3
insert echo OMRON ME2814 Modem inserted
remove echo OMRON ME2814 Modem removed
# TDK 14.4 FAX/Data Modem
card "TDK" "DF1414 DATA/FAX MOD"
config 0x23 "sio2" 10
insert echo TDK DF1414 inserted
remove echo TDK DF1414 removed
# TDK 14.4 FAX/Data Modem
card "TDK" "DF1414EX DATA/FAX M"
config 0x23 "sio2" 10
insert echo TDK DF1414 inserted
remove echo TDK DF1414 removed
# Panasonic Modem Card TO-706C
card "Panasonic" "TO-706C"
config 0x23 "sio2" 10
insert echo Panasonic TO-706C inserted
remove echo Panasonic TO-706C removed
# Panasonic Modem Card TO-706C
card "Panasonic" "TO-CAF288"
config 0x23 "sio2" 10
insert echo Panasonic TO-CAF288 inserted
remove echo Panasonic TO-CAF288 removed
# NewMedia 14.4K FAX/Data Modem
card "CIRRUS LOGIC" "FAX MODEM"
config 0x23 "sio2" 10
insert echo Newmedia 14.4 Modem inserted
remove echo Newmedia 14.4 Modem removed
# Omron MD24XCA FAX/Data Modem
card "OMRON Corp." "MD24XCA"
config 0x23 "sio2" 16
reset 10000
insert echo OMRON MD24XCA Modem inserted
remove echo OMRON MD24XCA Modem removed
# Hayes OPTIMA 288 FAX/Data Modem
# currently does not work on my machine
card "Hayes" "OPTIMA 288 + FAX fo"
config 0x24 "sio2" 5
reset 10000
insert echo Optima 288 inserted
remove echo Optima 288 removed
# PREMAX FM288 FAX/Data Modem
card "PREMAX" "FM288 "
config 0x23 "sio2" 10
insert echo PREMAX FM288 Modem inserted
remove echo PREMAX FM288 Modem removed
# Novalink NovaModem 144
card "NovaLink Tech." "NovaModem 144 "
config 0x23 "sio2" 10
insert echo NovaModem 144 Modem inserted
remove echo NovaModem 144 Modem removed
# US Robotics Sportster PCMCIA V.34
# US Robotics COURIER PCMCIA V.34
card "USRobotics" "PCMCIA 28800 Data/F"
config 0x3 "sio2" 3
insert echo USRobotics PCMCIA Modem inserted
remove echo USRobotics PCMCIA Modem removed
# Xircom CreditCard Ethernet+Modem (Modem only !!!)
card "Xircom" "CreditCard Ethernet"
config 0x23 "sio2" 3
insert echo Xircom CreditCard Modem inserted
remove echo Xircom CreditCard Modem removed
# GATEWAY 2000 FAX/Data Modem (14.4K)
card "GATEWAY2000" "CC3144"
config 0x22 "sio3" 7
insert echo GATEWAY2000 FAX/Data Modem inserted
remove echo GATEWAY2000 FAX/Data Modem removed
# IBM Push/Pop Modem (14.4K)
card "IBM" "Push/Pop Modem(14.4"
config 0x22 "sio2" 5
insert echo IBM Push/Pop Modem inserted
remove echo IBM Push/Pop Modem removed
# BUG Linkboy D64K (ISDN)
card "BUG Inc." "Linkboy D64K"
config 0x23 "sio2" 3
insert echo BUG Linkboy D64K inserted
remove echo BUG Linkboy D64K removed
# NTT DoCoMo DATA/FAX Adapter
card "NTT DoCoMo" "PCMCIA DATA/FAX ADA"
config 0x22 "sio3" 10 0x82
insert echo NTT DoCoMo DATA/FAX Adapter inserted
remove echo NTT DoCoMo DATA/FAX Adapter removed
# Panasonic FM-RADIO card
card "Panasonic" "CF-JVR101"
config 0x22 "sio3" 16
insert echo Panasonic FM radio card inserted
remove echo Panasonic FM radio card removed
# SunDisk Flash ATA
# (OEM: Epson Flash Packer)
card "SunDisk" "SDP5"
config 0x3 "wdc1" 7
insert echo Sundisk Flash ATA inserted
remove echo Sundisk Flash ATA removed
card "SunDisk" "SDP"
config 0x3 "wdc1" 7
insert echo SunDisk Flash ATA Inserted
remove echo SunDisk Flash ATA Removed
# Midori Elec Fast Flash
card "Midori Elec." "FAST FLASH"
config 0x3 "wdc1" 9
insert echo Midori Elec Fast FLASH inserted
remove echo Midori Elec Fast FLASH removed
# Maxtor 131MB Type III HDD
card "Maxtor" "MXL131"
config 0x03 "wdc1" 10
insert echo Maxtor 131MB HDD inserted
remove echo Maxtor 131MB HDD removed
# Adaptec SlimSCSI
card "Adaptec, Inc." "APA-1460 SCSI Host "
config 0x9 "aic0" 10
insert echo Adaptec Slim SCSI inserted
remove echo Adaptec Slim SCSI removed
# NewMedia Bustoaster SCSI
card "New Media" "SCSI"
config 0x22 "aic0" 10
insert echo New Media Bus Toaster inserted
remove echo New Media Bus Toaster removed
# REX5535AC, REX5535X SCSI
card "PCMCIA SCSI MBH1040" "01"
config 0x3a "spc0" 11
insert echo REX-5535 SCSI card inserted
remove echo REX-5535 SCSI card removed

21
etc/pccard_ether Executable file
View File

@ -0,0 +1,21 @@
#!/bin/sh -
#
# pccardether interfacename [ifconfig option]
#
# example: pccardether ep0 -link0
#
# Suck in the /etc/sysconfig variables
if [ -f /etc/sysconfig ]; then
. /etc/sysconfig
fi
if [ "x$pccard_ifconfig" = "xNO" ] ; then
if [ "x$pccard_ifconfig" = "xDHCP" ] ; then
# DHCP currently not implemented
else
interface=$1
shift
ifconfig $interface $pccard_ifconfig $*
fi
fi

20
etc/pccard_start Normal file
View File

@ -0,0 +1,20 @@
#!/bin/sh -
#
# PC-card startup script
# HOSOKAWA, Tatsumi <hosokawa@mt.cs.keio.ac.jp>
#
if [ "x$apm_enable" = "xYES" ] ; then
echo "Enable APM BIOS."
/usr/sbin/apmconf -e
fi
if [ "x$pccard_enable" != "xNO" ] ; then
if [ "x$pccard_mem" != "xNO" ] ; then
/usr/sbin/pccardc pccardmem $pccard_mem
else
/usr/sbin/pccardc pccardmem 0xd0000
fi
echo -n "Enable PC-card."
/usr/sbin/pccardd 2>&1 > /var/log/pccardd.debug &
fi

7
etc/rc
View File

@ -1,5 +1,5 @@
#!/bin/sh
# $Id: rc,v 1.84 1996/02/09 12:20:37 jkh Exp $
# $Id: rc,v 1.85 1996/02/23 10:44:49 adam Exp $
# From: @(#)rc 5.27 (Berkeley) 6/5/91
# System startup script run by init on autoboot
@ -94,6 +94,11 @@ if [ -f /etc/rc.serial ]; then
. /etc/rc.serial
fi
# start up PC-card configuration
if [ -f /etc/pccardstart ]; then
. /etc/pccardstart
fi
# start up the network
if [ -f /etc/netstart ]; then
sh /etc/netstart

View File

@ -4,7 +4,7 @@
# This is sysconfig - a file full of useful variables that you can set
# to change the default startup behavior of your system.
#
# $Id: sysconfig,v 1.39 1996/02/28 17:04:43 adam Exp $
# $Id: sysconfig,v 1.40 1996/03/06 03:59:15 jkh Exp $
######################### Start Of Local Configuration Section ###########
@ -201,6 +201,37 @@ accounting=NO
######################### End Of Netconfig Section #######################
######################### Start Of PC-card Section #######################
# If you want to enable APM BIOS driver, set to YES
# (The APM BIOS driver is not configured into GENERIC kernel b/c of bugs)
apm_enable=NO
# If you want to use PC-card package, set to YES
# (PC-card support is not configured in the GENERIC kernel)
pccard_enable=NO
# If you want to specify the address of memory used by PCIC,
# set this address (NO for default 0xd0000)
pccard_mem=NO
# If you want to use Etnerent PCMCIA cards, specify the ifconfig portion
# here. (card-specific flags like connector selection should be written in
# the card-specific entry in /etc/pccard.conf). Set to DHCP if you want to
# use a DHCP server to determine your IP address (not implemented).
#
# Set to NO if you don't want to configure your PC-CARD ethernet controller.
#
# for example:
#
# pccard_ifconfig="131.113.32.126 netmask 0xffffff00"
# or
# pccard_ifconfig="DHCP"
#
pccard_ifconfig=NO
######################### End Of PC-card Section #######################
######################### Start Of Misc Section #######################
# Set to YES if you want ibcs2 (SCO) emulation loaded at startup