r3964 - in trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian:
. config/mips config/mipsel control.in patches patches-2.4
Thiemo Seufer
ths-guest at costa.debian.org
Wed Aug 17 19:38:07 UTC 2005
Author: ths-guest
Date: 2005-08-17 19:38:05 +0000 (Wed, 17 Aug 2005)
New Revision: 3964
Added:
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mipsel/r5k-cobalt
Removed:
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches-2.4/10_cobalt-patch.dpatch
Modified:
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r10k-ip27
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r10k-ip30
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r4k-ip22
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r5k-ip32
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/sb1-swarm-bn
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mipsel/sb1-swarm-bn
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/control.in/stub
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/flavours.mipsel
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches/10_arch-makefile.dpatch
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches/21_ip30.dpatch
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/rules
trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/sourceversion
Log:
Inching closer to something releasable.
Property changes on: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian
___________________________________________________________________
Name: svn:ignore
+ control
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r10k-ip27
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r10k-ip27 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r10k-ip27 2005-08-17 19:38:05 UTC (rev 3964)
@@ -336,12 +336,12 @@
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
-CONFIG_BLK_DEV_MD=m
+CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=m
-CONFIG_MD_RAID0=m
-CONFIG_MD_RAID1=m
+CONFIG_MD_RAID0=y
+CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=m
-CONFIG_MD_RAID5=m
+CONFIG_MD_RAID5=y
CONFIG_MD_RAID6=m
CONFIG_MD_MULTIPATH=m
CONFIG_MD_FAULTY=m
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r10k-ip30
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r10k-ip30 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r10k-ip30 2005-08-17 19:38:05 UTC (rev 3964)
@@ -339,10 +339,10 @@
CONFIG_MD_LINEAR=m
CONFIG_MD_RAID0=y
CONFIG_MD_RAID1=y
-# CONFIG_MD_RAID10 is not set
+CONFIG_MD_RAID10=m
CONFIG_MD_RAID5=y
CONFIG_MD_RAID6=m
-CONFIG_MD_MULTIPATH=m
+# CONFIG_MD_MULTIPATH is not set
CONFIG_MD_FAULTY=m
CONFIG_BLK_DEV_DM=m
CONFIG_DM_CRYPT=m
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r4k-ip22
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r4k-ip22 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r4k-ip22 2005-08-17 19:38:05 UTC (rev 3964)
@@ -324,12 +324,12 @@
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
-CONFIG_BLK_DEV_MD=m
+CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=m
-CONFIG_MD_RAID0=m
-CONFIG_MD_RAID1=m
+CONFIG_MD_RAID0=y
+CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=m
-CONFIG_MD_RAID5=m
+CONFIG_MD_RAID5=y
CONFIG_MD_RAID6=m
# CONFIG_MD_MULTIPATH is not set
CONFIG_MD_FAULTY=m
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r5k-ip32
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r5k-ip32 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/r5k-ip32 2005-08-17 19:38:05 UTC (rev 3964)
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.12
-# Wed Jul 13 16:20:07 2005
+# Wed Aug 17 12:08:43 2005
#
CONFIG_MIPS=y
@@ -24,11 +24,10 @@
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
CONFIG_SYSCTL=y
-CONFIG_AUDIT=y
+# CONFIG_AUDIT is not set
CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
-CONFIG_IKCONFIG=y
-CONFIG_IKCONFIG_PROC=y
+# CONFIG_IKCONFIG is not set
CONFIG_EMBEDDED=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_EXTRA_PASS is not set
@@ -51,7 +50,7 @@
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
+CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
@@ -294,21 +293,24 @@
#
# CONFIG_BLK_DEV_FD is not set
# CONFIG_PARIDE 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_UMEM is not set
+CONFIG_BLK_CPQ_DA=m
+CONFIG_BLK_CPQ_CISS_DA=m
+CONFIG_CISS_SCSI_TAPE=y
+CONFIG_BLK_DEV_DAC960=m
+CONFIG_BLK_DEV_UMEM=m
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
-# CONFIG_BLK_DEV_SX8 is not set
+CONFIG_BLK_DEV_SX8=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_CDROM_PKTCDVD is not set
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
#
# IO Schedulers
@@ -317,7 +319,7 @@
CONFIG_IOSCHED_AS=m
CONFIG_IOSCHED_DEADLINE=m
CONFIG_IOSCHED_CFQ=m
-# CONFIG_ATA_OVER_ETH is not set
+CONFIG_ATA_OVER_ETH=m
#
# ATA/ATAPI/MFM/RLL support
@@ -335,7 +337,7 @@
#
CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_ST=m
-# CONFIG_CHR_DEV_OSST is not set
+CONFIG_CHR_DEV_OSST=m
CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SR_VENDOR is not set
CONFIG_CHR_DEV_SG=m
@@ -344,67 +346,95 @@
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
-# CONFIG_SCSI_MULTI_LUN is not set
+CONFIG_SCSI_MULTI_LUN=y
CONFIG_SCSI_CONSTANTS=y
-# CONFIG_SCSI_LOGGING is not set
+CONFIG_SCSI_LOGGING=y
#
# SCSI Transport Attributes
#
CONFIG_SCSI_SPI_ATTRS=y
-# CONFIG_SCSI_FC_ATTRS is not set
+CONFIG_SCSI_FC_ATTRS=m
# CONFIG_SCSI_ISCSI_ATTRS is not set
#
# SCSI low-level drivers
#
-# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
-# CONFIG_SCSI_3W_9XXX is not set
-# CONFIG_SCSI_ACARD is not set
-# CONFIG_SCSI_AACRAID is not set
+CONFIG_BLK_DEV_3W_XXXX_RAID=m
+CONFIG_SCSI_3W_9XXX=m
+CONFIG_SCSI_ACARD=m
+CONFIG_SCSI_AACRAID=m
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
-CONFIG_AIC7XXX_RESET_DELAY_MS=1000
+CONFIG_AIC7XXX_RESET_DELAY_MS=5000
CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
-# CONFIG_SCSI_AIC7XXX_OLD is not set
-# CONFIG_SCSI_AIC79XX is not set
-# CONFIG_SCSI_ADVANSYS is not set
-# CONFIG_MEGARAID_NEWGEN is not set
-# CONFIG_MEGARAID_LEGACY is not set
-# CONFIG_SCSI_SATA is not set
+CONFIG_SCSI_AIC7XXX_OLD=m
+CONFIG_SCSI_AIC79XX=m
+CONFIG_AIC79XX_CMDS_PER_DEVICE=32
+CONFIG_AIC79XX_RESET_DELAY_MS=5000
+CONFIG_AIC79XX_ENABLE_RD_STRM=y
+CONFIG_AIC79XX_DEBUG_ENABLE=y
+CONFIG_AIC79XX_DEBUG_MASK=0
+CONFIG_AIC79XX_REG_PRETTY_PRINT=y
+CONFIG_SCSI_ADVANSYS=m
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+CONFIG_SCSI_SATA=y
+CONFIG_SCSI_SATA_AHCI=m
+CONFIG_SCSI_SATA_SVW=m
+# CONFIG_SCSI_ATA_PIIX is not set
+# CONFIG_SCSI_SATA_NV is not set
+CONFIG_SCSI_SATA_PROMISE=m
+CONFIG_SCSI_SATA_QSTOR=m
+CONFIG_SCSI_SATA_SX4=m
+CONFIG_SCSI_SATA_SIL=m
+CONFIG_SCSI_SATA_SIS=m
+CONFIG_SCSI_SATA_ULI=m
+CONFIG_SCSI_SATA_VIA=m
+CONFIG_SCSI_SATA_VITESSE=m
# CONFIG_SCSI_CPQFCTS is not set
-# CONFIG_SCSI_DMX3191D is not set
-# CONFIG_SCSI_EATA_PIO is not set
-# CONFIG_SCSI_FUTURE_DOMAIN is not set
-# CONFIG_SCSI_IPS is not set
-# CONFIG_SCSI_INITIO is not set
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_EATA_PIO=m
+CONFIG_SCSI_FUTURE_DOMAIN=m
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_PPA is not set
# CONFIG_SCSI_IMM is not set
-# CONFIG_SCSI_SYM53C8XX_2 is not set
-# CONFIG_SCSI_IPR is not set
+CONFIG_SCSI_SYM53C8XX_2=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+# CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set
+CONFIG_SCSI_IPR=m
+# CONFIG_SCSI_IPR_TRACE is not set
+# CONFIG_SCSI_IPR_DUMP is not set
# CONFIG_SCSI_PCI2000 is not set
# CONFIG_SCSI_PCI2220I 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_LPFC is not set
-# CONFIG_SCSI_DC395x is not set
-# CONFIG_SCSI_DC390T is not set
-# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_QLOGIC_ISP=m
+CONFIG_SCSI_QLOGIC_FC=m
+CONFIG_SCSI_QLOGIC_FC_FIRMWARE=y
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_QLOGIC_1280_1040=y
+CONFIG_SCSI_LPFC=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_DC390T=m
+CONFIG_SCSI_DEBUG=m
#
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
-CONFIG_BLK_DEV_MD=m
+CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=m
-CONFIG_MD_RAID0=m
-CONFIG_MD_RAID1=m
+CONFIG_MD_RAID0=y
+CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=m
-CONFIG_MD_RAID5=m
+CONFIG_MD_RAID5=y
CONFIG_MD_RAID6=m
# CONFIG_MD_MULTIPATH is not set
CONFIG_MD_FAULTY=m
@@ -418,17 +448,50 @@
#
# Fusion MPT device support
#
-# CONFIG_FUSION is not set
+CONFIG_FUSION=m
+CONFIG_FUSION_MAX_SGE=40
+CONFIG_FUSION_CTL=m
+CONFIG_FUSION_LAN=m
#
# IEEE 1394 (FireWire) support
#
-# CONFIG_IEEE1394 is not set
+CONFIG_IEEE1394=m
#
+# Subsystem Options
+#
+# CONFIG_IEEE1394_VERBOSEDEBUG is not set
+# CONFIG_IEEE1394_OUI_DB is not set
+CONFIG_IEEE1394_EXTRA_CONFIG_ROMS=y
+CONFIG_IEEE1394_CONFIG_ROM_IP1394=y
+
+#
+# Device Drivers
+#
+CONFIG_IEEE1394_PCILYNX=m
+CONFIG_IEEE1394_OHCI1394=m
+
+#
+# Protocol Drivers
+#
+CONFIG_IEEE1394_VIDEO1394=m
+CONFIG_IEEE1394_SBP2=m
+# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
+CONFIG_IEEE1394_ETH1394=m
+CONFIG_IEEE1394_DV1394=m
+CONFIG_IEEE1394_RAWIO=m
+CONFIG_IEEE1394_CMP=m
+CONFIG_IEEE1394_AMDTP=m
+
+#
# I2O device support
#
-# CONFIG_I2O is not set
+CONFIG_I2O=m
+CONFIG_I2O_CONFIG=m
+CONFIG_I2O_BLOCK=m
+CONFIG_I2O_SCSI=m
+CONFIG_I2O_PROC=m
#
# Networking support
@@ -438,20 +501,28 @@
#
# Networking options
#
-CONFIG_PACKET=y
+CONFIG_PACKET=m
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_NET_KEY=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
-# CONFIG_IP_ADVANCED_ROUTER is not set
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_FWMARK=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+# CONFIG_IP_ROUTE_MULTIPATH_CACHED is not set
+CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_IP_PNP=y
# CONFIG_IP_PNP_DHCP is not set
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_IP_MROUTE is not set
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not set
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=m
@@ -474,6 +545,7 @@
CONFIG_IPV6_TUNNEL=m
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_BRIDGE_NETFILTER=y
#
# IP: Netfilter Configuration
@@ -506,6 +578,7 @@
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_MATCH_CONNTRACK=m
CONFIG_IP_NF_MATCH_OWNER=m
+CONFIG_IP_NF_MATCH_PHYSDEV=m
CONFIG_IP_NF_MATCH_ADDRTYPE=m
CONFIG_IP_NF_MATCH_REALM=m
CONFIG_IP_NF_MATCH_SCTP=m
@@ -560,11 +633,41 @@
CONFIG_IP6_NF_MATCH_AHESP=m
CONFIG_IP6_NF_MATCH_LENGTH=m
CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_PHYSDEV=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_LOG=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_TARGET_MARK=m
CONFIG_IP6_NF_RAW=m
+
+#
+# DECnet: Netfilter Configuration
+#
+CONFIG_DECNET_NF_GRABULATOR=m
+
+#
+# Bridge: Netfilter Configuration
+#
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_ULOG=m
CONFIG_XFRM=y
CONFIG_XFRM_USER=y
@@ -577,29 +680,45 @@
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not set
CONFIG_SCTP_HMAC_MD5=y
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
+CONFIG_ATM=y
+CONFIG_ATM_CLIP=y
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_BRIDGE=m
# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
+CONFIG_DECNET=m
+# CONFIG_DECNET_ROUTER is not set
+CONFIG_LLC=m
+CONFIG_LLC2=m
+CONFIG_IPX=m
+# CONFIG_IPX_INTERN is not set
+CONFIG_ATALK=m
+CONFIG_DEV_APPLETALK=y
+CONFIG_IPDDP=m
+CONFIG_IPDDP_ENCAP=y
+CONFIG_IPDDP_DECAP=y
+CONFIG_X25=m
+CONFIG_LAPB=m
# CONFIG_NET_DIVERT is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
+CONFIG_ECONET=m
+CONFIG_ECONET_AUNUDP=y
+CONFIG_ECONET_NATIVE=y
+CONFIG_WAN_ROUTER=m
#
# QoS and/or fair queueing
#
CONFIG_NET_SCHED=y
-# CONFIG_NET_SCH_CLK_JIFFIES is not set
-CONFIG_NET_SCH_CLK_GETTIMEOFDAY=y
+CONFIG_NET_SCH_CLK_JIFFIES=y
+# CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set
# CONFIG_NET_SCH_CLK_CPU is not set
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFQ=m
@@ -620,7 +739,7 @@
CONFIG_NET_CLS_U32=m
# CONFIG_CLS_U32_PERF is not set
# CONFIG_NET_CLS_IND is not set
-CONFIG_CLS_U32_MARK=y
+# CONFIG_CLS_U32_MARK is not set
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_EMATCH=y
@@ -635,15 +754,107 @@
#
# Network testing
#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_IRDA is not set
-# CONFIG_BT is not set
+CONFIG_NET_PKTGEN=m
+CONFIG_NETPOLL=y
+# CONFIG_NETPOLL_RX is not set
+# CONFIG_NETPOLL_TRAP is not set
+CONFIG_NET_POLL_CONTROLLER=y
+CONFIG_HAMRADIO=y
+
+#
+# Packet Radio protocols
+#
+CONFIG_AX25=m
+# CONFIG_AX25_DAMA_SLAVE is not set
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+#
+# AX.25 network device drivers
+#
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_BAYCOM_PAR=m
+CONFIG_YAM=m
+CONFIG_IRDA=m
+
+#
+# IrDA protocols
+#
+CONFIG_IRLAN=m
+CONFIG_IRNET=m
+CONFIG_IRCOMM=m
+# CONFIG_IRDA_ULTRA is not set
+
+#
+# IrDA options
+#
+CONFIG_IRDA_CACHE_LAST_LSAP=y
+CONFIG_IRDA_FAST_RR=y
+CONFIG_IRDA_DEBUG=y
+
+#
+# Infrared-port device drivers
+#
+
+#
+# SIR device drivers
+#
+CONFIG_IRTTY_SIR=m
+
+#
+# Dongle support
+#
+CONFIG_DONGLE=y
+CONFIG_ESI_DONGLE=m
+CONFIG_ACTISYS_DONGLE=m
+CONFIG_TEKRAM_DONGLE=m
+CONFIG_LITELINK_DONGLE=m
+CONFIG_MA600_DONGLE=m
+CONFIG_GIRBIL_DONGLE=m
+CONFIG_MCP2120_DONGLE=m
+CONFIG_OLD_BELKIN_DONGLE=m
+CONFIG_ACT200L_DONGLE=m
+
+#
+# Old SIR device drivers
+#
+CONFIG_IRPORT_SIR=m
+
+#
+# Old Serial dongle support
+#
+# CONFIG_DONGLE_OLD is not set
+
+#
+# FIR device drivers
+#
+CONFIG_VLSI_FIR=m
+CONFIG_BT=m
+CONFIG_BT_L2CAP=m
+CONFIG_BT_SCO=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_CMTP=m
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+# CONFIG_BT_HCIUART_BCSP_TXCRC is not set
+CONFIG_BT_HCIVHCI=m
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
-# CONFIG_BONDING is not set
+CONFIG_BONDING=m
CONFIG_EQUALIZER=m
CONFIG_TUN=m
@@ -660,33 +871,74 @@
CONFIG_SGI_O2MACE_ETH=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
-# CONFIG_NET_VENDOR_3COM is not set
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
#
# Tulip family network device support
#
-# CONFIG_NET_TULIP is not set
-# CONFIG_HP100 is not set
-# CONFIG_NET_PCI is not set
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+# CONFIG_TULIP_NAPI is not set
+CONFIG_DE4X5=m
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_HP100=m
+CONFIG_NET_PCI=y
+CONFIG_PCNET32=m
+CONFIG_AMD8111_ETH=m
+# CONFIG_AMD8111E_NAPI is not set
+CONFIG_ADAPTEC_STARFIRE=m
+# CONFIG_ADAPTEC_STARFIRE_NAPI is not set
+CONFIG_B44=m
+# CONFIG_FORCEDETH is not set
+CONFIG_EEPRO100=m
+CONFIG_E100=m
+CONFIG_FEALNX=m
+CONFIG_NATSEMI=m
+CONFIG_NE2K_PCI=m
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+CONFIG_8139TOO_PIO=y
+CONFIG_8139TOO_TUNE_TWISTER=y
+CONFIG_8139TOO_8129=y
+# CONFIG_8139_OLD_RX_RESET is not set
+# CONFIG_SIS900 is not set
+CONFIG_EPIC100=m
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+CONFIG_VIA_RHINE=m
+# CONFIG_VIA_RHINE_MMIO is not set
+# CONFIG_LAN_SAA9730 is not set
#
# Ethernet (1000 Mbit)
#
-# CONFIG_DL2K is not set
-# CONFIG_E1000 is not set
-# CONFIG_NS83820 is not set
-# CONFIG_HAMACHI is not set
-# CONFIG_YELLOWFIN is not set
-# CONFIG_R8169 is not set
-# CONFIG_SK98LIN is not set
-# CONFIG_TIGON3 is not set
-# CONFIG_BNX2 is not set
+CONFIG_DL2K=m
+CONFIG_E1000=m
+# CONFIG_E1000_NAPI is not set
+CONFIG_NS83820=m
+CONFIG_HAMACHI=m
+CONFIG_YELLOWFIN=m
+CONFIG_R8169=m
+# CONFIG_R8169_NAPI is not set
+CONFIG_SK98LIN=m
+CONFIG_VIA_VELOCITY=m
+CONFIG_TIGON3=m
+CONFIG_BNX2=m
#
# Ethernet (10000 Mbit)
#
-# CONFIG_IXGB is not set
-# CONFIG_S2IO is not set
+CONFIG_IXGB=m
+# CONFIG_IXGB_NAPI is not set
+CONFIG_S2IO=m
+# CONFIG_S2IO_NAPI is not set
+# CONFIG_2BUFF_MODE is not set
#
# Token Ring devices
@@ -702,31 +954,168 @@
# Wan interfaces
#
# CONFIG_WAN is not set
+
+#
+# ATM drivers
+#
+# CONFIG_ATM_TCP is not set
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+# CONFIG_ATM_ZATM is not set
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_IDT77252_USE_SUNI=y
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+# CONFIG_ATM_HORIZON is not set
+CONFIG_ATM_FORE200E_MAYBE=m
+CONFIG_ATM_FORE200E_PCA=y
+CONFIG_ATM_FORE200E_PCA_DEFAULT_FW=y
+CONFIG_ATM_FORE200E_USE_TASKLET=y
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_FORE200E=m
+CONFIG_ATM_HE=m
+# CONFIG_ATM_HE_USE_SUNI is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=m
-# CONFIG_PPP_MULTILINK is not set
+CONFIG_PPP_MULTILINK=y
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPPOE=m
+CONFIG_PPPOATM=m
CONFIG_SLIP=m
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
CONFIG_SLIP_MODE_SLIP6=y
-# CONFIG_NET_FC is not set
-# CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
+CONFIG_NET_FC=y
+CONFIG_SHAPER=m
+CONFIG_NETCONSOLE=m
#
# ISDN subsystem
#
-# CONFIG_ISDN is not set
+CONFIG_ISDN=m
#
+# Old ISDN4Linux
+#
+CONFIG_ISDN_I4L=m
+CONFIG_ISDN_PPP=y
+CONFIG_ISDN_PPP_VJ=y
+CONFIG_ISDN_MPP=y
+CONFIG_IPPP_FILTER=y
+CONFIG_ISDN_PPP_BSDCOMP=m
+CONFIG_ISDN_AUDIO=y
+CONFIG_ISDN_TTY_FAX=y
+CONFIG_ISDN_X25=y
+
+#
+# ISDN feature submodules
+#
+# CONFIG_ISDN_DRV_LOOP is not set
+# CONFIG_ISDN_DIVERSION is not set
+
+#
+# ISDN4Linux hardware drivers
+#
+
+#
+# Passive cards
+#
+CONFIG_ISDN_DRV_HISAX=m
+
+#
+# D-channel protocol features
+#
+CONFIG_HISAX_EURO=y
+CONFIG_DE_AOC=y
+# CONFIG_HISAX_NO_SENDCOMPLETE is not set
+# CONFIG_HISAX_NO_LLC is not set
+# CONFIG_HISAX_NO_KEYPAD is not set
+CONFIG_HISAX_1TR6=y
+CONFIG_HISAX_NI1=y
+CONFIG_HISAX_MAX_CARDS=8
+
+#
+# HiSax supported cards
+#
+CONFIG_HISAX_16_3=y
+# CONFIG_HISAX_TELESPCI is not set
+CONFIG_HISAX_S0BOX=y
+CONFIG_HISAX_FRITZPCI=y
+CONFIG_HISAX_AVM_A1_PCMCIA=y
+CONFIG_HISAX_ELSA=y
+CONFIG_HISAX_DIEHLDIVA=y
+CONFIG_HISAX_SEDLBAUER=y
+# CONFIG_HISAX_NETJET is not set
+# CONFIG_HISAX_NETJET_U is not set
+CONFIG_HISAX_NICCY=y
+CONFIG_HISAX_BKM_A4T=y
+CONFIG_HISAX_SCT_QUADRO=y
+CONFIG_HISAX_GAZEL=y
+# CONFIG_HISAX_HFC_PCI is not set
+CONFIG_HISAX_W6692=y
+CONFIG_HISAX_HFC_SX=y
+# CONFIG_HISAX_ENTERNOW_PCI is not set
+# CONFIG_HISAX_DEBUG is not set
+
+#
+# HiSax PCMCIA card service modules
+#
+
+#
+# HiSax sub driver modules
+#
+CONFIG_HISAX_HFC4S8S=m
+CONFIG_HISAX_FRITZ_PCIPNP=m
+
+#
+# Active cards
+#
+CONFIG_HYSDN=m
+CONFIG_HYSDN_CAPI=y
+
+#
+# CAPI subsystem
+#
+CONFIG_ISDN_CAPI=m
+CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
+CONFIG_ISDN_CAPI_MIDDLEWARE=y
+CONFIG_ISDN_CAPI_CAPI20=m
+CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
+CONFIG_ISDN_CAPI_CAPIFS=m
+CONFIG_ISDN_CAPI_CAPIDRV=m
+
+#
+# CAPI hardware drivers
+#
+
+#
+# Active AVM cards
+#
+CONFIG_CAPI_AVM=y
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
+CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
+
+#
+# Active Eicon DIVA Server cards
+#
+# CONFIG_CAPI_EICON is not set
+
+#
# Telephony Support
#
# CONFIG_PHONE is not set
@@ -746,7 +1135,7 @@
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
CONFIG_INPUT_EVDEV=m
-# CONFIG_INPUT_EVBUG is not set
+CONFIG_INPUT_EVBUG=m
#
# Input Device Drivers
@@ -799,19 +1188,24 @@
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
-# CONFIG_SERIAL_JSM is not set
+CONFIG_SERIAL_JSM=m
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
CONFIG_PRINTER=m
# CONFIG_LP_CONSOLE is not set
-# CONFIG_PPDEV is not set
-# CONFIG_TIPAR is not set
+CONFIG_PPDEV=m
+CONFIG_TIPAR=m
#
# IPMI
#
-# CONFIG_IPMI_HANDLER is not set
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+# CONFIG_IPMI_SI is not set
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
#
# Watchdog Cards
@@ -856,7 +1250,7 @@
#
# I2C Algorithms
#
-# CONFIG_I2C_ALGOBIT is not set
+CONFIG_I2C_ALGOBIT=m
# CONFIG_I2C_ALGOPCF is not set
# CONFIG_I2C_ALGOPCA is not set
CONFIG_I2C_ALGO_SGI=m
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/sb1-swarm-bn
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/sb1-swarm-bn 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mips/sb1-swarm-bn 2005-08-17 19:38:05 UTC (rev 3964)
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.12
-# Wed Jul 13 16:26:48 2005
+# Wed Aug 17 18:59:04 2005
#
CONFIG_MIPS=y
@@ -25,11 +25,10 @@
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
CONFIG_SYSCTL=y
-CONFIG_AUDIT=y
+# CONFIG_AUDIT is not set
CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
-CONFIG_IKCONFIG=y
-CONFIG_IKCONFIG_PROC=y
+# CONFIG_IKCONFIG is not set
# CONFIG_CPUSETS is not set
CONFIG_EMBEDDED=y
CONFIG_KALLSYMS=y
@@ -53,7 +52,7 @@
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
+CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
@@ -257,22 +256,25 @@
# Block devices
#
# CONFIG_BLK_DEV_FD 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_UMEM is not set
+CONFIG_BLK_CPQ_DA=m
+CONFIG_BLK_CPQ_CISS_DA=m
+CONFIG_CISS_SCSI_TAPE=y
+CONFIG_BLK_DEV_DAC960=m
+CONFIG_BLK_DEV_UMEM=m
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
-# CONFIG_BLK_DEV_SX8 is not set
+CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_CDROM_PKTCDVD is not set
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
#
# IO Schedulers
@@ -281,7 +283,7 @@
CONFIG_IOSCHED_AS=m
CONFIG_IOSCHED_DEADLINE=m
CONFIG_IOSCHED_CFQ=m
-# CONFIG_ATA_OVER_ETH is not set
+CONFIG_ATA_OVER_ETH=m
#
# ATA/ATAPI/MFM/RLL support
@@ -356,7 +358,7 @@
#
CONFIG_BLK_DEV_SD=m
CONFIG_CHR_DEV_ST=m
-# CONFIG_CHR_DEV_OSST is not set
+CONFIG_CHR_DEV_OSST=m
CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SR_VENDOR is not set
CONFIG_CHR_DEV_SG=m
@@ -384,19 +386,19 @@
CONFIG_SCSI_ACARD=m
CONFIG_SCSI_AACRAID=m
CONFIG_SCSI_AIC7XXX=m
-CONFIG_AIC7XXX_CMDS_PER_DEVICE=8
-CONFIG_AIC7XXX_RESET_DELAY_MS=15000
-# CONFIG_AIC7XXX_DEBUG_ENABLE is not set
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
+CONFIG_AIC7XXX_RESET_DELAY_MS=5000
+CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
-# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set
+CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
CONFIG_SCSI_AIC7XXX_OLD=m
CONFIG_SCSI_AIC79XX=m
CONFIG_AIC79XX_CMDS_PER_DEVICE=32
-CONFIG_AIC79XX_RESET_DELAY_MS=15000
-# CONFIG_AIC79XX_ENABLE_RD_STRM is not set
-# CONFIG_AIC79XX_DEBUG_ENABLE is not set
+CONFIG_AIC79XX_RESET_DELAY_MS=5000
+CONFIG_AIC79XX_ENABLE_RD_STRM=y
+CONFIG_AIC79XX_DEBUG_ENABLE=y
CONFIG_AIC79XX_DEBUG_MASK=0
-# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
+CONFIG_AIC79XX_REG_PRETTY_PRINT=y
CONFIG_SCSI_ADVANSYS=m
CONFIG_MEGARAID_NEWGEN=y
CONFIG_MEGARAID_MM=m
@@ -419,26 +421,28 @@
CONFIG_SCSI_DMX3191D=m
CONFIG_SCSI_EATA_PIO=m
CONFIG_SCSI_FUTURE_DOMAIN=m
-# CONFIG_SCSI_IPS is not set
+CONFIG_SCSI_IPS=m
CONFIG_SCSI_INITIO=m
-CONFIG_SCSI_INIA100=m
+# CONFIG_SCSI_INIA100 is not set
CONFIG_SCSI_SYM53C8XX_2=m
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
# CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set
-# CONFIG_SCSI_IPR is not set
+CONFIG_SCSI_IPR=m
+# CONFIG_SCSI_IPR_TRACE is not set
+# CONFIG_SCSI_IPR_DUMP is not set
# CONFIG_SCSI_PCI2000 is not set
# CONFIG_SCSI_PCI2220I is not set
-# CONFIG_SCSI_QLOGIC_ISP is not set
+CONFIG_SCSI_QLOGIC_ISP=m
CONFIG_SCSI_QLOGIC_FC=m
CONFIG_SCSI_QLOGIC_FC_FIRMWARE=y
CONFIG_SCSI_QLOGIC_1280=m
CONFIG_SCSI_QLOGIC_1280_1040=y
CONFIG_SCSI_LPFC=m
-# CONFIG_SCSI_DC395x is not set
+CONFIG_SCSI_DC395x=m
CONFIG_SCSI_DC390T=m
-# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_DEBUG=m
#
# PCMCIA SCSI adapter support
@@ -451,14 +455,14 @@
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
-CONFIG_BLK_DEV_MD=m
+CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=m
-CONFIG_MD_RAID0=m
-CONFIG_MD_RAID1=m
+CONFIG_MD_RAID0=y
+CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=m
-CONFIG_MD_RAID5=m
+CONFIG_MD_RAID5=y
CONFIG_MD_RAID6=m
-CONFIG_MD_MULTIPATH=m
+# CONFIG_MD_MULTIPATH is not set
CONFIG_MD_FAULTY=m
CONFIG_BLK_DEV_DM=m
CONFIG_DM_CRYPT=m
@@ -470,17 +474,50 @@
#
# Fusion MPT device support
#
-# CONFIG_FUSION is not set
+CONFIG_FUSION=m
+CONFIG_FUSION_MAX_SGE=40
+CONFIG_FUSION_CTL=m
+CONFIG_FUSION_LAN=m
#
# IEEE 1394 (FireWire) support
#
-# CONFIG_IEEE1394 is not set
+CONFIG_IEEE1394=m
#
+# Subsystem Options
+#
+# CONFIG_IEEE1394_VERBOSEDEBUG is not set
+# CONFIG_IEEE1394_OUI_DB is not set
+CONFIG_IEEE1394_EXTRA_CONFIG_ROMS=y
+CONFIG_IEEE1394_CONFIG_ROM_IP1394=y
+
+#
+# Device Drivers
+#
+CONFIG_IEEE1394_PCILYNX=m
+CONFIG_IEEE1394_OHCI1394=m
+
+#
+# Protocol Drivers
+#
+CONFIG_IEEE1394_VIDEO1394=m
+CONFIG_IEEE1394_SBP2=m
+# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
+CONFIG_IEEE1394_ETH1394=m
+CONFIG_IEEE1394_DV1394=m
+CONFIG_IEEE1394_RAWIO=m
+CONFIG_IEEE1394_CMP=m
+CONFIG_IEEE1394_AMDTP=m
+
+#
# I2O device support
#
-# CONFIG_I2O is not set
+CONFIG_I2O=m
+CONFIG_I2O_CONFIG=m
+CONFIG_I2O_BLOCK=m
+CONFIG_I2O_SCSI=m
+CONFIG_I2O_PROC=m
#
# Networking support
@@ -490,19 +527,32 @@
#
# Networking options
#
-CONFIG_PACKET=y
+CONFIG_PACKET=m
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_NET_KEY=m
CONFIG_INET=y
-# CONFIG_IP_MULTICAST is not set
-# CONFIG_IP_ADVANCED_ROUTER is not set
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_FWMARK=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_MULTIPATH_CACHED=y
+CONFIG_IP_ROUTE_MULTIPATH_RR=m
+CONFIG_IP_ROUTE_MULTIPATH_RANDOM=m
+CONFIG_IP_ROUTE_MULTIPATH_WRANDOM=m
+CONFIG_IP_ROUTE_MULTIPATH_DRR=m
+CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_IP_PNP=y
# CONFIG_IP_PNP_DHCP is not set
CONFIG_IP_PNP_BOOTP=y
# CONFIG_IP_PNP_RARP is not set
-CONFIG_NET_IPIP=m
+# CONFIG_NET_IPIP is not set
CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not set
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=m
@@ -525,6 +575,7 @@
CONFIG_IPV6_TUNNEL=m
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_BRIDGE_NETFILTER=y
#
# IP: Netfilter Configuration
@@ -557,6 +608,7 @@
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_MATCH_CONNTRACK=m
CONFIG_IP_NF_MATCH_OWNER=m
+CONFIG_IP_NF_MATCH_PHYSDEV=m
CONFIG_IP_NF_MATCH_ADDRTYPE=m
CONFIG_IP_NF_MATCH_REALM=m
CONFIG_IP_NF_MATCH_SCTP=m
@@ -586,7 +638,7 @@
CONFIG_IP_NF_TARGET_MARK=m
CONFIG_IP_NF_TARGET_CLASSIFY=m
CONFIG_IP_NF_TARGET_CONNMARK=m
-# CONFIG_IP_NF_TARGET_CLUSTERIP is not set
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_TARGET_NOTRACK=m
CONFIG_IP_NF_ARPTABLES=m
@@ -611,11 +663,41 @@
CONFIG_IP6_NF_MATCH_AHESP=m
CONFIG_IP6_NF_MATCH_LENGTH=m
CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_PHYSDEV=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_LOG=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_TARGET_MARK=m
CONFIG_IP6_NF_RAW=m
+
+#
+# DECnet: Netfilter Configuration
+#
+CONFIG_DECNET_NF_GRABULATOR=m
+
+#
+# Bridge: Netfilter Configuration
+#
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_ULOG=m
CONFIG_XFRM=y
CONFIG_XFRM_USER=y
@@ -628,18 +710,33 @@
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not set
CONFIG_SCTP_HMAC_MD5=y
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
+CONFIG_ATM=y
+CONFIG_ATM_CLIP=y
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_BRIDGE=m
# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
+CONFIG_DECNET=m
+# CONFIG_DECNET_ROUTER is not set
+CONFIG_LLC=m
+CONFIG_LLC2=m
+CONFIG_IPX=m
+# CONFIG_IPX_INTERN is not set
+CONFIG_ATALK=m
+CONFIG_DEV_APPLETALK=y
+CONFIG_IPDDP=m
+CONFIG_IPDDP_ENCAP=y
+CONFIG_IPDDP_DECAP=y
+CONFIG_X25=m
+CONFIG_LAPB=m
# CONFIG_NET_DIVERT is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
+CONFIG_ECONET=m
+CONFIG_ECONET_AUNUDP=y
+CONFIG_ECONET_NATIVE=y
+CONFIG_WAN_ROUTER=m
#
# QoS and/or fair queueing
@@ -651,6 +748,7 @@
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFQ=m
@@ -671,7 +769,7 @@
CONFIG_NET_CLS_U32=m
# CONFIG_CLS_U32_PERF is not set
# CONFIG_NET_CLS_IND is not set
-CONFIG_CLS_U32_MARK=y
+# CONFIG_CLS_U32_MARK is not set
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_EMATCH=y
@@ -686,12 +784,114 @@
#
# Network testing
#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_IRDA is not set
-# CONFIG_BT is not set
+CONFIG_NET_PKTGEN=m
+CONFIG_NETPOLL=y
+# CONFIG_NETPOLL_RX is not set
+# CONFIG_NETPOLL_TRAP is not set
+CONFIG_NET_POLL_CONTROLLER=y
+CONFIG_HAMRADIO=y
+
+#
+# Packet Radio protocols
+#
+CONFIG_AX25=m
+# CONFIG_AX25_DAMA_SLAVE is not set
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+#
+# AX.25 network device drivers
+#
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_YAM=m
+CONFIG_IRDA=m
+
+#
+# IrDA protocols
+#
+CONFIG_IRLAN=m
+CONFIG_IRNET=m
+CONFIG_IRCOMM=m
+# CONFIG_IRDA_ULTRA is not set
+
+#
+# IrDA options
+#
+CONFIG_IRDA_CACHE_LAST_LSAP=y
+CONFIG_IRDA_FAST_RR=y
+CONFIG_IRDA_DEBUG=y
+
+#
+# Infrared-port device drivers
+#
+
+#
+# SIR device drivers
+#
+CONFIG_IRTTY_SIR=m
+
+#
+# Dongle support
+#
+CONFIG_DONGLE=y
+CONFIG_ESI_DONGLE=m
+CONFIG_ACTISYS_DONGLE=m
+CONFIG_TEKRAM_DONGLE=m
+CONFIG_LITELINK_DONGLE=m
+CONFIG_MA600_DONGLE=m
+CONFIG_GIRBIL_DONGLE=m
+CONFIG_MCP2120_DONGLE=m
+CONFIG_OLD_BELKIN_DONGLE=m
+CONFIG_ACT200L_DONGLE=m
+
+#
+# Old SIR device drivers
+#
+CONFIG_IRPORT_SIR=m
+
+#
+# Old Serial dongle support
+#
+# CONFIG_DONGLE_OLD is not set
+
+#
+# FIR device drivers
+#
+CONFIG_USB_IRDA=m
+CONFIG_SIGMATEL_FIR=m
+CONFIG_VLSI_FIR=m
+CONFIG_BT=m
+CONFIG_BT_L2CAP=m
+CONFIG_BT_SCO=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_CMTP=m
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIUSB=m
+CONFIG_BT_HCIUSB_SCO=y
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+# CONFIG_BT_HCIUART_BCSP_TXCRC is not set
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIDTL1=m
+CONFIG_BT_HCIBT3C=m
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIVHCI=m
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
CONFIG_BONDING=m
@@ -730,9 +930,9 @@
CONFIG_NET_PCI=y
CONFIG_PCNET32=m
CONFIG_AMD8111_ETH=m
-CONFIG_AMD8111E_NAPI=y
+# CONFIG_AMD8111E_NAPI is not set
CONFIG_ADAPTEC_STARFIRE=m
-CONFIG_ADAPTEC_STARFIRE_NAPI=y
+# CONFIG_ADAPTEC_STARFIRE_NAPI is not set
CONFIG_B44=m
# CONFIG_FORCEDETH is not set
CONFIG_EEPRO100=m
@@ -742,16 +942,16 @@
CONFIG_NE2K_PCI=m
CONFIG_8139CP=m
CONFIG_8139TOO=m
-# CONFIG_8139TOO_PIO is not set
-# CONFIG_8139TOO_TUNE_TWISTER is not set
-# CONFIG_8139TOO_8129 is not set
+CONFIG_8139TOO_PIO=y
+CONFIG_8139TOO_TUNE_TWISTER=y
+CONFIG_8139TOO_8129=y
# CONFIG_8139_OLD_RX_RESET is not set
# CONFIG_SIS900 is not set
CONFIG_EPIC100=m
CONFIG_SUNDANCE=m
-CONFIG_SUNDANCE_MMIO=y
+# CONFIG_SUNDANCE_MMIO is not set
CONFIG_VIA_RHINE=m
-CONFIG_VIA_RHINE_MMIO=y
+# CONFIG_VIA_RHINE_MMIO is not set
# CONFIG_LAN_SAA9730 is not set
#
@@ -759,12 +959,12 @@
#
CONFIG_DL2K=m
CONFIG_E1000=m
-CONFIG_E1000_NAPI=y
+# CONFIG_E1000_NAPI is not set
CONFIG_NS83820=m
CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
CONFIG_R8169=m
-CONFIG_R8169_NAPI=y
+# CONFIG_R8169_NAPI is not set
CONFIG_NET_SB1250_MAC=y
CONFIG_SK98LIN=m
CONFIG_VIA_VELOCITY=m
@@ -775,9 +975,9 @@
# Ethernet (10000 Mbit)
#
CONFIG_IXGB=m
-CONFIG_IXGB_NAPI=y
+# CONFIG_IXGB_NAPI is not set
CONFIG_S2IO=m
-CONFIG_S2IO_NAPI=y
+# CONFIG_S2IO_NAPI is not set
# CONFIG_2BUFF_MODE is not set
#
@@ -799,6 +999,34 @@
# Wan interfaces
#
# CONFIG_WAN is not set
+
+#
+# ATM drivers
+#
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+# CONFIG_ATM_ZATM_DEBUG is not set
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_IDT77252_USE_SUNI=y
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+# CONFIG_ATM_HORIZON is not set
+CONFIG_ATM_FORE200E_MAYBE=m
+CONFIG_ATM_FORE200E_PCA=y
+CONFIG_ATM_FORE200E_PCA_DEFAULT_FW=y
+CONFIG_ATM_FORE200E_USE_TASKLET=y
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_FORE200E=m
+CONFIG_ATM_HE=m
+# CONFIG_ATM_HE_USE_SUNI is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
CONFIG_PPP=m
@@ -809,20 +1037,138 @@
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPPOE=m
+CONFIG_PPPOATM=m
CONFIG_SLIP=m
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
CONFIG_SLIP_MODE_SLIP6=y
-# CONFIG_NET_FC is not set
-# CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
+CONFIG_NET_FC=y
+CONFIG_SHAPER=m
+CONFIG_NETCONSOLE=m
#
# ISDN subsystem
#
-# CONFIG_ISDN is not set
+CONFIG_ISDN=m
#
+# Old ISDN4Linux
+#
+CONFIG_ISDN_I4L=m
+CONFIG_ISDN_PPP=y
+CONFIG_ISDN_PPP_VJ=y
+CONFIG_ISDN_MPP=y
+CONFIG_IPPP_FILTER=y
+CONFIG_ISDN_PPP_BSDCOMP=m
+CONFIG_ISDN_AUDIO=y
+CONFIG_ISDN_TTY_FAX=y
+CONFIG_ISDN_X25=y
+
+#
+# ISDN feature submodules
+#
+# CONFIG_ISDN_DRV_LOOP is not set
+# CONFIG_ISDN_DIVERSION is not set
+
+#
+# ISDN4Linux hardware drivers
+#
+
+#
+# Passive cards
+#
+CONFIG_ISDN_DRV_HISAX=m
+
+#
+# D-channel protocol features
+#
+CONFIG_HISAX_EURO=y
+CONFIG_DE_AOC=y
+# CONFIG_HISAX_NO_SENDCOMPLETE is not set
+# CONFIG_HISAX_NO_LLC is not set
+# CONFIG_HISAX_NO_KEYPAD is not set
+CONFIG_HISAX_1TR6=y
+CONFIG_HISAX_NI1=y
+CONFIG_HISAX_MAX_CARDS=8
+
+#
+# HiSax supported cards
+#
+CONFIG_HISAX_16_3=y
+# CONFIG_HISAX_TELESPCI is not set
+CONFIG_HISAX_S0BOX=y
+CONFIG_HISAX_FRITZPCI=y
+CONFIG_HISAX_AVM_A1_PCMCIA=y
+CONFIG_HISAX_ELSA=y
+CONFIG_HISAX_DIEHLDIVA=y
+CONFIG_HISAX_SEDLBAUER=y
+# CONFIG_HISAX_NETJET is not set
+# CONFIG_HISAX_NETJET_U is not set
+CONFIG_HISAX_NICCY=y
+CONFIG_HISAX_BKM_A4T=y
+CONFIG_HISAX_SCT_QUADRO=y
+CONFIG_HISAX_GAZEL=y
+# CONFIG_HISAX_HFC_PCI is not set
+CONFIG_HISAX_W6692=y
+CONFIG_HISAX_HFC_SX=y
+# CONFIG_HISAX_ENTERNOW_PCI is not set
+# CONFIG_HISAX_DEBUG is not set
+
+#
+# HiSax PCMCIA card service modules
+#
+CONFIG_HISAX_SEDLBAUER_CS=m
+CONFIG_HISAX_ELSA_CS=m
+CONFIG_HISAX_AVM_A1_CS=m
+CONFIG_HISAX_TELES_CS=m
+
+#
+# HiSax sub driver modules
+#
+CONFIG_HISAX_ST5481=m
+CONFIG_HISAX_HFCUSB=m
+CONFIG_HISAX_HFC4S8S=m
+CONFIG_HISAX_FRITZ_PCIPNP=m
+CONFIG_HISAX_HDLC=y
+
+#
+# Active cards
+#
+CONFIG_HYSDN=m
+CONFIG_HYSDN_CAPI=y
+
+#
+# CAPI subsystem
+#
+CONFIG_ISDN_CAPI=m
+CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
+CONFIG_ISDN_CAPI_MIDDLEWARE=y
+CONFIG_ISDN_CAPI_CAPI20=m
+CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
+CONFIG_ISDN_CAPI_CAPIFS=m
+CONFIG_ISDN_CAPI_CAPIDRV=m
+
+#
+# CAPI hardware drivers
+#
+
+#
+# Active AVM cards
+#
+CONFIG_CAPI_AVM=y
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
+CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
+CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
+
+#
+# Active Eicon DIVA Server cards
+#
+# CONFIG_CAPI_EICON is not set
+
+#
# Telephony Support
#
# CONFIG_PHONE is not set
@@ -842,7 +1188,7 @@
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
CONFIG_INPUT_EVDEV=m
-# CONFIG_INPUT_EVBUG is not set
+CONFIG_INPUT_EVBUG=m
#
# Input Device Drivers
@@ -899,7 +1245,12 @@
#
# IPMI
#
-# CONFIG_IPMI_HANDLER is not set
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+# CONFIG_IPMI_SI is not set
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
#
# Watchdog Cards
@@ -1305,7 +1656,10 @@
# USB Device Class drivers
#
CONFIG_USB_AUDIO=m
-CONFIG_USB_BLUETOOTH_TTY=m
+
+#
+# USB Bluetooth TTY can only be used with disabled Bluetooth subsystem
+#
CONFIG_USB_MIDI=m
CONFIG_USB_ACM=m
CONFIG_USB_PRINTER=m
@@ -1455,6 +1809,8 @@
#
# USB ATM/DSL drivers
#
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
#
# USB Gadget Support
Added: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mipsel/r5k-cobalt
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mipsel/r5k-cobalt 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mipsel/r5k-cobalt 2005-08-17 19:38:05 UTC (rev 3964)
@@ -0,0 +1,1226 @@
+#
+# Automatically generated make config: don't edit
+# Linux kernel version: 2.6.12
+# Wed Aug 17 20:25:21 2005
+#
+CONFIG_MIPS=y
+
+#
+# Code maturity level options
+#
+CONFIG_EXPERIMENTAL=y
+# CONFIG_CLEAN_COMPILE is not set
+CONFIG_BROKEN=y
+CONFIG_BROKEN_ON_SMP=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
+
+#
+# General setup
+#
+CONFIG_LOCALVERSION=""
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_BSD_PROCESS_ACCT=y
+# CONFIG_BSD_PROCESS_ACCT_V3 is not set
+CONFIG_SYSCTL=y
+# CONFIG_AUDIT is not set
+CONFIG_HOTPLUG=y
+CONFIG_KOBJECT_UEVENT=y
+# CONFIG_IKCONFIG is not set
+CONFIG_EMBEDDED=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_EXTRA_PASS is not set
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_SHMEM=y
+CONFIG_CC_ALIGN_FUNCTIONS=0
+CONFIG_CC_ALIGN_LABELS=0
+CONFIG_CC_ALIGN_LOOPS=0
+CONFIG_CC_ALIGN_JUMPS=0
+# CONFIG_TINY_SHMEM is not set
+CONFIG_BASE_SMALL=0
+
+#
+# Loadable module support
+#
+CONFIG_MODULES=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODULE_FORCE_UNLOAD=y
+CONFIG_OBSOLETE_MODPARM=y
+CONFIG_MODVERSIONS=y
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+CONFIG_KMOD=y
+
+#
+# Machine selection
+#
+# CONFIG_MIPS_MTX1 is not set
+# CONFIG_MIPS_BOSPORUS is not set
+# CONFIG_MIPS_PB1000 is not set
+# CONFIG_MIPS_PB1100 is not set
+# CONFIG_MIPS_PB1500 is not set
+# CONFIG_MIPS_PB1550 is not set
+# CONFIG_MIPS_PB1200 is not set
+# CONFIG_MIPS_DB1000 is not set
+# CONFIG_MIPS_DB1100 is not set
+# CONFIG_MIPS_DB1500 is not set
+# CONFIG_MIPS_DB1550 is not set
+# CONFIG_MIPS_DB1200 is not set
+# CONFIG_MIPS_MIRAGE is not set
+CONFIG_MIPS_COBALT=y
+# CONFIG_MACH_DECSTATION is not set
+# CONFIG_MIPS_EV64120 is not set
+# CONFIG_MIPS_EV96100 is not set
+# CONFIG_MIPS_IVR is not set
+# CONFIG_MIPS_ITE8172 is not set
+# CONFIG_MACH_JAZZ is not set
+# CONFIG_LASAT is not set
+# CONFIG_MIPS_ATLAS is not set
+# CONFIG_MIPS_MALTA is not set
+# CONFIG_MIPS_SEAD is not set
+# CONFIG_MOMENCO_JAGUAR_ATX is not set
+# CONFIG_MOMENCO_OCELOT is not set
+# CONFIG_MOMENCO_OCELOT_3 is not set
+# CONFIG_MOMENCO_OCELOT_C is not set
+# CONFIG_MOMENCO_OCELOT_G is not set
+# CONFIG_MIPS_XXS1500 is not set
+# CONFIG_DDB5074 is not set
+# CONFIG_DDB5476 is not set
+# CONFIG_DDB5477 is not set
+# CONFIG_MACH_VR41XX is not set
+# CONFIG_PMC_YOSEMITE is not set
+# CONFIG_SGI_IP22 is not set
+# CONFIG_SGI_IP27 is not set
+# CONFIG_SGI_IP30 is not set
+# CONFIG_SGI_IP32 is not set
+# CONFIG_SIBYTE_SWARM is not set
+# CONFIG_SIBYTE_SENTOSA is not set
+# CONFIG_SIBYTE_RHONE is not set
+# CONFIG_SIBYTE_CARMEL is not set
+# CONFIG_SIBYTE_PTSWARM is not set
+# CONFIG_SIBYTE_LITTLESUR is not set
+# CONFIG_SIBYTE_CRHINE is not set
+# CONFIG_SIBYTE_CRHONE is not set
+# CONFIG_SNI_RM200_PCI is not set
+# CONFIG_TOSHIBA_JMR3927 is not set
+# CONFIG_TOSHIBA_RBTX4927 is not set
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_HAVE_DEC_LOCK=y
+CONFIG_DMA_NONCOHERENT=y
+CONFIG_I8259=y
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
+CONFIG_IRQ_CPU=y
+CONFIG_MIPS_GT64111=y
+CONFIG_MIPS_L1_CACHE_SHIFT=5
+
+#
+# CPU selection
+#
+# CONFIG_CPU_MIPS32_R1 is not set
+# CONFIG_CPU_MIPS64_R1 is not set
+# CONFIG_CPU_R3000 is not set
+# CONFIG_CPU_TX39XX is not set
+# CONFIG_CPU_VR41XX is not set
+# CONFIG_CPU_R4300 is not set
+# CONFIG_CPU_R4X00 is not set
+# CONFIG_CPU_TX49XX is not set
+# CONFIG_CPU_R5000 is not set
+# CONFIG_CPU_R5432 is not set
+# CONFIG_CPU_R6000 is not set
+CONFIG_CPU_NEVADA=y
+# CONFIG_CPU_R8000 is not set
+# CONFIG_CPU_R10000 is not set
+# CONFIG_CPU_RM7000 is not set
+# CONFIG_CPU_RM9000 is not set
+# CONFIG_CPU_SB1 is not set
+CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
+CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y
+CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
+CONFIG_CPU_SUPPORTS_64BIT_KERNEL=y
+
+#
+# Kernel type
+#
+# CONFIG_MIPS32 is not set
+CONFIG_MIPS64=y
+CONFIG_64BIT=y
+CONFIG_PAGE_SIZE_4KB=y
+# CONFIG_PAGE_SIZE_8KB is not set
+# CONFIG_PAGE_SIZE_16KB is not set
+# CONFIG_PAGE_SIZE_64KB is not set
+CONFIG_CPU_HAS_LLSC=y
+CONFIG_CPU_HAS_LLDSCD=y
+CONFIG_CPU_HAS_SYNC=y
+# CONFIG_PREEMPT is not set
+
+#
+# Bus options (PCI, PCMCIA, EISA, ISA, TC)
+#
+CONFIG_HW_HAS_PCI=y
+CONFIG_PCI=y
+CONFIG_PCI_LEGACY_PROC=y
+CONFIG_PCI_NAMES=y
+# CONFIG_SGI_IOC3 is not set
+CONFIG_MMU=y
+
+#
+# PCCARD (PCMCIA/CardBus) support
+#
+# CONFIG_PCCARD is not set
+
+#
+# PCI Hotplug Support
+#
+# CONFIG_HOTPLUG_PCI is not set
+
+#
+# Executable file formats
+#
+CONFIG_BINFMT_ELF=y
+# CONFIG_BINFMT_MISC is not set
+CONFIG_BUILD_ELF64=y
+CONFIG_MIPS32_COMPAT=y
+CONFIG_COMPAT=y
+CONFIG_MIPS32_O32=y
+CONFIG_MIPS32_N32=y
+CONFIG_BINFMT_ELF32=y
+CONFIG_SECCOMP=y
+
+#
+# Device Drivers
+#
+
+#
+# Generic Driver Options
+#
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+# CONFIG_FW_LOADER is not set
+
+#
+# Memory Technology Devices (MTD)
+#
+# CONFIG_MTD is not set
+
+#
+# Parallel port support
+#
+# CONFIG_PARPORT is not set
+
+#
+# Plug and Play support
+#
+
+#
+# Block devices
+#
+# CONFIG_BLK_DEV_FD 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_UMEM is not set
+# CONFIG_BLK_DEV_COW_COMMON is not set
+CONFIG_BLK_DEV_LOOP=m
+# CONFIG_BLK_DEV_CRYPTOLOOP is not set
+CONFIG_BLK_DEV_NBD=m
+# CONFIG_BLK_DEV_SX8 is not set
+# CONFIG_BLK_DEV_UB is not set
+CONFIG_BLK_DEV_RAM=y
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=8192
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+# CONFIG_CDROM_PKTCDVD is not set
+
+#
+# IO Schedulers
+#
+CONFIG_IOSCHED_NOOP=y
+CONFIG_IOSCHED_AS=y
+CONFIG_IOSCHED_DEADLINE=y
+CONFIG_IOSCHED_CFQ=y
+# CONFIG_ATA_OVER_ETH is not set
+
+#
+# ATA/ATAPI/MFM/RLL support
+#
+CONFIG_IDE=y
+CONFIG_BLK_DEV_IDE=y
+
+#
+# Please see Documentation/ide.txt for help/info on IDE drives
+#
+# CONFIG_BLK_DEV_IDE_SATA is not set
+CONFIG_BLK_DEV_IDEDISK=y
+# CONFIG_IDEDISK_MULTI_MODE is not set
+CONFIG_BLK_DEV_IDECD=m
+# CONFIG_BLK_DEV_IDETAPE is not set
+# CONFIG_BLK_DEV_IDEFLOPPY is not set
+# CONFIG_BLK_DEV_IDESCSI is not set
+# CONFIG_IDE_TASK_IOCTL is not set
+
+#
+# IDE chipset support/bugfixes
+#
+CONFIG_IDE_GENERIC=y
+CONFIG_BLK_DEV_IDEPCI=y
+# CONFIG_IDEPCI_SHARE_IRQ is not set
+# CONFIG_BLK_DEV_OFFBOARD is not set
+# CONFIG_BLK_DEV_GENERIC is not set
+# CONFIG_BLK_DEV_OPTI621 is not set
+CONFIG_BLK_DEV_IDEDMA_PCI=y
+# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
+# CONFIG_IDEDMA_PCI_AUTO is not set
+# CONFIG_BLK_DEV_AEC62XX is not set
+# CONFIG_BLK_DEV_ALI15X3 is not set
+# CONFIG_BLK_DEV_AMD74XX is not set
+# CONFIG_BLK_DEV_CMD64X is not set
+# CONFIG_BLK_DEV_TRIFLEX is not set
+# CONFIG_BLK_DEV_CY82C693 is not set
+# CONFIG_BLK_DEV_CS5520 is not set
+# CONFIG_BLK_DEV_CS5530 is not set
+# CONFIG_BLK_DEV_HPT34X is not set
+# CONFIG_BLK_DEV_HPT366 is not set
+# CONFIG_BLK_DEV_SC1200 is not set
+# CONFIG_BLK_DEV_PIIX is not set
+# CONFIG_BLK_DEV_NS87415 is not set
+# CONFIG_BLK_DEV_PDC202XX_OLD is not set
+# CONFIG_BLK_DEV_PDC202XX_NEW is not set
+# CONFIG_BLK_DEV_SVWKS is not set
+# CONFIG_BLK_DEV_SIIMAGE is not set
+# CONFIG_BLK_DEV_SLC90E66 is not set
+# CONFIG_BLK_DEV_TRM290 is not set
+CONFIG_BLK_DEV_VIA82CXXX=y
+# CONFIG_IDE_ARM is not set
+CONFIG_BLK_DEV_IDEDMA=y
+# CONFIG_IDEDMA_IVB is not set
+# CONFIG_IDEDMA_AUTO is not set
+# CONFIG_BLK_DEV_HD is not set
+
+#
+# SCSI device support
+#
+CONFIG_SCSI=m
+CONFIG_SCSI_PROC_FS=y
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=m
+# 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
+# CONFIG_CHR_DEV_SCH is not set
+
+#
+# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
+#
+# CONFIG_SCSI_MULTI_LUN is not set
+CONFIG_SCSI_CONSTANTS=y
+# CONFIG_SCSI_LOGGING is not set
+
+#
+# SCSI Transport Attributes
+#
+# CONFIG_SCSI_SPI_ATTRS is not set
+# CONFIG_SCSI_FC_ATTRS is not set
+# CONFIG_SCSI_ISCSI_ATTRS is not set
+
+#
+# SCSI low-level drivers
+#
+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
+# CONFIG_SCSI_3W_9XXX is not set
+# CONFIG_SCSI_ACARD is not set
+# CONFIG_SCSI_AACRAID is not set
+# CONFIG_SCSI_AIC7XXX is not set
+# CONFIG_SCSI_AIC7XXX_OLD is not set
+# CONFIG_SCSI_AIC79XX is not set
+# CONFIG_SCSI_ADVANSYS is not set
+# CONFIG_MEGARAID_NEWGEN is not set
+# CONFIG_MEGARAID_LEGACY is not set
+# CONFIG_SCSI_SATA is not set
+# CONFIG_SCSI_CPQFCTS is not set
+# CONFIG_SCSI_DMX3191D is not set
+# CONFIG_SCSI_EATA_PIO is not set
+# CONFIG_SCSI_FUTURE_DOMAIN is not set
+# CONFIG_SCSI_IPS is not set
+# CONFIG_SCSI_INITIO is not set
+# CONFIG_SCSI_INIA100 is not set
+# CONFIG_SCSI_SYM53C8XX_2 is not set
+# CONFIG_SCSI_IPR is not set
+# CONFIG_SCSI_PCI2000 is not set
+# CONFIG_SCSI_PCI2220I 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_LPFC is not set
+# CONFIG_SCSI_DC395x is not set
+# CONFIG_SCSI_DC390T is not set
+# CONFIG_SCSI_DEBUG is not set
+
+#
+# Multi-device support (RAID and LVM)
+#
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+CONFIG_MD_LINEAR=m
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+# CONFIG_MD_RAID10 is not set
+CONFIG_MD_RAID5=m
+# CONFIG_MD_RAID6 is not set
+CONFIG_MD_MULTIPATH=m
+# CONFIG_MD_FAULTY is not set
+CONFIG_BLK_DEV_DM=m
+# CONFIG_DM_CRYPT is not set
+# CONFIG_DM_SNAPSHOT is not set
+# CONFIG_DM_MIRROR is not set
+# CONFIG_DM_ZERO is not set
+# CONFIG_DM_MULTIPATH is not set
+
+#
+# Fusion MPT device support
+#
+# CONFIG_FUSION is not set
+
+#
+# IEEE 1394 (FireWire) support
+#
+CONFIG_IEEE1394=m
+
+#
+# Subsystem Options
+#
+# CONFIG_IEEE1394_VERBOSEDEBUG is not set
+# CONFIG_IEEE1394_OUI_DB is not set
+CONFIG_IEEE1394_EXTRA_CONFIG_ROMS=y
+CONFIG_IEEE1394_CONFIG_ROM_IP1394=y
+
+#
+# Device Drivers
+#
+
+#
+# Texas Instruments PCILynx requires I2C
+#
+CONFIG_IEEE1394_OHCI1394=m
+
+#
+# Protocol Drivers
+#
+CONFIG_IEEE1394_VIDEO1394=m
+# CONFIG_IEEE1394_SBP2 is not set
+CONFIG_IEEE1394_ETH1394=m
+CONFIG_IEEE1394_DV1394=m
+CONFIG_IEEE1394_RAWIO=m
+CONFIG_IEEE1394_CMP=m
+CONFIG_IEEE1394_AMDTP=m
+
+#
+# I2O device support
+#
+# CONFIG_I2O is not set
+
+#
+# Networking support
+#
+CONFIG_NET=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+CONFIG_PACKET_MMAP=y
+CONFIG_UNIX=y
+CONFIG_NET_KEY=m
+CONFIG_INET=y
+# CONFIG_IP_MULTICAST is not set
+# CONFIG_IP_ADVANCED_ROUTER is not set
+CONFIG_IP_PNP=y
+# CONFIG_IP_PNP_DHCP is not set
+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_SYN_COOKIES is not set
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_TUNNEL=m
+CONFIG_IP_TCPDIAG=y
+# CONFIG_IP_TCPDIAG_IPV6 is not set
+
+#
+# IP: Virtual Server Configuration
+#
+# CONFIG_IP_VS is not set
+CONFIG_IPV6=m
+CONFIG_IPV6_PRIVACY=y
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+CONFIG_INET6_IPCOMP=m
+CONFIG_INET6_TUNNEL=m
+CONFIG_IPV6_TUNNEL=m
+CONFIG_NETFILTER=y
+# CONFIG_NETFILTER_DEBUG is not set
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_IP_NF_CONNTRACK=m
+# CONFIG_IP_NF_CT_ACCT is not set
+# CONFIG_IP_NF_CONNTRACK_MARK is not set
+# CONFIG_IP_NF_CT_PROTO_SCTP is not set
+CONFIG_IP_NF_FTP=m
+CONFIG_IP_NF_IRC=m
+CONFIG_IP_NF_TFTP=m
+CONFIG_IP_NF_AMANDA=m
+CONFIG_IP_NF_QUEUE=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_LIMIT=m
+# CONFIG_IP_NF_MATCH_IPRANGE is not set
+CONFIG_IP_NF_MATCH_MAC=m
+CONFIG_IP_NF_MATCH_PKTTYPE=m
+CONFIG_IP_NF_MATCH_MARK=m
+CONFIG_IP_NF_MATCH_MULTIPORT=m
+CONFIG_IP_NF_MATCH_TOS=m
+CONFIG_IP_NF_MATCH_RECENT=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_DSCP=m
+CONFIG_IP_NF_MATCH_AH_ESP=m
+CONFIG_IP_NF_MATCH_LENGTH=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_MATCH_TCPMSS=m
+CONFIG_IP_NF_MATCH_HELPER=m
+CONFIG_IP_NF_MATCH_STATE=m
+CONFIG_IP_NF_MATCH_CONNTRACK=m
+CONFIG_IP_NF_MATCH_OWNER=m
+# CONFIG_IP_NF_MATCH_ADDRTYPE is not set
+# CONFIG_IP_NF_MATCH_REALM is not set
+# CONFIG_IP_NF_MATCH_SCTP is not set
+# CONFIG_IP_NF_MATCH_COMMENT is not set
+# CONFIG_IP_NF_MATCH_HASHLIMIT is not set
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_LOG=m
+CONFIG_IP_NF_TARGET_ULOG=m
+CONFIG_IP_NF_TARGET_TCPMSS=m
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_NAT_NEEDED=y
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+# CONFIG_IP_NF_TARGET_NETMAP is not set
+# CONFIG_IP_NF_TARGET_SAME is not set
+CONFIG_IP_NF_NAT_SNMP_BASIC=m
+CONFIG_IP_NF_NAT_IRC=m
+CONFIG_IP_NF_NAT_FTP=m
+CONFIG_IP_NF_NAT_TFTP=m
+CONFIG_IP_NF_NAT_AMANDA=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_TOS=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_DSCP=m
+CONFIG_IP_NF_TARGET_MARK=m
+# CONFIG_IP_NF_TARGET_CLASSIFY is not set
+# CONFIG_IP_NF_RAW is not set
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+
+#
+# IPv6: Netfilter Configuration (EXPERIMENTAL)
+#
+CONFIG_IP6_NF_QUEUE=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_MATCH_LIMIT=m
+CONFIG_IP6_NF_MATCH_MAC=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_MULTIPORT=m
+CONFIG_IP6_NF_MATCH_OWNER=m
+CONFIG_IP6_NF_MATCH_MARK=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_AHESP=m
+CONFIG_IP6_NF_MATCH_LENGTH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_LOG=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_TARGET_MARK=m
+# CONFIG_IP6_NF_RAW is not set
+CONFIG_XFRM=y
+CONFIG_XFRM_USER=m
+
+#
+# SCTP Configuration (EXPERIMENTAL)
+#
+# CONFIG_IP_SCTP is not set
+# CONFIG_ATM is not set
+# CONFIG_BRIDGE is not set
+# CONFIG_VLAN_8021Q is not set
+# CONFIG_DECNET is not set
+# CONFIG_LLC2 is not set
+# CONFIG_IPX is not set
+# CONFIG_ATALK is not set
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_NET_DIVERT is not set
+# CONFIG_ECONET is not set
+# CONFIG_WAN_ROUTER is not set
+
+#
+# QoS and/or fair queueing
+#
+# CONFIG_NET_SCHED is not set
+# CONFIG_NET_CLS_ROUTE is not set
+
+#
+# Network testing
+#
+# CONFIG_NET_PKTGEN is not set
+# CONFIG_NETPOLL is not set
+# CONFIG_NET_POLL_CONTROLLER is not set
+# CONFIG_HAMRADIO is not set
+# CONFIG_IRDA is not set
+# CONFIG_BT is not set
+CONFIG_NETDEVICES=y
+# CONFIG_DUMMY is not set
+# CONFIG_BONDING is not set
+# CONFIG_EQUALIZER is not set
+# CONFIG_TUN is not set
+
+#
+# ARCnet devices
+#
+# CONFIG_ARCNET is not set
+
+#
+# Ethernet (10 or 100Mbit)
+#
+CONFIG_NET_ETHERNET=y
+CONFIG_MII=m
+# CONFIG_HAPPYMEAL is not set
+# CONFIG_SUNGEM is not set
+# CONFIG_NET_VENDOR_3COM is not set
+
+#
+# Tulip family network device support
+#
+# CONFIG_NET_TULIP is not set
+# CONFIG_HP100 is not set
+CONFIG_NET_PCI=y
+# CONFIG_PCNET32 is not set
+# CONFIG_AMD8111_ETH is not set
+# CONFIG_ADAPTEC_STARFIRE is not set
+# CONFIG_B44 is not set
+# CONFIG_FORCEDETH is not set
+# CONFIG_EEPRO100 is not set
+# CONFIG_E100 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_VIA_RHINE is not set
+# CONFIG_LAN_SAA9730 is not set
+
+#
+# Ethernet (1000 Mbit)
+#
+# CONFIG_DL2K is not set
+# CONFIG_E1000 is not set
+# CONFIG_NS83820 is not set
+# CONFIG_HAMACHI is not set
+# CONFIG_YELLOWFIN is not set
+# CONFIG_R8169 is not set
+# CONFIG_SK98LIN is not set
+# CONFIG_VIA_VELOCITY is not set
+# CONFIG_TIGON3 is not set
+# CONFIG_BNX2 is not set
+
+#
+# Ethernet (10000 Mbit)
+#
+# CONFIG_IXGB is not set
+# CONFIG_S2IO is not set
+
+#
+# Token Ring devices
+#
+# CONFIG_TR is not set
+
+#
+# Wireless LAN (non-hamradio)
+#
+# CONFIG_NET_RADIO is not set
+
+#
+# Wan interfaces
+#
+# CONFIG_WAN is not set
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+CONFIG_PPP=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPPOE=m
+# CONFIG_SLIP is not set
+# CONFIG_NET_FC is not set
+# CONFIG_SHAPER is not set
+# CONFIG_NETCONSOLE is not set
+
+#
+# ISDN subsystem
+#
+# CONFIG_ISDN is not set
+
+#
+# Telephony Support
+#
+# CONFIG_PHONE is not set
+
+#
+# Input device support
+#
+# CONFIG_INPUT is not set
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=y
+# CONFIG_SERIO_PCIPS2 is not set
+# CONFIG_SERIO_LIBPS2 is not set
+# CONFIG_SERIO_RAW is not set
+# CONFIG_GAMEPORT is not set
+
+#
+# Character devices
+#
+# CONFIG_VT is not set
+# CONFIG_SERIAL_NONSTANDARD is not set
+
+#
+# Serial drivers
+#
+# CONFIG_SERIAL_8250 is not set
+
+#
+# Non-8250 serial port support
+#
+# CONFIG_SERIAL_JSM is not set
+CONFIG_UNIX98_PTYS=y
+CONFIG_LEGACY_PTYS=y
+CONFIG_LEGACY_PTY_COUNT=256
+
+#
+# IPMI
+#
+# CONFIG_IPMI_HANDLER is not set
+
+#
+# Watchdog Cards
+#
+# CONFIG_WATCHDOG is not set
+CONFIG_RTC=y
+CONFIG_COBALT_LCD=y
+# CONFIG_DTLK is not set
+# CONFIG_R3964 is not set
+# CONFIG_APPLICOM is not set
+
+#
+# Ftape, the floppy tape device driver
+#
+# CONFIG_DRM is not set
+# CONFIG_RAW_DRIVER is not set
+
+#
+# TPM devices
+#
+# CONFIG_TCG_TPM is not set
+
+#
+# I2C support
+#
+# CONFIG_I2C is not set
+
+#
+# Dallas's 1-wire bus
+#
+# CONFIG_W1 is not set
+
+#
+# Misc devices
+#
+
+#
+# Multimedia devices
+#
+# CONFIG_VIDEO_DEV is not set
+
+#
+# Digital Video Broadcasting Devices
+#
+# CONFIG_DVB is not set
+
+#
+# Graphics support
+#
+# CONFIG_FB is not set
+
+#
+# Sound
+#
+CONFIG_SOUND=y
+
+#
+# Advanced Linux Sound Architecture
+#
+# CONFIG_SND is not set
+
+#
+# Open Sound System
+#
+# CONFIG_SOUND_PRIME is not set
+
+#
+# USB support
+#
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB_ARCH_HAS_OHCI=y
+CONFIG_USB=y
+# CONFIG_USB_DEBUG is not set
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEVICEFS=y
+# CONFIG_USB_BANDWIDTH is not set
+# CONFIG_USB_DYNAMIC_MINORS is not set
+# CONFIG_USB_OTG is not set
+
+#
+# USB Host Controller Drivers
+#
+CONFIG_USB_EHCI_HCD=m
+# CONFIG_USB_EHCI_SPLIT_ISO is not set
+# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
+# CONFIG_USB_OHCI_HCD is not set
+# CONFIG_USB_UHCI_HCD is not set
+# CONFIG_USB_SL811_HCD is not set
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_AUDIO=m
+# CONFIG_USB_BLUETOOTH_TTY is not set
+CONFIG_USB_MIDI=m
+CONFIG_USB_ACM=m
+CONFIG_USB_PRINTER=m
+
+#
+# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information
+#
+CONFIG_USB_STORAGE=m
+# CONFIG_USB_STORAGE_DEBUG is not set
+# CONFIG_USB_STORAGE_DATAFAB is not set
+CONFIG_USB_STORAGE_FREECOM=y
+CONFIG_USB_STORAGE_ISD200=y
+CONFIG_USB_STORAGE_DPCM=y
+# CONFIG_USB_STORAGE_USBAT is not set
+CONFIG_USB_STORAGE_SDDR09=y
+CONFIG_USB_STORAGE_SDDR55=y
+# CONFIG_USB_STORAGE_JUMPSHOT is not set
+
+#
+# USB Input Devices
+#
+# CONFIG_USB_HID is not set
+
+#
+# USB HID Boot Protocol drivers
+#
+
+#
+# USB Imaging devices
+#
+CONFIG_USB_MDC800=m
+# CONFIG_USB_MICROTEK is not set
+
+#
+# USB Multimedia devices
+#
+
+#
+# Video4Linux support is needed for USB Multimedia device support
+#
+
+#
+# USB Network Adapters
+#
+CONFIG_USB_CATC=m
+CONFIG_USB_KAWETH=m
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_USBNET=m
+
+#
+# USB Host-to-Host Cables
+#
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_GENESYS=y
+CONFIG_USB_NET1080=y
+CONFIG_USB_PL2301=y
+CONFIG_USB_KC2190=y
+
+#
+# Intelligent USB Devices/Gadgets
+#
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_ZAURUS=y
+CONFIG_USB_CDCETHER=y
+
+#
+# USB Network Adapters
+#
+CONFIG_USB_AX8817X=y
+CONFIG_USB_MON=y
+
+#
+# USB port drivers
+#
+
+#
+# USB Serial Converter support
+#
+CONFIG_USB_SERIAL=m
+CONFIG_USB_SERIAL_GENERIC=y
+# CONFIG_USB_SERIAL_AIRPRIME is not set
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+# CONFIG_USB_SERIAL_CP2101 is not set
+# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
+CONFIG_USB_SERIAL_EMPEG=m
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_VISOR=m
+CONFIG_USB_SERIAL_IPAQ=m
+CONFIG_USB_SERIAL_IR=m
+CONFIG_USB_SERIAL_EDGEPORT=m
+CONFIG_USB_SERIAL_EDGEPORT_TI=m
+# CONFIG_USB_SERIAL_GARMIN is not set
+# CONFIG_USB_SERIAL_IPW is not set
+CONFIG_USB_SERIAL_KLSI=m
+CONFIG_USB_SERIAL_KOBIL_SCT=m
+CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_PL2303=m
+# CONFIG_USB_SERIAL_HP4X is not set
+# CONFIG_USB_SERIAL_SAFE is not set
+# CONFIG_USB_SERIAL_TI is not set
+CONFIG_USB_SERIAL_CYBERJACK=m
+CONFIG_USB_SERIAL_XIRCOM=m
+CONFIG_USB_SERIAL_OMNINET=m
+CONFIG_USB_EZUSB=y
+
+#
+# USB Miscellaneous drivers
+#
+CONFIG_USB_AUERSWALD=m
+CONFIG_USB_RIO500=m
+# CONFIG_USB_LEGOTOWER is not set
+CONFIG_USB_LCD=m
+# CONFIG_USB_LED is not set
+# CONFIG_USB_CYTHERM is not set
+# CONFIG_USB_PHIDGETKIT is not set
+# CONFIG_USB_PHIDGETSERVO is not set
+# CONFIG_USB_IDMOUSE is not set
+# CONFIG_USB_SISUSBVGA is not set
+# CONFIG_USB_TEST is not set
+
+#
+# USB ATM/DSL drivers
+#
+
+#
+# USB Gadget Support
+#
+# CONFIG_USB_GADGET is not set
+
+#
+# MMC/SD Card support
+#
+# CONFIG_MMC is not set
+
+#
+# InfiniBand support
+#
+# CONFIG_INFINIBAND is not set
+
+#
+# File systems
+#
+CONFIG_EXT2_FS=y
+CONFIG_EXT2_FS_XATTR=y
+CONFIG_EXT2_FS_POSIX_ACL=y
+# CONFIG_EXT2_FS_SECURITY is not set
+CONFIG_EXT3_FS=y
+CONFIG_EXT3_FS_XATTR=y
+CONFIG_EXT3_FS_POSIX_ACL=y
+# CONFIG_EXT3_FS_SECURITY is not set
+CONFIG_JBD=y
+# CONFIG_JBD_DEBUG is not set
+CONFIG_FS_MBCACHE=y
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+CONFIG_REISERFS_PROC_INFO=y
+# CONFIG_REISERFS_FS_XATTR is not set
+CONFIG_JFS_FS=m
+# CONFIG_JFS_POSIX_ACL is not set
+# CONFIG_JFS_SECURITY is not set
+# CONFIG_JFS_DEBUG is not set
+# CONFIG_JFS_STATISTICS is not set
+CONFIG_FS_POSIX_ACL=y
+
+#
+# XFS support
+#
+CONFIG_XFS_FS=m
+CONFIG_XFS_EXPORT=y
+# CONFIG_XFS_RT is not set
+# CONFIG_XFS_QUOTA is not set
+# CONFIG_XFS_SECURITY is not set
+CONFIG_XFS_POSIX_ACL=y
+# CONFIG_MINIX_FS is not set
+# CONFIG_ROMFS_FS is not set
+# CONFIG_QUOTA is not set
+CONFIG_DNOTIFY=y
+CONFIG_AUTOFS_FS=m
+CONFIG_AUTOFS4_FS=m
+
+#
+# CD-ROM/DVD Filesystems
+#
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+# CONFIG_ZISOFS is not set
+# CONFIG_UDF_FS is not set
+
+#
+# DOS/FAT/NT Filesystems
+#
+CONFIG_FAT_FS=m
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
+# CONFIG_NTFS_FS is not set
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+# CONFIG_PROC_KCORE is not set
+CONFIG_SYSFS=y
+CONFIG_DEVFS_FS=y
+# CONFIG_DEVFS_MOUNT is not set
+# CONFIG_DEVFS_DEBUG is not set
+# CONFIG_DEVPTS_FS_XATTR is not set
+CONFIG_TMPFS=y
+# CONFIG_TMPFS_XATTR is not set
+# CONFIG_HUGETLBFS is not set
+# CONFIG_HUGETLB_PAGE is not set
+CONFIG_RAMFS=y
+
+#
+# Miscellaneous filesystems
+#
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+# CONFIG_ASFS_FS is not set
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_CRAMFS is not set
+# CONFIG_VXFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+
+#
+# Network File Systems
+#
+CONFIG_NFS_FS=m
+CONFIG_NFS_V3=y
+# CONFIG_NFS_V4 is not set
+# CONFIG_NFS_DIRECTIO is not set
+CONFIG_NFSD=m
+CONFIG_NFSD_V3=y
+# CONFIG_NFSD_V4 is not set
+# CONFIG_NFSD_TCP is not set
+CONFIG_LOCKD=m
+CONFIG_LOCKD_V4=y
+CONFIG_EXPORTFS=m
+CONFIG_SUNRPC=m
+# CONFIG_RPCSEC_GSS_KRB5 is not set
+# CONFIG_RPCSEC_GSS_SPKM3 is not set
+CONFIG_SMB_FS=m
+# CONFIG_SMB_NLS_DEFAULT is not set
+# CONFIG_CIFS is not set
+# CONFIG_NCP_FS is not set
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+
+#
+# Partition Types
+#
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_OSF_PARTITION is not set
+# CONFIG_AMIGA_PARTITION is not set
+# CONFIG_ATARI_PARTITION is not set
+# CONFIG_MAC_PARTITION is not set
+CONFIG_MSDOS_PARTITION=y
+# CONFIG_BSD_DISKLABEL is not set
+# CONFIG_MINIX_SUBPARTITION is not set
+# CONFIG_SOLARIS_X86_PARTITION is not set
+# CONFIG_UNIXWARE_DISKLABEL is not set
+# CONFIG_LDM_PARTITION is not set
+CONFIG_SGI_PARTITION=y
+# CONFIG_ULTRIX_PARTITION is not set
+# CONFIG_SUN_PARTITION is not set
+# CONFIG_EFI_PARTITION is not set
+
+#
+# Native Language Support
+#
+CONFIG_NLS=y
+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_ASCII 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
+
+#
+# Profiling support
+#
+# CONFIG_PROFILING is not set
+
+#
+# Kernel hacking
+#
+# CONFIG_PRINTK_TIME is not set
+# CONFIG_DEBUG_KERNEL is not set
+CONFIG_LOG_BUF_SHIFT=14
+# CONFIG_CROSSCOMPILE is not set
+CONFIG_CMDLINE=""
+
+#
+# Security options
+#
+# CONFIG_KEYS is not set
+# CONFIG_SECURITY is not set
+
+#
+# Cryptographic options
+#
+CONFIG_CRYPTO=y
+CONFIG_CRYPTO_HMAC=y
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=m
+CONFIG_CRYPTO_SHA1=m
+CONFIG_CRYPTO_SHA256=m
+CONFIG_CRYPTO_SHA512=m
+# CONFIG_CRYPTO_WP512 is not set
+# CONFIG_CRYPTO_TGR192 is not set
+CONFIG_CRYPTO_DES=m
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_AES=m
+CONFIG_CRYPTO_CAST5=m
+CONFIG_CRYPTO_CAST6=m
+CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_ARC4=m
+# CONFIG_CRYPTO_KHAZAD is not set
+# CONFIG_CRYPTO_ANUBIS is not set
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_MICHAEL_MIC=m
+# CONFIG_CRYPTO_CRC32C is not set
+CONFIG_CRYPTO_TEST=m
+
+#
+# Hardware crypto devices
+#
+
+#
+# Library routines
+#
+CONFIG_CRC_CCITT=m
+CONFIG_CRC32=m
+# CONFIG_LIBCRC32C is not set
+CONFIG_ZLIB_INFLATE=m
+CONFIG_ZLIB_DEFLATE=m
+CONFIG_GENERIC_HARDIRQS=y
+CONFIG_GENERIC_IRQ_PROBE=y
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mipsel/sb1-swarm-bn
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mipsel/sb1-swarm-bn 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/config/mipsel/sb1-swarm-bn 2005-08-17 19:38:05 UTC (rev 3964)
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.11
-# Tue Apr 5 01:30:19 2005
+# Linux kernel version: 2.6.12
+# Wed Aug 17 15:02:59 2005
#
CONFIG_MIPS=y
@@ -13,6 +13,7 @@
CONFIG_BROKEN=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_LOCK_KERNEL=y
+CONFIG_INIT_ENV_ARG_LIMIT=32
#
# General setup
@@ -24,15 +25,17 @@
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
CONFIG_SYSCTL=y
-CONFIG_AUDIT=y
-CONFIG_LOG_BUF_SHIFT=15
+# CONFIG_AUDIT is not set
CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
-CONFIG_IKCONFIG=y
-CONFIG_IKCONFIG_PROC=y
+# CONFIG_IKCONFIG is not set
+# CONFIG_CPUSETS is not set
CONFIG_EMBEDDED=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_EXTRA_PASS is not set
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
@@ -42,13 +45,14 @@
CONFIG_CC_ALIGN_LOOPS=0
CONFIG_CC_ALIGN_JUMPS=0
# CONFIG_TINY_SHMEM is not set
+CONFIG_BASE_SMALL=0
#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
+CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_MODVERSIONS=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
@@ -91,11 +95,11 @@
# CONFIG_DDB5074 is not set
# CONFIG_DDB5476 is not set
# CONFIG_DDB5477 is not set
-# CONFIG_NEC_OSPREY is not set
# CONFIG_MACH_VR41XX is not set
# CONFIG_PMC_YOSEMITE is not set
# CONFIG_SGI_IP22 is not set
# CONFIG_SGI_IP27 is not set
+# CONFIG_SGI_IP30 is not set
# CONFIG_SGI_IP32 is not set
CONFIG_SIBYTE_SWARM=y
# CONFIG_SIBYTE_SENTOSA is not set
@@ -128,7 +132,7 @@
CONFIG_HAVE_DEC_LOCK=y
CONFIG_DMA_COHERENT=y
# CONFIG_CPU_BIG_ENDIAN is not set
-# CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPU_LITTLE_ENDIAN=y
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
CONFIG_SWAP_IO_SPACE=y
@@ -138,8 +142,8 @@
#
# CPU selection
#
-# CONFIG_CPU_MIPS32 is not set
-# CONFIG_CPU_MIPS64 is not set
+# CONFIG_CPU_MIPS32_R1 is not set
+# CONFIG_CPU_MIPS64_R1 is not set
# CONFIG_CPU_R3000 is not set
# CONFIG_CPU_TX39XX is not set
# CONFIG_CPU_VR41XX is not set
@@ -187,6 +191,7 @@
CONFIG_PCI=y
CONFIG_PCI_LEGACY_PROC=y
CONFIG_PCI_NAMES=y
+# CONFIG_SGI_IOC3 is not set
CONFIG_MMU=y
#
@@ -251,22 +256,25 @@
# Block devices
#
# CONFIG_BLK_DEV_FD 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_UMEM is not set
+CONFIG_BLK_CPQ_DA=m
+CONFIG_BLK_CPQ_CISS_DA=m
+CONFIG_CISS_SCSI_TAPE=y
+CONFIG_BLK_DEV_DAC960=m
+CONFIG_BLK_DEV_UMEM=m
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
-# CONFIG_BLK_DEV_SX8 is not set
+CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_CDROM_PKTCDVD is not set
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
#
# IO Schedulers
@@ -275,7 +283,7 @@
CONFIG_IOSCHED_AS=m
CONFIG_IOSCHED_DEADLINE=m
CONFIG_IOSCHED_CFQ=m
-# CONFIG_ATA_OVER_ETH is not set
+CONFIG_ATA_OVER_ETH=m
#
# ATA/ATAPI/MFM/RLL support
@@ -350,7 +358,7 @@
#
CONFIG_BLK_DEV_SD=m
CONFIG_CHR_DEV_ST=m
-# CONFIG_CHR_DEV_OSST is not set
+CONFIG_CHR_DEV_OSST=m
CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SR_VENDOR is not set
CONFIG_CHR_DEV_SG=m
@@ -378,23 +386,24 @@
CONFIG_SCSI_ACARD=m
CONFIG_SCSI_AACRAID=m
CONFIG_SCSI_AIC7XXX=m
-CONFIG_AIC7XXX_CMDS_PER_DEVICE=8
-CONFIG_AIC7XXX_RESET_DELAY_MS=15000
-# CONFIG_AIC7XXX_DEBUG_ENABLE is not set
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
+CONFIG_AIC7XXX_RESET_DELAY_MS=5000
+CONFIG_AIC7XXX_DEBUG_ENABLE=y
CONFIG_AIC7XXX_DEBUG_MASK=0
-# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set
+CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
CONFIG_SCSI_AIC7XXX_OLD=m
CONFIG_SCSI_AIC79XX=m
CONFIG_AIC79XX_CMDS_PER_DEVICE=32
-CONFIG_AIC79XX_RESET_DELAY_MS=15000
-# CONFIG_AIC79XX_ENABLE_RD_STRM is not set
-# CONFIG_AIC79XX_DEBUG_ENABLE is not set
+CONFIG_AIC79XX_RESET_DELAY_MS=5000
+CONFIG_AIC79XX_ENABLE_RD_STRM=y
+CONFIG_AIC79XX_DEBUG_ENABLE=y
CONFIG_AIC79XX_DEBUG_MASK=0
-# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
+CONFIG_AIC79XX_REG_PRETTY_PRINT=y
CONFIG_SCSI_ADVANSYS=m
CONFIG_MEGARAID_NEWGEN=y
CONFIG_MEGARAID_MM=m
CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
CONFIG_SCSI_SATA=y
CONFIG_SCSI_SATA_AHCI=m
CONFIG_SCSI_SATA_SVW=m
@@ -408,36 +417,32 @@
CONFIG_SCSI_SATA_ULI=m
CONFIG_SCSI_SATA_VIA=m
CONFIG_SCSI_SATA_VITESSE=m
-CONFIG_SCSI_BUSLOGIC=m
-# CONFIG_SCSI_OMIT_FLASHPOINT is not set
# CONFIG_SCSI_CPQFCTS is not set
CONFIG_SCSI_DMX3191D=m
-CONFIG_SCSI_EATA=m
-CONFIG_SCSI_EATA_TAGGED_QUEUE=y
-CONFIG_SCSI_EATA_LINKED_COMMANDS=y
-CONFIG_SCSI_EATA_MAX_TAGS=16
CONFIG_SCSI_EATA_PIO=m
CONFIG_SCSI_FUTURE_DOMAIN=m
-CONFIG_SCSI_GDTH=m
-# CONFIG_SCSI_IPS is not set
+CONFIG_SCSI_IPS=m
CONFIG_SCSI_INITIO=m
-CONFIG_SCSI_INIA100=m
+# CONFIG_SCSI_INIA100 is not set
CONFIG_SCSI_SYM53C8XX_2=m
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
# CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set
-# CONFIG_SCSI_IPR is not set
+CONFIG_SCSI_IPR=m
+# CONFIG_SCSI_IPR_TRACE is not set
+# CONFIG_SCSI_IPR_DUMP is not set
# CONFIG_SCSI_PCI2000 is not set
# CONFIG_SCSI_PCI2220I is not set
-# CONFIG_SCSI_QLOGIC_ISP is not set
+CONFIG_SCSI_QLOGIC_ISP=m
CONFIG_SCSI_QLOGIC_FC=m
CONFIG_SCSI_QLOGIC_FC_FIRMWARE=y
CONFIG_SCSI_QLOGIC_1280=m
CONFIG_SCSI_QLOGIC_1280_1040=y
-# CONFIG_SCSI_DC395x is not set
+CONFIG_SCSI_LPFC=m
+CONFIG_SCSI_DC395x=m
CONFIG_SCSI_DC390T=m
-# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_DEBUG=m
#
# PCMCIA SCSI adapter support
@@ -450,35 +455,69 @@
# Multi-device support (RAID and LVM)
#
CONFIG_MD=y
-CONFIG_BLK_DEV_MD=m
+CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=m
-CONFIG_MD_RAID0=m
-CONFIG_MD_RAID1=m
+CONFIG_MD_RAID0=y
+CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=m
-CONFIG_MD_RAID5=m
+CONFIG_MD_RAID5=y
CONFIG_MD_RAID6=m
-CONFIG_MD_MULTIPATH=m
+# CONFIG_MD_MULTIPATH is not set
CONFIG_MD_FAULTY=m
CONFIG_BLK_DEV_DM=m
CONFIG_DM_CRYPT=m
CONFIG_DM_SNAPSHOT=m
CONFIG_DM_MIRROR=m
CONFIG_DM_ZERO=m
+# CONFIG_DM_MULTIPATH is not set
#
# Fusion MPT device support
#
-# CONFIG_FUSION is not set
+CONFIG_FUSION=m
+CONFIG_FUSION_MAX_SGE=40
+CONFIG_FUSION_CTL=m
+CONFIG_FUSION_LAN=m
#
# IEEE 1394 (FireWire) support
#
-# CONFIG_IEEE1394 is not set
+CONFIG_IEEE1394=m
#
+# Subsystem Options
+#
+# CONFIG_IEEE1394_VERBOSEDEBUG is not set
+# CONFIG_IEEE1394_OUI_DB is not set
+CONFIG_IEEE1394_EXTRA_CONFIG_ROMS=y
+CONFIG_IEEE1394_CONFIG_ROM_IP1394=y
+
+#
+# Device Drivers
+#
+CONFIG_IEEE1394_PCILYNX=m
+CONFIG_IEEE1394_OHCI1394=m
+
+#
+# Protocol Drivers
+#
+CONFIG_IEEE1394_VIDEO1394=m
+CONFIG_IEEE1394_SBP2=m
+# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
+CONFIG_IEEE1394_ETH1394=m
+CONFIG_IEEE1394_DV1394=m
+CONFIG_IEEE1394_RAWIO=m
+CONFIG_IEEE1394_CMP=m
+CONFIG_IEEE1394_AMDTP=m
+
+#
# I2O device support
#
-# CONFIG_I2O is not set
+CONFIG_I2O=m
+CONFIG_I2O_CONFIG=m
+CONFIG_I2O_BLOCK=m
+CONFIG_I2O_SCSI=m
+CONFIG_I2O_PROC=m
#
# Networking support
@@ -488,20 +527,32 @@
#
# Networking options
#
-CONFIG_PACKET=y
+CONFIG_PACKET=m
CONFIG_PACKET_MMAP=y
-CONFIG_NETLINK_DEV=m
CONFIG_UNIX=y
CONFIG_NET_KEY=m
CONFIG_INET=y
-# CONFIG_IP_MULTICAST is not set
-# CONFIG_IP_ADVANCED_ROUTER is not set
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_FWMARK=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_MULTIPATH_CACHED=y
+CONFIG_IP_ROUTE_MULTIPATH_RR=m
+CONFIG_IP_ROUTE_MULTIPATH_RANDOM=m
+CONFIG_IP_ROUTE_MULTIPATH_WRANDOM=m
+CONFIG_IP_ROUTE_MULTIPATH_DRR=m
+CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_IP_PNP=y
# CONFIG_IP_PNP_DHCP is not set
CONFIG_IP_PNP_BOOTP=y
# CONFIG_IP_PNP_RARP is not set
-CONFIG_NET_IPIP=m
+# CONFIG_NET_IPIP is not set
CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not set
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=m
@@ -524,6 +575,7 @@
CONFIG_IPV6_TUNNEL=m
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_BRIDGE_NETFILTER=y
#
# IP: Netfilter Configuration
@@ -556,6 +608,7 @@
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_MATCH_CONNTRACK=m
CONFIG_IP_NF_MATCH_OWNER=m
+CONFIG_IP_NF_MATCH_PHYSDEV=m
CONFIG_IP_NF_MATCH_ADDRTYPE=m
CONFIG_IP_NF_MATCH_REALM=m
CONFIG_IP_NF_MATCH_SCTP=m
@@ -585,7 +638,7 @@
CONFIG_IP_NF_TARGET_MARK=m
CONFIG_IP_NF_TARGET_CLASSIFY=m
CONFIG_IP_NF_TARGET_CONNMARK=m
-# CONFIG_IP_NF_TARGET_CLUSTERIP is not set
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_TARGET_NOTRACK=m
CONFIG_IP_NF_ARPTABLES=m
@@ -593,7 +646,7 @@
CONFIG_IP_NF_ARP_MANGLE=m
#
-# IPv6: Netfilter Configuration
+# IPv6: Netfilter Configuration (EXPERIMENTAL)
#
CONFIG_IP6_NF_QUEUE=m
CONFIG_IP6_NF_IPTABLES=m
@@ -610,11 +663,41 @@
CONFIG_IP6_NF_MATCH_AHESP=m
CONFIG_IP6_NF_MATCH_LENGTH=m
CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_PHYSDEV=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_LOG=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_TARGET_MARK=m
CONFIG_IP6_NF_RAW=m
+
+#
+# DECnet: Netfilter Configuration
+#
+CONFIG_DECNET_NF_GRABULATOR=m
+
+#
+# Bridge: Netfilter Configuration
+#
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_ULOG=m
CONFIG_XFRM=y
CONFIG_XFRM_USER=y
@@ -627,18 +710,33 @@
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not set
CONFIG_SCTP_HMAC_MD5=y
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
+CONFIG_ATM=y
+CONFIG_ATM_CLIP=y
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+CONFIG_BRIDGE=m
# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
+CONFIG_DECNET=m
+# CONFIG_DECNET_ROUTER is not set
+CONFIG_LLC=m
+CONFIG_LLC2=m
+CONFIG_IPX=m
+# CONFIG_IPX_INTERN is not set
+CONFIG_ATALK=m
+CONFIG_DEV_APPLETALK=y
+CONFIG_IPDDP=m
+CONFIG_IPDDP_ENCAP=y
+CONFIG_IPDDP_DECAP=y
+CONFIG_X25=m
+CONFIG_LAPB=m
# CONFIG_NET_DIVERT is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
+CONFIG_ECONET=m
+CONFIG_ECONET_AUNUDP=y
+CONFIG_ECONET_NATIVE=y
+CONFIG_WAN_ROUTER=m
#
# QoS and/or fair queueing
@@ -650,6 +748,7 @@
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFQ=m
@@ -662,6 +761,7 @@
CONFIG_NET_QOS=y
CONFIG_NET_ESTIMATOR=y
CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_ROUTE4=m
CONFIG_NET_CLS_ROUTE=y
@@ -669,27 +769,134 @@
CONFIG_NET_CLS_U32=m
# CONFIG_CLS_U32_PERF is not set
# CONFIG_NET_CLS_IND is not set
-CONFIG_CLS_U32_MARK=y
+# CONFIG_CLS_U32_MARK is not set
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
# CONFIG_NET_CLS_ACT is not set
CONFIG_NET_CLS_POLICE=y
#
# Network testing
#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_IRDA is not set
-# CONFIG_BT is not set
+CONFIG_NET_PKTGEN=m
+CONFIG_NETPOLL=y
+# CONFIG_NETPOLL_RX is not set
+# CONFIG_NETPOLL_TRAP is not set
+CONFIG_NET_POLL_CONTROLLER=y
+CONFIG_HAMRADIO=y
+
+#
+# Packet Radio protocols
+#
+CONFIG_AX25=m
+# CONFIG_AX25_DAMA_SLAVE is not set
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+#
+# AX.25 network device drivers
+#
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_YAM=m
+CONFIG_IRDA=m
+
+#
+# IrDA protocols
+#
+CONFIG_IRLAN=m
+CONFIG_IRNET=m
+CONFIG_IRCOMM=m
+# CONFIG_IRDA_ULTRA is not set
+
+#
+# IrDA options
+#
+CONFIG_IRDA_CACHE_LAST_LSAP=y
+CONFIG_IRDA_FAST_RR=y
+CONFIG_IRDA_DEBUG=y
+
+#
+# Infrared-port device drivers
+#
+
+#
+# SIR device drivers
+#
+CONFIG_IRTTY_SIR=m
+
+#
+# Dongle support
+#
+CONFIG_DONGLE=y
+CONFIG_ESI_DONGLE=m
+CONFIG_ACTISYS_DONGLE=m
+CONFIG_TEKRAM_DONGLE=m
+CONFIG_LITELINK_DONGLE=m
+CONFIG_MA600_DONGLE=m
+CONFIG_GIRBIL_DONGLE=m
+CONFIG_MCP2120_DONGLE=m
+CONFIG_OLD_BELKIN_DONGLE=m
+CONFIG_ACT200L_DONGLE=m
+
+#
+# Old SIR device drivers
+#
+CONFIG_IRPORT_SIR=m
+
+#
+# Old Serial dongle support
+#
+# CONFIG_DONGLE_OLD is not set
+
+#
+# FIR device drivers
+#
+CONFIG_USB_IRDA=m
+CONFIG_SIGMATEL_FIR=m
+CONFIG_VLSI_FIR=m
+CONFIG_BT=m
+CONFIG_BT_L2CAP=m
+CONFIG_BT_SCO=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_CMTP=m
+CONFIG_BT_HIDP=m
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_HCIUSB=m
+CONFIG_BT_HCIUSB_SCO=y
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+# CONFIG_BT_HCIUART_BCSP_TXCRC is not set
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIDTL1=m
+CONFIG_BT_HCIBT3C=m
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIVHCI=m
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
CONFIG_BONDING=m
CONFIG_EQUALIZER=m
CONFIG_TUN=m
-CONFIG_ETHERTAP=m
#
# ARCnet devices
@@ -723,29 +930,28 @@
CONFIG_NET_PCI=y
CONFIG_PCNET32=m
CONFIG_AMD8111_ETH=m
-CONFIG_AMD8111E_NAPI=y
+# CONFIG_AMD8111E_NAPI is not set
CONFIG_ADAPTEC_STARFIRE=m
-CONFIG_ADAPTEC_STARFIRE_NAPI=y
+# CONFIG_ADAPTEC_STARFIRE_NAPI is not set
CONFIG_B44=m
# CONFIG_FORCEDETH is not set
CONFIG_EEPRO100=m
CONFIG_E100=m
-CONFIG_E100_NAPI=y
CONFIG_FEALNX=m
CONFIG_NATSEMI=m
CONFIG_NE2K_PCI=m
CONFIG_8139CP=m
CONFIG_8139TOO=m
-# CONFIG_8139TOO_PIO is not set
-# CONFIG_8139TOO_TUNE_TWISTER is not set
-# CONFIG_8139TOO_8129 is not set
+CONFIG_8139TOO_PIO=y
+CONFIG_8139TOO_TUNE_TWISTER=y
+CONFIG_8139TOO_8129=y
# CONFIG_8139_OLD_RX_RESET is not set
# CONFIG_SIS900 is not set
CONFIG_EPIC100=m
CONFIG_SUNDANCE=m
-CONFIG_SUNDANCE_MMIO=y
+# CONFIG_SUNDANCE_MMIO is not set
CONFIG_VIA_RHINE=m
-CONFIG_VIA_RHINE_MMIO=y
+# CONFIG_VIA_RHINE_MMIO is not set
# CONFIG_LAN_SAA9730 is not set
#
@@ -753,23 +959,25 @@
#
CONFIG_DL2K=m
CONFIG_E1000=m
-CONFIG_E1000_NAPI=y
+# CONFIG_E1000_NAPI is not set
CONFIG_NS83820=m
CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
CONFIG_R8169=m
-CONFIG_R8169_NAPI=y
+# CONFIG_R8169_NAPI is not set
CONFIG_NET_SB1250_MAC=y
CONFIG_SK98LIN=m
CONFIG_VIA_VELOCITY=m
+CONFIG_TIGON3=m
+CONFIG_BNX2=m
#
# Ethernet (10000 Mbit)
#
CONFIG_IXGB=m
-CONFIG_IXGB_NAPI=y
+# CONFIG_IXGB_NAPI is not set
CONFIG_S2IO=m
-CONFIG_S2IO_NAPI=y
+# CONFIG_S2IO_NAPI is not set
# CONFIG_2BUFF_MODE is not set
#
@@ -791,6 +999,35 @@
# Wan interfaces
#
# CONFIG_WAN is not set
+
+#
+# ATM drivers
+#
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+# CONFIG_ATM_ZATM_DEBUG is not set
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_IDT77252_USE_SUNI=y
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+CONFIG_ATM_HORIZON=m
+# CONFIG_ATM_HORIZON_DEBUG is not set
+CONFIG_ATM_FORE200E_MAYBE=m
+CONFIG_ATM_FORE200E_PCA=y
+CONFIG_ATM_FORE200E_PCA_DEFAULT_FW=y
+CONFIG_ATM_FORE200E_USE_TASKLET=y
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_FORE200E=m
+CONFIG_ATM_HE=m
+# CONFIG_ATM_HE_USE_SUNI is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
CONFIG_PPP=m
@@ -801,20 +1038,144 @@
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPPOE=m
+CONFIG_PPPOATM=m
CONFIG_SLIP=m
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
CONFIG_SLIP_MODE_SLIP6=y
-# CONFIG_NET_FC is not set
-# CONFIG_SHAPER is not set
-# CONFIG_NETCONSOLE is not set
+CONFIG_NET_FC=y
+CONFIG_SHAPER=m
+CONFIG_NETCONSOLE=m
#
# ISDN subsystem
#
-# CONFIG_ISDN is not set
+CONFIG_ISDN=m
#
+# Old ISDN4Linux
+#
+CONFIG_ISDN_I4L=m
+CONFIG_ISDN_PPP=y
+CONFIG_ISDN_PPP_VJ=y
+CONFIG_ISDN_MPP=y
+CONFIG_IPPP_FILTER=y
+CONFIG_ISDN_PPP_BSDCOMP=m
+CONFIG_ISDN_AUDIO=y
+CONFIG_ISDN_TTY_FAX=y
+CONFIG_ISDN_X25=y
+
+#
+# ISDN feature submodules
+#
+CONFIG_ISDN_DRV_LOOP=m
+# CONFIG_ISDN_DIVERSION is not set
+
+#
+# ISDN4Linux hardware drivers
+#
+
+#
+# Passive cards
+#
+CONFIG_ISDN_DRV_HISAX=m
+
+#
+# D-channel protocol features
+#
+CONFIG_HISAX_EURO=y
+CONFIG_DE_AOC=y
+# CONFIG_HISAX_NO_SENDCOMPLETE is not set
+# CONFIG_HISAX_NO_LLC is not set
+# CONFIG_HISAX_NO_KEYPAD is not set
+CONFIG_HISAX_1TR6=y
+CONFIG_HISAX_NI1=y
+CONFIG_HISAX_MAX_CARDS=8
+
+#
+# HiSax supported cards
+#
+CONFIG_HISAX_16_3=y
+CONFIG_HISAX_TELESPCI=y
+CONFIG_HISAX_S0BOX=y
+CONFIG_HISAX_FRITZPCI=y
+CONFIG_HISAX_AVM_A1_PCMCIA=y
+CONFIG_HISAX_ELSA=y
+CONFIG_HISAX_DIEHLDIVA=y
+CONFIG_HISAX_SEDLBAUER=y
+CONFIG_HISAX_NETJET=y
+CONFIG_HISAX_NETJET_U=y
+CONFIG_HISAX_NICCY=y
+CONFIG_HISAX_BKM_A4T=y
+CONFIG_HISAX_SCT_QUADRO=y
+CONFIG_HISAX_GAZEL=y
+CONFIG_HISAX_HFC_PCI=y
+CONFIG_HISAX_W6692=y
+CONFIG_HISAX_HFC_SX=y
+CONFIG_HISAX_ENTERNOW_PCI=y
+# CONFIG_HISAX_DEBUG is not set
+
+#
+# HiSax PCMCIA card service modules
+#
+CONFIG_HISAX_SEDLBAUER_CS=m
+CONFIG_HISAX_ELSA_CS=m
+CONFIG_HISAX_AVM_A1_CS=m
+CONFIG_HISAX_TELES_CS=m
+
+#
+# HiSax sub driver modules
+#
+CONFIG_HISAX_ST5481=m
+CONFIG_HISAX_HFCUSB=m
+CONFIG_HISAX_HFC4S8S=m
+CONFIG_HISAX_FRITZ_PCIPNP=m
+CONFIG_HISAX_HDLC=y
+
+#
+# Active cards
+#
+CONFIG_HYSDN=m
+CONFIG_HYSDN_CAPI=y
+
+#
+# CAPI subsystem
+#
+CONFIG_ISDN_CAPI=m
+CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
+CONFIG_ISDN_CAPI_MIDDLEWARE=y
+CONFIG_ISDN_CAPI_CAPI20=m
+CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
+CONFIG_ISDN_CAPI_CAPIFS=m
+CONFIG_ISDN_CAPI_CAPIDRV=m
+
+#
+# CAPI hardware drivers
+#
+
+#
+# Active AVM cards
+#
+CONFIG_CAPI_AVM=y
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
+CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
+CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
+
+#
+# Active Eicon DIVA Server cards
+#
+CONFIG_CAPI_EICON=y
+CONFIG_ISDN_DIVAS=m
+CONFIG_ISDN_DIVAS_BRIPCI=y
+CONFIG_ISDN_DIVAS_PRIPCI=y
+CONFIG_ISDN_DIVAS_DIVACAPI=m
+CONFIG_ISDN_DIVAS_USERIDI=m
+CONFIG_ISDN_DIVAS_MAINT=m
+
+#
# Telephony Support
#
# CONFIG_PHONE is not set
@@ -834,22 +1195,9 @@
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
CONFIG_INPUT_EVDEV=m
-# CONFIG_INPUT_EVBUG is not set
+CONFIG_INPUT_EVBUG=m
#
-# Input I/O drivers
-#
-# CONFIG_GAMEPORT is not set
-CONFIG_SOUND_GAMEPORT=y
-CONFIG_SERIO=y
-# CONFIG_SERIO_I8042 is not set
-CONFIG_SERIO_SERPORT=y
-# CONFIG_SERIO_CT82C710 is not set
-# CONFIG_SERIO_PCIPS2 is not set
-# CONFIG_SERIO_LIBPS2 is not set
-CONFIG_SERIO_RAW=m
-
-#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
@@ -867,6 +1215,17 @@
# CONFIG_INPUT_MISC is not set
#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+# CONFIG_SERIO_I8042 is not set
+CONFIG_SERIO_SERPORT=y
+# CONFIG_SERIO_PCIPS2 is not set
+# CONFIG_SERIO_LIBPS2 is not set
+CONFIG_SERIO_RAW=m
+# CONFIG_GAMEPORT is not set
+
+#
# Character devices
#
CONFIG_VT=y
@@ -884,6 +1243,8 @@
#
# Non-8250 serial port support
#
+CONFIG_SERIAL_CORE=m
+CONFIG_SERIAL_JSM=m
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
@@ -891,7 +1252,12 @@
#
# IPMI
#
-# CONFIG_IPMI_HANDLER is not set
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
#
# Watchdog Cards
@@ -933,6 +1299,11 @@
# CONFIG_RAW_DRIVER is not set
#
+# TPM devices
+#
+# CONFIG_TCG_TPM is not set
+
+#
# I2C support
#
CONFIG_I2C=m
@@ -956,6 +1327,7 @@
# CONFIG_I2C_AMD8111 is not set
# CONFIG_I2C_I801 is not set
# CONFIG_I2C_I810 is not set
+# CONFIG_I2C_PIIX4 is not set
# CONFIG_I2C_ISA is not set
# CONFIG_I2C_NFORCE2 is not set
# CONFIG_I2C_PARPORT_LIGHT is not set
@@ -983,7 +1355,9 @@
# CONFIG_SENSORS_ASB100 is not set
# CONFIG_SENSORS_DS1621 is not set
# CONFIG_SENSORS_FSCHER is not set
+# CONFIG_SENSORS_FSCPOS is not set
# CONFIG_SENSORS_GL518SM is not set
+# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_IT87 is not set
# CONFIG_SENSORS_LM63 is not set
# CONFIG_SENSORS_LM75 is not set
@@ -994,9 +1368,11 @@
# CONFIG_SENSORS_LM85 is not set
# CONFIG_SENSORS_LM87 is not set
# CONFIG_SENSORS_LM90 is not set
+# CONFIG_SENSORS_LM92 is not set
# CONFIG_SENSORS_MAX1619 is not set
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_W83781D is not set
@@ -1006,6 +1382,7 @@
#
# Other I2C Chip support
#
+# CONFIG_SENSORS_DS1337 is not set
# CONFIG_SENSORS_EEPROM is not set
# CONFIG_SENSORS_PCF8574 is not set
# CONFIG_SENSORS_PCF8591 is not set
@@ -1069,6 +1446,11 @@
# Graphics support
#
CONFIG_FB=y
+CONFIG_FB_CFB_FILLRECT=m
+CONFIG_FB_CFB_COPYAREA=m
+CONFIG_FB_CFB_IMAGEBLIT=m
+CONFIG_FB_SOFT_CURSOR=m
+# CONFIG_FB_MACMODES is not set
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y
CONFIG_FB_CIRRUS=m
@@ -1077,6 +1459,8 @@
CONFIG_FB_CYBER2000=m
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
+CONFIG_FB_NVIDIA=m
+CONFIG_FB_NVIDIA_I2C=y
CONFIG_FB_RIVA=m
CONFIG_FB_RIVA_I2C=y
# CONFIG_FB_RIVA_DEBUG is not set
@@ -1098,18 +1482,20 @@
CONFIG_FB_ATY_XL_INIT=y
CONFIG_FB_ATY_GX=y
CONFIG_FB_SAVAGE=m
-CONFIG_FB_SAVAGE_I2C=m
-CONFIG_FB_SAVAGE_ACCEL=m
+CONFIG_FB_SAVAGE_I2C=y
+CONFIG_FB_SAVAGE_ACCEL=y
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
CONFIG_FB_3DFX=m
CONFIG_FB_3DFX_ACCEL=y
CONFIG_FB_VOODOO1=m
+CONFIG_FB_SMIVGX=m
CONFIG_FB_TRIDENT=m
CONFIG_FB_TRIDENT_ACCEL=y
# CONFIG_FB_PM3 is not set
# CONFIG_FB_E1356 is not set
+CONFIG_FB_S1D13XXX=m
# CONFIG_FB_VIRTUAL is not set
#
@@ -1148,13 +1534,10 @@
CONFIG_SND=m
CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m
-CONFIG_SND_HWDEP=m
-CONFIG_SND_RAWMIDI=m
# CONFIG_SND_SEQUENCER is not set
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
-CONFIG_SND_BIT32_EMUL=m
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set
@@ -1207,6 +1590,7 @@
# CONFIG_SND_VIA82XX is not set
# CONFIG_SND_VIA82XX_MODEM is not set
# CONFIG_SND_VX222 is not set
+# CONFIG_SND_HDA_INTEL is not set
#
# ALSA MIPS devices
@@ -1252,6 +1636,8 @@
#
# USB support
#
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB=m
# CONFIG_USB_DEBUG is not set
@@ -1262,8 +1648,6 @@
# CONFIG_USB_BANDWIDTH is not set
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_OTG is not set
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
#
# USB Host Controller Drivers
@@ -1279,7 +1663,10 @@
# USB Device Class drivers
#
CONFIG_USB_AUDIO=m
-CONFIG_USB_BLUETOOTH_TTY=m
+
+#
+# USB Bluetooth TTY can only be used with disabled Bluetooth subsystem
+#
CONFIG_USB_MIDI=m
CONFIG_USB_ACM=m
CONFIG_USB_PRINTER=m
@@ -1289,12 +1676,11 @@
#
CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
-CONFIG_USB_STORAGE_RW_DETECT=y
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_ISD200=y
CONFIG_USB_STORAGE_DPCM=y
-CONFIG_USB_STORAGE_HP8200e=y
+CONFIG_USB_STORAGE_USBAT=y
CONFIG_USB_STORAGE_SDDR09=y
CONFIG_USB_STORAGE_SDDR55=y
CONFIG_USB_STORAGE_JUMPSHOT=y
@@ -1329,7 +1715,6 @@
#
CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
-CONFIG_USB_HPUSBSCSI=m
#
# USB Multimedia devices
@@ -1342,6 +1727,7 @@
CONFIG_USB_SE401=m
CONFIG_USB_SN9C102=m
CONFIG_USB_STV680=m
+CONFIG_USB_PWC=m
#
# USB Network Adapters
@@ -1375,6 +1761,7 @@
# USB Network Adapters
#
CONFIG_USB_AX8817X=y
+CONFIG_USB_MON=m
#
# USB port drivers
@@ -1385,9 +1772,11 @@
#
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_AIRPRIME=m
# CONFIG_USB_SERIAL_BELKIN is not set
# CONFIG_USB_SERIAL_WHITEHEAT is not set
# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
+CONFIG_USB_SERIAL_CP2101=m
# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
# CONFIG_USB_SERIAL_EMPEG is not set
# CONFIG_USB_SERIAL_FTDI_SIO is not set
@@ -1402,6 +1791,7 @@
# CONFIG_USB_SERIAL_KOBIL_SCT is not set
# CONFIG_USB_SERIAL_MCT_U232 is not set
# CONFIG_USB_SERIAL_PL2303 is not set
+CONFIG_USB_SERIAL_HP4X=m
# CONFIG_USB_SERIAL_SAFE is not set
# CONFIG_USB_SERIAL_TI is not set
# CONFIG_USB_SERIAL_CYBERJACK is not set
@@ -1411,7 +1801,6 @@
#
# USB Miscellaneous drivers
#
-# CONFIG_USB_EMI26 is not set
CONFIG_USB_AUERSWALD=m
CONFIG_USB_RIO500=m
CONFIG_USB_LEGOTOWER=m
@@ -1421,11 +1810,14 @@
CONFIG_USB_PHIDGETKIT=m
CONFIG_USB_PHIDGETSERVO=m
CONFIG_USB_IDMOUSE=m
+CONFIG_USB_SISUSBVGA=m
CONFIG_USB_TEST=m
#
# USB ATM/DSL drivers
#
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
#
# USB Gadget Support
@@ -1630,7 +2022,9 @@
#
# Kernel hacking
#
+# CONFIG_PRINTK_TIME is not set
# CONFIG_DEBUG_KERNEL is not set
+CONFIG_LOG_BUF_SHIFT=15
# CONFIG_CROSSCOMPILE is not set
CONFIG_CMDLINE=""
# CONFIG_SB1XXX_CORELIS is not set
@@ -1653,6 +2047,7 @@
CONFIG_CRYPTO_SHA256=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_WP512=m
+CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_DES=m
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_TWOFISH=m
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/control.in/stub
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/control.in/stub 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/control.in/stub 2005-08-17 19:38:05 UTC (rev 3964)
@@ -1,7 +1,7 @@
Source: linux-patch- at kernver@-mips
Section: devel
Priority: optional
-Build-Depends: linux-source- at kernver@ (= @sourcever@), kernel-package (>= 9.000), debhelper (>= 4.1.0), module-init-tools, dpatch, bzip2
+Build-Depends: linux-source- at kernver@ (= @sourcever@), kernel-package (>= 9.006), debhelper (>= 4.1.0), module-init-tools, dpatch, bzip2
Maintainer: Debian kernel team <debian-kernel at lists.debian.org>
Uploaders: Thiemo Seufer <ths at debian.org>
Standards-Version: 3.6.1
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/flavours.mipsel
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/flavours.mipsel 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/flavours.mipsel 2005-08-17 19:38:05 UTC (rev 3964)
@@ -1,7 +1,7 @@
# Kernel flavours we build for mipsel
#r3k-kn02
#r4k-kn04
-#r5k-cobalt
+r5k-cobalt
#r5k-lasat
sb1-swarm-bn
#xxs1500
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches/10_arch-makefile.dpatch
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches/10_arch-makefile.dpatch 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches/10_arch-makefile.dpatch 2005-08-17 19:38:05 UTC (rev 3964)
@@ -29,15 +29,6 @@
diff -u -p -r1.186 Makefile
--- arch/mips/Makefile 18 Dec 2004 01:15:52 -0000 1.186
+++ arch/mips/Makefile 10 Jan 2005 22:10:32 -0000
-@@ -56,7 +56,7 @@ ifdef CONFIG_BUILD_ELF64
- gas-abi = 64
- ld-emul = $(64bit-emul)
- vmlinux-32 = vmlinux.32
--vmlinux-64 = vmlinux
-+vmlinux-64 = vmlinux.64
- else
- gas-abi = 32
- ld-emul = $(32bit-emul)
@@ -118,7 +118,7 @@ if $(CC) $$gcc_abi -S -o /dev/null -xc /
else \
gcc_abi=; gcc_isa=-$(5); \
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches/21_ip30.dpatch
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches/21_ip30.dpatch 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches/21_ip30.dpatch 2005-08-17 19:38:05 UTC (rev 3964)
@@ -3,7 +3,7 @@
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Improved ioc3 driver, from
-## DP: ftp://ftp.linux-mips.org/pub/linux/mips/people/skylark/linux-mips-2.6.12-ip30-r23.patch.bz2
+## DP: ftp://ftp.linux-mips.org/pub/linux/mips/people/skylark/linux-mips-2.6.12-ip30-r25.patch.bz2
if [ $# -lt 1 ]; then
echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
@@ -192,8 +192,8 @@
EXTRA_AFLAGS := $(CFLAGS)
diff -urN linux-2.6.12-ioc3/arch/mips/mm/dma-ip30.c linux-2.6.12-ip30/arch/mips/mm/dma-ip30.c
--- linux-2.6.12-ioc3/arch/mips/mm/dma-ip30.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.12-ip30/arch/mips/mm/dma-ip30.c 2005-07-10 16:11:27.000000000 +0200
-@@ -0,0 +1,274 @@
++++ linux-2.6.12-ip30/arch/mips/mm/dma-ip30.c 2005-07-12 11:02:08.000000000 +0200
+@@ -0,0 +1,279 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
+ * License. See the file "COPYING" in the main directory of this archive
@@ -210,16 +210,21 @@
+#include <linux/string.h>
+#include <linux/pci.h>
+
-+#ifdef CONFIG_SGI_IP30
+#include <asm/mach-ip30/addrs.h>
-+#endif
+#include <asm/cache.h>
+#include <asm/pci/bridge.h>
+
-+static inline dma_addr_t pdev_to_baddr(struct pci_dev *dev, dma_addr_t addr)
++static inline dma_addr_t pdev_to_baddr(struct pci_dev *dev, dma_addr_t addr, int virt, int size)
+{
-+ if(dev->dma_mask == 0xFFFFFFFFFFFFFFFFUL) /* 64-bit DMA */
-+ return BRIDGE_CONTROLLER(dev->bus)->baddr + addr;
++ if(dev->dma_mask == 0xFFFFFFFFFFFFFFFFUL) { /* 64-bit DMA */
++ if(virt)
++ return (BRIDGE_CONTROLLER(dev->bus)->baddr + addr) | PCI64_ATTR_VIRTUAL;
++ if(size >= 0x200)
++ return (BRIDGE_CONTROLLER(dev->bus)->baddr + addr) | PCI64_ATTR_PREF;
++ if(addr >= 0x20000000 || addr < 0xA0000000)
++ return PCI32_DIRECT_BASE + addr - 0x20000000;
++ return (BRIDGE_CONTROLLER(dev->bus)->baddr + addr);
++ }
+ if(addr < 0x20000000 || addr >= 0xA0000000) {
+ printk(KERN_ERR "BRIDGE: Mapping can't be realized in direct DMA.\n");
+ return -1;
@@ -227,10 +232,10 @@
+ return PCI32_DIRECT_BASE + addr - 0x20000000;
+}
+
-+static inline dma_addr_t dev_to_baddr(struct device *dev, dma_addr_t addr)
++static inline dma_addr_t dev_to_baddr(struct device *dev, dma_addr_t addr, int virt, int size)
+{
+ if(dev)
-+ return pdev_to_baddr(to_pci_dev(dev), addr);
++ return pdev_to_baddr(to_pci_dev(dev), addr, virt, size);
+ return addr;
+}
+
@@ -248,7 +253,7 @@
+
+ if (ret != NULL) {
+ memset(ret, 0, size);
-+ *dma_handle = dev_to_baddr(dev, virt_to_phys(ret));
++ *dma_handle = dev_to_baddr(dev, virt_to_phys(ret), 1, size);
+ }
+
+ return ret;
@@ -282,7 +287,7 @@
+{
+ BUG_ON(direction == DMA_NONE);
+
-+ return dev_to_baddr(dev, __pa(ptr));
++ return dev_to_baddr(dev, __pa(ptr), 0, size);
+}
+
+EXPORT_SYMBOL(dma_map_single);
@@ -304,7 +309,7 @@
+
+ for (i = 0; i < nents; i++, sg++) {
+ sg->dma_address = (dma_addr_t) dev_to_baddr(dev,
-+ page_to_phys(sg->page) + sg->offset);
++ page_to_phys(sg->page) + sg->offset, 1, sg->length);
+ }
+
+ return nents;
@@ -317,7 +322,7 @@
+{
+ BUG_ON(direction == DMA_NONE);
+
-+ return dev_to_baddr(dev, page_to_phys(page) + offset);
++ return dev_to_baddr(dev, page_to_phys(page) + offset, 0, size);
+}
+
+EXPORT_SYMBOL(dma_map_page);
@@ -430,7 +435,7 @@
+{
+ dma64_addr_t addr = page_to_phys(page) + offset;
+
-+ return (dma64_addr_t) pdev_to_baddr(pdev, addr);
++ return (dma64_addr_t) pdev_to_baddr(pdev, addr, 0, PAGE_SIZE);
+}
+
+EXPORT_SYMBOL(pci_dac_page_to_dma);
@@ -498,7 +503,7 @@
+#ifdef CONFIG_MIPS64
+unsigned long kernel_physaddr(unsigned long kva)
+{
-+ if(kva&0xffffffff00000000UL==0xffffffff00000000UL)
++ if((kva & ~0xffffffffUL) == ~0xffffffffUL)
+ return CPHYSADDR(kva);
+ return XPHYSADDR(kva);
+}
@@ -538,8 +543,8 @@
obj-$(CONFIG_SNI_RM200_PCI) += fixup-sni.o ops-sni.o
diff -urN linux-2.6.12-ioc3/arch/mips/pci/pci-ip30.c linux-2.6.12-ip30/arch/mips/pci/pci-ip30.c
--- linux-2.6.12-ioc3/arch/mips/pci/pci-ip30.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.12-ip30/arch/mips/pci/pci-ip30.c 2005-07-10 15:51:00.000000000 +0200
-@@ -0,0 +1,483 @@
++++ linux-2.6.12-ip30/arch/mips/pci/pci-ip30.c 2005-07-13 08:19:23.000000000 +0200
+@@ -0,0 +1,484 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
+ * License. See the file "COPYING" in the main directory of this archive
@@ -935,8 +940,9 @@
+ bridge->b_wid_control &= ~(BRIDGE_CTRL_IO_SWAP | BRIDGE_CTRL_MEM_SWAP);
+
+ for(i=0;i<8;i++)
-+ bridge->b_device[i].reg = 0x12091000;
-+
++ bridge->b_device[i].reg = BRIDGE_DEV_ERR_LOCK_EN | BRIDGE_DEV_VIRTUAL_EN |
++ BRIDGE_DEV_PMU_WRGA_EN | BRIDGE_DEV_DIR_WRGA_EN |
++ BRIDGE_DEV_SWAP_PMU | BRIDGE_DEV_SWAP_DIR | BRIDGE_DEV_COH;
+ /*
+ * Configure direct-mapped DMA
+ */
@@ -949,8 +955,8 @@
+ * These are occult numbers of the Black Priesthood of Ancient Mu.
+ */
+
-+ bridge->b_even_resp = 0x8888ba98;
-+ bridge->b_odd_resp = 0x8888ba98;
++ bridge->b_even_resp = 0xddcc9988;
++ bridge->b_odd_resp = 0xddcc9988;
+
+ /*
+ * Route all PCI bridge interrupts to the HEART ASIC. The idea is
@@ -1180,8 +1186,8 @@
+ END(ip30_irq)
diff -urN linux-2.6.12-ioc3/arch/mips/sgi-ip30/ip30-irq.c linux-2.6.12-ip30/arch/mips/sgi-ip30/ip30-irq.c
--- linux-2.6.12-ioc3/arch/mips/sgi-ip30/ip30-irq.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.12-ip30/arch/mips/sgi-ip30/ip30-irq.c 2005-07-09 13:36:14.000000000 +0200
-@@ -0,0 +1,304 @@
++++ linux-2.6.12-ip30/arch/mips/sgi-ip30/ip30-irq.c 2005-07-13 10:00:38.000000000 +0200
+@@ -0,0 +1,307 @@
+/*
+ * ip30-irq.c: Highlevel interrupt handling for IP30 architecture.
+ *
@@ -1280,8 +1286,9 @@
+ unsigned long irqsel;
+ int irqnum;
+#ifdef DEBUG_IRQ
++ bridge_t *bvma = (bridge_t *)0x900000001F000000UL;
+ if(irqs&~(15UL<<IRQ_TIMER_P(0)))
-+ printk("IP30: received HEART IRQs: 0x%016lx (mask 0x%016lx) PCPU%d\n",*HEART_ISR,*HEART_IMR(pcpu),pcpu);
++ printk("IP30: received HEART IRQs: 0x%016lx (mask 0x%016lx) PCPU%d BRIDGE %08x\n",*HEART_ISR,*HEART_IMR(pcpu),pcpu,bvma->b_int_status);
+#endif
+ /* check for all IRQs in decreasing priority order */
+ irqsel=0x0004000000000000;
@@ -1307,7 +1314,9 @@
+ unsigned long flags;
+ unsigned int device;
+ unsigned int pcpu;
-+ if(irq<IRQ_TIMER_P(0) || irq>IRQ_IPI_P(3))
++ if(irq == 14 || irq == 15)
++ pcpu=0;
++ else if(irq<IRQ_TIMER_P(0) || irq>IRQ_IPI_P(3))
+ pcpu=heart_irq_thisowner=cpu_next_pcpu(heart_irq_thisowner);
+ else
+ pcpu=cpu_logical_map(smp_processor_id());
@@ -1488,8 +1497,8 @@
+}
diff -urN linux-2.6.12-ioc3/arch/mips/sgi-ip30/ip30-power.c linux-2.6.12-ip30/arch/mips/sgi-ip30/ip30-power.c
--- linux-2.6.12-ioc3/arch/mips/sgi-ip30/ip30-power.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.12-ip30/arch/mips/sgi-ip30/ip30-power.c 2005-07-09 13:36:14.000000000 +0200
-@@ -0,0 +1,62 @@
++++ linux-2.6.12-ip30/arch/mips/sgi-ip30/ip30-power.c 2005-07-13 10:00:30.000000000 +0200
+@@ -0,0 +1,124 @@
+/*
+ * ip30-power.c: Software powerdown and reset handling for IP30 architecture.
+ *
@@ -1507,10 +1516,12 @@
+#include <linux/tty.h>
+#include <linux/delay.h>
+
++#include <asm/mach-ip30/addrs.h>
+#include <asm/mach-ip30/heart.h>
+#include <asm/reboot.h>
+#include <asm/time.h>
+#include <asm/io.h>
++#include <asm/pci/bridge.h>
+
+void ip30_machine_restart(char *command)
+{
@@ -1524,10 +1535,14 @@
+}
+
+void ip30_soft_powerdown(void);
++int ip30_clear_power_irq(void);
++int ip30_can_powerdown(void);
+
+void ip30_machine_power_off(void)
+{
+#ifdef CONFIG_SGI_IP30_RTC
++ if(!ip30_can_powerdown())
++ return;
+ printk("Powering down, please wait...");
+#ifdef CONFIG_SMP
+ smp_send_stop();
@@ -1552,6 +1567,62 @@
+{
+ ip30_machine_power_off();
+}
++
++/* power button */
++
++#define IP30_POWER_IRQ 14
++#define IP30_ACFAIL_IRQ 15
++
++static struct timer_list power_timer;
++
++static int is_shutdown;
++
++static void power_timeout(unsigned long data)
++{
++ ip30_machine_power_off();
++}
++
++static irqreturn_t power_irq(int irq, void *dev_id, struct pt_regs *regs)
++{
++ /* prepare for next IRQs */
++#ifdef CONFIG_SGI_IP30_RTC
++ if(!ip30_clear_power_irq())
++#endif
++ disable_irq_nosync(irq);
++
++ /* button pressed twice or no init */
++ if (is_shutdown || kill_proc(1,SIGINT,1)) {
++ printk(KERN_INFO "Immediate powerdown...\n");
++ ip30_machine_power_off();
++ return IRQ_HANDLED;
++ }
++
++ /* power button, set LEDs if we can */
++ is_shutdown = 1;
++ printk(KERN_INFO "Power button pressed, shutting down...\n");
++
++ init_timer(&power_timer);
++ power_timer.function = power_timeout;
++ power_timer.expires = jiffies + 30*HZ;
++ add_timer(&power_timer);
++
++ return IRQ_HANDLED;
++}
++
++static irqreturn_t acfail_irq(int irq, void *dev_id, struct pt_regs *regs)
++{
++ /* we have a bit of time here */
++ return IRQ_HANDLED;
++}
++
++static int __init reboot_setup(void)
++{
++ request_irq(IP30_POWER_IRQ, power_irq, 0, "powerbtn", NULL);
++ request_irq(IP30_ACFAIL_IRQ, acfail_irq, 0, "acfail", NULL);
++ return 0;
++}
++
++subsys_initcall(reboot_setup);
diff -urN linux-2.6.12-ioc3/arch/mips/sgi-ip30/ip30-setup.c linux-2.6.12-ip30/arch/mips/sgi-ip30/ip30-setup.c
--- linux-2.6.12-ioc3/arch/mips/sgi-ip30/ip30-setup.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.12-ip30/arch/mips/sgi-ip30/ip30-setup.c 2005-07-11 18:07:34.000000000 +0200
@@ -2076,8 +2147,8 @@
obj-$(CONFIG_S3C2410_RTC) += s3c2410-rtc.o
diff -urN linux-2.6.12-ioc3/drivers/char/ip30-leds.c linux-2.6.12-ip30/drivers/char/ip30-leds.c
--- linux-2.6.12-ioc3/drivers/char/ip30-leds.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.12-ip30/drivers/char/ip30-leds.c 2005-07-09 13:36:14.000000000 +0200
-@@ -0,0 +1,231 @@
++++ linux-2.6.12-ip30/drivers/char/ip30-leds.c 2005-07-13 08:16:54.000000000 +0200
+@@ -0,0 +1,270 @@
+/*
+ * Driver for the LEDs in SGI Octane.
+ *
@@ -2097,6 +2168,7 @@
+#include <linux/proc_fs.h>
+#include <linux/smp_lock.h>
+#include <linux/delay.h>
++#include <linux/notifier.h>
+
+#include <linux/miscdevice.h>
+#include <linux/leds.h>
@@ -2236,6 +2308,42 @@
+ &leds_fops
+};
+
++/* special hacks */
++
++static int panic_event(struct notifier_block *this, unsigned long event,
++ void *ptr)
++{
++ del_timer(&leds_timer);
++ memset(leds_stream, 0xFF, LEDS_STREAM_SIZE);
++
++ leds_stream[0] = 0x00;
++ leds_stream[1] = 0x00;
++ leds_stream[2] = 0x01;
++ leds_stream[3] = 0xFF;
++
++ leds_stream[4] = 0x49;
++ leds_stream[5] = 0x01;
++
++ leds_stream[6] = 0x01;
++ leds_stream[7] = 0x00;
++ leds_stream[8] = 0x00;
++ leds_stream[9] = 0xFF;
++
++ leds_stream[10] = 0x89;
++ leds_stream[11] = 0x01;
++
++ leds_pc = 0;
++ leds_timer.expires = jiffies + 1;
++ leds_timer.function = leds_timer_proc;
++ add_timer(&leds_timer);
++
++ return NOTIFY_DONE;
++}
++
++static struct notifier_block panic_block = {
++ .notifier_call = panic_event,
++};
++
+/* IOC3 SuperIO probe */
+
+static int ioc3led_probe(struct ioc3_submodule *is, struct ioc3_driver_data *idd)
@@ -2275,6 +2383,8 @@
+ leds_timer.function = leds_timer_proc;
+ add_timer(&leds_timer);
+
++ notifier_chain_register(&panic_notifier_list, &panic_block);
++
+ return 0;
+}
+
@@ -2311,8 +2421,8 @@
+module_exit(leds_exit);
diff -urN linux-2.6.12-ioc3/drivers/char/ip30-rtc.c linux-2.6.12-ip30/drivers/char/ip30-rtc.c
--- linux-2.6.12-ioc3/drivers/char/ip30-rtc.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.12-ip30/drivers/char/ip30-rtc.c 2005-07-09 13:36:14.000000000 +0200
-@@ -0,0 +1,353 @@
++++ linux-2.6.12-ip30/drivers/char/ip30-rtc.c 2005-07-13 09:34:21.000000000 +0200
+@@ -0,0 +1,395 @@
+/*
+ * Driver for the Maxim/Dallas DS1687 real time clock in SGI Octane.
+ *
@@ -2442,11 +2552,45 @@
+
+/* power-down logic */
+
++static int ip30_soft_powerdown_called;
++static int ip30_clear_irq_called;
++
++int ip30_clear_power_irq(void)
++{
++ unsigned char val;
++
++ if(!ioc3) {
++ ip30_clear_irq_called = 1;
++ return 0;
++ }
++
++ spin_lock_irq(&rtc_lock);
++ val = ip30_rtc_read(0x0a);
++ ip30_rtc_write(0x0a, val | 0x10);
++ ip30_rtc_write(0x4a, 0x00);
++ spin_unlock_irq(&rtc_lock);
++ return 1;
++}
++
++int ip30_can_powerdown(void)
++{
++ if(!ioc3) {
++ ip30_soft_powerdown_called = 1;
++ return 0;
++ }
++ return 1;
++}
++
+void ip30_soft_powerdown(void)
+{
+ unsigned char val;
+ rtc_begin_access(1);
+
++ if(!ioc3) {
++ ip30_soft_powerdown_called = 1;
++ return;
++ }
++
+/* prepare the RTC for waking us up so we don't wind up dead */
+ val = ip30_rtc_read(0x4b);
+ val &= 0x2a;
@@ -2631,6 +2775,14 @@
+
+ write_sequnlock_irq(&xtime_lock);
+
++ ip30_clear_power_irq();
++
++ if(ip30_clear_irq_called)
++ enable_irq(14);
++
++ if(ip30_soft_powerdown_called)
++ ip30_soft_powerdown();
++
+ return 0;
+}
+
@@ -5115,13 +5267,23 @@
diff -urN linux-2.6.12-ioc3/include/sound/rad1.h linux-2.6.12-ip30/include/sound/rad1.h
--- linux-2.6.12-ioc3/include/sound/rad1.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.12-ip30/include/sound/rad1.h 2005-07-09 13:36:14.000000000 +0200
-@@ -0,0 +1,231 @@
++++ linux-2.6.12-ip30/include/sound/rad1.h 2005-07-25 07:10:34.000000000 +0200
+@@ -0,0 +1,111 @@
+#ifndef _RAD1_H
+#define _RAD1_H
+
+#include <linux/types.h>
+
++#define RAD1_ADATRX 0
++#define RAD1_AESRX 1
++#define RAD1_ATOD 2
++#define RAD1_ADATSUBRX 3
++#define RAD1_AESSUBRX 4
++#define RAD1_ADATTX 5
++#define RAD1_AESTX 6
++#define RAD1_DTOA 7
++#define RAD1_STATUS 8
++
+struct rad1regs {
+ u32 pci_status; /* 0x00000000 */
+ u32 adat_rx_msc_ust; /* 0x00000004 */
@@ -5168,182 +5330,52 @@
+
+ u32 clockgen_ictl; /* 0x000000a0 */
+ u32 clockgen_rem; /* 0x000000a4 */
-+ u32 freq_synth3_mux_sel; /* 0x000000a8 */
-+ u32 freq_synth2_mux_sel; /* 0x000000ac */
-+ u32 freq_synth1_mux_sel; /* 0x000000b0 */
-+ u32 freq_synth0_mux_sel; /* 0x000000b4 */
++ u32 freq_synth_mux_sel[4]; /* 0x000000a8 */
+ u32 mpll0_lock_control; /* 0x000000b8 */
+ u32 mpll1_lock_control; /* 0x000000bc */
+
+ u32 _pad400[208];
+
++ /* descriptor RAM */
+ struct {
+ u32 loadr; /* 0x00000400 + 12*idx */
+ u32 hiadr; /* 0x00000404 + 12*idx */
+ u32 control; /* 0x00000408 + 12*idx */
+ } pci_descr[16];
+
-+ u32 pci_loadr_adat_rx; /* 0x000004c0 */
-+ u32 pci_control_adat_rx; /* 0x000004c4 */
-+ u32 pci_loadr_aes_rx; /* 0x000004c8 */
-+ u32 pci_control_aes_rx; /* 0x000004cc */
-+ u32 pci_loadr_atod; /* 0x000004d0 */
-+ u32 pci_control_atod; /* 0x000004d4 */
-+ u32 pci_loadr_adatsub_rx; /* 0x000004d8 */
-+ u32 pci_control_adatsub_rx; /* 0x000004dc */
-+ u32 pci_loadr_aessub_rx; /* 0x000004e0 */
-+ u32 pci_control_aessub_rx; /* 0x000004e4 */
-+ u32 pci_loadr_adat_tx; /* 0x000004e8 */
-+ u32 pci_control_adat_tx; /* 0x000004ec */
-+ u32 pci_loadr_aes_tx; /* 0x000004f0 */
-+ u32 pci_control_aes_tx; /* 0x000004f4 */
-+ u32 pci_loadr_dtoa; /* 0x000004f8 */
-+ u32 pci_control_dtoa; /* 0x000004fc */
-+ u32 pci_loadr_status; /* 0x00000500 */
-+ u32 pci_control_status; /* 0x00000504 */
-+ u32 pci_hiadr_adat_rx; /* 0x00000508 */
-+ u32 pci_hiadr_aes_rx; /* 0x0000050c */
-+ u32 pci_hiadr_atod; /* 0x00000510 */
-+ u32 pci_hiadr_adatsub_rx; /* 0x00000514 */
-+ u32 pci_hiadr_aessub_rx; /* 0x00000518 */
-+ u32 pci_hiadr_adat_tx; /* 0x0000051c */
-+ u32 pci_hiadr_aes_tx; /* 0x00000520 */
-+ u32 pci_hiadr_dtoa; /* 0x00000524 */
-+ u32 pci_hiadr_status; /* 0x00000528 */
++ /* running descriptors */
++ struct {
++ u32 loadr;
++ u32 control;
++ } pci_lc[9];
++ u32 pci_hiadr[9];
+
+ u32 _pad1000[693];
+
-+ u32 adat_subcode_txa_u0_0; /* 0x00001000 */
-+ u32 adat_subcode_txa_u0_1; /* 0x00001004 */
-+ u32 adat_subcode_txa_u0_2; /* 0x00001008 */
-+ u32 adat_subcode_txa_u0_3; /* 0x0000100c */
-+ u32 adat_subcode_txa_u0_4; /* 0x00001010 */
-+ u32 adat_subcode_txa_u0_5; /* 0x00001014 */
-+ u32 adat_subcode_txa_u1_0; /* 0x00001018 */
-+ u32 adat_subcode_txa_u1_1; /* 0x0000101c */
-+ u32 adat_subcode_txa_u1_2; /* 0x00001020 */
-+ u32 adat_subcode_txa_u1_3; /* 0x00001024 */
-+ u32 adat_subcode_txa_u1_4; /* 0x00001028 */
-+ u32 adat_subcode_txa_u1_5; /* 0x0000102c */
-+ u32 adat_subcode_txa_u2_0; /* 0x00001030 */
-+ u32 adat_subcode_txa_u2_1; /* 0x00001034 */
-+ u32 adat_subcode_txa_u2_2; /* 0x00001038 */
-+ u32 adat_subcode_txa_u2_3; /* 0x0000103c */
-+ u32 adat_subcode_txa_u2_4; /* 0x00001040 */
-+ u32 adat_subcode_txa_u2_5; /* 0x00001044 */
-+ u32 adat_subcode_txa_u3_0; /* 0x00001048 */
-+ u32 adat_subcode_txa_u3_1; /* 0x0000104c */
-+ u32 adat_subcode_txa_u3_2; /* 0x00001050 */
-+ u32 adat_subcode_txa_u3_3; /* 0x00001054 */
-+ u32 adat_subcode_txa_u3_4; /* 0x00001058 */
-+ u32 adat_subcode_txa_u3_5; /* 0x0000105c */
++ u32 adat_subcode_txa_u[24]; /* 0x00001000 */
+ u32 adat_subcode_txa_unused; /* 0x00001060 */
+
+ u32 _pad1080[7];
+
-+ u32 adat_subcode_txb_u0_0; /* 0x00001080 */
-+ u32 adat_subcode_txb_u0_1; /* 0x00001084 */
-+ u32 adat_subcode_txb_u0_2; /* 0x00001088 */
-+ u32 adat_subcode_txb_u0_3; /* 0x0000108c */
-+ u32 adat_subcode_txb_u0_4; /* 0x00001090 */
-+ u32 adat_subcode_txb_u0_5; /* 0x00001094 */
-+ u32 adat_subcode_txb_u1_0; /* 0x00001098 */
-+ u32 adat_subcode_txb_u1_1; /* 0x0000109c */
-+ u32 adat_subcode_txb_u1_2; /* 0x000010a0 */
-+ u32 adat_subcode_txb_u1_3; /* 0x000010a4 */
-+ u32 adat_subcode_txb_u1_4; /* 0x000010a8 */
-+ u32 adat_subcode_txb_u1_5; /* 0x000010ac */
-+ u32 adat_subcode_txb_u2_0; /* 0x000010b0 */
-+ u32 adat_subcode_txb_u2_1; /* 0x000010b4 */
-+ u32 adat_subcode_txb_u2_2; /* 0x000010b8 */
-+ u32 adat_subcode_txb_u2_3; /* 0x000010bc */
-+ u32 adat_subcode_txb_u2_4; /* 0x000010c0 */
-+ u32 adat_subcode_txb_u2_5; /* 0x000010c4 */
-+ u32 adat_subcode_txb_u3_0; /* 0x000010c8 */
-+ u32 adat_subcode_txb_u3_1; /* 0x000010cc */
-+ u32 adat_subcode_txb_u3_2; /* 0x000010d0 */
-+ u32 adat_subcode_txb_u3_3; /* 0x000010d4 */
-+ u32 adat_subcode_txb_u3_4; /* 0x000010d8 */
-+ u32 adat_subcode_txb_u3_5; /* 0x000010dc */
++ u32 adat_subcode_txb_u[24]; /* 0x00001080 */
+ u32 adat_subcode_txb_unused; /* 0x000010e0 */
+
+ u32 _pad1100[7];
+
-+ u32 aes_subcode_txa_lu0; /* 0x00001100 */
-+ u32 aes_subcode_txa_lu1; /* 0x00001104 */
-+ u32 aes_subcode_txa_lu2; /* 0x00001108 */
-+ u32 aes_subcode_txa_lu3; /* 0x0000110c */
-+ u32 aes_subcode_txa_lu4; /* 0x00001110 */
-+ u32 aes_subcode_txa_lu5; /* 0x00001114 */
-+ u32 aes_subcode_txa_lc0; /* 0x00001118 */
-+ u32 aes_subcode_txa_lc1; /* 0x0000111c */
-+ u32 aes_subcode_txa_lc2; /* 0x00001120 */
-+ u32 aes_subcode_txa_lc3; /* 0x00001124 */
-+ u32 aes_subcode_txa_lc4; /* 0x00001128 */
-+ u32 aes_subcode_txa_lc5; /* 0x0000112c */
-+ u32 aes_subcode_txa_lv0; /* 0x00001130 */
-+ u32 aes_subcode_txa_lv1; /* 0x00001134 */
-+ u32 aes_subcode_txa_lv2; /* 0x00001138 */
-+ u32 aes_subcode_txa_lv3; /* 0x0000113c */
-+ u32 aes_subcode_txa_lv4; /* 0x00001140 */
-+ u32 aes_subcode_txa_lv5; /* 0x00001144 */
-+ u32 aes_subcode_txa_ru0; /* 0x00001148 */
-+ u32 aes_subcode_txa_ru1; /* 0x0000114c */
-+ u32 aes_subcode_txa_ru2; /* 0x00001150 */
-+ u32 aes_subcode_txa_ru3; /* 0x00001154 */
-+ u32 aes_subcode_txa_ru4; /* 0x00001158 */
-+ u32 aes_subcode_txa_ru5; /* 0x0000115c */
-+ u32 aes_subcode_txa_rc0; /* 0x00001160 */
-+ u32 aes_subcode_txa_rc1; /* 0x00001164 */
-+ u32 aes_subcode_txa_rc2; /* 0x00001168 */
-+ u32 aes_subcode_txa_rc3; /* 0x0000116c */
-+ u32 aes_subcode_txa_rc4; /* 0x00001170 */
-+ u32 aes_subcode_txa_rc5; /* 0x00001174 */
-+ u32 aes_subcode_txa_rv0; /* 0x00001178 */
-+ u32 aes_subcode_txa_rv1; /* 0x0000117c */
-+
-+ u32 aes_subcode_txb_lu0; /* 0x00001180 */
-+ u32 aes_subcode_txb_lu1; /* 0x00001184 */
-+ u32 aes_subcode_txb_lu2; /* 0x00001188 */
-+ u32 aes_subcode_txb_lu3; /* 0x0000118c */
-+ u32 aes_subcode_txb_lu4; /* 0x00001190 */
-+ u32 aes_subcode_txb_lu5; /* 0x00001194 */
-+ u32 aes_subcode_txb_lc0; /* 0x00001198 */
-+ u32 aes_subcode_txb_lc1; /* 0x0000119c */
-+ u32 aes_subcode_txb_lc2; /* 0x000011a0 */
-+ u32 aes_subcode_txb_lc3; /* 0x000011a4 */
-+ u32 aes_subcode_txb_lc4; /* 0x000011a8 */
-+ u32 aes_subcode_txb_lc5; /* 0x000011ac */
-+ u32 aes_subcode_txb_lv0; /* 0x000011b0 */
-+ u32 aes_subcode_txb_lv1; /* 0x000011b4 */
-+ u32 aes_subcode_txb_lv2; /* 0x000011b8 */
-+ u32 aes_subcode_txb_lv3; /* 0x000011bc */
-+ u32 aes_subcode_txb_lv4; /* 0x000011c0 */
-+ u32 aes_subcode_txb_lv5; /* 0x000011c4 */
-+ u32 aes_subcode_txb_ru0; /* 0x000011c8 */
-+ u32 aes_subcode_txb_ru1; /* 0x000011cc */
-+ u32 aes_subcode_txb_ru2; /* 0x000011d0 */
-+ u32 aes_subcode_txb_ru3; /* 0x000011d4 */
-+ u32 aes_subcode_txb_ru4; /* 0x000011d8 */
-+ u32 aes_subcode_txb_ru5; /* 0x000011dc */
-+ u32 aes_subcode_txb_rc0; /* 0x000011e0 */
-+ u32 aes_subcode_txb_rc1; /* 0x000011e4 */
-+ u32 aes_subcode_txb_rc2; /* 0x000011e8 */
-+ u32 aes_subcode_txb_rc3; /* 0x000011ec */
-+ u32 aes_subcode_txb_rc4; /* 0x000011f0 */
-+ u32 aes_subcode_txb_rc5; /* 0x000011f4 */
-+ u32 aes_subcode_txb_rv0; /* 0x000011f8 */
-+ u32 aes_subcode_txb_rv1; /* 0x000011fc */
-+
-+ u32 aes_subcode_txa_rv2; /* 0x00001200 */
-+ u32 aes_subcode_txa_rv3; /* 0x00001204 */
-+ u32 aes_subcode_txa_rv4; /* 0x00001208 */
-+ u32 aes_subcode_txa_rv5; /* 0x0000120c */
-+
-+ u32 aes_subcode_txb_rv2; /* 0x00001210 */
-+ u32 aes_subcode_txb_rv3; /* 0x00001214 */
-+ u32 aes_subcode_txb_rv4; /* 0x00001218 */
-+ u32 aes_subcode_txb_rv5; /* 0x0000121c */
++ u32 aes_subcode_txa_lu[6]; /* 0x00001100 */
++ u32 aes_subcode_txa_lc[6]; /* 0x00001118 */
++ u32 aes_subcode_txa_lv[6]; /* 0x00001130 */
++ u32 aes_subcode_txa_ru[6]; /* 0x00001148 */
++ u32 aes_subcode_txa_rc[6]; /* 0x00001160 */
++ u32 aes_subcode_txa_rv0[2]; /* 0x00001178 */
++ u32 aes_subcode_txb_lu[6]; /* 0x00001180 */
++ u32 aes_subcode_txb_lc[6]; /* 0x00001198 */
++ u32 aes_subcode_txb_lv[6]; /* 0x000011b0 */
++ u32 aes_subcode_txb_ru[6]; /* 0x000011c8 */
++ u32 aes_subcode_txb_rc[6]; /* 0x000011e0 */
++ u32 aes_subcode_txb_rv0[2]; /* 0x000011f8 */
++ u32 aes_subcode_txa_rv2[4]; /* 0x00001200 */
++ u32 aes_subcode_txb_rv2[4]; /* 0x00001210 */
+ u32 aes_subcode_tx_unused; /* 0x00001220 */
+};
+
@@ -5546,6 +5578,252 @@
+#define ODY_LO_SET 15
+
+#endif /* ODYSSEY_H */
+diff -urN linux-2.6.12-ioc3/sound/core/oss/linear.c linux-2.6.12-ip30/sound/core/oss/linear.c
+--- linux-2.6.12-ioc3/sound/core/oss/linear.c 2002-11-01 23:08:37.000000000 +0100
++++ linux-2.6.12-ip30/sound/core/oss/linear.c 2005-07-24 19:46:55.000000000 +0200
+@@ -26,6 +26,10 @@
+ #include <sound/pcm.h>
+ #include "pcm_plugin.h"
+
++#define SX_INLINES
++#include "plugin_ops.h"
++#undef SX_INLINES
++
+ /*
+ * Basic linear conversion plugin
+ */
+diff -urN linux-2.6.12-ioc3/sound/core/oss/mulaw.c linux-2.6.12-ip30/sound/core/oss/mulaw.c
+--- linux-2.6.12-ioc3/sound/core/oss/mulaw.c 2005-01-13 15:07:10.000000000 +0100
++++ linux-2.6.12-ip30/sound/core/oss/mulaw.c 2005-07-24 19:47:08.000000000 +0200
+@@ -27,6 +27,10 @@
+ #include <sound/pcm.h>
+ #include "pcm_plugin.h"
+
++#define SX_INLINES
++#include "plugin_ops.h"
++#undef SX_INLINES
++
+ #define SIGN_BIT (0x80) /* Sign bit for a u-law byte. */
+ #define QUANT_MASK (0xf) /* Quantization field mask. */
+ #define NSEGS (8) /* Number of u-law segments. */
+diff -urN linux-2.6.12-ioc3/sound/core/oss/plugin_ops.h linux-2.6.12-ip30/sound/core/oss/plugin_ops.h
+--- linux-2.6.12-ioc3/sound/core/oss/plugin_ops.h 2003-08-15 17:14:41.000000000 +0200
++++ linux-2.6.12-ip30/sound/core/oss/plugin_ops.h 2005-07-25 08:48:00.000000000 +0200
+@@ -19,6 +19,20 @@
+ *
+ */
+
++#ifdef SX_INLINES
++static inline u_int32_t sx24(u_int32_t x)
++{
++ if(x&0x00800000)
++ return x|0xFF000000;
++ return x&0x00FFFFFF;
++}
++static inline u_int32_t sx24s(u_int32_t x)
++{
++ if(x&0x00008000)
++ return x|0x000000FF;
++ return x&0xFFFFFF00;
++}
++#endif
+
+ #define as_u8(ptr) (*(u_int8_t*)(ptr))
+ #define as_u16(ptr) (*(u_int16_t*)(ptr))
+@@ -186,95 +200,95 @@
+ conv_xxx1_xxx1: as_u8(dst) = as_u8(src); goto CONV_END;
+ conv_xxx1_xx10: as_u16(dst) = (u_int16_t)as_u8(src) << 8; goto CONV_END;
+ conv_xxx1_xx01: as_u16(dst) = (u_int16_t)as_u8(src); goto CONV_END;
+-conv_xxx1_x100: as_u32(dst) = (u_int32_t)as_u8(src) << 16; goto CONV_END;
+-conv_xxx1_001x: as_u32(dst) = (u_int32_t)as_u8(src) << 8; goto CONV_END;
++conv_xxx1_x100: as_u32(dst) = sx24((u_int32_t)sx24(as_u8(src) << 16)); goto CONV_END;
++conv_xxx1_001x: as_u32(dst) = sx24s((u_int32_t)as_u8(src) << 8); goto CONV_END;
+ conv_xxx1_1000: as_u32(dst) = (u_int32_t)as_u8(src) << 24; goto CONV_END;
+ conv_xxx1_0001: as_u32(dst) = (u_int32_t)as_u8(src); goto CONV_END;
+ conv_xxx1_xxx9: as_u8(dst) = as_u8(src) ^ 0x80; goto CONV_END;
+ conv_xxx1_xx90: as_u16(dst) = (u_int16_t)(as_u8(src) ^ 0x80) << 8; goto CONV_END;
+ conv_xxx1_xx09: as_u16(dst) = (u_int16_t)(as_u8(src) ^ 0x80); goto CONV_END;
+-conv_xxx1_x900: as_u32(dst) = (u_int32_t)(as_u8(src) ^ 0x80) << 16; goto CONV_END;
+-conv_xxx1_009x: as_u32(dst) = (u_int32_t)(as_u8(src) ^ 0x80) << 8; goto CONV_END;
++conv_xxx1_x900: as_u32(dst) = sx24((u_int32_t)(as_u8(src) ^ 0x80) << 16); goto CONV_END;
++conv_xxx1_009x: as_u32(dst) = sx24s((u_int32_t)(as_u8(src) ^ 0x80) << 8); goto CONV_END;
+ conv_xxx1_9000: as_u32(dst) = (u_int32_t)(as_u8(src) ^ 0x80) << 24; goto CONV_END;
+ conv_xxx1_0009: as_u32(dst) = (u_int32_t)(as_u8(src) ^ 0x80); goto CONV_END;
+ conv_xx12_xxx1: as_u8(dst) = as_u16(src) >> 8; goto CONV_END;
+ conv_xx12_xx12: as_u16(dst) = as_u16(src); goto CONV_END;
+ conv_xx12_xx21: as_u16(dst) = swab16(as_u16(src)); goto CONV_END;
+-conv_xx12_x120: as_u32(dst) = (u_int32_t)as_u16(src) << 8; goto CONV_END;
+-conv_xx12_021x: as_u32(dst) = (u_int32_t)swab16(as_u16(src)) << 8; goto CONV_END;
++conv_xx12_x120: as_u32(dst) = sx24((u_int32_t)as_u16(src) << 8); goto CONV_END;
++conv_xx12_021x: as_u32(dst) = sx24s((u_int32_t)swab16(as_u16(src)) << 8); goto CONV_END;
+ conv_xx12_1200: as_u32(dst) = (u_int32_t)as_u16(src) << 16; goto CONV_END;
+ conv_xx12_0021: as_u32(dst) = (u_int32_t)swab16(as_u16(src)); goto CONV_END;
+ conv_xx12_xxx9: as_u8(dst) = (as_u16(src) >> 8) ^ 0x80; goto CONV_END;
+ conv_xx12_xx92: as_u16(dst) = as_u16(src) ^ 0x8000; goto CONV_END;
+ conv_xx12_xx29: as_u16(dst) = swab16(as_u16(src)) ^ 0x80; goto CONV_END;
+-conv_xx12_x920: as_u32(dst) = (u_int32_t)(as_u16(src) ^ 0x8000) << 8; goto CONV_END;
+-conv_xx12_029x: as_u32(dst) = (u_int32_t)(swab16(as_u16(src)) ^ 0x80) << 8; goto CONV_END;
++conv_xx12_x920: as_u32(dst) = sx24((u_int32_t)(as_u16(src) ^ 0x8000) << 8); goto CONV_END;
++conv_xx12_029x: as_u32(dst) = sx24s((u_int32_t)(swab16(as_u16(src)) ^ 0x80) << 8); goto CONV_END;
+ conv_xx12_9200: as_u32(dst) = (u_int32_t)(as_u16(src) ^ 0x8000) << 16; goto CONV_END;
+ conv_xx12_0029: as_u32(dst) = (u_int32_t)(swab16(as_u16(src)) ^ 0x80); goto CONV_END;
+ conv_xx12_xxx2: as_u8(dst) = as_u16(src) & 0xff; goto CONV_END;
+-conv_xx12_x210: as_u32(dst) = (u_int32_t)swab16(as_u16(src)) << 8; goto CONV_END;
+-conv_xx12_012x: as_u32(dst) = (u_int32_t)as_u16(src) << 8; goto CONV_END;
++conv_xx12_x210: as_u32(dst) = sx24((u_int32_t)swab16(as_u16(src)) << 8); goto CONV_END;
++conv_xx12_012x: as_u32(dst) = sx24s((u_int32_t)as_u16(src) << 8); goto CONV_END;
+ conv_xx12_2100: as_u32(dst) = (u_int32_t)swab16(as_u16(src)) << 16; goto CONV_END;
+ conv_xx12_0012: as_u32(dst) = (u_int32_t)as_u16(src); goto CONV_END;
+ conv_xx12_xxxA: as_u8(dst) = (as_u16(src) ^ 0x80) & 0xff; goto CONV_END;
+ conv_xx12_xxA1: as_u16(dst) = swab16(as_u16(src) ^ 0x80); goto CONV_END;
+ conv_xx12_xx1A: as_u16(dst) = as_u16(src) ^ 0x80; goto CONV_END;
+-conv_xx12_xA10: as_u32(dst) = (u_int32_t)swab16(as_u16(src) ^ 0x80) << 8; goto CONV_END;
+-conv_xx12_01Ax: as_u32(dst) = (u_int32_t)(as_u16(src) ^ 0x80) << 8; goto CONV_END;
++conv_xx12_xA10: as_u32(dst) = sx24((u_int32_t)swab16(as_u16(src) ^ 0x80) << 8); goto CONV_END;
++conv_xx12_01Ax: as_u32(dst) = sx24s((u_int32_t)(as_u16(src) ^ 0x80) << 8); goto CONV_END;
+ conv_xx12_A100: as_u32(dst) = (u_int32_t)swab16(as_u16(src) ^ 0x80) << 16; goto CONV_END;
+ conv_xx12_001A: as_u32(dst) = (u_int32_t)(as_u16(src) ^ 0x80); goto CONV_END;
+ conv_x123_xxx1: as_u8(dst) = as_u32(src) >> 16; goto CONV_END;
+ conv_x123_xx12: as_u16(dst) = as_u32(src) >> 8; goto CONV_END;
+ conv_x123_xx21: as_u16(dst) = swab16(as_u32(src) >> 8); goto CONV_END;
+-conv_x123_x123: as_u32(dst) = as_u32(src); goto CONV_END;
+-conv_x123_321x: as_u32(dst) = swab32(as_u32(src)); goto CONV_END;
++conv_x123_x123: as_u32(dst) = sx24(as_u32(src)); goto CONV_END;
++conv_x123_321x: as_u32(dst) = sx24s(swab32(as_u32(src))); goto CONV_END;
+ conv_x123_1230: as_u32(dst) = as_u32(src) << 8; goto CONV_END;
+ conv_x123_0321: as_u32(dst) = swab32(as_u32(src)) >> 8; goto CONV_END;
+ conv_x123_xxx9: as_u8(dst) = (as_u32(src) >> 16) ^ 0x80; goto CONV_END;
+ conv_x123_xx92: as_u16(dst) = (as_u32(src) >> 8) ^ 0x8000; goto CONV_END;
+ conv_x123_xx29: as_u16(dst) = swab16(as_u32(src) >> 8) ^ 0x80; goto CONV_END;
+-conv_x123_x923: as_u32(dst) = as_u32(src) ^ 0x800000; goto CONV_END;
+-conv_x123_329x: as_u32(dst) = swab32(as_u32(src)) ^ 0x8000; goto CONV_END;
++conv_x123_x923: as_u32(dst) = sx24(as_u32(src) ^ 0x800000); goto CONV_END;
++conv_x123_329x: as_u32(dst) = sx24s(swab32(as_u32(src)) ^ 0x8000); goto CONV_END;
+ conv_x123_9230: as_u32(dst) = (as_u32(src) ^ 0x800000) << 8; goto CONV_END;
+ conv_x123_0329: as_u32(dst) = (swab32(as_u32(src)) >> 8) ^ 0x80; goto CONV_END;
+ conv_123x_xxx3: as_u8(dst) = (as_u32(src) >> 8) & 0xff; goto CONV_END;
+ conv_123x_xx32: as_u16(dst) = swab16(as_u32(src) >> 8); goto CONV_END;
+ conv_123x_xx23: as_u16(dst) = (as_u32(src) >> 8) & 0xffff; goto CONV_END;
+-conv_123x_x321: as_u32(dst) = swab32(as_u32(src)); goto CONV_END;
+-conv_123x_123x: as_u32(dst) = as_u32(src); goto CONV_END;
++conv_123x_x321: as_u32(dst) = sx24(swab32(as_u32(src))); goto CONV_END;
++conv_123x_123x: as_u32(dst) = sx24s(as_u32(src)); goto CONV_END;
+ conv_123x_3210: as_u32(dst) = swab32(as_u32(src)) << 8; goto CONV_END;
+ conv_123x_0123: as_u32(dst) = as_u32(src) >> 8; goto CONV_END;
+ conv_123x_xxxB: as_u8(dst) = ((as_u32(src) >> 8) & 0xff) ^ 0x80; goto CONV_END;
+ conv_123x_xxB2: as_u16(dst) = swab16((as_u32(src) >> 8) ^ 0x80); goto CONV_END;
+ conv_123x_xx2B: as_u16(dst) = ((as_u32(src) >> 8) & 0xffff) ^ 0x80; goto CONV_END;
+-conv_123x_xB21: as_u32(dst) = swab32(as_u32(src)) ^ 0x800000; goto CONV_END;
+-conv_123x_12Bx: as_u32(dst) = as_u32(src) ^ 0x8000; goto CONV_END;
++conv_123x_xB21: as_u32(dst) = sx24(swab32(as_u32(src)) ^ 0x800000); goto CONV_END;
++conv_123x_12Bx: as_u32(dst) = sx24s(as_u32(src) ^ 0x8000); goto CONV_END;
+ conv_123x_B210: as_u32(dst) = swab32(as_u32(src) ^ 0x8000) << 8; goto CONV_END;
+ conv_123x_012B: as_u32(dst) = (as_u32(src) >> 8) ^ 0x80; goto CONV_END;
+ conv_1234_xxx1: as_u8(dst) = as_u32(src) >> 24; goto CONV_END;
+ conv_1234_xx12: as_u16(dst) = as_u32(src) >> 16; goto CONV_END;
+ conv_1234_xx21: as_u16(dst) = swab16(as_u32(src) >> 16); goto CONV_END;
+-conv_1234_x123: as_u32(dst) = as_u32(src) >> 8; goto CONV_END;
+-conv_1234_321x: as_u32(dst) = swab32(as_u32(src)) << 8; goto CONV_END;
++conv_1234_x123: as_u32(dst) = sx24(as_u32(src) >> 8); goto CONV_END;
++conv_1234_321x: as_u32(dst) = sx24s(swab32(as_u32(src)) << 8); goto CONV_END;
+ conv_1234_1234: as_u32(dst) = as_u32(src); goto CONV_END;
+ conv_1234_4321: as_u32(dst) = swab32(as_u32(src)); goto CONV_END;
+ conv_1234_xxx9: as_u8(dst) = (as_u32(src) >> 24) ^ 0x80; goto CONV_END;
+ conv_1234_xx92: as_u16(dst) = (as_u32(src) >> 16) ^ 0x8000; goto CONV_END;
+ conv_1234_xx29: as_u16(dst) = swab16(as_u32(src) >> 16) ^ 0x80; goto CONV_END;
+-conv_1234_x923: as_u32(dst) = (as_u32(src) >> 8) ^ 0x800000; goto CONV_END;
+-conv_1234_329x: as_u32(dst) = (swab32(as_u32(src)) ^ 0x80) << 8; goto CONV_END;
++conv_1234_x923: as_u32(dst) = sx24((as_u32(src) >> 8) ^ 0x800000); goto CONV_END;
++conv_1234_329x: as_u32(dst) = sx24s((swab32(as_u32(src)) ^ 0x80) << 8); goto CONV_END;
+ conv_1234_9234: as_u32(dst) = as_u32(src) ^ 0x80000000; goto CONV_END;
+ conv_1234_4329: as_u32(dst) = swab32(as_u32(src)) ^ 0x80; goto CONV_END;
+ conv_1234_xxx4: as_u8(dst) = as_u32(src) & 0xff; goto CONV_END;
+ conv_1234_xx43: as_u16(dst) = swab16(as_u32(src)); goto CONV_END;
+ conv_1234_xx34: as_u16(dst) = as_u32(src) & 0xffff; goto CONV_END;
+-conv_1234_x432: as_u32(dst) = swab32(as_u32(src)) >> 8; goto CONV_END;
+-conv_1234_234x: as_u32(dst) = as_u32(src) << 8; goto CONV_END;
++conv_1234_x432: as_u32(dst) = sx24(swab32(as_u32(src)) >> 8); goto CONV_END;
++conv_1234_234x: as_u32(dst) = sx24s(as_u32(src) << 8); goto CONV_END;
+ conv_1234_xxxC: as_u8(dst) = (as_u32(src) & 0xff) ^ 0x80; goto CONV_END;
+ conv_1234_xxC3: as_u16(dst) = swab16(as_u32(src) ^ 0x80); goto CONV_END;
+ conv_1234_xx3C: as_u16(dst) = (as_u32(src) & 0xffff) ^ 0x80; goto CONV_END;
+-conv_1234_xC32: as_u32(dst) = (swab32(as_u32(src)) >> 8) ^ 0x800000; goto CONV_END;
+-conv_1234_23Cx: as_u32(dst) = (as_u32(src) ^ 0x80) << 8; goto CONV_END;
++conv_1234_xC32: as_u32(dst) = sx24((swab32(as_u32(src)) >> 8) ^ 0x800000); goto CONV_END;
++conv_1234_23Cx: as_u32(dst) = sx24s((as_u32(src) ^ 0x80) << 8); goto CONV_END;
+ conv_1234_C321: as_u32(dst) = swab32(as_u32(src) ^ 0x80); goto CONV_END;
+ conv_1234_123C: as_u32(dst) = as_u32(src) ^ 0x80; goto CONV_END;
+ }
+@@ -351,10 +365,10 @@
+ put_s16_xx12_xx92: as_u16(dst) = sample ^ 0x8000; goto PUT_S16_END;
+ put_s16_xx12_xx21: as_u16(dst) = swab16(sample); goto PUT_S16_END;
+ put_s16_xx12_xx29: as_u16(dst) = swab16(sample) ^ 0x80; goto PUT_S16_END;
+-put_s16_xx12_x120: as_u32(dst) = (u_int32_t)sample << 8; goto PUT_S16_END;
+-put_s16_xx12_x920: as_u32(dst) = (u_int32_t)(sample ^ 0x8000) << 8; goto PUT_S16_END;
+-put_s16_xx12_021x: as_u32(dst) = (u_int32_t)swab16(sample) << 8; goto PUT_S16_END;
+-put_s16_xx12_029x: as_u32(dst) = (u_int32_t)(swab16(sample) ^ 0x80) << 8; goto PUT_S16_END;
++put_s16_xx12_x120: as_u32(dst) = sx24((u_int32_t)sample << 8); goto PUT_S16_END;
++put_s16_xx12_x920: as_u32(dst) = sx24((u_int32_t)(sample ^ 0x8000) << 8); goto PUT_S16_END;
++put_s16_xx12_021x: as_u32(dst) = sx24s((u_int32_t)swab16(sample) << 8); goto PUT_S16_END;
++put_s16_xx12_029x: as_u32(dst) = sx24s((u_int32_t)(swab16(sample) ^ 0x80) << 8); goto PUT_S16_END;
+ put_s16_xx12_1200: as_u32(dst) = (u_int32_t)sample << 16; goto PUT_S16_END;
+ put_s16_xx12_9200: as_u32(dst) = (u_int32_t)(sample ^ 0x8000) << 16; goto PUT_S16_END;
+ put_s16_xx12_0021: as_u32(dst) = (u_int32_t)swab16(sample); goto PUT_S16_END;
+@@ -435,10 +449,10 @@
+ put_u32_1234_xx92: as_u16(dst) = (sample >> 16) ^ 0x8000; goto PUT_U32_END;
+ put_u32_1234_xx21: as_u16(dst) = swab16(sample >> 16); goto PUT_U32_END;
+ put_u32_1234_xx29: as_u16(dst) = swab16(sample >> 16) ^ 0x80; goto PUT_U32_END;
+-put_u32_1234_x123: as_u32(dst) = sample >> 8; goto PUT_U32_END;
+-put_u32_1234_x923: as_u32(dst) = (sample >> 8) ^ 0x800000; goto PUT_U32_END;
+-put_u32_1234_321x: as_u32(dst) = swab32(sample) << 8; goto PUT_U32_END;
+-put_u32_1234_329x: as_u32(dst) = (swab32(sample) ^ 0x80) << 8; goto PUT_U32_END;
++put_u32_1234_x123: as_u32(dst) = sx24(sample >> 8); goto PUT_U32_END;
++put_u32_1234_x923: as_u32(dst) = sx24((sample >> 8) ^ 0x800000); goto PUT_U32_END;
++put_u32_1234_321x: as_u32(dst) = sx24s(swab32(sample) << 8); goto PUT_U32_END;
++put_u32_1234_329x: as_u32(dst) = sx24s((swab32(sample) ^ 0x80) << 8); goto PUT_U32_END;
+ put_u32_1234_1234: as_u32(dst) = sample; goto PUT_U32_END;
+ put_u32_1234_9234: as_u32(dst) = sample ^ 0x80000000; goto PUT_U32_END;
+ put_u32_1234_4321: as_u32(dst) = swab32(sample); goto PUT_U32_END;
+@@ -517,9 +531,9 @@
+ put_u16h: as_u16(dst) = sample ^ 0x8000; goto PUT_END;
+ put_s16s: as_s16(dst) = swab16(sample); goto PUT_END;
+ put_u16s: as_u16(dst) = swab16(sample ^ 0x80); goto PUT_END;
+-put_s24h: as_s24(dst) = sample & 0xffffff; goto PUT_END;
++put_s24h: as_s24(dst) = sx24(sample & 0xffffff); goto PUT_END;
+ put_u24h: as_u24(dst) = sample ^ 0x80000000; goto PUT_END;
+-put_s24s: as_s24(dst) = swab32(sample & 0xffffff); goto PUT_END;
++put_s24s: as_s24(dst) = sx24s(swab32(sample & 0xffffff)); goto PUT_END;
+ put_u24s: as_u24(dst) = swab32(sample ^ 0x80); goto PUT_END;
+ put_s32h: as_s32(dst) = sample; goto PUT_END;
+ put_u32h: as_u32(dst) = sample ^ 0x80000000; goto PUT_END;
+diff -urN linux-2.6.12-ioc3/sound/core/oss/rate.c linux-2.6.12-ip30/sound/core/oss/rate.c
+--- linux-2.6.12-ioc3/sound/core/oss/rate.c 2005-01-13 15:07:10.000000000 +0100
++++ linux-2.6.12-ip30/sound/core/oss/rate.c 2005-07-24 19:47:17.000000000 +0200
+@@ -25,6 +25,10 @@
+ #include <sound/pcm.h>
+ #include "pcm_plugin.h"
+
++#define SX_INLINES
++#include "plugin_ops.h"
++#undef SX_INLINES
++
+ #define SHIFT 11
+ #define BITS (1<<SHIFT)
+ #define R_MASK (BITS-1)
+diff -urN linux-2.6.12-ioc3/sound/core/oss/route.c linux-2.6.12-ip30/sound/core/oss/route.c
+--- linux-2.6.12-ioc3/sound/core/oss/route.c 2005-01-13 15:07:10.000000000 +0100
++++ linux-2.6.12-ip30/sound/core/oss/route.c 2005-07-24 19:47:22.000000000 +0200
+@@ -26,6 +26,10 @@
+ #include <sound/pcm.h>
+ #include "pcm_plugin.h"
+
++#define SX_INLINES
++#include "plugin_ops.h"
++#undef SX_INLINES
++
+ /* The best possible hack to support missing optimization in gcc 2.7.2.3 */
+ #if ROUTE_PLUGIN_RESOLUTION & (ROUTE_PLUGIN_RESOLUTION - 1) != 0
+ #define div(a) a /= ROUTE_PLUGIN_RESOLUTION
diff -urN linux-2.6.12-ioc3/sound/pci/Kconfig linux-2.6.12-ip30/sound/pci/Kconfig
--- linux-2.6.12-ioc3/sound/pci/Kconfig 2005-03-18 21:40:42.000000000 +0100
+++ linux-2.6.12-ip30/sound/pci/Kconfig 2005-07-09 13:36:14.000000000 +0200
@@ -5581,28 +5859,12 @@
obj-$(CONFIG_SND_SONICVIBES) += snd-sonicvibes.o
diff -urN linux-2.6.12-ioc3/sound/pci/rad1.c linux-2.6.12-ip30/sound/pci/rad1.c
--- linux-2.6.12-ioc3/sound/pci/rad1.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.12-ip30/sound/pci/rad1.c 2005-07-09 13:36:14.000000000 +0200
-@@ -0,0 +1,478 @@
++++ linux-2.6.12-ip30/sound/pci/rad1.c 2005-07-25 08:33:37.000000000 +0200
+@@ -0,0 +1,1147 @@
+/*
+ * rad1.c - ALSA driver for SGI RAD1 (as found in Octane and Octane2)
-+ * Copyright (C) 2004 by Stanislaw Skowronek <skylark at linux-mips.org>
++ * Copyright (C) 2004,5 by Stanislaw Skowronek <skylark at linux-mips.org>
+ *
-+ * The RAD1 chip can be construed as the ultimate evil. It sends no
-+ * interrupts on buffer completion, or even depending on the sample
-+ * rate. So we have to hook into the system timer and hope for the best.
-+ *
-+ * This driver allocates DMA descriptors 0 and 1 for analog output (DTOA).
-+ * The descriptors are used alternately. Crossing a descriptor boundary
-+ * is detected by polling PCI_CONTROL_DTOA (it contains the next
-+ * descriptor number) every 1ms. Believe it or not, IRIX does it this way.
-+ *
-+ * To add insult to injury, this chip clips (saturates) 32-bit data to
-+ * 24 bits. Unfortunately, ALSA lib can't be relied upon to sign-extend the
-+ * bytes written to the mmap area (non-sign-extended data cause problems
-+ * after clipping). This complicates the driver and makes it ugly.
-+ *
-+ * This driver is incomplete because of lack of documentation.
-+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
@@ -5624,56 +5886,66 @@
+#include <linux/pci.h>
+#include <linux/slab.h>
+#include <linux/timer.h>
++#include <linux/spinlock.h>
++
+#include <sound/core.h>
+#include <sound/initval.h>
+#include <sound/pcm.h>
++#include <sound/control.h>
+
+#include <sound/rad1.h>
+
-+#define RATE_IS_44100
++typedef struct snd_rad1_pipe {
++ unsigned long pma; /* physical addr of the ring */
++ int *vma; /* virtual addr of the ring */
++ snd_pcm_substream_t *subs; /* ALSA substream */
++ snd_pcm_t *pcm;
++ unsigned int pnum; /* number of periods */
++ unsigned int plen; /* length of period (in bytes) */
++ unsigned int hptr; /* hardware pointer */
++ int adma; /* DMA active flag */
++ unsigned int qptr; /* queue pointer */
++} rad1_pipe_t;
+
-+typedef struct snd_rad1 rad1_t;
-+struct snd_rad1 {
-+ /* per-card */
++typedef struct snd_rad1 {
++ spinlock_t lock;
+ snd_card_t *card;
-+ snd_pcm_t *pcm;
+ struct pci_dev *pci;
+ unsigned long mmio_phys;
+ volatile struct rad1regs *mmio;
++ int timer_active;
+ struct timer_list timer;
-+ /* per-channel */
-+ snd_pcm_substream_t *substream;
-+ int run_period;
-+ int run_period_next;
-+ int run_descr;
-+ int run_descr_next;
-+ int *dma_virt;
-+ unsigned long dma_phys;
-+ unsigned long dma_periods;
-+ unsigned long dma_period_bytes;
-+ int *vbuf_virt;
-+ unsigned long vbuf_phys;
-+ unsigned long vbuf_size;
-+ unsigned int virt_pos;
-+ int run_dma;
-+};
++ rad1_pipe_t pipes[9];
++ /* random stuff */
++ int last_aesrx_rate;
++ /* card controls */
++ unsigned int attctrl; /* attenuation control */
++ unsigned int rt_atod; /* AtoD routing */
++ unsigned int rt_aesr; /* AES Rx routing */
++ unsigned int rt_adat; /* ADAT Rx routing */
++ unsigned int rt_opto; /* Optical Out routing */
++} rad1_t;
+#define chip_t rad1_t
+
-+void snd_rad1_hw_init(rad1_t *chip)
++static void snd_rad1_hw_init(rad1_t *chip)
+{
+ chip->mmio->reset=0xffffffff;
+ udelay(1000);
+ chip->mmio->reset=0xffe3cffe;
+ chip->mmio->pci_holdoff=0x08000010;
+ chip->mmio->pci_arb_control=0x00fac688;
-+ chip->mmio->atod_control=0x03000000;
-+ chip->mmio->dtoa_control=0x40000000;
-+ chip->mmio->aes_rx_control=0x00000010;
-+ chip->mmio->aes_tx_control=0x40000000;
-+ chip->mmio->adat_rx_control=0xa0000008;
-+ chip->mmio->adat_tx_control=0x20000000;
++ /* I/O routing */
++ chip->mmio->atod_control=0x03000000; /* Mike 03000000; LineIn 05000000 */
++ chip->rt_atod=0x03000000;
++ chip->mmio->dtoa_control=0x20000000; /* Default */
++ chip->mmio->aes_rx_control=0x00000018; /* Optical In 00000018; AES In 00000010 */
++ chip->rt_aesr=0x00000018;
++ chip->mmio->aes_tx_control=0x40000000; /* Default */
++ chip->mmio->adat_rx_control=0xa0000000; /* Disabled A0000000; Optical In A0000018 */
++ chip->rt_adat=0xa0000000;
++ chip->mmio->adat_tx_control=0x20000000; /* Default */
+ chip->mmio->gpio3=0x00000002;
-+ chip->mmio->misc_control=0x00000480;
++ chip->mmio->misc_control=0x00001500;
+ chip->mmio->mpll0_lock_control=0x9fffffff;
+ chip->mmio->mpll1_lock_control=0x9fffffff;
+ chip->mmio->reset=0xffe3c0fe;
@@ -5684,247 +5956,912 @@
+ chip->mmio->reset=0xffe20000;
+ chip->mmio->gpio2=0x00000002;
+ chip->mmio->volume_control=0xd6d6d6d6;
++ chip->attctrl=0xd6d6d6d6;
++ udelay(1000);
++ chip->mmio->misc_control=0x00001040; /* AES-Optical Out 00001040; AES-AES Out 00001440 */
++ chip->rt_opto=0x00001040;
++ chip->mmio->reset=0xffe20100;
++ chip->mmio->freq_synth_mux_sel[3]=0x00000001;
++ chip->mmio->clockgen_rem=0x0000ffff;
++ chip->mmio->clockgen_ictl=0x10000603;
++ chip->mmio->reset=0xffe20000;
++ chip->mmio->reset=0xffe20200;
++ chip->mmio->freq_synth_mux_sel[2]=0x00000001;
++ chip->mmio->clockgen_rem=0x0000ffff;
++ chip->mmio->clockgen_ictl=0x20000603;
++ chip->mmio->reset=0xffe20000;
++ chip->mmio->reset=0xffe20400;
++ chip->mmio->freq_synth_mux_sel[1]=0x00000001;
++ chip->mmio->clockgen_rem=0x0000ffff;
++ chip->mmio->clockgen_ictl=0x40000603;
++ chip->mmio->reset=0xffe20000;
++ chip->mmio->reset=0xffe20800;
++ chip->mmio->freq_synth_mux_sel[0]=0x00000001;
++ chip->mmio->clockgen_rem=0x0000ffff;
++ chip->mmio->clockgen_ictl=0x80000603;
++ chip->mmio->reset=0xffe20000;
+ chip->mmio->gpio1=0x00000003;
-+ chip->mmio->clockgen_rem=0x0000ffff;
-+ chip->mmio->dtoa_control=0x40000000;
-+ chip->mmio->clockgen_ictl=0x40000403;
-+ chip->mmio->freq_synth2_mux_sel=0x00000000;
+ udelay(10000);
+}
+
-+void snd_rad1_hw_set_descr(rad1_t *chip, int descr, int next)
++static void snd_rad1_setup_dma_pipe(rad1_t *chip, int pidx)
+{
-+ unsigned long len = chip->dma_period_bytes;
-+ unsigned long addr = descr * len;
-+ addr += chip->vbuf_phys;
++ rad1_pipe_t *pipe=chip->pipes+pidx;
+
-+ chip->mmio->pci_descr[descr].hiadr=(addr>>32)&0xffffffff;
-+ chip->mmio->pci_descr[descr].loadr=addr&0xffffffff;
-+ chip->mmio->pci_descr[descr].control=((-len)&0xffffff80)|(next<<3);
++ if((-pipe->pnum*pipe->plen)&0x7f)
++ printk(KERN_WARNING "rad1: pipe %d has unaligned size %d\n", pidx, pipe->pnum*pipe->plen);
++
++ chip->mmio->pci_descr[pidx].hiadr=pipe->pma>>32;
++ chip->mmio->pci_descr[pidx].loadr=pipe->pma&0xffffffff;
++ chip->mmio->pci_descr[pidx].control=((-pipe->pnum*pipe->plen)&0xffffff80)|(pidx<<3);
++
++ chip->mmio->pci_hiadr[pidx]=pipe->pma>>32;
++ chip->mmio->pci_lc[pidx].loadr=pipe->pma&0xffffffff;
++ chip->mmio->pci_lc[pidx].control=((-pipe->pnum*pipe->plen)&0xffffff80)|(pidx<<3);
+}
+
-+void snd_rad1_hw_prepare_dma(rad1_t *chip, int descr, int next)
++static void snd_rad1_activate_timer(rad1_t *chip)
+{
-+ unsigned long len = chip->dma_period_bytes;
-+ unsigned long addr = descr * len;
-+ addr += chip->vbuf_phys;
++ if(!chip->timer_active) {
++ chip->timer.expires = jiffies + 1;
++ add_timer(&chip->timer);
++ chip->timer_active = 1;
++ }
++}
+
-+ chip->mmio->pci_hiadr_dtoa=(addr>>32)&0xffffffff;
-+ chip->mmio->pci_loadr_dtoa=addr&0xffffffff;
-+ chip->mmio->pci_control_dtoa=((-len)&0xffffff80)|(next<<3);
++static void snd_rad1_run_pipe(rad1_t *chip, int pidx, int adma)
++{
++ rad1_pipe_t *pipe=chip->pipes+pidx;
++
++ if(pipe->adma != adma) {
++ pipe->adma = adma;
++ switch(pidx) {
++ case RAD1_ATOD:
++ chip->mmio->atod_control=chip->rt_atod|adma;
++ break;
++ case RAD1_DTOA:
++ chip->mmio->dtoa_control=0x20000000|adma;
++ break;
++ case RAD1_AESRX:
++ chip->mmio->aes_rx_control=chip->rt_aesr|adma;
++ break;
++ case RAD1_AESTX:
++ chip->mmio->aes_tx_control=0x40000000|adma;
++ break;
++ }
++ }
++
++ if(adma)
++ snd_rad1_activate_timer(chip);
+}
+
-+void snd_rad1_hw_run(rad1_t *chip, int run)
++static void snd_rad1_poll_pipe(rad1_t *chip, int pidx, int is_tx)
+{
-+ chip->mmio->dtoa_control=0x40000000|(run?1:0);
++ rad1_pipe_t *pipe = chip->pipes+pidx;
++ unsigned int hptr = (pipe->pnum * pipe->plen) + (chip->mmio->pci_lc[pidx].control & 0xFFFFFF80);
++ unsigned long flags;
++
++ spin_lock_irqsave(&chip->lock, flags);
++ if(pipe->adma && pipe->subs) {
++ /* use hardware pointer to detect period crossing */
++ if(hptr/pipe->plen != pipe->hptr/pipe->plen) {
++ if(is_tx)
++ pipe->qptr = hptr/8;
++ else
++ pipe->qptr = pipe->hptr/8;
++ spin_unlock_irqrestore(&chip->lock, flags);
++ snd_pcm_period_elapsed(pipe->subs);
++ spin_lock_irqsave(&chip->lock, flags);
++ }
++ pipe->hptr = hptr;
++ }
++ spin_unlock_irqrestore(&chip->lock, flags);
+}
+
-+void snd_rad1_hw_setrate(rad1_t *chip, int rate)
++static void snd_rad1_poll_timer(unsigned long chip_virt)
+{
++ rad1_t *chip = (rad1_t *)chip_virt;
++ int adma = 0;
++
++ if(chip->pipes[RAD1_ATOD].adma) {
++ snd_rad1_poll_pipe(chip, RAD1_ATOD, 0);
++ adma = 1;
++ }
++ if(chip->pipes[RAD1_DTOA].adma) {
++ snd_rad1_poll_pipe(chip, RAD1_DTOA, 1);
++ adma = 1;
++ }
++ if(chip->pipes[RAD1_AESRX].adma) {
++ snd_rad1_poll_pipe(chip, RAD1_AESRX, 0);
++ adma = 1;
++ }
++ if(chip->pipes[RAD1_AESTX].adma) {
++ snd_rad1_poll_pipe(chip, RAD1_AESTX, 1);
++ adma = 1;
++ }
++
++ if(adma) {
++ chip->timer.expires = jiffies+1;
++ add_timer(&chip->timer);
++ } else
++ chip->timer_active = 0;
++}
++
++static int snd_rad1_free_pipe(snd_pcm_substream_t *substream, int pidx)
++{
++ rad1_t *chip = snd_pcm_substream_chip(substream);
++ rad1_pipe_t *pipe=chip->pipes+pidx;
++ unsigned long flags;
++
++ spin_lock_irqsave(&chip->lock, flags);
++ snd_rad1_run_pipe(chip, pidx, 0);
++ pipe->subs = NULL;
++ spin_unlock_irqrestore(&chip->lock, flags);
++ return snd_pcm_lib_free_pages(substream);
++}
++
++static long snd_rad1_gcd(long x, long y)
++{
++ long t;
++ if(x<y) {
++ t=x;
++ x=y;
++ y=t;
++ }
++ while(y) {
++ y=x%(t=y);
++ x=t;
++ }
++ return x;
++}
++static void snd_rad1_red_frac(long *n, long *d, long max)
++{
++ long gcd=snd_rad1_gcd(*n, *d);
++ if(!gcd)
++ return;
++ *n /= gcd;
++ *d /= gcd;
++ /* lose precision */
++ while(*n>max || *d>max) {
++ *n >>= 1;
++ *d >>= 1;
++ }
++}
++static void snd_rad1_set_cg(rad1_t *chip, int cg, long rate, long base, unsigned muxsel)
++{
++ long div, rem;
++ unsigned flags;
++
++ snd_rad1_red_frac(&base, &rate, 0xFFFF);
++ div = base / rate;
++ rem = base % rate;
++ snd_rad1_red_frac(&rem, &rate, 0xFFFF);
++ flags = (rem*2<rate) ? 0x600 : 0x200;
++
++ chip->mmio->reset = 0xFFE20000|(0x100<<cg);
++ chip->mmio->freq_synth_mux_sel[3-cg] = muxsel;
++ chip->mmio->clockgen_rem = (rem<<16)|(0x10000-rate);
++ chip->mmio->clockgen_ictl = flags|(0x10000000<<cg)|(div-1);
++ chip->mmio->reset = 0xFFE20000;
++}
++/* select best master clock source for low jitter */
++static void snd_rad1_set_cgms(rad1_t *chip, int cg, long rate)
++{
++ if(!(176400%rate))
++ snd_rad1_set_cg(chip, cg, rate, 176400, 0);
++ else
++ snd_rad1_set_cg(chip, cg, rate, 192000, 1);
++}
++
++static void snd_rad1_set_aestx_subcode(rad1_t *chip, unsigned char *sub_lc, unsigned char *sub_rc)
++{
++ unsigned int i, j, lc[6], rc[6];
++ for(i=0;i<6;i++) {
++ lc[i]=rc[i]=0;
++ for(j=0;j<4;j++) {
++ lc[i]|=sub_lc[i*4+j]<<(j<<3);
++ rc[i]|=sub_rc[i*4+j]<<(j<<3);
++ }
++ }
++ for(i=0;i<6;i++) {
++ chip->mmio->aes_subcode_txa_lu[i]=0x00000000;
++ chip->mmio->aes_subcode_txa_lc[i]=lc[i];
++ chip->mmio->aes_subcode_txa_lv[i]=0x00000000;
++ chip->mmio->aes_subcode_txa_ru[i]=0x00000000;
++ chip->mmio->aes_subcode_txa_rc[i]=rc[i];
++ chip->mmio->aes_subcode_txb_lu[i]=0x00000000;
++ chip->mmio->aes_subcode_txb_lc[i]=lc[i];
++ chip->mmio->aes_subcode_txb_lv[i]=0x00000000;
++ chip->mmio->aes_subcode_txb_ru[i]=0x00000000;
++ chip->mmio->aes_subcode_txb_rc[i]=rc[i];
++ }
++ for(i=0;i<2;i++) {
++ chip->mmio->aes_subcode_txa_rv0[i]=0x00000000;
++ chip->mmio->aes_subcode_txb_rv0[i]=0x00000000;
++ }
++ for(i=0;i<4;i++) {
++ chip->mmio->aes_subcode_txa_rv2[i]=0x00000000;
++ chip->mmio->aes_subcode_txb_rv2[i]=0x00000000;
++ }
++}
++static void snd_rad1_genset_aestx_subcode(rad1_t *chip, int rate)
++{
++ unsigned char lc[24], rc[24];
++ int i;
++ for(i=0;i<24;i++)
++ lc[i]=rc[i]=0x00;
++ lc[0]=rc[0]=0x04; /* PRO=0, !AUDIO=0, COPY=1, PRE=000, MODE=00 */
++ lc[1]=rc[1]=0x01; /* Laser Optical, CD IEC-908 */
++ lc[2]=0x10; /* SOURCE=0000, CHANNEL=0001 */
++ rc[2]=0x20; /* SOURCE=0000, CHANNEL=0010 */
++ /* RAD1 systems have generally decent clock sources, so we mark them Level I */
+ switch(rate) {
-+ case 48000:
-+ chip->mmio->freq_synth2_mux_sel=0x00000001;
-+ chip->mmio->clockgen_ictl=0x40000403;
++ case 32000:
++ lc[3]=rc[3]=0x0C; /* Level I, 32 kHz */
+ break;
+ case 44100:
-+ chip->mmio->freq_synth2_mux_sel=0x00000000;
-+ chip->mmio->clockgen_ictl=0x40000403;
++ lc[3]=rc[3]=0x00; /* Level I, 44.1 kHz */
+ break;
-+ case 22050:
-+ chip->mmio->freq_synth2_mux_sel=0x00000000;
-+ chip->mmio->clockgen_ictl=0x40000404;
++ case 48000:
++ lc[3]=rc[3]=0x04; /* Level I, 48 kHz */
+ break;
-+ case 11025:
-+ chip->mmio->freq_synth2_mux_sel=0x00000000;
-+ chip->mmio->clockgen_ictl=0x40000405;
-+ break;
+ default:
-+ printk(KERN_INFO "Unsupported playback PCM sample rate: %d\n",rate);
++ /* not a valid IEC-958 sample rate */
++ lc[3]=rc[3]=0x10; /* Level III, 44.1 kHz */
+ }
++ snd_rad1_set_aestx_subcode(chip, lc, rc);
+}
+
-+void snd_rad1_shift24(int *dest, int *src, unsigned count)
++static void snd_rad1_setrate_pipe(rad1_t *chip, int pidx, int rate)
+{
-+ int i;
-+ for(i=0;i<count;i++)
-+ dest[i] = src[i] >> 8;
++ if(pidx == RAD1_ATOD)
++ snd_rad1_set_cgms(chip, 0, rate);
++ if(pidx == RAD1_DTOA)
++ snd_rad1_set_cgms(chip, 1, rate);
++ if(pidx == RAD1_AESTX) {
++ snd_rad1_set_cgms(chip, 2, rate);
++ snd_rad1_genset_aestx_subcode(chip, rate);
++ }
+}
+
-+void snd_rad1_poll_timer(unsigned long chip_virt)
++static int snd_rad1_prepare_pipe(snd_pcm_substream_t *substream, int pidx)
+{
-+ rad1_t *chip = (rad1_t *)chip_virt;
-+ unsigned stat = chip->mmio->pci_control_dtoa;
-+ unsigned next = (stat>>3)&15;
++ rad1_t *chip = snd_pcm_substream_chip(substream);
++ snd_pcm_runtime_t *runtime = substream->runtime;
++ rad1_pipe_t *pipe=chip->pipes+pidx;
++ unsigned long flags;
+
-+ if (next != chip->run_descr_next && chip->run_dma) {
-+ snd_pcm_period_elapsed(chip->substream);
++ spin_lock_irqsave(&chip->lock, flags);
++ snd_rad1_run_pipe(chip, pidx, 0);
++ spin_unlock_irqrestore(&chip->lock, flags);
+
-+ chip->run_descr = chip->run_descr_next;
-+ chip->run_descr_next = next;
-+ chip->run_period = chip->run_period_next;
-+ chip->run_period_next = (chip->run_period + 1) % chip->dma_periods;
++ pipe->subs = substream;
++ pipe->vma = (int *)runtime->dma_area;
++ pipe->pma = runtime->dma_addr;
++ pipe->pnum = runtime->periods;
++ pipe->plen = frames_to_bytes(runtime, runtime->period_size);
+
-+ snd_rad1_hw_set_descr(chip, chip->run_descr_next, chip->run_descr);
++ snd_rad1_setrate_pipe(chip, pidx, runtime->rate);
+
-+ snd_rad1_shift24(chip->vbuf_virt + chip->run_descr_next * (chip->dma_period_bytes >> 2),
-+ chip->dma_virt + chip->run_period * (chip->dma_period_bytes >> 2),
-+ chip->dma_period_bytes >> 2);
-+ chip->virt_pos = chip->run_period_next * (chip->dma_period_bytes >> 3);
++ pipe->hptr = 0;
++ pipe->qptr = 0;
++ snd_rad1_setup_dma_pipe(chip, pidx);
++
++ return 0;
++}
++
++static void snd_rad1_detect_aesrx_rate(rad1_t *chip, snd_pcm_hardware_t *hw)
++{
++ int rate;
++ unsigned sc = ((chip->mmio->chip_status0)>>24)&7;
++ static int rates[8] = {0, 48000, 44100, 32000, 48000, 44100, 44056, 32000};
++
++ if(!rates[sc]) {
++ printk(KERN_INFO "Warning: Recording from an unlocked IEC958 source.\n");
++ printk(KERN_INFO " Assuming sample rate: %d.\n", chip->last_aesrx_rate);
++ rate = chip->last_aesrx_rate;
++ } else
++ rate = rates[sc];
++ chip->last_aesrx_rate = rate;
++
++ hw->rate_min = hw->rate_max = rate;
++ switch(rate) {
++ case 32000:
++ hw->rates = SNDRV_PCM_RATE_32000;
++ break;
++ case 44056:
++ hw->rates = SNDRV_PCM_RATE_CONTINUOUS;
++ break;
++ case 44100:
++ default:
++ hw->rates = SNDRV_PCM_RATE_44100;
++ break;
++ case 48000:
++ hw->rates = SNDRV_PCM_RATE_48000;
+ }
++}
+
-+ if(chip->run_dma) {
-+ chip->timer.expires = jiffies+1;
-+ add_timer(&chip->timer);
++static int snd_rad1_trigger_pipe(snd_pcm_substream_t *substream, int pidx, int cmd)
++{
++ rad1_t *chip = snd_pcm_substream_chip(substream);
++ int result = 0;
++
++ switch(cmd) {
++ case SNDRV_PCM_TRIGGER_START:
++ case SNDRV_PCM_TRIGGER_RESUME:
++ snd_rad1_run_pipe(chip, pidx, 1);
++ break;
++ case SNDRV_PCM_TRIGGER_STOP:
++ case SNDRV_PCM_TRIGGER_SUSPEND:
++ snd_rad1_run_pipe(chip, pidx, 0);
++ break;
++ default:
++ result=-EINVAL;
+ }
++ return result;
+}
+
-+static snd_pcm_hardware_t snd_rad1_playback_hw = {
-+ .info = (SNDRV_PCM_INFO_INTERLEAVED |
-+ SNDRV_PCM_INFO_MMAP |
-+ SNDRV_PCM_INFO_MMAP_VALID |
-+ SNDRV_PCM_INFO_BLOCK_TRANSFER |
-+ SNDRV_PCM_INFO_RESUME),
-+ .formats = SNDRV_PCM_FMTBIT_S32_BE,
-+ .rates = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_22050 | SNDRV_PCM_RATE_11025,
-+ .rate_min = 11025,
++static snd_pcm_uframes_t snd_rad1_pointer_pipe(snd_pcm_substream_t *substream, int pidx)
++{
++ rad1_t *chip = snd_pcm_substream_chip(substream);
++ return chip->pipes[pidx].qptr;
++}
++
++/* ATOD pipe */
++
++static snd_pcm_hardware_t snd_rad1_atod_hw = {
++ .info = (SNDRV_PCM_INFO_INTERLEAVED | SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_BLOCK_TRANSFER),
++ .formats = SNDRV_PCM_FMTBIT_S24_BE,
++ .rates = SNDRV_PCM_RATE_CONTINUOUS | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
++ .rate_min = 32000,
+ .rate_max = 48000,
+ .channels_min = 2,
+ .channels_max = 2,
+ .buffer_bytes_max = 1048576,
-+ .period_bytes_min = 8192,
-+ .period_bytes_max = 262144,
-+ .periods_min = 8,
-+ .periods_max = 32,
++ .period_bytes_min = 4096,
++ .period_bytes_max = 4096,
++ .periods_min = 4,
++ .periods_max = 256,
+};
++static int snd_rad1_atod_open(snd_pcm_substream_t *substream)
++{
++ snd_pcm_runtime_t *runtime = substream->runtime;
++ runtime->hw = snd_rad1_atod_hw;
++ return 0;
++}
++static int snd_rad1_atod_close(snd_pcm_substream_t *substream)
++{
++ rad1_t *chip = snd_pcm_substream_chip(substream);
++ snd_rad1_run_pipe(chip, RAD1_ATOD, 0);
++ return 0;
++}
++static int snd_rad1_atod_params(snd_pcm_substream_t *substream, snd_pcm_hw_params_t *hw_params)
++{
++ return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(hw_params));
++}
++static int snd_rad1_atod_free(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_free_pipe(substream, RAD1_ATOD);
++}
++static int snd_rad1_atod_prepare(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_prepare_pipe(substream, RAD1_ATOD);
++}
++static int snd_rad1_atod_trigger(snd_pcm_substream_t *substream, int cmd)
++{
++ return snd_rad1_trigger_pipe(substream, RAD1_ATOD, cmd);
++}
++static snd_pcm_uframes_t snd_rad1_atod_pointer(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_pointer_pipe(substream, RAD1_ATOD);
++}
++static snd_pcm_ops_t snd_rad1_atod_ops = {
++ .open = snd_rad1_atod_open,
++ .close = snd_rad1_atod_close,
++ .hw_params = snd_rad1_atod_params,
++ .hw_free = snd_rad1_atod_free,
++ .prepare = snd_rad1_atod_prepare,
++ .trigger = snd_rad1_atod_trigger,
++ .pointer = snd_rad1_atod_pointer,
++ .ioctl = snd_pcm_lib_ioctl,
++};
++static void snd_rad1_atod_pcm_free(snd_pcm_t *pcm)
++{
++ snd_pcm_lib_preallocate_free_for_all(pcm);
++}
++static int __devinit snd_rad1_new_atod(rad1_t *chip, int dev)
++{
++ snd_pcm_t *pcm;
++ int err;
++ if ((err = snd_pcm_new(chip->card, "RAD1 AtoD", dev, 0, 1, &pcm)) < 0)
++ return err;
++ pcm->private_data = chip;
++ pcm->private_free = snd_rad1_atod_pcm_free;
++ strcpy(pcm->name, "RAD1 AtoD");
++ chip->pipes[RAD1_ATOD].pcm = pcm;
++ snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_rad1_atod_ops);
++ snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV, snd_dma_pci_data(chip->pci), 65536, 65536);
++ return 0;
++}
+
-+static int snd_rad1_playback_open(snd_pcm_substream_t *substream)
++/* DTOA pipe */
++
++static snd_pcm_hardware_t snd_rad1_dtoa_hw = {
++ .info = (SNDRV_PCM_INFO_INTERLEAVED | SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_BLOCK_TRANSFER),
++ .formats = SNDRV_PCM_FMTBIT_S24_BE,
++ .rates = SNDRV_PCM_RATE_CONTINUOUS | SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
++ .rate_min = 32000,
++ .rate_max = 48000,
++ .channels_min = 2,
++ .channels_max = 2,
++ .buffer_bytes_max = 1048576,
++ .period_bytes_min = 4096,
++ .period_bytes_max = 4096,
++ .periods_min = 4,
++ .periods_max = 256,
++};
++static int snd_rad1_dtoa_open(snd_pcm_substream_t *substream)
+{
+ snd_pcm_runtime_t *runtime = substream->runtime;
++ runtime->hw = snd_rad1_dtoa_hw;
++ return 0;
++}
++static int snd_rad1_dtoa_close(snd_pcm_substream_t *substream)
++{
++ rad1_t *chip = snd_pcm_substream_chip(substream);
++ snd_rad1_run_pipe(chip, RAD1_DTOA, 0);
++ return 0;
++}
++static int snd_rad1_dtoa_params(snd_pcm_substream_t *substream, snd_pcm_hw_params_t *hw_params)
++{
++ return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(hw_params));
++}
++static int snd_rad1_dtoa_free(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_free_pipe(substream, RAD1_DTOA);
++}
++static int snd_rad1_dtoa_prepare(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_prepare_pipe(substream, RAD1_DTOA);
++}
++static int snd_rad1_dtoa_trigger(snd_pcm_substream_t *substream, int cmd)
++{
++ return snd_rad1_trigger_pipe(substream, RAD1_DTOA, cmd);
++}
++static snd_pcm_uframes_t snd_rad1_dtoa_pointer(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_pointer_pipe(substream, RAD1_DTOA);
++}
++static snd_pcm_ops_t snd_rad1_dtoa_ops = {
++ .open = snd_rad1_dtoa_open,
++ .close = snd_rad1_dtoa_close,
++ .hw_params = snd_rad1_dtoa_params,
++ .hw_free = snd_rad1_dtoa_free,
++ .prepare = snd_rad1_dtoa_prepare,
++ .trigger = snd_rad1_dtoa_trigger,
++ .pointer = snd_rad1_dtoa_pointer,
++ .ioctl = snd_pcm_lib_ioctl,
++};
++static void snd_rad1_dtoa_pcm_free(snd_pcm_t *pcm)
++{
++ snd_pcm_lib_preallocate_free_for_all(pcm);
++}
++static int __devinit snd_rad1_new_dtoa(rad1_t *chip, int dev)
++{
++ snd_pcm_t *pcm;
++ int err;
++ if ((err = snd_pcm_new(chip->card, "RAD1 DtoA", dev, 1, 0, &pcm)) < 0)
++ return err;
++ pcm->private_data = chip;
++ pcm->private_free = snd_rad1_dtoa_pcm_free;
++ strcpy(pcm->name, "RAD1 DtoA");
++ chip->pipes[RAD1_DTOA].pcm = pcm;
++ snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_rad1_dtoa_ops);
++ snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV, snd_dma_pci_data(chip->pci), 65536, 65536);
++ return 0;
++}
+
-+ runtime->hw = snd_rad1_playback_hw;
++/* AESRX pipe */
++
++static snd_pcm_hardware_t snd_rad1_aesrx_hw = {
++ .info = (SNDRV_PCM_INFO_INTERLEAVED | SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_BLOCK_TRANSFER),
++ .formats = SNDRV_PCM_FMTBIT_S24_BE,
++ .rates = SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_32000,
++ .rate_min = 32000,
++ .rate_max = 48000,
++ .channels_min = 2,
++ .channels_max = 2,
++ .buffer_bytes_max = 1048576,
++ .period_bytes_min = 4096,
++ .period_bytes_max = 4096,
++ .periods_min = 4,
++ .periods_max = 256,
++};
++static int snd_rad1_aesrx_open(snd_pcm_substream_t *substream)
++{
++ snd_pcm_runtime_t *runtime = substream->runtime;
++ rad1_t *chip = snd_pcm_substream_chip(substream);
++ runtime->hw = snd_rad1_aesrx_hw;
++ snd_rad1_detect_aesrx_rate(chip, &runtime->hw);
+ return 0;
+}
++static int snd_rad1_aesrx_close(snd_pcm_substream_t *substream)
++{
++ rad1_t *chip = snd_pcm_substream_chip(substream);
++ snd_rad1_run_pipe(chip, RAD1_AESRX, 0);
++ return 0;
++}
++static int snd_rad1_aesrx_params(snd_pcm_substream_t *substream, snd_pcm_hw_params_t *hw_params)
++{
++ return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(hw_params));
++}
++static int snd_rad1_aesrx_free(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_free_pipe(substream, RAD1_AESRX);
++}
++static int snd_rad1_aesrx_prepare(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_prepare_pipe(substream, RAD1_AESRX);
++}
++static int snd_rad1_aesrx_trigger(snd_pcm_substream_t *substream, int cmd)
++{
++ return snd_rad1_trigger_pipe(substream, RAD1_AESRX, cmd);
++}
++static snd_pcm_uframes_t snd_rad1_aesrx_pointer(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_pointer_pipe(substream, RAD1_AESRX);
++}
++static snd_pcm_ops_t snd_rad1_aesrx_ops = {
++ .open = snd_rad1_aesrx_open,
++ .close = snd_rad1_aesrx_close,
++ .hw_params = snd_rad1_aesrx_params,
++ .hw_free = snd_rad1_aesrx_free,
++ .prepare = snd_rad1_aesrx_prepare,
++ .trigger = snd_rad1_aesrx_trigger,
++ .pointer = snd_rad1_aesrx_pointer,
++ .ioctl = snd_pcm_lib_ioctl,
++};
++static void snd_rad1_aesrx_pcm_free(snd_pcm_t *pcm)
++{
++ snd_pcm_lib_preallocate_free_for_all(pcm);
++}
++static int __devinit snd_rad1_new_aesrx(rad1_t *chip, int dev)
++{
++ snd_pcm_t *pcm;
++ int err;
++ if ((err = snd_pcm_new(chip->card, "RAD1 AES Rx", dev, 0, 1, &pcm)) < 0)
++ return err;
++ pcm->private_data = chip;
++ pcm->private_free = snd_rad1_aesrx_pcm_free;
++ strcpy(pcm->name, "RAD1 AES Rx");
++ chip->pipes[RAD1_AESRX].pcm = pcm;
++ snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &snd_rad1_aesrx_ops);
++ snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV, snd_dma_pci_data(chip->pci), 65536, 65536);
++ chip->last_aesrx_rate = 44100;
++ return 0;
++}
+
-+static int snd_rad1_playback_close(snd_pcm_substream_t *substream)
++/* AESTX pipe */
++
++static snd_pcm_hardware_t snd_rad1_aestx_hw = {
++ .info = (SNDRV_PCM_INFO_INTERLEAVED | SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_MMAP_VALID | SNDRV_PCM_INFO_BLOCK_TRANSFER),
++ .formats = SNDRV_PCM_FMTBIT_S24_BE,
++ .rates = SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000,
++ .rate_min = 32000,
++ .rate_max = 48000,
++ .channels_min = 2,
++ .channels_max = 2,
++ .buffer_bytes_max = 1048576,
++ .period_bytes_min = 4096,
++ .period_bytes_max = 4096,
++ .periods_min = 4,
++ .periods_max = 256,
++};
++static int snd_rad1_aestx_open(snd_pcm_substream_t *substream)
+{
++ snd_pcm_runtime_t *runtime = substream->runtime;
++ runtime->hw = snd_rad1_aestx_hw;
++ return 0;
++}
++static int snd_rad1_aestx_close(snd_pcm_substream_t *substream)
++{
+ rad1_t *chip = snd_pcm_substream_chip(substream);
++ snd_rad1_run_pipe(chip, RAD1_AESTX, 0);
++ return 0;
++}
++static int snd_rad1_aestx_params(snd_pcm_substream_t *substream, snd_pcm_hw_params_t *hw_params)
++{
++ return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(hw_params));
++}
++static int snd_rad1_aestx_free(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_free_pipe(substream, RAD1_AESTX);
++}
++static int snd_rad1_aestx_prepare(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_prepare_pipe(substream, RAD1_AESTX);
++}
++static int snd_rad1_aestx_trigger(snd_pcm_substream_t *substream, int cmd)
++{
++ return snd_rad1_trigger_pipe(substream, RAD1_AESTX, cmd);
++}
++static snd_pcm_uframes_t snd_rad1_aestx_pointer(snd_pcm_substream_t *substream)
++{
++ return snd_rad1_pointer_pipe(substream, RAD1_AESTX);
++}
++static snd_pcm_ops_t snd_rad1_aestx_ops = {
++ .open = snd_rad1_aestx_open,
++ .close = snd_rad1_aestx_close,
++ .hw_params = snd_rad1_aestx_params,
++ .hw_free = snd_rad1_aestx_free,
++ .prepare = snd_rad1_aestx_prepare,
++ .trigger = snd_rad1_aestx_trigger,
++ .pointer = snd_rad1_aestx_pointer,
++ .ioctl = snd_pcm_lib_ioctl,
++};
++static void snd_rad1_aestx_pcm_free(snd_pcm_t *pcm)
++{
++ snd_pcm_lib_preallocate_free_for_all(pcm);
++}
++static int __devinit snd_rad1_new_aestx(rad1_t *chip, int dev)
++{
++ snd_pcm_t *pcm;
++ int err;
++ if ((err = snd_pcm_new(chip->card, "RAD1 AES Tx", dev, 1, 0, &pcm)) < 0)
++ return err;
++ pcm->private_data = chip;
++ pcm->private_free = snd_rad1_aestx_pcm_free;
++ strcpy(pcm->name, "RAD1 AES Tx");
++ chip->pipes[RAD1_AESTX].pcm = pcm;
++ snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_rad1_aestx_ops);
++ snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV, snd_dma_pci_data(chip->pci), 65536, 65536);
++ return 0;
++}
+
-+ chip->run_dma=0;
++/* Volume control */
++
++static int snd_rad1_control_pv_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo)
++{
++ uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
++ uinfo->count = 2;
++ uinfo->value.integer.min = 0;
++ uinfo->value.integer.max = 255;
+ return 0;
+}
+
-+static int snd_rad1_pcm_hw_params(snd_pcm_substream_t *substream, snd_pcm_hw_params_t *hw_params)
++static int snd_rad1_control_pv_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u)
+{
-+ return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(hw_params));
++ rad1_t *chip = snd_kcontrol_chip(kcontrol);
++ unsigned long flags;
++ int shift=kcontrol->private_value*16;
++
++ spin_lock_irqsave(&chip->lock, flags);
++ u->value.integer.value[0] = (chip->attctrl>>shift)&0xFF;
++ u->value.integer.value[1] = (chip->attctrl>>(8+shift))&0xFF;
++ spin_unlock_irqrestore(&chip->lock, flags);
++
++ return 0;
+}
+
-+static int snd_rad1_pcm_hw_free(snd_pcm_substream_t *substream)
++static int snd_rad1_control_pv_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u)
+{
-+ rad1_t *chip = snd_pcm_substream_chip(substream);
++ rad1_t *chip = snd_kcontrol_chip(kcontrol);
++ unsigned long flags;
++ int change = 0, shift=kcontrol->private_value*16;
+
-+ if(chip->vbuf_virt) {
-+ chip->run_dma=0;
-+ dma_free_coherent(NULL, chip->vbuf_size, chip->vbuf_virt, chip->vbuf_phys);
-+ chip->vbuf_virt = NULL;
++ spin_lock_irqsave(&chip->lock, flags);
++ if(u->value.integer.value[0] != ((chip->attctrl>>shift)&0xFF))
++ change = 1;
++ if(u->value.integer.value[1] != ((chip->attctrl>>(8+shift))&0xFF))
++ change = 1;
++ if(change) {
++ chip->attctrl &= 0xFFFF<<(16-shift);
++ chip->attctrl |= u->value.integer.value[0]<<shift;
++ chip->attctrl |= u->value.integer.value[1]<<(8+shift);
++ chip->mmio->volume_control = chip->attctrl;
+ }
-+ return snd_pcm_lib_free_pages(substream);
++ spin_unlock_irqrestore(&chip->lock, flags);
++
++ return change;
+}
+
-+static int snd_rad1_pcm_prepare(snd_pcm_substream_t *substream)
++/* AES Tx route control */
++
++static int snd_rad1_control_tr_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo)
+{
-+ rad1_t *chip = snd_pcm_substream_chip(substream);
-+ snd_pcm_runtime_t *runtime = substream->runtime;
-+ dma_addr_t dma_handle;
++ static char *rts[2] = {"Optical", "Coaxial"};
+
-+ del_timer(&chip->timer);
-+ snd_rad1_hw_run(chip, 0);
++ uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
++ uinfo->count = 1;
++ uinfo->value.enumerated.items = 2;
++ if(uinfo->value.enumerated.item > 1)
++ uinfo->value.enumerated.item = 1;
++ strcpy(uinfo->value.enumerated.name, rts[uinfo->value.enumerated.item]);
++ return 0;
++}
+
-+ chip->substream = substream;
++static int snd_rad1_control_tr_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u)
++{
++ rad1_t *chip = snd_kcontrol_chip(kcontrol);
++ unsigned long flags;
+
-+ chip->dma_phys = runtime->dma_addr;
-+ chip->dma_virt = (int *)runtime->dma_area;
-+ chip->dma_periods = runtime->periods;
-+ chip->dma_period_bytes = frames_to_bytes(runtime, runtime->period_size);
++ spin_lock_irqsave(&chip->lock, flags);
++ if(chip->rt_opto == 0x00001440)
++ u->value.enumerated.item[0] = 1;
++ else
++ u->value.enumerated.item[0] = 0;
++ spin_unlock_irqrestore(&chip->lock, flags);
+
-+ if(chip->vbuf_virt)
-+ dma_free_coherent(NULL, chip->vbuf_size, chip->vbuf_virt, chip->vbuf_phys);
-+ chip->vbuf_size = chip->dma_period_bytes * 2;
-+ chip->vbuf_virt = dma_alloc_coherent(NULL, chip->vbuf_size, &dma_handle, GFP_KERNEL);
-+ if(!chip->vbuf_virt) {
-+ printk(KERN_ERR "rad1: can't allocate DMA buffer memory!\n");
-+ return -ENOMEM;
++ return 0;
++}
++
++static int snd_rad1_control_tr_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u)
++{
++ rad1_t *chip = snd_kcontrol_chip(kcontrol);
++ unsigned long flags;
++ int change = 0;
++
++ spin_lock_irqsave(&chip->lock, flags);
++ if(u->value.enumerated.item[0] && chip->rt_opto != 0x00001440)
++ change = 1;
++ if(!u->value.enumerated.item[0] && chip->rt_opto == 0x00001440)
++ change = 1;
++ if(change) {
++ if(u->value.enumerated.item[0])
++ chip->rt_opto = 0x00001440;
++ else
++ chip->rt_opto = 0x00001040;
++ chip->mmio->misc_control = chip->rt_opto;
+ }
-+ chip->vbuf_phys = dma_handle;
-+ memset(chip->vbuf_virt, 0, chip->vbuf_size);
++ spin_unlock_irqrestore(&chip->lock, flags);
+
-+ snd_rad1_hw_setrate(chip, runtime->rate);
++ return change;
++}
+
-+ chip->run_descr = 0;
-+ chip->run_descr_next = 1;
-+ chip->run_period = 0;
-+ chip->run_period_next = 1;
-+ chip->virt_pos = 0;
-+ snd_rad1_hw_set_descr(chip, 0, 1);
-+ snd_rad1_hw_set_descr(chip, 1, 0);
-+ snd_rad1_hw_prepare_dma(chip, 0, 1);
++/* AES Rx route control */
+
-+ chip->timer.expires = jiffies + 1;
-+ chip->timer.function = snd_rad1_poll_timer;
-+ chip->timer.data = (unsigned long)chip;
-+ chip->run_dma=1;
-+ add_timer(&chip->timer);
++static int snd_rad1_control_rr_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u)
++{
++ rad1_t *chip = snd_kcontrol_chip(kcontrol);
++ unsigned long flags;
+
++ spin_lock_irqsave(&chip->lock, flags);
++ if(chip->rt_aesr == 0x00000010)
++ u->value.enumerated.item[0] = 1;
++ else
++ u->value.enumerated.item[0] = 0;
++ spin_unlock_irqrestore(&chip->lock, flags);
++
+ return 0;
+}
+
-+static int snd_rad1_pcm_trigger(snd_pcm_substream_t *substream, int cmd)
++static int snd_rad1_control_rr_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u)
+{
-+ rad1_t *chip = snd_pcm_substream_chip(substream);
++ rad1_t *chip = snd_kcontrol_chip(kcontrol);
++ unsigned long flags;
++ int change = 0;
+
-+ switch(cmd) {
-+ case SNDRV_PCM_TRIGGER_START:
-+ case SNDRV_PCM_TRIGGER_RESUME:
-+ snd_rad1_hw_run(chip, 1);
-+ return 0;
-+ case SNDRV_PCM_TRIGGER_STOP:
-+ case SNDRV_PCM_TRIGGER_SUSPEND:
-+ snd_rad1_hw_run(chip, 0);
-+ return 0;
-+ default:
-+ return -EINVAL;
++ spin_lock_irqsave(&chip->lock, flags);
++ if(u->value.enumerated.item[0] && chip->rt_aesr != 0x00000010)
++ change = 1;
++ if(!u->value.enumerated.item[0] && chip->rt_aesr == 0x00000010)
++ change = 1;
++ if(change) {
++ if(u->value.enumerated.item[0]) {
++ chip->rt_aesr = 0x00000010;
++ chip->rt_adat = 0xA0000018;
++ } else {
++ chip->rt_aesr = 0x00000018;
++ chip->rt_adat = 0xA0000000;
++ }
++ chip->mmio->aes_rx_control=chip->rt_aesr|chip->pipes[RAD1_AESRX].adma;
++ chip->mmio->adat_rx_control=chip->rt_adat|chip->pipes[RAD1_ADATRX].adma;
+ }
++ spin_unlock_irqrestore(&chip->lock, flags);
++
++ return change;
+}
+
-+static snd_pcm_uframes_t snd_rad1_pcm_pointer(snd_pcm_substream_t *substream)
++/* AtoD route control */
++
++static int snd_rad1_control_ar_info(snd_kcontrol_t *kcontrol, snd_ctl_elem_info_t * uinfo)
+{
-+ rad1_t *chip = snd_pcm_substream_chip(substream);
++ static char *rts[2] = {"Mic", "Line"};
+
-+ return chip->virt_pos;
++ uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
++ uinfo->count = 1;
++ uinfo->value.enumerated.items = 2;
++ if(uinfo->value.enumerated.item > 1)
++ uinfo->value.enumerated.item = 1;
++ strcpy(uinfo->value.enumerated.name, rts[uinfo->value.enumerated.item]);
++ return 0;
+}
+
-+static snd_pcm_ops_t snd_rad1_playback_ops = {
-+ .open = snd_rad1_playback_open,
-+ .close = snd_rad1_playback_close,
-+ .hw_params = snd_rad1_pcm_hw_params,
-+ .hw_free = snd_rad1_pcm_hw_free,
-+ .prepare = snd_rad1_pcm_prepare,
-+ .trigger = snd_rad1_pcm_trigger,
-+ .pointer = snd_rad1_pcm_pointer,
-+ .ioctl = snd_pcm_lib_ioctl,
++static int snd_rad1_control_ar_get(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u)
++{
++ rad1_t *chip = snd_kcontrol_chip(kcontrol);
++ unsigned long flags;
++
++ spin_lock_irqsave(&chip->lock, flags);
++ if(chip->rt_atod == 0x05000000)
++ u->value.enumerated.item[0] = 1;
++ else
++ u->value.enumerated.item[0] = 0;
++ spin_unlock_irqrestore(&chip->lock, flags);
++
++ return 0;
++}
++
++static int snd_rad1_control_ar_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t *u)
++{
++ rad1_t *chip = snd_kcontrol_chip(kcontrol);
++ unsigned long flags;
++ int change = 0;
++
++ spin_lock_irqsave(&chip->lock, flags);
++ if(u->value.enumerated.item[0] && chip->rt_atod != 0x05000000)
++ change = 1;
++ if(!u->value.enumerated.item[0] && chip->rt_atod == 0x05000000)
++ change = 1;
++ if(change) {
++ if(u->value.enumerated.item[0])
++ chip->rt_atod = 0x05000000;
++ else
++ chip->rt_atod = 0x03000000;
++ chip->mmio->atod_control=chip->rt_atod|chip->pipes[RAD1_ATOD].adma;
++ }
++ spin_unlock_irqrestore(&chip->lock, flags);
++
++ return change;
++}
++
++static snd_kcontrol_new_t snd_rad1_controls[] = {
++{
++ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
++ .name = "Master Playback Volume",
++ .info = snd_rad1_control_pv_info,
++ .get = snd_rad1_control_pv_get,
++ .put = snd_rad1_control_pv_put,
++ .private_value = 1
++},
++{
++ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
++ .name = "Line Capture Volume",
++ .info = snd_rad1_control_pv_info,
++ .get = snd_rad1_control_pv_get,
++ .put = snd_rad1_control_pv_put,
++ .private_value = 0
++},
++{
++ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
++ .name = "IEC958 Playback Routing",
++ .info = snd_rad1_control_tr_info,
++ .get = snd_rad1_control_tr_get,
++ .put = snd_rad1_control_tr_put
++},
++{
++ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
++ .name = "IEC958 Capture Routing",
++ .info = snd_rad1_control_tr_info, /* clone */
++ .get = snd_rad1_control_rr_get,
++ .put = snd_rad1_control_rr_put
++},
++{
++ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
++ .name = "Line Capture Routing",
++ .info = snd_rad1_control_ar_info,
++ .get = snd_rad1_control_ar_get,
++ .put = snd_rad1_control_ar_put
++},
+};
+
-+static int __devinit snd_rad1_new_pcm(rad1_t *chip)
++static int snd_rad1_add_controls(rad1_t *chip)
+{
-+ snd_pcm_t *pcm;
-+ int err;
-+ init_timer(&chip->timer);
-+ if ((err = snd_pcm_new(chip->card, "RAD1 PCM", 0, 1, 0, &pcm)) < 0)
-+ return err;
-+ pcm->private_data = chip;
-+ strcpy(pcm->name, "RAD1 PCM");
-+ chip->pcm = pcm;
-+ snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_rad1_playback_ops);
-+ snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV, snd_dma_pci_data(chip->pci), 262144, 262144);
++ int idx, err;
++
++ for(idx=0;idx<5;idx++)
++ if((err = snd_ctl_add(chip->card, snd_ctl_new1(&snd_rad1_controls[idx], chip))) < 0)
++ return err;
+ return 0;
+}
+
@@ -5935,8 +6872,10 @@
+
+static int snd_rad1_free(rad1_t *chip)
+{
-+ if (chip->mmio)
++ if (chip->mmio) {
+ iounmap((void *)(chip->mmio));
++ chip->mmio = NULL;
++ }
+ pci_release_regions(chip->pci);
+ kfree(chip);
+ return 0;
@@ -5965,9 +6904,15 @@
+ if (chip == NULL)
+ return -ENOMEM;
+
++ init_timer(&chip->timer);
++ chip->timer.function = snd_rad1_poll_timer;
++ chip->timer.data = (unsigned long)chip;
++
+ chip->card = card;
+ chip->pci = pci;
+
++ spin_lock_init(&chip->lock);
++
+ pci_set_master(pci);
+
+ if ((err = pci_request_regions(pci, "RAD1")) < 0) {
@@ -5989,7 +6934,7 @@
+}
+
+static struct pci_device_id snd_rad1_ids[] = {
-+ { 0x10a9, 0x0005, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
++ { PCI_VENDOR_ID_SGI, PCI_DEVICE_ID_SGI_RAD1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, },
+ { 0, },
+};
+
@@ -6016,13 +6961,15 @@
+ }
+
+ strcpy(card->driver, "RAD1");
-+ strcpy(card->shortname, "SGI RAD Pro Audio");
-+ sprintf(card->longname, "%s at 0x%lx", card->shortname, chip->mmio_phys);
++ strcpy(card->shortname, "RADAudio");
++ sprintf(card->longname, "SGI RAD Audio at 0x%lx", chip->mmio_phys);
+
-+ if ((err = snd_rad1_new_pcm(chip)) < 0) {
-+ snd_card_free(card);
-+ return err;
-+ }
++ /* create pipes */
++ snd_rad1_new_dtoa(chip, 0);
++ snd_rad1_new_atod(chip, 1);
++ snd_rad1_new_aestx(chip, 2);
++ snd_rad1_new_aesrx(chip, 3);
++ snd_rad1_add_controls(chip);
+
+ if ((err = snd_card_register(card)) < 0) {
+ snd_card_free(card);
Deleted: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches-2.4/10_cobalt-patch.dpatch
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches-2.4/10_cobalt-patch.dpatch 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/patches-2.4/10_cobalt-patch.dpatch 2005-08-17 19:38:05 UTC (rev 3964)
@@ -1,492 +0,0 @@
-#! /bin/sh -e
-## 10_cobalt-patch.dpatch by Karsten Merker <karsten at excalibur.cologne.de>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Cobalt fixes for 2.4 from http://www.colonel-panic.org/cobalt-mips/
-## DP: cobalt-patch-2.4.x-20040411
-
-if [ $# -lt 1 ]; then
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1
-fi
-
-[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
-patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
-
-case "$1" in
- -patch) patch -p1 ${patch_opts} < $0;;
- -unpatch) patch -R -p1 ${patch_opts} < $0;;
- *)
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1;;
-esac
-
-exit 0
-
-diff -urN linux.cvs/arch/mips/cobalt/pci.c linux.pdh/arch/mips/cobalt/pci.c
---- linux.cvs/arch/mips/cobalt/pci.c 2003-07-05 14:17:03.000000000 +0100
-+++ linux.pdh/arch/mips/cobalt/pci.c 2004-04-11 16:27:59.000000000 +0100
-@@ -211,7 +211,14 @@
- pci_write_config_byte(dev, PCI_LATENCY_TIMER, 64);
- pci_write_config_byte(dev, PCI_CACHE_LINE_SIZE, 7);
-
-- /* On all machines prior to Q2, we had the STOP line disconnected
-+ /* The code described by the comment below has been removed
-+ * as it causes bus mastering by the Ethernet controllers
-+ * to break under any kind of network load. We always set
-+ * the retry timeouts to their maximum.
-+ *
-+ * --x--x--x--x--x--x--x--x--x--x--x--x--x--x--x--x--x--x--x--x--
-+ *
-+ * On all machines prior to Q2, we had the STOP line disconnected
- * from Galileo to VIA on PCI. The new Galileo does not function
- * correctly unless we have it connected.
- *
-@@ -220,10 +227,16 @@
- */
- pci_read_config_word(dev, PCI_REVISION_ID, &galileo_id);
- galileo_id &= 0xff; /* mask off class info */
-+
-+ printk("Galileo ID: %u\n", galileo_id);
-+
-+#if 0
- if (galileo_id >= 0x10) {
- /* New Galileo, assumes PCI stop line to VIA is connected. */
- GALILEO_OUTL(0x4020, GT_PCI0_TOR_OFS);
-- } else if (galileo_id == 0x1 || galileo_id == 0x2) {
-+ } else if (galileo_id == 0x1 || galileo_id == 0x2)
-+#endif
-+ {
- signed int timeo;
- /* XXX WE MUST DO THIS ELSE GALILEO LOCKS UP! -DaveM */
- timeo = GALILEO_INL(GT_PCI0_TOR_OFS);
-diff -urN linux.cvs/arch/mips/cobalt/setup.c linux.pdh/arch/mips/cobalt/setup.c
---- linux.cvs/arch/mips/cobalt/setup.c 2003-07-05 14:17:03.000000000 +0100
-+++ linux.pdh/arch/mips/cobalt/setup.c 2004-04-11 17:50:11.000000000 +0100
-@@ -34,6 +34,8 @@
- extern struct rtc_ops std_rtc_ops;
- extern struct ide_ops std_ide_ops;
-
-+extern int cobalt_board_id;
-+
-
- char arcs_cmdline[CL_SIZE] = {
- "console=ttyS0,115200 "
-@@ -49,6 +51,16 @@
-
- const char *get_system_type(void)
- {
-+ switch (cobalt_board_id) {
-+ case COBALT_BRD_ID_QUBE1:
-+ return "Cobalt Qube";
-+ case COBALT_BRD_ID_RAQ1:
-+ return "Cobalt RaQ";
-+ case COBALT_BRD_ID_QUBE2:
-+ return "Cobalt Qube2";
-+ case COBALT_BRD_ID_RAQ2:
-+ return "Cobalt RaQ2";
-+ }
- return "MIPS Cobalt";
- }
-
-@@ -98,13 +110,96 @@
- /*ns16550_setup_console();*/
- }
-
-+#ifdef CONFIG_BLK_DEV_INITRD
-+
-+static int __init initrd_setup(unsigned long memsz)
-+{
-+ extern unsigned long initrd_start, initrd_end;
-+ extern char __rd_start, __rd_end;
-+
-+ unsigned long start, size, phys;
-+ char *ptr;
-+
-+ if (!memcmp(arcs_cmdline, "initrd=", 7))
-+ ptr = arcs_cmdline;
-+ else {
-+ ptr = strstr(arcs_cmdline, " initrd=");
-+ if (!ptr)
-+ return 0;
-+ ++ptr;
-+ }
-+
-+ size = simple_strtoul(ptr + 7, &ptr, 16);
-+ if (*ptr != '@')
-+ goto invalid;
-+
-+ start = simple_strtoul(ptr + 1, &ptr, 16);
-+ if (*ptr && *ptr != ' ')
-+ goto invalid;
-+
-+ phys = CPHYSADDR(start);
-+ if (phys + size > memsz) {
-+invalid:
-+ printk(KERN_WARNING "initrd: command line parameter invalid\n");
-+ return 0;
-+ }
-+
-+ if (!size)
-+ return 0;
-+
-+ /* an embedded ramdisk overrides us (arch/mips/kernel/setup.c) */
-+
-+ if (&__rd_start != &__rd_end) {
-+ printk(KERN_WARNING "initrd: overridden by embedded ramdisk\n");
-+ return 0;
-+ }
-+
-+ initrd_start = start;
-+ initrd_end = start + size;
-+
-+ add_memory_region(0x0, phys, BOOT_MEM_RAM);
-+ add_memory_region(phys, size, BOOT_MEM_RESERVED);
-+ phys += size;
-+ add_memory_region(phys, memsz - phys, BOOT_MEM_RAM);
-+
-+ return 1;
-+}
-+
-+#endif /* CONFIG_BLK_DEV_INITRD */
-+
- /* Prom init. We read our one and only communication with the
-- firmware. Grab the amount of installed memory */
--void __init prom_init(int argc)
-+ firmware. Grab the amount of installed memory.
-+ Better boot loaders pass a command line too :-) */
-+void __init prom_init(int argc, char *argv[])
- {
-+ int indx, posn, nchr;
-+ unsigned long memsz;
-+
- mips_machgroup = MACH_GROUP_COBALT;
-
-- add_memory_region(0x0, argc & 0x7fffffff, BOOT_MEM_RAM);
-+ memsz = argc & 0x7fff0000;
-+ argc &= 0xffff;
-+
-+ if (argc) {
-+ arcs_cmdline[0] = '\0';
-+ posn = 0;
-+ for (indx = 1; indx < argc; ++indx) {
-+ nchr = strlen(argv[indx]);
-+ if (posn + 1 + nchr + 1 > sizeof(arcs_cmdline))
-+ break;
-+ if (posn)
-+ arcs_cmdline[posn++] = ' ';
-+ strcpy(arcs_cmdline + posn, argv[indx]);
-+ posn += nchr;
-+ }
-+ }
-+
-+#ifdef CONFIG_BLK_DEV_INITRD
-+ if (!initrd_setup(memsz))
-+#endif
-+ {
-+ add_memory_region(0x0, memsz, BOOT_MEM_RAM);
-+ }
- }
-
- void __init prom_free_prom_memory(void)
-diff -urN linux.cvs/arch/mips/defconfig-cobalt linux.pdh/arch/mips/defconfig-cobalt
---- linux.cvs/arch/mips/defconfig-cobalt 2004-03-15 20:50:55.000000000 +0000
-+++ linux.pdh/arch/mips/defconfig-cobalt 2004-04-11 16:27:59.000000000 +0100
-@@ -13,7 +13,9 @@
- #
- # Loadable module support
- #
--# CONFIG_MODULES is not set
-+CONFIG_MODULES=y
-+# CONFIG_MODVERSIONS is not set
-+CONFIG_KMOD=y
-
- #
- # Machine selection
-@@ -168,7 +170,7 @@
- # CONFIG_BLK_DEV_DAC960 is not set
- # CONFIG_BLK_DEV_UMEM is not set
- # CONFIG_BLK_DEV_SX8 is not set
--CONFIG_BLK_DEV_LOOP=y
-+# CONFIG_BLK_DEV_LOOP is not set
- # CONFIG_BLK_DEV_NBD is not set
- # CONFIG_BLK_DEV_RAM is not set
- # CONFIG_BLK_DEV_INITRD is not set
-@@ -624,15 +626,15 @@
- #
- # CONFIG_CODA_FS is not set
- # CONFIG_INTERMEZZO_FS is not set
--CONFIG_NFS_FS=y
-+# CONFIG_NFS_FS is not set
- # CONFIG_NFS_V3 is not set
- # CONFIG_NFS_DIRECTIO is not set
- # CONFIG_ROOT_NFS is not set
- # CONFIG_NFSD is not set
- # CONFIG_NFSD_V3 is not set
- # CONFIG_NFSD_TCP is not set
--CONFIG_SUNRPC=y
--CONFIG_LOCKD=y
-+# CONFIG_SUNRPC is not set
-+# CONFIG_LOCKD is not set
- # CONFIG_SMB_FS is not set
- # CONFIG_NCP_FS is not set
- # CONFIG_NCPFS_PACKET_SIGNING is not set
-@@ -648,22 +650,8 @@
- #
- # Partition Types
- #
--CONFIG_PARTITION_ADVANCED=y
--# CONFIG_ACORN_PARTITION is not set
--# CONFIG_OSF_PARTITION is not set
--# CONFIG_AMIGA_PARTITION is not set
--# CONFIG_ATARI_PARTITION is not set
--# CONFIG_MAC_PARTITION is not set
-+# CONFIG_PARTITION_ADVANCED is not set
- CONFIG_MSDOS_PARTITION=y
--# CONFIG_BSD_DISKLABEL is not set
--# CONFIG_MINIX_SUBPARTITION is not set
--# CONFIG_SOLARIS_X86_PARTITION is not set
--# CONFIG_UNIXWARE_DISKLABEL is not set
--# CONFIG_LDM_PARTITION is not set
--CONFIG_SGI_PARTITION=y
--# CONFIG_ULTRIX_PARTITION is not set
--# CONFIG_SUN_PARTITION is not set
--# CONFIG_EFI_PARTITION is not set
- # CONFIG_SMB_NLS is not set
- # CONFIG_NLS is not set
-
-@@ -695,7 +683,7 @@
- #
- # Kernel hacking
- #
--CONFIG_CROSSCOMPILE=y
-+# CONFIG_CROSSCOMPILE is not set
- # CONFIG_RUNTIME_DEBUG is not set
- # CONFIG_KGDB is not set
- # CONFIG_GDB_CONSOLE is not set
-diff -urN linux.cvs/arch/mips/ld.script.in linux.pdh/arch/mips/ld.script.in
---- linux.cvs/arch/mips/ld.script.in 2004-02-06 15:14:07.000000000 +0000
-+++ linux.pdh/arch/mips/ld.script.in 2004-04-11 16:27:59.000000000 +0100
-@@ -30,6 +30,10 @@
- __ksymtab : { *(__ksymtab) }
- __stop___ksymtab = .;
-
-+ __start___kallsyms = .; /* All kernel symbols */
-+ __kallsyms : { *(__kallsyms) }
-+ __stop___kallsyms = .;
-+
- _etext = .;
-
- . = ALIGN(8192);
-diff -urN linux.cvs/arch/mips/lib/dump_tlb.c linux.pdh/arch/mips/lib/dump_tlb.c
---- linux.cvs/arch/mips/lib/dump_tlb.c 2004-02-11 15:05:10.000000000 +0000
-+++ linux.pdh/arch/mips/lib/dump_tlb.c 2004-04-11 16:27:59.000000000 +0100
-@@ -32,6 +32,7 @@
- case PM_256M: return "256Mb";
- #endif
- }
-+ return "???";
- }
-
- void dump_tlb(int first, int last)
-diff -urN linux.cvs/arch/mips/lib/rtc-no.c linux.pdh/arch/mips/lib/rtc-no.c
---- linux.cvs/arch/mips/lib/rtc-no.c 2004-01-08 18:31:49.000000000 +0000
-+++ linux.pdh/arch/mips/lib/rtc-no.c 2004-04-11 16:27:59.000000000 +0100
-@@ -29,5 +29,3 @@
- .rtc_write_data = (void *) &shouldnt_happen,
- .rtc_bcd_mode = (void *) &shouldnt_happen
- };
--
--EXPORT_SYMBOL(rtc_ops);
-diff -urN linux.cvs/drivers/net/tulip/eeprom.c linux.pdh/drivers/net/tulip/eeprom.c
---- linux.cvs/drivers/net/tulip/eeprom.c 2003-02-25 22:03:08.000000000 +0000
-+++ linux.pdh/drivers/net/tulip/eeprom.c 2004-04-11 16:27:59.000000000 +0100
-@@ -62,6 +62,22 @@
- */
- { 0x1e00, 0x0000, 0x000b, 0x8f01, 0x0103, 0x0300, 0x0821, 0x000, 0x0001, 0x0000, 0x01e1 }
- },
-+ {"Cobalt Microserver", 0, 0x10, 0xE0, {0x1e00, /* 0 == controller #, 1e == offset */
-+ 0x0000, /* 0 == high offset, 0 == gap */
-+ 0x0800, /* Default Autoselect */
-+ 0x8001, /* 1 leaf, extended type, bogus len */
-+ 0x0003, /* Type 3 (MII), PHY #0 */
-+ 0x0400, /* 0 init instr, 4 reset instr */
-+ 0x0801, /* Set control mode, GP0 output */
-+ 0x0000, /* Drive GP0 Low (RST is active low) */
-+ 0x0800, /* control mode, GP0 input (undriven) */
-+ 0x0000, /* clear control mode */
-+ 0x7800, /* 100TX FDX + HDX, 10bT FDX + HDX */
-+ 0x01e0, /* Advertise all above */
-+ 0x5000, /* FDX all above */
-+ 0x1800, /* Set fast TTM in 100bt modes */
-+ 0x0000, /* PHY cannot be unplugged */
-+ }},
- {0, 0, 0, 0, {}}};
-
-
-diff -urN linux.cvs/drivers/net/tulip/media.c linux.pdh/drivers/net/tulip/media.c
---- linux.cvs/drivers/net/tulip/media.c 2003-02-25 22:03:08.000000000 +0000
-+++ linux.pdh/drivers/net/tulip/media.c 2004-04-11 16:27:59.000000000 +0100
-@@ -400,6 +400,9 @@
- }
-
- tp->csr6 = new_csr6 | (tp->csr6 & 0xfdff) | (tp->full_duplex ? 0x0200 : 0);
-+
-+ udelay(1000);
-+
- return;
- }
-
-diff -urN linux.cvs/drivers/net/tulip/tulip_core.c linux.pdh/drivers/net/tulip/tulip_core.c
---- linux.cvs/drivers/net/tulip/tulip_core.c 2003-11-19 18:49:50.000000000 +0000
-+++ linux.pdh/drivers/net/tulip/tulip_core.c 2004-04-11 16:27:59.000000000 +0100
-@@ -1595,8 +1595,8 @@
- (PCI_SLOT(pdev->devfn) == 12))) {
- /* Cobalt MAC address in first EEPROM locations. */
- sa_offset = 0;
-- /* No media table either */
-- tp->flags &= ~HAS_MEDIA_TABLE;
-+ /* Ensure our media table fixup get's applied */
-+ memcpy(ee_data + 16, ee_data, 8);
- }
- #endif
- #ifdef __hppa__
-diff -urN linux.cvs/include/asm-mips/cobalt/ide.h linux.pdh/include/asm-mips/cobalt/ide.h
---- linux.cvs/include/asm-mips/cobalt/ide.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux.pdh/include/asm-mips/cobalt/ide.h 2004-04-11 16:27:59.000000000 +0100
-@@ -0,0 +1,71 @@
-+/*
-+ * PIO "in" transfers can cause D-cache lines to be allocated
-+ * to the data being read. If the target is the page cache then
-+ * the kernel can create a user space mapping of the same page
-+ * without flushing it from the D-cache. This has large potential
-+ * to create cache aliases. The Cobalts seem to trigger this
-+ * problem easily.
-+ *
-+ * MIPs doesn't have a flush_dcache_range() so we roll
-+ * our own.
-+ *
-+ * -- pdh
-+ */
-+
-+#include <asm/r4kcache.h>
-+
-+static inline void __flush_dcache(void)
-+{
-+ unsigned long dc_size, dc_line, addr, end;
-+
-+ dc_size = current_cpu_data.dcache.ways << current_cpu_data.dcache.waybit;
-+ dc_line = current_cpu_data.dcache.linesz;
-+
-+ addr = KSEG0;
-+ end = addr + dc_size;
-+
-+ for (; addr < end; addr += dc_line)
-+ flush_dcache_line_indexed(addr);
-+}
-+
-+static inline void __flush_dcache_range(unsigned long start, unsigned long end)
-+{
-+ unsigned long dc_size, dc_line, addr;
-+
-+ dc_size = current_cpu_data.dcache.ways << current_cpu_data.dcache.waybit;
-+ dc_line = current_cpu_data.dcache.linesz;
-+
-+ addr = start & ~(dc_line - 1);
-+ end += dc_line - 1;
-+
-+ if (end - addr < dc_size)
-+ for (; addr < end; addr += dc_line)
-+ flush_dcache_line(addr);
-+ else
-+ __flush_dcache();
-+}
-+
-+static inline void __ide_insw(unsigned long port, void *addr, unsigned int count)
-+{
-+ __insw(port, addr, count);
-+
-+ __flush_dcache_range((unsigned long) addr, (unsigned long) addr + count * 2);
-+}
-+
-+static inline void __ide_insl(unsigned long port, void *addr, unsigned int count)
-+{
-+ __insl(port, addr, count);
-+
-+ __flush_dcache_range((unsigned long) addr, (unsigned long) addr + count * 4);
-+}
-+
-+#undef insw
-+#undef insl
-+
-+#define insw(p,a,n) __ide_insw((p),(a),(n))
-+#define insl(p,a,n) __ide_insl((p),(a),(n))
-+
-+#define __ide_mm_insw(p,a,n) do{BUG();}while(0)
-+#define __ide_mm_insl(p,a,n) do{BUG();}while(0)
-+#define __ide_mm_outsw(p,a,n) do{BUG();}while(0)
-+#define __ide_mm_outsl(p,a,n) do{BUG();}while(0)
-diff -urN linux.cvs/include/asm-mips/ide.h linux.pdh/include/asm-mips/ide.h
---- linux.cvs/include/asm-mips/ide.h 2003-07-15 16:08:33.000000000 +0100
-+++ linux.pdh/include/asm-mips/ide.h 2004-04-11 17:21:40.000000000 +0100
-@@ -68,7 +68,11 @@
- #define ide_ack_intr(hwif) ((hwif)->hw.ack_intr ? (hwif)->hw.ack_intr(hwif) : 1)
- #endif
-
-+#ifdef CONFIG_MIPS_COBALT
-+#include <asm/cobalt/ide.h>
-+#else
- #include <asm-generic/ide_iops.h>
-+#endif
-
- #endif /* __KERNEL__ */
-
-diff -urN linux.cvs/include/linux/udf_fs_sb.h linux.pdh/include/linux/udf_fs_sb.h
---- linux.cvs/include/linux/udf_fs_sb.h 2002-06-26 23:36:46.000000000 +0100
-+++ linux.pdh/include/linux/udf_fs_sb.h 2004-04-11 16:27:59.000000000 +0100
-@@ -18,7 +18,7 @@
- #ifndef _UDF_FS_SB_H
- #define _UDF_FS_SB_H 1
-
--#pragma pack(1)
-+//#pragma pack(1)
-
- #define UDF_MAX_BLOCK_LOADED 8
-
-@@ -31,13 +31,13 @@
- {
- __u16 s_packet_len;
- struct buffer_head *s_spar_map[4];
--};
-+} __attribute__((packed));
-
- struct udf_virtual_data
- {
- __u32 s_num_entries;
- __u16 s_start_offset;
--};
-+} __attribute__((packed));
-
- struct udf_bitmap
- {
-@@ -45,7 +45,7 @@
- __u32 s_extPosition;
- __u16 s_nr_groups;
- struct buffer_head **s_block_bitmap;
--};
-+} __attribute__((packed));
-
- struct udf_part_map
- {
-@@ -71,9 +71,9 @@
- __u32 (*s_partition_func)(struct super_block *, __u32, __u16, __u32);
- __u16 s_volumeseqnum;
- __u16 s_partition_flags;
--};
-+} __attribute__((packed));
-
--#pragma pack()
-+//#pragma pack()
-
- struct udf_sb_info
- {
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/rules
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/rules 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/rules 2005-08-17 19:38:05 UTC (rev 3964)
@@ -112,15 +112,15 @@
dh_testroot
$(foreach fla,$(flavours), \
$(MAKE) -C debian flavour=$(fla) build-flavour && \
- cp -l debian/linux-image-$(kernver)-$(abiver)-$(fla)_$(debver)_$(debarch).deb .. && \
- cp -l debian/linux-headers-$(kernver)-$(abiver)-$(fla)_$(debver)_$(debarch).deb .. &&) :
+ cp -lf debian/linux-image-$(kernver)-$(abiver)-$(fla)_$(debver)_$(debarch).deb .. && \
+ cp -lf debian/linux-headers-$(kernver)-$(abiver)-$(fla)_$(debver)_$(debarch).deb .. &&) :
binary-headers: patch
dh_testdir
dh_testroot
ifneq ($(flavours),)
$(MAKE) -C debian build-generic-headers
- cp -l debian/linux-headers-$(kernver)-$(abiver)_$(debver)_$(debarch).deb ..
+ cp -lf debian/linux-headers-$(kernver)-$(abiver)_$(debver)_$(debarch).deb ..
endif
binary-arch: binary-images binary-headers
Modified: trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/sourceversion
===================================================================
--- trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/sourceversion 2005-08-17 16:06:19 UTC (rev 3963)
+++ trunk/kernel/mips/linux-patch-2.6.12-mips-2.6.12/debian/sourceversion 2005-08-17 19:38:05 UTC (rev 3964)
@@ -1 +1 @@
-2.6.12-1
+2.6.12-2
More information about the Kernel-svn-changes
mailing list