Commit ca36f40d authored by Russell King's avatar Russell King

[ARM] Resurect EBSA110 machine class.

This fixes build errors in EBSA110, and updates the default
configuration.
parent efe00e6a
...@@ -581,7 +581,7 @@ config LEDS_CPU ...@@ -581,7 +581,7 @@ config LEDS_CPU
config ALIGNMENT_TRAP config ALIGNMENT_TRAP
bool bool
depends on CPU_32 depends on CPU_32
default y default y if !ARCH_EBSA110
help help
ARM processors can not fetch/store information which is not ARM processors can not fetch/store information which is not
naturally aligned on the bus, i.e., a 4 byte fetch must start at an naturally aligned on the bus, i.e., a 4 byte fetch must start at an
......
...@@ -2,137 +2,120 @@ ...@@ -2,137 +2,120 @@
# Automatically generated make config: don't edit # Automatically generated make config: don't edit
# #
CONFIG_ARM=y CONFIG_ARM=y
# CONFIG_EISA is not set CONFIG_MMU=y
# CONFIG_SBUS is not set
# CONFIG_MCA is not set
CONFIG_UID16=y CONFIG_UID16=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_RWSEM_GENERIC_SPINLOCK=y
# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
# #
# Code maturity level options # Code maturity level options
# #
CONFIG_EXPERIMENTAL=y CONFIG_EXPERIMENTAL=y
# CONFIG_OBSOLETE is not set CONFIG_CLEAN_COMPILE=y
CONFIG_STANDALONE=y
CONFIG_BROKEN_ON_SMP=y
#
# General setup
#
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_POSIX_MQUEUE is not set
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
# CONFIG_AUDIT is not set
CONFIG_LOG_BUF_SHIFT=14
CONFIG_HOTPLUG=y
# CONFIG_IKCONFIG is not set
CONFIG_EMBEDDED=y
CONFIG_KALLSYMS=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
# #
# Loadable module support # Loadable module support
# #
CONFIG_MODULES=y CONFIG_MODULES=y
# CONFIG_MODULE_UNLOAD is not set
CONFIG_OBSOLETE_MODPARM=y
# CONFIG_MODVERSIONS is not set # CONFIG_MODVERSIONS is not set
CONFIG_KMOD=y CONFIG_KMOD=y
# #
# System Type # System Type
# #
# CONFIG_ARCH_ARCA5K is not set # CONFIG_ARCH_ADIFCC is not set
# CONFIG_ARCH_CLPS7500 is not set # CONFIG_ARCH_CLPS7500 is not set
# CONFIG_ARCH_CLPS711X is not set
# CONFIG_ARCH_CO285 is not set # CONFIG_ARCH_CO285 is not set
CONFIG_ARCH_EBSA110=y CONFIG_ARCH_EBSA110=y
# CONFIG_ARCH_L7200 is not set # CONFIG_ARCH_CAMELOT is not set
# CONFIG_ARCH_FOOTBRIDGE is not set # CONFIG_ARCH_FOOTBRIDGE is not set
# CONFIG_ARCH_INTEGRATOR is not set # CONFIG_ARCH_INTEGRATOR is not set
# CONFIG_ARCH_IOP3XX is not set
# CONFIG_ARCH_IXP4XX is not set
# CONFIG_ARCH_L7200 is not set
# CONFIG_ARCH_PXA is not set
# CONFIG_ARCH_RPC is not set # CONFIG_ARCH_RPC is not set
# CONFIG_ARCH_SA1100 is not set # CONFIG_ARCH_SA1100 is not set
# CONFIG_ARCH_CLPS711X is not set # CONFIG_ARCH_S3C2410 is not set
# CONFIG_ARCH_SHARK is not set
# CONFIG_ARCH_LH7A40X is not set
# CONFIG_ARCH_OMAP is not set
# CONFIG_ARCH_VERSATILE_PB is not set
# #
# Archimedes/A5000 Implementations # Processor Type
#
#
# Archimedes/A5000 Implementations (select only ONE)
#
# CONFIG_ARCH_ARC is not set
# CONFIG_ARCH_A5K is not set
#
# Footbridge Implementations
#
# CONFIG_ARCH_CATS is not set
# CONFIG_ARCH_PERSONAL_SERVER is not set
# CONFIG_ARCH_EBSA285_ADDIN is not set
# CONFIG_ARCH_EBSA285_HOST is not set
# CONFIG_ARCH_NETWINDER is not set
#
# SA11x0 Implementations
#
# CONFIG_SA1100_ASSABET is not set
# CONFIG_ASSABET_NEPONSET is not set
# CONFIG_SA1100_BRUTUS is not set
# CONFIG_SA1100_CERF is not set
# CONFIG_SA1100_BITSY is not set
# CONFIG_SA1100_EXTENEX1 is not set
# CONFIG_SA1100_FREEBIRD is not set
# CONFIG_SA1100_GRAPHICSCLIENT is not set
# CONFIG_SA1100_JORNADA720 is not set
# CONFIG_SA1100_HUW_WEBPANEL is not set
# CONFIG_SA1100_ITSY is not set
# CONFIG_SA1100_LART is not set
# CONFIG_SA1100_NANOENGINE is not set
# CONFIG_SA1100_OMNIMETER is not set
# CONFIG_SA1100_PANGOLIN is not set
# CONFIG_SA1100_PLEB is not set
# CONFIG_SA1100_SHERMAN is not set
# CONFIG_SA1100_PFS168 is not set
# CONFIG_SA1100_VICTOR is not set
# CONFIG_SA1100_XP860 is not set
# CONFIG_SA1100_YOPY is not set
#
# CLPS711X/EP721X Implementations
# #
# CONFIG_ARCH_P720T is not set
# CONFIG_ARCH_ACORN is not set
# CONFIG_FOOTBRIDGE is not set
# CONFIG_FOOTBRIDGE_HOST is not set
# CONFIG_FOOTBRIDGE_ADDIN is not set
CONFIG_CPU_32=y CONFIG_CPU_32=y
# CONFIG_CPU_26 is not set CONFIG_CPU_SA110=y
CONFIG_CPU_32v4=y
CONFIG_CPU_ABRT_EV4=y
CONFIG_CPU_CACHE_V4WB=y
CONFIG_CPU_COPY_V4WB=y
CONFIG_CPU_TLB_V4WB=y
# #
# Processor Type # Processor Features
# #
# CONFIG_CPU_32v3 is not set
CONFIG_CPU_32v4=y
# CONFIG_CPU_ARM610 is not set
# CONFIG_CPU_ARM710 is not set
# CONFIG_CPU_ARM720T is not set
# CONFIG_CPU_ARM920T is not set
# CONFIG_CPU_ARM1020 is not set
CONFIG_CPU_SA110=y
# CONFIG_CPU_SA1100 is not set
# CONFIG_DISCONTIGMEM is not set
# #
# General setup # General setup
# #
# CONFIG_PCI is not set
CONFIG_ISA=y CONFIG_ISA=y
# CONFIG_ISA_DMA is not set # CONFIG_ZBOOT_ROM is not set
CONFIG_HOTPLUG=y CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0
# #
# PCMCIA/CardBus support # PCMCIA/CardBus support
# #
CONFIG_PCMCIA=m CONFIG_PCMCIA=m
CONFIG_I82365=y # CONFIG_PCMCIA_DEBUG is not set
CONFIG_I82365=m
# CONFIG_TCIC is not set # CONFIG_TCIC is not set
# CONFIG_PCMCIA_CLPS6700 is not set CONFIG_PCMCIA_PROBE=y
# CONFIG_PCMCIA_SA1100 is not set
CONFIG_NET=y #
CONFIG_SYSVIPC=y # At least one math emulation must be selected
CONFIG_BSD_PROCESS_ACCT=y #
CONFIG_SYSCTL=y
CONFIG_FPE_NWFPE=y CONFIG_FPE_NWFPE=y
# CONFIG_FPE_NWFPE_XP is not set
CONFIG_FPE_FASTFPE=y CONFIG_FPE_FASTFPE=y
CONFIG_KCORE_ELF=y
# CONFIG_KCORE_AOUT is not set
CONFIG_BINFMT_AOUT=y
CONFIG_BINFMT_ELF=y CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_AOUT=y
# CONFIG_BINFMT_MISC is not set # CONFIG_BINFMT_MISC is not set
#
# Generic Driver Options
#
# CONFIG_FW_LOADER is not set
# CONFIG_PM is not set # CONFIG_PM is not set
# CONFIG_PREEMPT is not set
# CONFIG_ARTHUR is not set # CONFIG_ARTHUR is not set
CONFIG_CMDLINE="root=/dev/nfs rw mem=16M console=ttyS1,38400n8" CONFIG_CMDLINE="root=/dev/nfs rw mem=16M console=ttyS1,38400n8"
CONFIG_LEDS=y CONFIG_LEDS=y
...@@ -143,22 +126,18 @@ CONFIG_LEDS_TIMER=y ...@@ -143,22 +126,18 @@ CONFIG_LEDS_TIMER=y
# #
CONFIG_PARPORT=y CONFIG_PARPORT=y
CONFIG_PARPORT_PC=y CONFIG_PARPORT_PC=y
CONFIG_PARPORT_PC_CML1=y
CONFIG_PARPORT_PC_FIFO=y CONFIG_PARPORT_PC_FIFO=y
# CONFIG_PARPORT_PC_SUPERIO is not set # CONFIG_PARPORT_PC_SUPERIO is not set
# CONFIG_PARPORT_PC_PCMCIA is not set # CONFIG_PARPORT_PC_PCMCIA is not set
# CONFIG_PARPORT_ARC is not set # CONFIG_PARPORT_ARC is not set
# CONFIG_PARPORT_AMIGA is not set
# CONFIG_PARPORT_MFC3 is not set
# CONFIG_PARPORT_ATARI is not set
# CONFIG_PARPORT_SUNBPP is not set
# CONFIG_PARPORT_OTHER is not set # CONFIG_PARPORT_OTHER is not set
CONFIG_PARPORT_1284=y CONFIG_PARPORT_1284=y
# #
# Plug and Play configuration # Plug and Play support
# #
# CONFIG_PNP is not set # CONFIG_PNP is not set
# CONFIG_ISAPNP is not set
# #
# Block devices # Block devices
...@@ -166,9 +145,6 @@ CONFIG_PARPORT_1284=y ...@@ -166,9 +145,6 @@ CONFIG_PARPORT_1284=y
# CONFIG_BLK_DEV_FD is not set # CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_DEV_XD is not set # CONFIG_BLK_DEV_XD is not set
# CONFIG_PARIDE 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_LOOP is not set # CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM=y
...@@ -179,37 +155,29 @@ CONFIG_BLK_DEV_RAM_SIZE=4096 ...@@ -179,37 +155,29 @@ CONFIG_BLK_DEV_RAM_SIZE=4096
# Multi-device support (RAID and LVM) # Multi-device support (RAID and LVM)
# #
# CONFIG_MD is not set # CONFIG_MD is not set
# CONFIG_BLK_DEV_MD is not set
# CONFIG_MD_LINEAR is not set #
# CONFIG_MD_RAID0 is not set # Networking support
# CONFIG_MD_RAID1 is not set #
# CONFIG_MD_RAID5 is not set CONFIG_NET=y
# CONFIG_BLK_DEV_LVM is not set
# #
# Networking options # Networking options
# #
CONFIG_PACKET=y CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y CONFIG_PACKET_MMAP=y
CONFIG_NETLINK=y
CONFIG_RTNETLINK=y
# CONFIG_NETLINK_DEV is not set # CONFIG_NETLINK_DEV is not set
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
# CONFIG_FILTER is not set
CONFIG_UNIX=y CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y CONFIG_INET=y
CONFIG_IP_MULTICAST=y CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_RTNETLINK=y
CONFIG_NETLINK=y
CONFIG_IP_MULTIPLE_TABLES=y CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_FWMARK=y CONFIG_IP_ROUTE_FWMARK=y
CONFIG_IP_ROUTE_NAT=y CONFIG_IP_ROUTE_NAT=y
# CONFIG_IP_ROUTE_MULTIPATH is not set # CONFIG_IP_ROUTE_MULTIPATH is not set
# CONFIG_IP_ROUTE_TOS is not set # CONFIG_IP_ROUTE_TOS is not set
CONFIG_IP_ROUTE_VERBOSE=y CONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_ROUTE_LARGE_TABLES is not set
CONFIG_IP_PNP=y CONFIG_IP_PNP=y
# CONFIG_IP_PNP_DHCP is not set # CONFIG_IP_PNP_DHCP is not set
CONFIG_IP_PNP_BOOTP=y CONFIG_IP_PNP_BOOTP=y
...@@ -218,64 +186,113 @@ CONFIG_IP_PNP_BOOTP=y ...@@ -218,64 +186,113 @@ CONFIG_IP_PNP_BOOTP=y
# CONFIG_NET_IPGRE is not set # CONFIG_NET_IPGRE is not set
# CONFIG_IP_MROUTE is not set # CONFIG_IP_MROUTE is not set
# CONFIG_ARPD is not set # CONFIG_ARPD is not set
CONFIG_INET_ECN=y
CONFIG_SYN_COOKIES=y CONFIG_SYN_COOKIES=y
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
#
# IP: Virtual Server Configuration
#
# CONFIG_IP_VS is not set
CONFIG_IPV6=y
# CONFIG_IPV6_PRIVACY is not set
# CONFIG_INET6_AH is not set
# CONFIG_INET6_ESP is not set
# CONFIG_INET6_IPCOMP is not set
# CONFIG_IPV6_TUNNEL is not set
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
# #
# IP: Netfilter Configuration # IP: Netfilter Configuration
# #
CONFIG_IP_NF_CONNTRACK=y CONFIG_IP_NF_CONNTRACK=y
CONFIG_IP_NF_FTP=y CONFIG_IP_NF_FTP=y
CONFIG_IP_NF_IRC=y CONFIG_IP_NF_IRC=y
# CONFIG_IP_NF_TFTP is not set
# CONFIG_IP_NF_AMANDA is not set
# CONFIG_IP_NF_QUEUE is not set # CONFIG_IP_NF_QUEUE is not set
CONFIG_IP_NF_IPTABLES=y CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_LIMIT=y CONFIG_IP_NF_MATCH_LIMIT=y
# CONFIG_IP_NF_MATCH_MAC is not set CONFIG_IP_NF_MATCH_IPRANGE=y
CONFIG_IP_NF_MATCH_MAC=y
CONFIG_IP_NF_MATCH_PKTTYPE=y
CONFIG_IP_NF_MATCH_MARK=y CONFIG_IP_NF_MATCH_MARK=y
CONFIG_IP_NF_MATCH_MULTIPORT=y CONFIG_IP_NF_MATCH_MULTIPORT=y
CONFIG_IP_NF_MATCH_TOS=y CONFIG_IP_NF_MATCH_TOS=y
# CONFIG_IP_NF_MATCH_TCPMSS is not set CONFIG_IP_NF_MATCH_RECENT=y
CONFIG_IP_NF_MATCH_ECN=y
CONFIG_IP_NF_MATCH_DSCP=y
CONFIG_IP_NF_MATCH_AH_ESP=y
CONFIG_IP_NF_MATCH_LENGTH=y
CONFIG_IP_NF_MATCH_TTL=y
CONFIG_IP_NF_MATCH_TCPMSS=y
CONFIG_IP_NF_MATCH_HELPER=y
CONFIG_IP_NF_MATCH_STATE=y CONFIG_IP_NF_MATCH_STATE=y
CONFIG_IP_NF_MATCH_UNCLEAN=y CONFIG_IP_NF_MATCH_CONNTRACK=y
# CONFIG_IP_NF_MATCH_OWNER is not set # CONFIG_IP_NF_MATCH_OWNER is not set
CONFIG_IP_NF_FILTER=y CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y CONFIG_IP_NF_TARGET_REJECT=y
# CONFIG_IP_NF_TARGET_MIRROR is not set
CONFIG_IP_NF_NAT=y CONFIG_IP_NF_NAT=y
CONFIG_IP_NF_NAT_NEEDED=y CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y CONFIG_IP_NF_TARGET_MASQUERADE=y
CONFIG_IP_NF_TARGET_REDIRECT=y CONFIG_IP_NF_TARGET_REDIRECT=y
CONFIG_IP_NF_TARGET_NETMAP=y
CONFIG_IP_NF_TARGET_SAME=y
# CONFIG_IP_NF_NAT_LOCAL is not set
# CONFIG_IP_NF_NAT_SNMP_BASIC is not set
CONFIG_IP_NF_NAT_IRC=y CONFIG_IP_NF_NAT_IRC=y
CONFIG_IP_NF_NAT_FTP=y CONFIG_IP_NF_NAT_FTP=y
CONFIG_IP_NF_MANGLE=y CONFIG_IP_NF_MANGLE=y
CONFIG_IP_NF_TARGET_TOS=y CONFIG_IP_NF_TARGET_TOS=y
CONFIG_IP_NF_TARGET_ECN=y
CONFIG_IP_NF_TARGET_DSCP=y
CONFIG_IP_NF_TARGET_MARK=y CONFIG_IP_NF_TARGET_MARK=y
CONFIG_IP_NF_TARGET_CLASSIFY=y
CONFIG_IP_NF_TARGET_LOG=y CONFIG_IP_NF_TARGET_LOG=y
# CONFIG_IP_NF_TARGET_TCPMSS is not set # CONFIG_IP_NF_TARGET_ULOG is not set
CONFIG_IPV6=y CONFIG_IP_NF_TARGET_TCPMSS=y
# CONFIG_IP_NF_ARPTABLES is not set
# CONFIG_IP_NF_RAW is not set
# #
# IPv6: Netfilter Configuration # IPv6: Netfilter Configuration
# #
# CONFIG_IP6_NF_QUEUE is not set
CONFIG_IP6_NF_IPTABLES=y CONFIG_IP6_NF_IPTABLES=y
CONFIG_IP6_NF_MATCH_LIMIT=y CONFIG_IP6_NF_MATCH_LIMIT=y
CONFIG_IP6_NF_MATCH_MAC=y
CONFIG_IP6_NF_MATCH_RT=y
CONFIG_IP6_NF_MATCH_OPTS=y
CONFIG_IP6_NF_MATCH_FRAG=y
CONFIG_IP6_NF_MATCH_HL=y
CONFIG_IP6_NF_MATCH_MULTIPORT=y
# CONFIG_IP6_NF_MATCH_OWNER is not set
CONFIG_IP6_NF_MATCH_MARK=y CONFIG_IP6_NF_MATCH_MARK=y
# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set
CONFIG_IP6_NF_MATCH_AHESP=y
CONFIG_IP6_NF_MATCH_LENGTH=y
# CONFIG_IP6_NF_MATCH_EUI64 is not set
CONFIG_IP6_NF_FILTER=y CONFIG_IP6_NF_FILTER=y
# CONFIG_IP6_NF_TARGET_LOG is not set
CONFIG_IP6_NF_MANGLE=y CONFIG_IP6_NF_MANGLE=y
CONFIG_IP6_NF_TARGET_MARK=y CONFIG_IP6_NF_TARGET_MARK=y
# CONFIG_KHTTPD is not set # CONFIG_IP6_NF_RAW is not set
# CONFIG_ATM is not set
# #
# # 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_IPX is not set
# CONFIG_ATALK is not set # CONFIG_ATALK is not set
# CONFIG_DECNET is not set
# CONFIG_BRIDGE is not set
# CONFIG_X25 is not set # CONFIG_X25 is not set
# CONFIG_LAPB is not set # CONFIG_LAPB is not set
# CONFIG_LLC is not set
# CONFIG_NET_DIVERT is not set # CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set # CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set # CONFIG_WAN_ROUTER is not set
...@@ -288,25 +305,30 @@ CONFIG_IP6_NF_TARGET_MARK=y ...@@ -288,25 +305,30 @@ CONFIG_IP6_NF_TARGET_MARK=y
# CONFIG_NET_SCHED is not set # CONFIG_NET_SCHED is not set
# #
# Network device support # 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_NETDEVICES=y
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# #
# ARCnet devices # ARCnet devices
# #
# CONFIG_ARCNET is not set # CONFIG_ARCNET is not set
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_ETHERTAP is not set
# CONFIG_NET_SB1000 is not set
# #
# Ethernet (10 or 100Mbit) # Ethernet (10 or 100Mbit)
# #
CONFIG_NET_ETHERNET=y CONFIG_NET_ETHERNET=y
# CONFIG_MII is not set
CONFIG_ARM_AM79C961A=y CONFIG_ARM_AM79C961A=y
# CONFIG_NET_VENDOR_3COM is not set # CONFIG_NET_VENDOR_3COM is not set
# CONFIG_LANCE is not set # CONFIG_LANCE is not set
...@@ -322,40 +344,20 @@ CONFIG_ARM_AM79C961A=y ...@@ -322,40 +344,20 @@ CONFIG_ARM_AM79C961A=y
# #
# Ethernet (1000 Mbit) # Ethernet (1000 Mbit)
# #
# CONFIG_ACENIC is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
# CONFIG_SK98LIN is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
# CONFIG_PPP_FILTER is not set
CONFIG_PPP_ASYNC=m
# CONFIG_PPP_SYNC_TTY is not set
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
# CONFIG_PPPOE is not set
# CONFIG_SLIP is not set
# #
# Wireless LAN (non-hamradio) # Ethernet (10000 Mbit)
# #
# CONFIG_NET_RADIO is not set
# #
# Token Ring devices # Token Ring devices
# #
# CONFIG_TR is not set # CONFIG_TR is not set
# CONFIG_NET_FC is not set
# CONFIG_RCPCI is not set
# CONFIG_SHAPER is not set
# #
# Wan interfaces # Wireless LAN (non-hamradio)
# #
# CONFIG_WAN is not set # CONFIG_NET_RADIO is not set
# #
# PCMCIA network device support # PCMCIA network device support
...@@ -368,39 +370,42 @@ CONFIG_PCMCIA_PCNET=m ...@@ -368,39 +370,42 @@ CONFIG_PCMCIA_PCNET=m
# CONFIG_PCMCIA_NMCLAN is not set # CONFIG_PCMCIA_NMCLAN is not set
# CONFIG_PCMCIA_SMC91C92 is not set # CONFIG_PCMCIA_SMC91C92 is not set
# CONFIG_PCMCIA_XIRC2PS is not set # CONFIG_PCMCIA_XIRC2PS is not set
# CONFIG_ARCNET_COM20020_CS is not set # CONFIG_PCMCIA_AXNET is not set
# CONFIG_PCMCIA_IBMTR is not set
# CONFIG_NET_PCMCIA_RADIO is not set
# #
# Amateur Radio support # Wan interfaces
# #
# CONFIG_HAMRADIO is not set # CONFIG_WAN is not set
# CONFIG_PLIP is not set
CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
# CONFIG_PPP_FILTER is not set
CONFIG_PPP_ASYNC=m
# CONFIG_PPP_SYNC_TTY is not set
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
# CONFIG_PPPOE is not set
# CONFIG_SLIP is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set
# #
# IrDA (infrared) support # SCSI device support
# #
# CONFIG_IRDA is not set # CONFIG_SCSI is not set
# #
# ATA/IDE/MFM/RLL support # Fusion MPT device support
# #
# CONFIG_IDE is not set
# CONFIG_BLK_DEV_HD is not set
# #
# SCSI support # IEEE 1394 (FireWire) support
# #
# CONFIG_SCSI is not set # CONFIG_IEEE1394 is not set
# #
# I2O device support # I2O device support
# #
# CONFIG_I2O is not set
# CONFIG_I2O_BLOCK is not set
# CONFIG_I2O_LAN is not set
# CONFIG_I2O_SCSI is not set
# CONFIG_I2O_PROC is not set
# #
# ISDN subsystem # ISDN subsystem
...@@ -408,76 +413,80 @@ CONFIG_PCMCIA_PCNET=m ...@@ -408,76 +413,80 @@ CONFIG_PCMCIA_PCNET=m
# CONFIG_ISDN is not set # CONFIG_ISDN is not set
# #
# Input core support # Input device support
# #
# CONFIG_INPUT is not set # CONFIG_INPUT is not set
# #
# Character devices # Userland interfaces
# #
# CONFIG_VT is not set
CONFIG_SERIAL=y
CONFIG_SERIAL_CONSOLE=y
CONFIG_SERIAL_EXTENDED=y
# CONFIG_SERIAL_MANY_PORTS is not set
# CONFIG_SERIAL_SHARE_IRQ is not set
# CONFIG_SERIAL_DETECT_IRQ is not set
# CONFIG_SERIAL_MULTIPORT is not set
# CONFIG_HUB6 is not set
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_SERIAL_21285 is not set
# CONFIG_SERIAL_21285_OLD is not set
# CONFIG_SERIAL_21285_CONSOLE is not set
# CONFIG_SERIAL_SA1100 is not set
# CONFIG_SERIAL_SA1100_CONSOLE is not set
# CONFIG_SERIAL_AMBA is not set
# CONFIG_SERIAL_AMBA_CONSOLE is not set
# CONFIG_SERIAL_CLPS711X is not set
# CONFIG_SERIAL_CLPS711X_CONSOLE is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
CONFIG_PRINTER=m
# CONFIG_LP_CONSOLE is not set
# CONFIG_PPDEV is not set
# #
# I2C support # Input I/O drivers
# #
# CONFIG_I2C is not set # CONFIG_GAMEPORT is not set
CONFIG_SOUND_GAMEPORT=y
# CONFIG_SERIO is not set
# CONFIG_SERIO_I8042 is not set
# #
# Mice # Input Device Drivers
# #
# CONFIG_BUSMOUSE is not set
# CONFIG_MOUSE is not set
# #
# Joysticks # Character devices
# #
# CONFIG_JOYSTICK is not set # CONFIG_VT is not set
# CONFIG_SERIAL_NONSTANDARD is not set
# #
# Input core support is needed for joysticks # Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
CONFIG_SERIAL_8250_NR_UARTS=4
# CONFIG_SERIAL_8250_EXTENDED is not set
# #
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
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_QIC02_TAPE is not set # CONFIG_QIC02_TAPE is not set
#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set
# #
# Watchdog Cards # Watchdog Cards
# #
CONFIG_WATCHDOG=y CONFIG_WATCHDOG=y
# CONFIG_WATCHDOG_NOWAYOUT is not set # CONFIG_WATCHDOG_NOWAYOUT is not set
#
# Watchdog Device Drivers
#
CONFIG_SOFT_WATCHDOG=y CONFIG_SOFT_WATCHDOG=y
# CONFIG_WDT is not set
# CONFIG_WDTPCI is not set #
# ISA-based Watchdog Cards
#
# CONFIG_PCWATCHDOG is not set # CONFIG_PCWATCHDOG is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_ADVANTECH_WDT is not set
# CONFIG_60XX_WDT is not set
# CONFIG_MIXCOMWD is not set # CONFIG_MIXCOMWD is not set
# CONFIG_MACHZ_WDT is not set # CONFIG_WDT is not set
# CONFIG_INTEL_RNG is not set
# CONFIG_NVRAM is not set # CONFIG_NVRAM is not set
# CONFIG_RTC is not set # CONFIG_RTC is not set
# CONFIG_GEN_RTC is not set
# CONFIG_DTLK is not set # CONFIG_DTLK is not set
# CONFIG_R3964 is not set # CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set # CONFIG_APPLICOM is not set
...@@ -492,81 +501,97 @@ CONFIG_SOFT_WATCHDOG=y ...@@ -492,81 +501,97 @@ CONFIG_SOFT_WATCHDOG=y
# #
# PCMCIA character devices # PCMCIA character devices
# #
# CONFIG_PCMCIA_SERIAL_CS is not set # CONFIG_SYNCLINK_CS is not set
# CONFIG_RAW_DRIVER is not set
#
# I2C support
#
# CONFIG_I2C is not set
# #
# Multimedia devices # Multimedia devices
# #
# CONFIG_VIDEO_DEV is not set # CONFIG_VIDEO_DEV is not set
#
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set
# #
# File systems # File systems
# #
# CONFIG_EXT2_FS is not set
# CONFIG_EXT3_FS is not set
# CONFIG_JBD is not set
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
# CONFIG_XFS_FS is not set
CONFIG_MINIX_FS=y
# CONFIG_ROMFS_FS is not set
# CONFIG_QUOTA is not set # CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set # CONFIG_AUTOFS_FS is not set
CONFIG_AUTOFS4_FS=y CONFIG_AUTOFS4_FS=y
# CONFIG_REISERFS_FS is not set
# CONFIG_REISERFS_CHECK is not set #
# CD-ROM/DVD Filesystems
#
# CONFIG_ISO9660_FS is not set
# CONFIG_UDF_FS is not set
#
# DOS/FAT/NT Filesystems
#
# CONFIG_FAT_FS is not set
# CONFIG_NTFS_FS is not set
#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_SYSFS=y
# CONFIG_DEVFS_FS is not set
# CONFIG_DEVPTS_FS_XATTR is not set
# CONFIG_TMPFS is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y
#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set # CONFIG_ADFS_FS is not set
# CONFIG_ADFS_FS_RW is not set
# CONFIG_AFFS_FS is not set # CONFIG_AFFS_FS is not set
# CONFIG_HFS_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_BFS_FS is not set
# CONFIG_FAT_FS is not set
# CONFIG_MSDOS_FS is not set
# CONFIG_UMSDOS_FS is not set
# CONFIG_VFAT_FS is not set
# CONFIG_EFS_FS is not set # CONFIG_EFS_FS is not set
# CONFIG_JFFS_FS is not set
# CONFIG_JFFS2_FS is not set
# CONFIG_CRAMFS is not set # CONFIG_CRAMFS is not set
# CONFIG_TMPFS is not set
# CONFIG_RAMFS is not set
# CONFIG_ISO9660_FS is not set
# CONFIG_JOLIET is not set
CONFIG_MINIX_FS=y
# CONFIG_VXFS_FS is not set # CONFIG_VXFS_FS is not set
# CONFIG_NTFS_FS is not set
# CONFIG_NTFS_DEBUG is not set
# CONFIG_NTFS_RW is not set
# CONFIG_HPFS_FS is not set # CONFIG_HPFS_FS is not set
CONFIG_PROC_FS=y
# CONFIG_DEVFS_FS is not set
# CONFIG_DEVFS_MOUNT is not set
# CONFIG_DEVFS_DEBUG is not set
CONFIG_DEVPTS_FS=y
# CONFIG_QNX4FS_FS is not set # CONFIG_QNX4FS_FS is not set
# CONFIG_QNX4FS_RW is not set
# CONFIG_ROMFS_FS is not set
# CONFIG_EXT2_FS is not set
# CONFIG_SYSV_FS is not set # CONFIG_SYSV_FS is not set
# CONFIG_SYSV_FS_WRITE is not set
# CONFIG_UDF_FS is not set
# CONFIG_UDF_RW is not set
# CONFIG_UFS_FS is not set # CONFIG_UFS_FS is not set
# CONFIG_UFS_FS_WRITE is not set
# #
# Network File Systems # Network File Systems
# #
# CONFIG_CODA_FS is not set
CONFIG_NFS_FS=y CONFIG_NFS_FS=y
# CONFIG_NFS_V3 is not set CONFIG_NFS_V3=y
CONFIG_ROOT_NFS=y # CONFIG_NFS_V4 is not set
# CONFIG_NFS_DIRECTIO is not set
# CONFIG_NFSD is not set # CONFIG_NFSD is not set
# CONFIG_NFSD_V3 is not set CONFIG_ROOT_NFS=y
CONFIG_SUNRPC=y
CONFIG_LOCKD=y CONFIG_LOCKD=y
# CONFIG_EXPORTFS is not set
CONFIG_SUNRPC=y
# CONFIG_RPCSEC_GSS_KRB5 is not set
# CONFIG_SMB_FS is not set # CONFIG_SMB_FS is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set # CONFIG_NCP_FS is not set
# CONFIG_NCPFS_PACKET_SIGNING is not set # CONFIG_CODA_FS is not set
# CONFIG_NCPFS_IOCTL_LOCKING is not set # CONFIG_AFS_FS is not set
# CONFIG_NCPFS_STRONG is not set
# CONFIG_NCPFS_NFS_NS is not set
# CONFIG_NCPFS_OS2_NS is not set
# CONFIG_NCPFS_SMALLDOS is not set
# CONFIG_NCPFS_NLS is not set
# CONFIG_NCPFS_EXTRAS is not set
# #
# Partition Types # Partition Types
...@@ -578,26 +603,68 @@ CONFIG_PARTITION_ADVANCED=y ...@@ -578,26 +603,68 @@ CONFIG_PARTITION_ADVANCED=y
# CONFIG_ATARI_PARTITION is not set # CONFIG_ATARI_PARTITION is not set
# CONFIG_MAC_PARTITION is not set # CONFIG_MAC_PARTITION is not set
# CONFIG_MSDOS_PARTITION is not set # CONFIG_MSDOS_PARTITION is not set
# CONFIG_LDM_PARTITION is not set
# CONFIG_NEC98_PARTITION is not set
# CONFIG_SGI_PARTITION is not set # CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not set # CONFIG_ULTRIX_PARTITION is not set
# CONFIG_SUN_PARTITION is not set # CONFIG_SUN_PARTITION is not set
# CONFIG_SMB_NLS is not set # CONFIG_EFI_PARTITION is not set
#
# Native Language Support
#
# CONFIG_NLS is not set # CONFIG_NLS is not set
#
# Profiling support
#
# CONFIG_PROFILING is not set
#
# Graphics support
#
# CONFIG_FB is not set
#
# Sound
#
# CONFIG_SOUND is not set
#
# Misc devices
#
# #
# USB support # USB support
# #
# CONFIG_USB is not set
#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set
# #
# Kernel hacking # Kernel hacking
# #
CONFIG_FRAME_POINTER=y CONFIG_FRAME_POINTER=y
CONFIG_DEBUG_ERRORS=y
# CONFIG_DEBUG_USER is not set # CONFIG_DEBUG_USER is not set
# CONFIG_DEBUG_INFO is not set # CONFIG_DEBUG_INFO is not set
CONFIG_MAGIC_SYSRQ=y # CONFIG_DEBUG_KERNEL is not set
# CONFIG_NO_PGT_CACHE is not set
# CONFIG_DEBUG_LL is not set #
# CONFIG_DEBUG_DC21285_PORT is not set # Security options
# CONFIG_DEBUG_CLPS711X_UART2 is not set #
# CONFIG_SECURITY is not set
#
# Cryptographic options
#
# CONFIG_CRYPTO is not set
#
# Library routines
#
CONFIG_CRC32=y
# CONFIG_LIBCRC32C is not set
CONFIG_ZLIB_INFLATE=m
CONFIG_ZLIB_DEFLATE=m
...@@ -67,9 +67,9 @@ u8 __readb(void *addr) ...@@ -67,9 +67,9 @@ u8 __readb(void *addr)
u32 ret, a = __isamem_convert_addr(addr); u32 ret, a = __isamem_convert_addr(addr);
if ((int)addr & 1) if ((int)addr & 1)
ret = __raw_getl(a); ret = __raw_readl(a);
else else
ret = __raw_getb(a); ret = __raw_readb(a);
return ret; return ret;
} }
...@@ -80,7 +80,7 @@ u16 __readw(void *addr) ...@@ -80,7 +80,7 @@ u16 __readw(void *addr)
if ((int)addr & 1) if ((int)addr & 1)
BUG(); BUG();
return __raw_getw(a); return __raw_readw(a);
} }
u32 __readl(void *addr) u32 __readl(void *addr)
...@@ -90,8 +90,8 @@ u32 __readl(void *addr) ...@@ -90,8 +90,8 @@ u32 __readl(void *addr)
if ((int)addr & 3) if ((int)addr & 3)
BUG(); BUG();
ret = __raw_getw(a); ret = __raw_readw(a);
ret |= __raw_getw(a + 4) << 16; ret |= __raw_readw(a + 4) << 16;
return ret; return ret;
} }
...@@ -104,9 +104,9 @@ void __writeb(u8 val, void *addr) ...@@ -104,9 +104,9 @@ void __writeb(u8 val, void *addr)
u32 a = __isamem_convert_addr(addr); u32 a = __isamem_convert_addr(addr);
if ((int)addr & 1) if ((int)addr & 1)
__raw_putl(val, a); __raw_writel(val, a);
else else
__raw_putb(val, a); __raw_writeb(val, a);
} }
void __writew(u16 val, void *addr) void __writew(u16 val, void *addr)
...@@ -116,7 +116,7 @@ void __writew(u16 val, void *addr) ...@@ -116,7 +116,7 @@ void __writew(u16 val, void *addr)
if ((int)addr & 1) if ((int)addr & 1)
BUG(); BUG();
__raw_putw(val, a); __raw_writew(val, a);
} }
void __writel(u32 val, void *addr) void __writel(u32 val, void *addr)
...@@ -126,8 +126,8 @@ void __writel(u32 val, void *addr) ...@@ -126,8 +126,8 @@ void __writel(u32 val, void *addr)
if ((int)addr & 3) if ((int)addr & 3)
BUG(); BUG();
__raw_putw(val, a); __raw_writew(val, a);
__raw_putw(val >> 16, a + 4); __raw_writew(val >> 16, a + 4);
} }
EXPORT_SYMBOL(__writeb); EXPORT_SYMBOL(__writeb);
...@@ -147,7 +147,7 @@ u8 __inb(int port) ...@@ -147,7 +147,7 @@ u8 __inb(int port)
* The SuperIO registers use sane addressing techniques... * The SuperIO registers use sane addressing techniques...
*/ */
if (SUPERIO_PORT(port)) if (SUPERIO_PORT(port))
ret = __raw_getb(ISAIO_BASE + (port << 2)); ret = __raw_readb(ISAIO_BASE + (port << 2));
else { else {
u32 a = ISAIO_BASE + ((port & ~1) << 1); u32 a = ISAIO_BASE + ((port & ~1) << 1);
...@@ -155,9 +155,9 @@ u8 __inb(int port) ...@@ -155,9 +155,9 @@ u8 __inb(int port)
* Shame nothing else does * Shame nothing else does
*/ */
if (port & 1) if (port & 1)
ret = __raw_getl(a); ret = __raw_readl(a);
else else
ret = __raw_getb(a); ret = __raw_readb(a);
} }
return ret; return ret;
} }
...@@ -170,7 +170,7 @@ u16 __inw(int port) ...@@ -170,7 +170,7 @@ u16 __inw(int port)
* The SuperIO registers use sane addressing techniques... * The SuperIO registers use sane addressing techniques...
*/ */
if (SUPERIO_PORT(port)) if (SUPERIO_PORT(port))
ret = __raw_getw(ISAIO_BASE + (port << 2)); ret = __raw_readw(ISAIO_BASE + (port << 2));
else { else {
u32 a = ISAIO_BASE + ((port & ~1) << 1); u32 a = ISAIO_BASE + ((port & ~1) << 1);
...@@ -180,7 +180,7 @@ u16 __inw(int port) ...@@ -180,7 +180,7 @@ u16 __inw(int port)
if (port & 1) if (port & 1)
BUG(); BUG();
ret = __raw_getw(a); ret = __raw_readw(a);
} }
return ret; return ret;
} }
...@@ -201,7 +201,7 @@ void __outb(u8 val, int port) ...@@ -201,7 +201,7 @@ void __outb(u8 val, int port)
* The SuperIO registers use sane addressing techniques... * The SuperIO registers use sane addressing techniques...
*/ */
if (SUPERIO_PORT(port)) if (SUPERIO_PORT(port))
__raw_putb(val, ISAIO_BASE + (port << 2)); __raw_writeb(val, ISAIO_BASE + (port << 2));
else { else {
u32 a = ISAIO_BASE + ((port & ~1) << 1); u32 a = ISAIO_BASE + ((port & ~1) << 1);
...@@ -209,9 +209,9 @@ void __outb(u8 val, int port) ...@@ -209,9 +209,9 @@ void __outb(u8 val, int port)
* Shame nothing else does * Shame nothing else does
*/ */
if (port & 1) if (port & 1)
__raw_putl(val, a); __raw_writel(val, a);
else else
__raw_putb(val, a); __raw_writeb(val, a);
} }
} }
...@@ -230,7 +230,7 @@ void __outw(u16 val, int port) ...@@ -230,7 +230,7 @@ void __outw(u16 val, int port)
BUG(); BUG();
} }
__raw_putw(val, ISAIO_BASE + off); __raw_writew(val, ISAIO_BASE + off);
} }
void __outl(u32 val, int port) void __outl(u32 val, int port)
......
...@@ -53,25 +53,31 @@ static const char version[] = ...@@ -53,25 +53,31 @@ static const char version[] =
#ifdef __arm__ #ifdef __arm__
static void write_rreg(u_long base, u_int reg, u_int val) static void write_rreg(u_long base, u_int reg, u_int val)
{ {
__asm__("str%?h %1, [%2] @ NET_RAP __asm__(
str%?h %0, [%2, #-4] @ NET_RDP "str%?h %1, [%2] @ NET_RAP\n\t"
" : : "r" (val), "r" (reg), "r" (ISAIO_BASE + 0x0464)); "str%?h %0, [%2, #-4] @ NET_RDP"
:
: "r" (val), "r" (reg), "r" (ISAIO_BASE + 0x0464));
} }
static inline unsigned short read_rreg(u_long base_addr, u_int reg) static inline unsigned short read_rreg(u_long base_addr, u_int reg)
{ {
unsigned short v; unsigned short v;
__asm__("str%?h %1, [%2] @ NET_RAP __asm__(
ldr%?h %0, [%2, #-4] @ NET_RDP "str%?h %1, [%2] @ NET_RAP\n\t"
" : "=r" (v): "r" (reg), "r" (ISAIO_BASE + 0x0464)); "ldr%?h %0, [%2, #-4] @ NET_RDP"
: "=r" (v)
: "r" (reg), "r" (ISAIO_BASE + 0x0464));
return v; return v;
} }
static inline void write_ireg(u_long base, u_int reg, u_int val) static inline void write_ireg(u_long base, u_int reg, u_int val)
{ {
__asm__("str%?h %1, [%2] @ NET_RAP __asm__(
str%?h %0, [%2, #8] @ NET_IDP "str%?h %1, [%2] @ NET_RAP\n\t"
" : : "r" (val), "r" (reg), "r" (ISAIO_BASE + 0x0464)); "str%?h %0, [%2, #8] @ NET_IDP"
:
: "r" (val), "r" (reg), "r" (ISAIO_BASE + 0x0464));
} }
static inline unsigned short read_ireg(u_long base_addr, u_int reg) static inline unsigned short read_ireg(u_long base_addr, u_int reg)
...@@ -101,16 +107,16 @@ am_writebuffer(struct net_device *dev, u_int offset, unsigned char *buf, unsigne ...@@ -101,16 +107,16 @@ am_writebuffer(struct net_device *dev, u_int offset, unsigned char *buf, unsigne
} }
while (length > 8) { while (length > 8) {
unsigned int tmp, tmp2; unsigned int tmp, tmp2;
__asm__ __volatile__(" __asm__ __volatile__(
ldm%?ia %1!, {%2, %3} "ldm%?ia %1!, {%2, %3}\n\t"
str%?h %2, [%0], #4 "str%?h %2, [%0], #4\n\t"
mov%? %2, %2, lsr #16 "mov%? %2, %2, lsr #16\n\t"
str%?h %2, [%0], #4 "str%?h %2, [%0], #4\n\t"
str%?h %3, [%0], #4 "str%?h %3, [%0], #4\n\t"
mov%? %3, %3, lsr #16 "mov%? %3, %3, lsr #16\n\t"
str%?h %3, [%0], #4 "str%?h %3, [%0], #4"
" : "=&r" (offset), "=&r" (buf), "=r" (tmp), "=r" (tmp2) : "=&r" (offset), "=&r" (buf), "=r" (tmp), "=r" (tmp2)
: "0" (offset), "1" (buf)); : "0" (offset), "1" (buf));
length -= 8; length -= 8;
} }
while (length > 0) { while (length > 0) {
...@@ -128,36 +134,36 @@ am_readbuffer(struct net_device *dev, u_int offset, unsigned char *buf, unsigned ...@@ -128,36 +134,36 @@ am_readbuffer(struct net_device *dev, u_int offset, unsigned char *buf, unsigned
length = (length + 1) & ~1; length = (length + 1) & ~1;
if ((int)buf & 2) { if ((int)buf & 2) {
unsigned int tmp; unsigned int tmp;
__asm__ __volatile__(" __asm__ __volatile__(
ldr%?h %2, [%0], #4 "ldr%?h %2, [%0], #4\n\t"
str%?b %2, [%1], #1 "str%?b %2, [%1], #1\n\t"
mov%? %2, %2, lsr #8 "mov%? %2, %2, lsr #8\n\t"
str%?b %2, [%1], #1 "str%?b %2, [%1], #1"
" : "=&r" (offset), "=&r" (buf), "=r" (tmp): "0" (offset), "1" (buf)); : "=&r" (offset), "=&r" (buf), "=r" (tmp): "0" (offset), "1" (buf));
length -= 2; length -= 2;
} }
while (length > 8) { while (length > 8) {
unsigned int tmp, tmp2, tmp3; unsigned int tmp, tmp2, tmp3;
__asm__ __volatile__(" __asm__ __volatile__(
ldr%?h %2, [%0], #4 "ldr%?h %2, [%0], #4\n\t"
ldr%?h %3, [%0], #4 "ldr%?h %3, [%0], #4\n\t"
orr%? %2, %2, %3, lsl #16 "orr%? %2, %2, %3, lsl #16\n\t"
ldr%?h %3, [%0], #4 "ldr%?h %3, [%0], #4\n\t"
ldr%?h %4, [%0], #4 "ldr%?h %4, [%0], #4\n\t"
orr%? %3, %3, %4, lsl #16 "orr%? %3, %3, %4, lsl #16\n\t"
stm%?ia %1!, {%2, %3} "stm%?ia %1!, {%2, %3}"
" : "=&r" (offset), "=&r" (buf), "=r" (tmp), "=r" (tmp2), "=r" (tmp3) : "=&r" (offset), "=&r" (buf), "=r" (tmp), "=r" (tmp2), "=r" (tmp3)
: "0" (offset), "1" (buf)); : "0" (offset), "1" (buf));
length -= 8; length -= 8;
} }
while (length > 0) { while (length > 0) {
unsigned int tmp; unsigned int tmp;
__asm__ __volatile__(" __asm__ __volatile__(
ldr%?h %2, [%0], #4 "ldr%?h %2, [%0], #4\n\t"
str%?b %2, [%1], #1 "str%?b %2, [%1], #1\n\t"
mov%? %2, %2, lsr #8 "mov%? %2, %2, lsr #8\n\t"
str%?b %2, [%1], #1 "str%?b %2, [%1], #1"
" : "=&r" (offset), "=&r" (buf), "=r" (tmp) : "0" (offset), "1" (buf)); : "=&r" (offset), "=&r" (buf), "=r" (tmp) : "0" (offset), "1" (buf));
length -= 2; length -= 2;
} }
} }
...@@ -618,6 +624,7 @@ am79c961_interrupt(int irq, void *dev_id, struct pt_regs *regs) ...@@ -618,6 +624,7 @@ am79c961_interrupt(int irq, void *dev_id, struct pt_regs *regs)
if (status & CSR0_CERR) { if (status & CSR0_CERR) {
handled = 1; handled = 1;
mod_timer(&priv->timer, jiffies); mod_timer(&priv->timer, jiffies);
}
} while (--n && status & (CSR0_RINT | CSR0_TINT)); } while (--n && status & (CSR0_RINT | CSR0_TINT));
return IRQ_RETVAL(handled); return IRQ_RETVAL(handled);
......
...@@ -50,7 +50,7 @@ void __writel(u32 val, void *addr); ...@@ -50,7 +50,7 @@ void __writel(u32 val, void *addr);
#define writew(v,b) __writew(v,b) #define writew(v,b) __writew(v,b)
#define writel(v,b) __writel(v,b) #define writel(v,b) __writel(v,b)
#define __arch_ioremap(cookie,sz,c) ((void *)(cookie)) #define __arch_ioremap(cookie,sz,c,a) ((void *)(cookie))
#define __arch_iounmap(cookie) do { } while (0) #define __arch_iounmap(cookie) do { } while (0)
#endif #endif
...@@ -25,13 +25,13 @@ static inline void arch_idle(void) ...@@ -25,13 +25,13 @@ static inline void arch_idle(void)
const char *irq_stat = (char *)0xff000000; const char *irq_stat = (char *)0xff000000;
/* disable clock switching */ /* disable clock switching */
asm volatile ("mcr%? p15, 0, ip, c15, c2, 2"); asm volatile ("mcr p15, 0, ip, c15, c2, 2" : : : "cc");
/* wait for an interrupt to occur */ /* wait for an interrupt to occur */
while (!*irq_stat); while (!*irq_stat);
/* enable clock switching */ /* enable clock switching */
asm volatile ("mcr%? p15, 0, ip, c15, c1, 2"); asm volatile ("mcr p15, 0, ip, c15, c1, 2" : : : "cc");
} }
#define arch_reset(mode) cpu_reset(0x80000000) #define arch_reset(mode) cpu_reset(0x80000000)
......
...@@ -15,5 +15,5 @@ ...@@ -15,5 +15,5 @@
* This is therefore not used to calculate the * This is therefore not used to calculate the
* divisor. * divisor.
*/ */
//#define CLOCK_TICK_RATE 2000000 #define CLOCK_TICK_RATE 47894000
...@@ -13,26 +13,26 @@ ...@@ -13,26 +13,26 @@
*/ */
static void puts(const char *s) static void puts(const char *s)
{ {
__asm__ __volatile__(" __asm__ __volatile__(
ldrb %0, [%2], #1 "ldrb %0, [%2], #1\n"
teq %0, #0 " teq %0, #0\n"
beq 3f " beq 3f\n"
1: strb %0, [%3] "1: strb %0, [%3]\n"
2: ldrb %1, [%3, #0x14] "2: ldrb %1, [%3, #0x14]\n"
and %1, %1, #0x60 " and %1, %1, #0x60\n"
teq %1, #0x60 " teq %1, #0x60\n"
bne 2b " bne 2b\n"
teq %0, #'\n' " teq %0, #'\n'\n"
moveq %0, #'\r' " moveq %0, #'\r'\n"
beq 1b " beq 1b\n"
ldrb %0, [%2], #1 " ldrb %0, [%2], #1\n"
teq %0, #0 " teq %0, #0\n"
bne 1b " bne 1b\n"
3: ldrb %1, [%3, #0x14] "3: ldrb %1, [%3, #0x14]\n"
and %1, %1, #0x60 " and %1, %1, #0x60\n"
teq %1, #0x60 " teq %1, #0x60\n"
bne 3b " bne 3b"
" : : "r" (0), "r" (0), "r" (s), "r" (0xf0000be0) : "cc"); : : "r" (0), "r" (0), "r" (s), "r" (0xf0000be0) : "cc");
} }
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment