remove the brcm-2.4 target, it will no longer be supported in future releases. please...
authorFelix Fietkau <nbd@openwrt.org>
Sat, 26 Jun 2010 20:41:59 +0000 (20:41 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Sat, 26 Jun 2010 20:41:59 +0000 (20:41 +0000)
SVN-Revision: 21946

110 files changed:
target/linux/brcm-2.4/Makefile [deleted file]
target/linux/brcm-2.4/base-files.mk [deleted file]
target/linux/brcm-2.4/base-files/etc/diag.sh [deleted file]
target/linux/brcm-2.4/base-files/etc/init.d/netconfig [deleted file]
target/linux/brcm-2.4/base-files/etc/init.d/wmacfixup [deleted file]
target/linux/brcm-2.4/base-files/lib/preinit/03_init_hotplug_failsafe_brcm [deleted file]
target/linux/brcm-2.4/base-files/lib/preinit/05_init_interfaces_brcm [deleted file]
target/linux/brcm-2.4/base-files/lib/preinit/05_set_failsafe_switch_brcm [deleted file]
target/linux/brcm-2.4/base-files/lib/preinit/15_mount_proc_brcm [deleted file]
target/linux/brcm-2.4/base-files/lib/preinit/15_set_preinit_interface_brcm [deleted file]
target/linux/brcm-2.4/base-files/lib/preinit/20_failsafe_net_echo_brcm [deleted file]
target/linux/brcm-2.4/base-files/lib/preinit/20_failsafe_set_boot_wait_brcm [deleted file]
target/linux/brcm-2.4/base-files/lib/upgrade/platform.sh [deleted file]
target/linux/brcm-2.4/base-files/sbin/hotplug.failsafe [deleted file]
target/linux/brcm-2.4/config-default [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/Makefile [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/bcmsrom.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/cfe_env.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/export.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/Makefile [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/int-handler.S [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/irq.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/gpio.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/hndchipc.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/hndpmu.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcm4710.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdefs.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdevs.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdevs1.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmendian.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmnvram.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmsrom.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmutils.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndchipc.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndcpu.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndmips.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndpci.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndpmu.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/linux_gpio.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/linuxver.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/mipsinc.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/osl.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/pcicfg.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbchipc.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbconfig.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbextif.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbhndmips.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbmemc.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbpci.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbpcie.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbpcmcia.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbsdram.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbsocram.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbsprom.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sbutils.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/sflash.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/trxhdr.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/typedefs.h [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/nvram.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/pcibios.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/prom.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/sbmips.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/sbpci.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/sbutils.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/setup.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/sflash.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/time.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/utils.c [deleted file]
target/linux/brcm-2.4/files/arch/mips/bcm947xx/utils.h [deleted file]
target/linux/brcm-2.4/files/drivers/mtd/devices/sflash.c [deleted file]
target/linux/brcm-2.4/files/drivers/mtd/maps/bcm947xx-flash.c [deleted file]
target/linux/brcm-2.4/files/drivers/parport/parport_splink.c [deleted file]
target/linux/brcm-2.4/image/Makefile [deleted file]
target/linux/brcm-2.4/image/lzma-loader/Makefile [deleted file]
target/linux/brcm-2.4/image/lzma-loader/src/LzmaDecode.c [deleted file]
target/linux/brcm-2.4/image/lzma-loader/src/LzmaDecode.h [deleted file]
target/linux/brcm-2.4/image/lzma-loader/src/Makefile [deleted file]
target/linux/brcm-2.4/image/lzma-loader/src/README [deleted file]
target/linux/brcm-2.4/image/lzma-loader/src/decompress.c [deleted file]
target/linux/brcm-2.4/image/lzma-loader/src/decompress.lds.in [deleted file]
target/linux/brcm-2.4/image/lzma-loader/src/head.S [deleted file]
target/linux/brcm-2.4/image/lzma-loader/src/loader.lds.in [deleted file]
target/linux/brcm-2.4/patches/001-bcm47xx.patch [deleted file]
target/linux/brcm-2.4/patches/003-bcm47xx_cache_fixes.patch [deleted file]
target/linux/brcm-2.4/patches/004-flash.patch [deleted file]
target/linux/brcm-2.4/patches/005-bluetooth_sco_buffer_align.patch [deleted file]
target/linux/brcm-2.4/patches/006-ide_workaround.patch [deleted file]
target/linux/brcm-2.4/patches/008-b44_bcm47xx_support.patch [deleted file]
target/linux/brcm-2.4/patches/009-wrt54g3g_pcmcia.patch [deleted file]
target/linux/brcm-2.4/patches/010-bcm47xx-cam_absent.patch [deleted file]
target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch [deleted file]
target/linux/brcm-2.4/patches/012-aec62xx.patch [deleted file]
target/linux/brcm-2.4/patches/013-wl_hdd_pdc202xx.patch [deleted file]
target/linux/brcm-2.4/patches/014-sierra_support.patch [deleted file]
target/linux/brcm-2.4/patches/015-sierra_kconfig.patch [deleted file]
target/linux/brcm-2.4/patches/016-fuse-ntfs-3g-mips.patch [deleted file]
target/linux/brcm-2.4/patches/100-wl_config.patch [deleted file]
target/linux/brcm-2.4/patches/110-b44_alignment.patch [deleted file]
target/linux/brcm-2.4/patches/200-fix_ipv6_receiving_with_ipv4_socket.patch [deleted file]
target/linux/brcm-2.4/profiles/100-Broadcom.mk [deleted file]
target/linux/brcm-2.4/profiles/110-BroadcomMimo.mk [deleted file]
target/linux/brcm-2.4/profiles/130-None.mk [deleted file]
target/linux/brcm-2.4/profiles/USBGeneric.mk [deleted file]
target/linux/brcm-2.4/profiles/WL500G.mk [deleted file]
target/linux/brcm-2.4/profiles/WL500GD.mk [deleted file]
target/linux/brcm-2.4/profiles/WL500GP.mk [deleted file]
target/linux/brcm-2.4/profiles/WL700GE.mk [deleted file]
target/linux/brcm-2.4/profiles/WLHDD.mk [deleted file]
target/linux/brcm-2.4/profiles/WRT300Nv11.mk [deleted file]
target/linux/brcm-2.4/profiles/WRT54G3G.mk [deleted file]

diff --git a/target/linux/brcm-2.4/Makefile b/target/linux/brcm-2.4/Makefile
deleted file mode 100644 (file)
index 0050562..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-# 
-# Copyright (C) 2006 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-include $(TOPDIR)/rules.mk
-
-ARCH:=mipsel
-BOARD:=brcm-2.4
-BOARDNAME:=Broadcom BCM947xx/953xx [2.4]
-FEATURES:=squashfs
-
-KERNEL:=2.4
-
-include $(INCLUDE_DIR)/target.mk
-
-DEFAULT_PACKAGES += kmod-switch kmod-diag nvram 
-
-define Target/Description
-       Build firmware images for Broadcom based routers
-       (e.g. Linksys WRT54G(S), Asus WL-500g, Motorola WR850G)
-endef
-
-$(eval $(call BuildTarget))
diff --git a/target/linux/brcm-2.4/base-files.mk b/target/linux/brcm-2.4/base-files.mk
deleted file mode 100644 (file)
index d6682bd..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-define Package/base-files/install-target
-       rm -f $(1)/etc/config/network
-endef
-
-
diff --git a/target/linux/brcm-2.4/base-files/etc/diag.sh b/target/linux/brcm-2.4/base-files/etc/diag.sh
deleted file mode 100644 (file)
index 3b08554..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2006 OpenWrt.org
-
-set_led() {
-       local led="$1"
-       local state="$2"
-       [ -f "/proc/diag/led/$1" ] && echo "$state" > "/proc/diag/led/$1"
-}
-
-set_state() {
-       case "$1" in
-               preinit)
-                       set_led dmz 1
-                       set_led diag 1
-                       set_led power 0
-               ;;
-               failsafe)
-                       set_led diag f
-                       set_led power f
-                       set_led dmz f
-               ;;
-               done)
-                       set_led dmz 0
-                       set_led diag 0
-                       set_led power 1
-               ;;
-       esac
-}
diff --git a/target/linux/brcm-2.4/base-files/etc/init.d/netconfig b/target/linux/brcm-2.4/base-files/etc/init.d/netconfig
deleted file mode 100755 (executable)
index d7839b6..0000000
+++ /dev/null
@@ -1,248 +0,0 @@
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2006 OpenWrt.org
-
-START=05
-
-start() {
-       [ -e /etc/config/network ] && {
-               local batch
-
-               config_cb() {
-                       case "$1" in
-                       switch)
-                               option_cb() {
-                                       case "$1" in
-                                       vlan[0-9]|vlan1[0-5])
-                                               local id="${1#vlan}"
-                                               local ports="${2%\*}"
-                                               append batch "delete network.eth0.${1}${N}"
-                                               append batch "set network.eth0_${id}=switch_vlan${N}"
-                                               append batch "set network.eth0_${id}.device=eth0${N}"
-                                               append batch "set network.eth0_${id}.vlan=${id}${N}"
-                                               append batch "set network.eth0_${id}.ports='${ports}'${N}"
-                                       ;;
-                                       esac
-                               }
-                       ;;
-                       switch_vlan)
-                               option_cb() { :; }
-                               batch=""
-                       ;;
-                       esac
-               }
-
-               config_load network
-
-               [ -n "$batch" ] && {
-                       logger -t netconfig "migrating switch config to new format ..."
-                       echo "$batch${N}commit network" | uci batch
-               }
-
-               exit 0
-       }
-
-       mkdir -p /etc/config
-
-       (
-               if grep -E 'mtd0: 000(6|a)0000' /proc/mtd 2>&- >&-; then
-                       # WGT634u
-                       echo boardtype=wgt634u
-               else
-                       strings "$(find_mtd_part nvram)"
-               fi
-       ) | awk '
-       function p(cfgname, name) {
-               if (c[name] != "") print "      option " cfgname "      \"" c[name] "\""
-       }
-
-       function vlan(id, name) {
-               if (c[name] != "") {
-                       print "config switch_vlan eth0_" id
-                       print " option device   \"eth0\""
-                       print " option vlan     " id
-                       print " option ports    \"" c[name] "\""
-                       print ""
-               }
-       }
-
-       function macinc(mac, maca, i, result) {
-               split(mac, maca, ":")
-               for (i = 1; i <= 6; i++) maca[i] = "0x" maca[i]
-               if (++maca[6] > 0xff) {
-                       maca[5]++
-                       maca[6] = 0
-               }
-               for (i = 1; i <= 6; i++) {
-                       if (i != 1) result = result ":"
-                       result = result sprintf("%02x", maca[i])
-               }
-               return result
-       }
-
-       BEGIN {
-               FS="="
-               c["lan_ifname"]="eth0.0"
-               c["wan_ifname"]="eth0.1"
-               c["vlan0ports"]="1 2 3 4 5"
-               c["vlan1ports"]="0 5"
-               getline < "/proc/diag/model"
-               model=$0
-               for (i = 0; i < 6; i++) {
-                       if (mac_check != "") mac_check = mac_check ":"
-                       mac_check = mac_check "[0-9a-fA-F][0-9a-fA-F]"
-               }
-       }
-
-       ($1 == "boardnum") || ($1 == "boardtype") || ($1 == "boardflags") || ($1 ~ /macaddr/) {
-               nvram[$1] = $2
-       }
-
-       END {
-               if ((model == "ASUS WL-HDD") || (model == "ASUS WL-300g") || (model == "Linksys WAP54G V1")) {
-                       c["wan_ifname"] = ""
-                       c["lan_ifname"] = "eth1"
-               }
-               if (model == "ASUS WL-330gE") {
-                       c["wan_ifname"] = ""
-                       c["lan_ifname"] = "eth0"
-                       c["vlan0ports"] = ""
-                       c["vlan1ports"] = ""
-               }
-               if ((model == "ASUS WL-500g") || (model == "Microsoft MN-700")) {
-                       c["wan_ifname"] = "eth1"
-                       c["lan_ifname"] = "eth0"
-               }
-               if ((model == "ASUS WL-500g Premium V2") || (model == "Dell TrueMobile 2300 v2") || (model == "Buffalo WHR-G125")) {
-                       c["vlan0ports"] = "0 1 2 3 5"
-                       c["vlan1ports"] = "4 5"
-               }
-               if (model == "Dell TrueMobile 2300") {
-                       c["lan_ifname"] = "eth0"
-                       c["wan_ifname"] = "eth1"
-                       c["vlan0ports"] = "0 1 2 3 4 5u"
-                       c["vlan1ports"] = ""
-               }
-               if (nvram["boardtype"] == "bcm94710r4") {
-                       # Toshiba WRC-1000
-                       c["lan_ifname"] = "eth0"
-                       c["wan_ifname"] = "eth1"
-               }
-               if ((nvram["boardtype"] == "wgt634u") || (nvram["boardtype"] == "0x0467")) {
-                       c["vlan0ports"] = "0 1 2 3 5"
-                       c["vlan1ports"] = "4 5"
-               }
-               if ((nvram["boardtype"] == "0x042f") || (nvram["boardtype"] == "0x0472")) {
-                       if (nvram["boardnum"] == "45") {
-                               # WL-500gP
-                               c["vlan0ports"] = "1 2 3 4 5"
-                               c["vlan1ports"] = "0 5"
-                       } else {
-                               # Generic BCM94704
-                               c["vlan0ports"] = "0 1 2 3 4 5u"
-                               c["vlan1ports"] = ""
-                               c["lan_ifname"] = "eth0"
-                               c["wan_ifname"] = "eth1"
-
-                               # MAC addresses on 4704 tend to be screwed up. Add a workaround here
-                               if (nvram["et0macaddr"] ~ mac_check) {
-                                       c["lan_macaddr"] = nvram["et0macaddr"]
-                                       c["wan_macaddr"] = macinc(c["lan_macaddr"])
-                               }
-                       }
-               }
-               # Buffalo WBR-B11 and Buffalo WBR-G54
-               if (nvram["boardtype"] == "bcm94710ap") {
-                       c["vlan0ports"] = "0 1 2 3 4 5u"
-                       c["vlan1ports"] = ""
-                       c["lan_ifname"] = "eth0"
-                       c["wan_ifname"] = "eth1"
-               }
-               # generic broadcom 4705/4785 processor with 5397 switch?
-               #  EXCEPT Linksys WRT300N V1.1
-               if ((nvram["boardtype"] == "0x478") && \
-                   (model != "Linksys WRT300N V1.1")) {
-                       c["vlan0ports"] = "1 2 3 4 8*"
-                       c["vlan1ports"] = "0 8"
-               }
-
-               # WAP54G
-               if ((nvram["boardnum"] == "2") || \
-                       (nvram["boardnum"] == "1024")) {
-                       c["lan_ifname"]="eth0"
-                       c["wan_ifname"]=""
-               }
-
-               # Sitecom WL-105b
-               if ((nvram["boardum"] == "2") && \
-                       (nvram["GemtekPmonVer"] == "1")) {
-                       c["lan_ifname"]="eth0"
-                       c["wan_ifname"]=""
-               }
-
-               # ASUS WL-700gE
-               # These are actually same as defaults above. For some reason this script applies
-               # Generic BCM94704 settings instead so we revert to proper settings here.
-               # Hopefully someone will fix this properly soon.
-               if (model == "ASUS WL-700gE") {
-                       c["lan_ifname"]="eth0.0"
-                       c["wan_ifname"]="eth0.1"
-                       c["vlan0ports"]="1 2 3 4 5"
-                       c["vlan1ports"]="0 5"
-               }
-
-               if (model == "Motorola WR850G V2/V3") {
-                       c["vlan0ports"]="0 1 2 3 5"
-                       c["vlan1ports"]="4 5"
-               }
-               if (model == "ASUS WL-500W") {
-                       c["lan_ifname"] = "eth0"
-                       c["wan_ifname"] = "eth1"
-                       c["vlan0ports"] = "0 1 2 3 4 5u"
-                       c["vlan1ports"] = ""
-               }
-               if (model == "OvisLink WL-1600GL") {
-                       c["lan_ifname"] = "eth0.0"
-                       c["wan_ifname"] = "eth0.1"
-                       c["vlan0ports"] = "0 1 2 3 5"
-                       c["vlan1ports"] = "4 5"
-               }
-
-               if (c["vlan0ports"] || c["vlan1ports"]) {
-                       print "#### VLAN configuration "
-                       print "config switch eth0"
-                       print " option enable   1"
-                       print ""                
-                       vlan(0, "vlan0ports")
-                       vlan(1, "vlan1ports")
-               }
-               print "#### Loopback configuration"
-               print "config interface loopback"
-               print " option ifname   \"lo\""
-               print " option proto    static"
-               print " option ipaddr   127.0.0.1"
-               print " option netmask  255.0.0.0"
-               print ""
-               print ""
-               print "#### LAN configuration"
-               print "config interface lan"
-               print " option type     bridge"
-               p("ifname", "lan_ifname")
-               p("macaddr", "lan_macaddr")
-               print " option proto    static"
-               print " option ipaddr   192.168.1.1"
-               print " option netmask  255.255.255.0"
-               print ""
-               print ""
-               if (c["wan_ifname"]) {
-                       print "#### WAN configuration"
-                       print "config interface wan"
-                       p("ifname", "wan_ifname")
-                       p("macaddr", "wan_macaddr")
-                       print " option proto    dhcp"
-               } else {
-                       print "#### WAN configuration (disabled)"
-                       print "#config interface wan"
-                       print "#        option proto    dhcp"
-               }
-       }' > /etc/config/network
-}
diff --git a/target/linux/brcm-2.4/base-files/etc/init.d/wmacfixup b/target/linux/brcm-2.4/base-files/etc/init.d/wmacfixup
deleted file mode 100755 (executable)
index ee1b752..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2010 OpenWrt.org
-
-START=41
-
-boot() {
-       [ -d /sys/class/ieee80211 ] || exit
-
-       commit=0
-
-       fixup_wmac() {
-               local cfg="$1"
-               local cfmac
-
-               config_get cfmac "$cfg" macaddr
-
-               [ "$cfmac" != "00:90:4c:5f:00:2a" ] || {
-                       local nvmac="$(nvram get il0macaddr 2>/dev/null)"
-                       [ -n "$nvmac" ] && [ "$nvmac != "$cfmac ] && {
-                               uci set wireless.$cfg.macaddr="$nvmac"
-                               commit=1
-                       }
-               }
-       }
-
-       config_load wireless
-       config_foreach fixup_wmac wifi-device
-
-       [ "$commit" = 1 ] && uci commit wireless
-}
-
-start() { :; }
-stop()  { :; }
diff --git a/target/linux/brcm-2.4/base-files/lib/preinit/03_init_hotplug_failsafe_brcm b/target/linux/brcm-2.4/base-files/lib/preinit/03_init_hotplug_failsafe_brcm
deleted file mode 100644 (file)
index b0f4a4e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-init_hotplug_failsafe() {
-       echo '/sbin/hotplug.failsafe' > /proc/sys/kernel/hotplug
-}
-
-boot_hook_add preinit_main init_hotplug_failsafe
-
-
diff --git a/target/linux/brcm-2.4/base-files/lib/preinit/05_init_interfaces_brcm b/target/linux/brcm-2.4/base-files/lib/preinit/05_init_interfaces_brcm
deleted file mode 100644 (file)
index 3cd760e..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/sh
-
-set_preinit_iface() {
-       ifname=eth0
-
-       insmod diag
-
-       # hardware specific overrides
-       case "$(cat /proc/diag/model)" in
-               "Linksys WAP54G V1") ifname=eth1;;
-               "ASUS WL-HDD") ifname=eth1;;
-               "ASUS WL-300g") ifname=eth1;;
-               "ASUS (unknown, BCM4702)") ifname=eth1;;
-               "Sitecom WL-105b") ifname=eth1;;
-       esac
-       ifconfig $ifname 0.0.0.0 up
-}
-
-check_module () {
-  module="$1"; shift; params="$*"
-
-  insmod "$module" "$params"
-  sleep 1
-  grep "^$module" /proc/modules
-  return $?
-}
-
-init_iface() {
-       check_module tg3
-       insmod switch-core
-       check_module switch-robo || check_module switch-adm  || { 
-         check_module bcm57xx activate_gpio=0x4 && cpu_port="8u*"
-       } || rmmod switch-core
-}
-
-boot_hook_add preinit_main set_preinit_iface
-boot_hook_add preinit_main init_iface
diff --git a/target/linux/brcm-2.4/base-files/lib/preinit/05_set_failsafe_switch_brcm b/target/linux/brcm-2.4/base-files/lib/preinit/05_set_failsafe_switch_brcm
deleted file mode 100644 (file)
index a93559f..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-failsafe_ip() {
-       [ -d /proc/switch/eth0 ] && [ "$ifname" = "eth0" ] && {
-               ifconfig eth0 0.0.0.0 down
-               echo "0 1 2 3 4 ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
-       }
-       
-       [ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
-               ifconfig $pi_ifname $pi_ip netmask $pi_netmask broadcast $pi_broadcast up
-        }
-}
-
-boot_hook_add failsafe failsafe_ip
-
diff --git a/target/linux/brcm-2.4/base-files/lib/preinit/15_mount_proc_brcm b/target/linux/brcm-2.4/base-files/lib/preinit/15_mount_proc_brcm
deleted file mode 100644 (file)
index fd5add1..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-do_mount_procfs() {
-       mount none /proc -t proc
-}
-
diff --git a/target/linux/brcm-2.4/base-files/lib/preinit/15_set_preinit_interface_brcm b/target/linux/brcm-2.4/base-files/lib/preinit/15_set_preinit_interface_brcm
deleted file mode 100644 (file)
index fdc7c71..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/sh
-
-port_net_echo() {
-       [ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
-               if [ "$pi_preinit_net_messages" = "y" ] || [ "$pi_failsafe_net_message" = "true" ] && [ "$pi_preinit_no_failsafe_netmsg" != "y" ]; then 
-                       netmsg $pi_broadcast "$1"
-               fi
-       }
-}
-
-preinit_ip_deconfig() {
-       if [ -z "$pi_ifname" ]; then
-               ifconfig $ifname 0.0.0.0 down
-       else
-               grep -q "$pi_ifname" /proc/net/dev && {
-                       ifconfig $pi_ifname 0.0.0.0 down
-               }
-       fi
-}
-
-preinit_net_echo() {
-       preinit_ip
-       
-       [ -d /proc/switch/eth0 ] && [ "$pi_ifname" = "eth0" ] && {
-               echo 1 > /proc/switch/eth0/reset
-
-               # this would be easier if we blasted the message across all ports
-               # but we don't want packets leaking across interfaces
-               for port in $(seq 0 4); do {
-                       echo "$port ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
-                       port_net_echo $1
-               }; done
-               
-               echo "0 ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
-               
-       } || port_net_echo $1
-}
-
-
diff --git a/target/linux/brcm-2.4/base-files/lib/preinit/20_failsafe_net_echo_brcm b/target/linux/brcm-2.4/base-files/lib/preinit/20_failsafe_net_echo_brcm
deleted file mode 100644 (file)
index f030cb2..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-indicate_failsafe() {
-       preinit_net_echo() {
-               port_net_echo $1
-       }
-       echo "- failsafe -"
-       preinit_net_echo "Entering Failsafe!\n"
-       indicate_failsafe_led
-}
-
-
diff --git a/target/linux/brcm-2.4/base-files/lib/preinit/20_failsafe_set_boot_wait_brcm b/target/linux/brcm-2.4/base-files/lib/preinit/20_failsafe_set_boot_wait_brcm
deleted file mode 100644 (file)
index da721b8..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-
-. /etc/functions.sh
-
-set_boot_wait() {
-       [ -x "/usr/sbin/nvram" ] && {
-               [ "$(nvram get boot_wait)" != "on" ] && {
-                       nvram set boot_wait=on
-                       nvram commit
-               }
-       }
-}
-
-boot_hook_add failsafe set_boot_wait
diff --git a/target/linux/brcm-2.4/base-files/lib/upgrade/platform.sh b/target/linux/brcm-2.4/base-files/lib/upgrade/platform.sh
deleted file mode 100644 (file)
index 9921cf5..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-PART_NAME=linux
-
-platform_check_image() {
-       [ "$ARGC" -gt 1 ] && return 1
-
-       case "$(get_magic_word "$1")" in
-               # .trx files
-               4844) return 0;;
-               *)
-                       echo "Invalid image type. Please use only .trx files"
-                       return 1
-               ;;
-       esac
-}
-
-# use default for platform_do_upgrade()
diff --git a/target/linux/brcm-2.4/base-files/sbin/hotplug.failsafe b/target/linux/brcm-2.4/base-files/sbin/hotplug.failsafe
deleted file mode 100755 (executable)
index 0544339..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-case "$1" in
-       button) kill -USR1 1;;
-esac
diff --git a/target/linux/brcm-2.4/config-default b/target/linux/brcm-2.4/config-default
deleted file mode 100644 (file)
index 263e079..0000000
+++ /dev/null
@@ -1,376 +0,0 @@
-# CONFIG_60XX_WDT is not set
-# CONFIG_6PACK is not set
-# CONFIG_8139CP is not set
-# CONFIG_8139_OLD_RX_RESET is not set
-# CONFIG_8139TOO_8129 is not set
-# CONFIG_8139TOO is not set
-# CONFIG_8139TOO_PIO is not set
-# CONFIG_8139TOO_TUNE_TWISTER is not set
-# CONFIG_ACQUIRE_WDT is not set
-# CONFIG_ADAPTEC_STARFIRE is not set
-# CONFIG_ADVANTECH_WDT is not set
-# CONFIG_AIRO_CS is not set
-# CONFIG_AIRO is not set
-# CONFIG_ALIM1535_WDT is not set
-# CONFIG_ALIM7101_WDT is not set
-# CONFIG_AMD74XX_OVERRIDE is not set
-# CONFIG_AMD8111_ETH is not set
-# CONFIG_APRICOT is not set
-# CONFIG_ATM is not set
-# CONFIG_AX25_DAMA_SLAVE is not set
-CONFIG_AX25=m
-CONFIG_B44=y
-# CONFIG_BAYCOM_EPP is not set
-# CONFIG_BAYCOM_PAR is not set
-# CONFIG_BAYCOM_SER_FDX is not set
-# CONFIG_BAYCOM_SER_HDX is not set
-CONFIG_BCM4310=y
-CONFIG_BCM4704=y
-CONFIG_BCM4710=y
-CONFIG_BCM5365=y
-CONFIG_BCM947XX=y
-# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
-# CONFIG_BLK_DEV_ADMA100 is not set
-CONFIG_BLK_DEV_AEC62XX=m
-# CONFIG_BLK_DEV_ALI15X3 is not set
-# CONFIG_BLK_DEV_AMD74XX is not set
-# CONFIG_BLK_DEV_ATARAID_HPT is not set
-# CONFIG_BLK_DEV_ATARAID is not set
-# CONFIG_BLK_DEV_ATARAID_MEDLEY is not set
-# CONFIG_BLK_DEV_ATARAID_PDC is not set
-# CONFIG_BLK_DEV_ATARAID_SII is not set
-# CONFIG_BLK_DEV_ATIIXP is not set
-# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
-# CONFIG_BLK_DEV_CMD640 is not set
-# CONFIG_BLK_DEV_CMD64X is not set
-# CONFIG_BLK_DEV_CS5530 is not set
-# CONFIG_BLK_DEV_CY82C693 is not set
-# CONFIG_BLK_DEV_DELKIN is not set
-# CONFIG_BLK_DEV_GENERIC is not set
-# CONFIG_BLK_DEV_HD_IDE is not set
-# CONFIG_BLK_DEV_HPT34X is not set
-# CONFIG_BLK_DEV_HPT366 is not set
-# CONFIG_BLK_DEV_IDECD is not set
-# CONFIG_BLK_DEV_IDECS is not set
-CONFIG_BLK_DEV_IDEDISK=m
-# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
-CONFIG_BLK_DEV_IDEDMA_PCI=y
-CONFIG_BLK_DEV_IDEDMA=y
-# CONFIG_BLK_DEV_IDEFLOPPY is not set
-CONFIG_BLK_DEV_IDE=m
-CONFIG_BLK_DEV_IDEPCI=y
-# CONFIG_BLK_DEV_IDE_SATA is not set
-# CONFIG_BLK_DEV_IDESCSI is not set
-# CONFIG_BLK_DEV_IDETAPE is not set
-# CONFIG_BLK_DEV_ISAPNP is not set
-# CONFIG_BLK_DEV_NS87415 is not set
-CONFIG_BLK_DEV_OFFBOARD=y
-# CONFIG_BLK_DEV_OPTI621 is not set
-# CONFIG_BLK_DEV_PDC202XX_NEW is not set
-CONFIG_BLK_DEV_PDC202XX_OLD=m
-CONFIG_BLK_DEV_PDC202XX=y
-# CONFIG_BLK_DEV_PIIX is not set
-# CONFIG_BLK_DEV_RZ1000 is not set
-# CONFIG_BLK_DEV_SC1200 is not set
-# CONFIG_BLK_DEV_SIIMAGE is not set
-# CONFIG_BLK_DEV_SIS5513 is not set
-# CONFIG_BLK_DEV_SLC90E66 is not set
-# CONFIG_BLK_DEV_SVWKS is not set
-# CONFIG_BLK_DEV_TRIFLEX is not set
-# CONFIG_BLK_DEV_TRM290 is not set
-# CONFIG_BLK_DEV_VIA82CXXX is not set
-CONFIG_BLUEZ_BNEP=m
-CONFIG_BLUEZ_BNEP_MC_FILTER=y
-CONFIG_BLUEZ_BNEP_PROTO_FILTER=y
-# CONFIG_BLUEZ_HCIBFUSB is not set
-# CONFIG_BLUEZ_HCIBLUECARD is not set
-# CONFIG_BLUEZ_HCIBT3C is not set
-# CONFIG_BLUEZ_HCIBTUART is not set
-# CONFIG_BLUEZ_HCIDTL1 is not set
-CONFIG_BLUEZ_HCIUART_BCSP_TXCRC=y
-CONFIG_BLUEZ_HCIUART_BCSP=y
-CONFIG_BLUEZ_HCIUART_H4=y
-CONFIG_BLUEZ_HCIUART=m
-CONFIG_BLUEZ_HCIUSB=m
-CONFIG_BLUEZ_HCIUSB_SCO=y
-# CONFIG_BLUEZ_HCIVHCI is not set
-CONFIG_BLUEZ_L2CAP=m
-CONFIG_BLUEZ=m
-CONFIG_BLUEZ_RFCOMM=m
-CONFIG_BLUEZ_RFCOMM_TTY=y
-CONFIG_BLUEZ_SCO=m
-# CONFIG_BPQETHER is not set
-CONFIG_CARDBUS=y
-# CONFIG_CMDLINE_BOOL is not set
-CONFIG_CMDLINE="root=/dev/mtdblock2 rootfstype=squashfs,jffs2 init=/etc/preinit noinitrd console=ttyS0,115200"
-CONFIG_CRC32=y
-# CONFIG_CS89x0 is not set
-# CONFIG_DE4X5 is not set
-# CONFIG_DGRS is not set
-# CONFIG_DM9102 is not set
-# CONFIG_DMA_NONPCI is not set
-# CONFIG_E100 is not set
-# CONFIG_EEPRO100 is not set
-# CONFIG_EEPRO100_PIO is not set
-# CONFIG_EPIC100 is not set
-# CONFIG_ES3210 is not set
-# CONFIG_EUROTECH_WDT is not set
-# CONFIG_FEALNX is not set
-CONFIG_FILTER=y
-# CONFIG_FORCEDETH is not set
-CONFIG_HAMRADIO=y
-# CONFIG_HAPPYMEAL is not set
-# CONFIG_HP100 is not set
-# CONFIG_HPT34X_AUTODMA is not set
-# CONFIG_I2C_PARPORT is not set
-# CONFIG_I2O_BLOCK is not set
-# CONFIG_I2O is not set
-# CONFIG_I2O_LAN is not set
-# CONFIG_I2O_PCI is not set
-# CONFIG_I2O_PROC is not set
-# CONFIG_I2O_SCSI is not set
-# CONFIG_I810_TCO is not set
-# CONFIG_I82092 is not set
-# CONFIG_I82365 is not set
-# CONFIG_IB700_WDT is not set
-# CONFIG_IDE_CHIPSETS is not set
-# CONFIG_IDEDISK_MULTI_MODE is not set
-CONFIG_IDEDISK_STROKE=y
-CONFIG_IDEDMA_AUTO=y
-CONFIG_IDEDMA_IVB=y
-# CONFIG_IDEDMA_ONLYDISK is not set
-CONFIG_IDEDMA_PCI_AUTO=y
-# CONFIG_IDEDMA_PCI_WIP is not set
-CONFIG_IDE=m
-# CONFIG_IDEPCI_SHARE_IRQ is not set
-# CONFIG_IDE_TASK_IOCTL is not set
-# CONFIG_IEEE1394 is not set
-# CONFIG_IP_VS is not set
-# CONFIG_LAN_SAA9730 is not set
-# CONFIG_LNE390 is not set
-CONFIG_LOG_BUF_SHIFT=0
-# CONFIG_LP_CONSOLE is not set
-# CONFIG_MACHZ_WDT is not set
-# CONFIG_MIDI_EMU10K1 is not set
-# CONFIG_MIDI_VIA82CXXX is not set
-CONFIG_MINIX_FS=m
-CONFIG_MIPS_BRCM=y
-# CONFIG_MIXCOMWD is not set
-CONFIG_MKISS=m
-CONFIG_MSDOS_FS=m
-CONFIG_MTD_BCM947XX=y
-CONFIG_MTD_CFI_B1=y
-CONFIG_MTD_CFI_SSTSTD=y
-CONFIG_MTD_SFLASH=y
-# CONFIG_NATSEMI is not set
-# CONFIG_NE2K_PCI is not set
-# CONFIG_NE3210 is not set
-CONFIG_NET_PCI=y
-# CONFIG_NET_PCMCIA is not set
-# CONFIG_NETROM is not set
-CONFIG_NET_SCH_ESFQ=m
-CONFIG_NET_WIRELESS=y
-CONFIG_NEW_IRQ=y
-CONFIG_NEW_TIME_C=y
-# CONFIG_PARPORT_1284 is not set
-# CONFIG_PARPORT_AMIGA is not set
-# CONFIG_PARPORT_ATARI is not set
-# CONFIG_PARPORT_GSC is not set
-# CONFIG_PARPORT_IP22 is not set
-CONFIG_PARPORT=m
-# CONFIG_PARPORT_MFC3 is not set
-# CONFIG_PARPORT_OTHER is not set
-# CONFIG_PARPORT_PC is not set
-CONFIG_PARPORT_SPLINK=m
-# CONFIG_PARPORT_SUNBPP is not set
-CONFIG_PCI_AUTO=y
-# CONFIG_PCI_HERMES is not set
-# CONFIG_PCI_NAMES is not set
-# CONFIG_PCI_NEW is not set
-CONFIG_PCI=y
-# CONFIG_PCMCIA_ATMEL is not set
-# CONFIG_PCMCIA_HERMES is not set
-CONFIG_PCMCIA=m
-CONFIG_PCMCIA_SERIAL_CS=m
-# CONFIG_PCNET32 is not set
-# CONFIG_PCWATCHDOG is not set
-CONFIG_PDC202XX_BURST=y
-# CONFIG_PDC202XX_FORCE is not set
-# CONFIG_PLX_HERMES is not set
-CONFIG_PPDEV=m
-CONFIG_PRINTER=m
-# CONFIG_RADIO_GEMTEK_PCI is not set
-# CONFIG_RADIO_MAESTRO is not set
-# CONFIG_RADIO_MAXIRADIO is not set
-# CONFIG_RADIO_MIROPCM20 is not set
-# CONFIG_REMOTE_DEBUG is not set
-# CONFIG_ROSE is not set
-# CONFIG_SC1200_WDT is not set
-# CONFIG_SC520_WDT is not set
-# CONFIG_SCC_DELAY is not set
-# CONFIG_SCC_TRXECHO is not set
-# CONFIG_SCSI_CPQFCTS is not set
-# CONFIG_SCSI_DC390T is not set
-# CONFIG_SCSI_IMM is not set
-# CONFIG_SCSI_NCR53C8XX is not set
-# CONFIG_SCSI_PCMCIA is not set
-# CONFIG_SCSI_PPA is not set
-# CONFIG_SCSI_QLOGIC_1280 is not set
-# CONFIG_SCSI_QLOGIC_FC is not set
-# CONFIG_SCSI_QLOGIC_ISP is not set
-# CONFIG_SCSI_SYM53C8XX_2 is not set
-# CONFIG_SCSI_SYM53C8XX is not set
-# CONFIG_SCx200_WDT is not set
-# CONFIG_SIS900 is not set
-CONFIG_SOFT_WATCHDOG=m
-# CONFIG_SOUND_AD1980 is not set
-# CONFIG_SOUND_ALI5455 is not set
-# CONFIG_SOUND_BT878 is not set
-# CONFIG_SOUND_CMPCI is not set
-# CONFIG_SOUND_CS4281 is not set
-# CONFIG_SOUND_EMU10K1 is not set
-# CONFIG_SOUND_ES1370 is not set
-# CONFIG_SOUND_ES1371 is not set
-# CONFIG_SOUND_ESSSOLO1 is not set
-# CONFIG_SOUND_FORTE is not set
-# CONFIG_SOUND_FUSION is not set
-# CONFIG_SOUND_ICH is not set
-CONFIG_SOUND=m
-# CONFIG_SOUND_MAESTRO3 is not set
-# CONFIG_SOUND_MAESTRO is not set
-# CONFIG_SOUNDMODEM is not set
-# CONFIG_SOUND_MSNDCLAS is not set
-# CONFIG_SOUND_MSNDPIN is not set
-# CONFIG_SOUND_OSS is not set
-# CONFIG_SOUND_RME96XX is not set
-# CONFIG_SOUND_SONICVIBES is not set
-# CONFIG_SOUND_TRIDENT is not set
-# CONFIG_SOUND_TVMIXER is not set
-# CONFIG_SOUND_VIA82CXXX is not set
-# CONFIG_SOUND_WM97XX is not set
-# CONFIG_SUNDANCE is not set
-# CONFIG_SUNDANCE_MMIO is not set
-# CONFIG_SYNCLINK_CS is not set
-# CONFIG_TCIC is not set
-# CONFIG_TIPAR is not set
-# CONFIG_TLAN is not set
-# CONFIG_TMD_HERMES is not set
-# CONFIG_TULIP is not set
-# CONFIG_TUNER_3036 is not set
-CONFIG_USB_ACM=m
-# CONFIG_USB_AIPTEK is not set
-CONFIG_USB_AUDIO=m
-# CONFIG_USB_AUERSWALD is not set
-# CONFIG_USB_BANDWIDTH is not set
-# CONFIG_USB_BRLVGER is not set
-# CONFIG_USB_CATC is not set
-# CONFIG_USB_CDCETHER is not set
-# CONFIG_USB_DABUSB is not set
-# CONFIG_USB_DC2XX is not set
-# CONFIG_USB_DEBUG is not set
-CONFIG_USB_DEVICEFS=y
-# CONFIG_USB_DSBR is not set
-CONFIG_USB_EHCI_HCD=m
-# CONFIG_USB_EMI26 is not set
-# CONFIG_USB_HIDDEV is not set
-# CONFIG_USB_HIDINPUT is not set
-# CONFIG_USB_HID is not set
-# CONFIG_USB_HPUSBSCSI is not set
-# CONFIG_USB_IBMCAM is not set
-# CONFIG_USB_KAWETH is not set
-# CONFIG_USB_KBD is not set
-# CONFIG_USB_KBTAB is not set
-# CONFIG_USB_KONICAWC is not set
-# CONFIG_USB_LCD is not set
-CONFIG_USB=m
-# CONFIG_USB_MDC800 is not set
-# CONFIG_USB_MICROTEK is not set
-# CONFIG_USB_MIDI is not set
-# CONFIG_USB_MOUSE is not set
-CONFIG_USB_OHCI=m
-# CONFIG_USB_OV511 is not set
-# CONFIG_USB_PEGASUS is not set
-# CONFIG_USB_POWERMATE is not set
-CONFIG_USB_PRINTER=m
-CONFIG_USB_PWC=m
-# CONFIG_USB_RIO500 is not set
-# CONFIG_USB_RTL8150 is not set
-# CONFIG_USB_SCANNER is not set
-# CONFIG_USB_SE401 is not set
-CONFIG_USB_SERIAL_BELKIN=m
-# CONFIG_USB_SERIAL_CYBERJACK is not set
-# CONFIG_USB_SERIAL_DEBUG is not set
-# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
-# CONFIG_USB_SERIAL_EDGEPORT is not set
-# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
-# CONFIG_USB_SERIAL_EMPEG is not set
-CONFIG_USB_SERIAL_FTDI_SIO=m
-CONFIG_USB_SERIAL_GENERIC=y
-# CONFIG_USB_SERIAL_IPAQ is not set
-# CONFIG_USB_SERIAL_IR is not set
-CONFIG_USB_SERIAL_KEYSPAN=m
-CONFIG_USB_SERIAL_KEYSPAN_MPR=y
-# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
-CONFIG_USB_SERIAL_KEYSPAN_USA18X=y
-CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y
-CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y
-CONFIG_USB_SERIAL_KEYSPAN_USA19W=y
-CONFIG_USB_SERIAL_KEYSPAN_USA19=y
-CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y
-CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y
-CONFIG_USB_SERIAL_KEYSPAN_USA28X=y
-CONFIG_USB_SERIAL_KEYSPAN_USA28=y
-CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y
-CONFIG_USB_SERIAL_KEYSPAN_USA49W=y
-# CONFIG_USB_SERIAL_KLSI is not set
-# CONFIG_USB_SERIAL_KOBIL_SCT is not set
-CONFIG_USB_SERIAL=m
-CONFIG_USB_SERIAL_MCT_U232=m
-# CONFIG_USB_SERIAL_OMNINET is not set
-CONFIG_USB_SERIAL_PL2303=m
-# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
-CONFIG_USB_SERIAL_VISOR=m
-# CONFIG_USB_SERIAL_WHITEHEAT is not set
-# CONFIG_USB_SERIAL_XIRCOM is not set
-CONFIG_USB_STORAGE_DATAFAB=y
-# CONFIG_USB_STORAGE_DEBUG is not set
-CONFIG_USB_STORAGE_DPCM=y
-CONFIG_USB_STORAGE_FREECOM=y
-CONFIG_USB_STORAGE_HP8200e=y
-# CONFIG_USB_STORAGE_ISD200 is not set
-CONFIG_USB_STORAGE_JUMPSHOT=y
-CONFIG_USB_STORAGE=m
-CONFIG_USB_STORAGE_SDDR09=y
-CONFIG_USB_STORAGE_SDDR55=y
-# CONFIG_USB_STV680 is not set
-# CONFIG_USB_TIGL is not set
-CONFIG_USB_UHCI_ALT=m
-CONFIG_USB_UHCI=m
-# CONFIG_USB_USS720 is not set
-# CONFIG_USB_VICAM is not set
-# CONFIG_USB_W9968CF is not set
-# CONFIG_USB_WACOM is not set
-# CONFIG_VIA_RHINE is not set
-# CONFIG_VIA_RHINE_MMIO is not set
-# CONFIG_VIDEO_BT848 is not set
-# CONFIG_VIDEO_BWQCAM is not set
-# CONFIG_VIDEO_CPIA is not set
-# CONFIG_VIDEO_CQCAM is not set
-CONFIG_VIDEO_DEV=m
-# CONFIG_VIDEO_MEYE is not set
-# CONFIG_VIDEO_PMS is not set
-CONFIG_VIDEO_PROC_FS=y
-# CONFIG_VIDEO_SAA5249 is not set
-# CONFIG_VIDEO_STRADIS is not set
-# CONFIG_VIDEO_ZORAN_BUZ is not set
-# CONFIG_VIDEO_ZORAN_DC10 is not set
-# CONFIG_VIDEO_ZORAN is not set
-# CONFIG_VIDEO_ZORAN_LML33 is not set
-# CONFIG_VIDEO_ZR36120 is not set
-# CONFIG_W83877F_WDT is not set
-# CONFIG_WAFER_WDT is not set
-# CONFIG_WDC_ALI15X3 is not set
-# CONFIG_WDT is not set
-# CONFIG_WDTPCI is not set
-# CONFIG_WINBOND_840 is not set
-# CONFIG_YAM is not set
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/Makefile b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/Makefile
deleted file mode 100644 (file)
index e08cf9a..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-# Makefile for the BCM947xx specific kernel interface routines
-# under Linux.
-#
-
-EXTRA_CFLAGS+=-I$(TOPDIR)/arch/mips/bcm947xx/include -DBCMDRIVER
-
-O_TARGET        := bcm947xx.o
-
-export-objs     := export.o
-obj-y          := prom.o setup.o time.o sbmips.o gpio.o
-obj-y          += nvram.o cfe_env.o hndpmu.o
-obj-y          += sbutils.o utils.o bcmsrom.o hndchipc.o
-obj-$(CONFIG_PCI) += sbpci.o pcibios.o
-obj-y          += export.o
-
-include $(TOPDIR)/Rules.make
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/bcmsrom.c b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/bcmsrom.c
deleted file mode 100644 (file)
index 4cf73b5..0000000
+++ /dev/null
@@ -1,2104 +0,0 @@
-/*
- *  Routines to access SPROM and to parse SROM/CIS variables.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- */
-
-#include <typedefs.h>
-#include <bcmdefs.h>
-#include <osl.h>
-#include <stdarg.h>
-#include <sbchipc.h>
-#include <bcmdevs.h>
-#include <bcmendian.h>
-#include <sbpcmcia.h>
-#include <pcicfg.h>
-#include <sbconfig.h>
-#include <sbutils.h>
-#include <bcmsrom.h>
-#include <bcmnvram.h>
-#include "utils.h"
-
-/* debug/trace */
-#if defined(WLTEST)
-#define        BS_ERROR(args)  printf args
-#else
-#define        BS_ERROR(args)
-#endif
-
-#define WRITE_ENABLE_DELAY     500     /* 500 ms after write enable/disable toggle */
-#define WRITE_WORD_DELAY       20      /* 20 ms between each word write */
-
-typedef struct varbuf
-{
-  char *buf;                   /* pointer to current position */
-  unsigned int size;           /* current (residual) size in bytes */
-} varbuf_t;
-
-static int initvars_srom_sb (sb_t * sbh, osl_t * osh, void *curmap,
-                            char **vars, uint * count);
-static void _initvars_srom_pci (uint8 sromrev, uint16 * srom, uint off,
-                               varbuf_t * b);
-static int initvars_srom_pci (sb_t * sbh, void *curmap, char **vars,
-                             uint * count);
-static int initvars_cis_pcmcia (sb_t * sbh, osl_t * osh, char **vars,
-                               uint * count);
-#if !defined(BCMUSBDEV) && !defined(BCMSDIODEV)
-static int initvars_flash_sb (sb_t * sbh, char **vars, uint * count);
-#endif /* !BCMUSBDEV && !BCMSDIODEV */
-static int sprom_cmd_pcmcia (osl_t * osh, uint8 cmd);
-static int sprom_read_pcmcia (osl_t * osh, uint16 addr, uint16 * data);
-static int sprom_write_pcmcia (osl_t * osh, uint16 addr, uint16 data);
-static int sprom_read_pci (osl_t * osh, uint16 * sprom, uint wordoff,
-                          uint16 * buf, uint nwords, bool check_crc);
-
-static int initvars_table (osl_t * osh, char *start, char *end, char **vars,
-                          uint * count);
-static int initvars_flash (sb_t * sbh, osl_t * osh, char **vp, uint len);
-
-#ifdef BCMUSBDEV
-static int get_sb_pcmcia_srom (sb_t * sbh, osl_t * osh, uint8 * pcmregs,
-                              uint boff, uint16 * srom, uint bsz);
-static int set_sb_pcmcia_srom (sb_t * sbh, osl_t * osh, uint8 * pcmregs,
-                              uint boff, uint16 * srom, uint bsz);
-static uint srom_size (sb_t * sbh, osl_t * osh);
-#endif /* def BCMUSBDEV */
-
-/* Initialization of varbuf structure */
-static void
-varbuf_init (varbuf_t * b, char *buf, uint size)
-{
-  b->size = size;
-  b->buf = buf;
-}
-
-/* append a null terminated var=value string */
-static int
-varbuf_append (varbuf_t * b, const char *fmt, ...)
-{
-  va_list ap;
-  int r;
-
-  if (b->size < 2)
-    return 0;
-
-  va_start (ap, fmt);
-  r = vsnprintf (b->buf, b->size, fmt, ap);
-  va_end (ap);
-
-  /* C99 snprintf behavior returns r >= size on overflow,
-   * others return -1 on overflow.
-   * All return -1 on format error.
-   * We need to leave room for 2 null terminations, one for the current var
-   * string, and one for final null of the var table. So check that the
-   * strlen written, r, leaves room for 2 chars.
-   */
-  if ((r == -1) || (r > (int) (b->size - 2)))
-    {
-      b->size = 0;
-      return 0;
-    }
-
-  /* skip over this string's null termination */
-  r++;
-  b->size -= r;
-  b->buf += r;
-
-  return r;
-}
-
-/*
- * Initialize local vars from the right source for this platform.
- * Return 0 on success, nonzero on error.
- */
-int
-BCMINITFN (srom_var_init) (sb_t * sbh, uint bustype, void *curmap,
-                          osl_t * osh, char **vars, uint * count)
-{
-  ASSERT (bustype == BUSTYPE (bustype));
-  if (vars == NULL || count == NULL)
-    return (0);
-
-  *vars = NULL;
-  *count = 0;
-
-  switch (BUSTYPE (bustype))
-    {
-    case SB_BUS:
-    case JTAG_BUS:
-      return initvars_srom_sb (sbh, osh, curmap, vars, count);
-
-    case PCI_BUS:
-      ASSERT (curmap);         /* can not be NULL */
-      return initvars_srom_pci (sbh, curmap, vars, count);
-
-    case PCMCIA_BUS:
-      return initvars_cis_pcmcia (sbh, osh, vars, count);
-
-
-    default:
-      ASSERT (0);
-    }
-  return (-1);
-}
-
-/* support only 16-bit word read from srom */
-int
-srom_read (sb_t * sbh, uint bustype, void *curmap, osl_t * osh,
-          uint byteoff, uint nbytes, uint16 * buf)
-{
-  void *srom;
-  uint i, off, nw;
-
-  ASSERT (bustype == BUSTYPE (bustype));
-
-  /* check input - 16-bit access only */
-  if (byteoff & 1 || nbytes & 1 || (byteoff + nbytes) > (SPROM_SIZE * 2))
-    return 1;
-
-  off = byteoff / 2;
-  nw = nbytes / 2;
-
-  if (BUSTYPE (bustype) == PCI_BUS)
-    {
-      if (!curmap)
-       return 1;
-      srom = (uchar *) curmap + PCI_BAR0_SPROM_OFFSET;
-      if (sprom_read_pci (osh, srom, off, buf, nw, FALSE))
-       return 1;
-    }
-  else if (BUSTYPE (bustype) == PCMCIA_BUS)
-    {
-      for (i = 0; i < nw; i++)
-       {
-         if (sprom_read_pcmcia
-             (osh, (uint16) (off + i), (uint16 *) (buf + i)))
-           return 1;
-       }
-    }
-  else if (BUSTYPE (bustype) == SB_BUS)
-    {
-#ifdef BCMUSBDEV
-      if (SPROMBUS == PCMCIA_BUS)
-       {
-         uint origidx;
-         void *regs;
-         int rc;
-         bool wasup;
-
-         origidx = sb_coreidx (sbh);
-         regs = sb_setcore (sbh, SB_PCMCIA, 0);
-         ASSERT (regs != NULL);
-
-         if (!(wasup = sb_iscoreup (sbh)))
-           sb_core_reset (sbh, 0, 0);
-
-         rc = get_sb_pcmcia_srom (sbh, osh, regs, byteoff, buf, nbytes);
-
-         if (!wasup)
-           sb_core_disable (sbh, 0);
-
-         sb_setcoreidx (sbh, origidx);
-         return rc;
-       }
-#endif /* def BCMUSBDEV */
-
-      return 1;
-    }
-  else
-    {
-      return 1;
-    }
-
-  return 0;
-}
-
-/* support only 16-bit word write into srom */
-int
-srom_write (sb_t * sbh, uint bustype, void *curmap, osl_t * osh,
-           uint byteoff, uint nbytes, uint16 * buf)
-{
-  uint16 *srom;
-  uint i, nw, crc_range;
-  uint16 image[SPROM_SIZE];
-  uint8 crc;
-  volatile uint32 val32;
-
-  ASSERT (bustype == BUSTYPE (bustype));
-
-  /* check input - 16-bit access only */
-  if ((byteoff & 1) || (nbytes & 1))
-    return 1;
-
-  if (byteoff == 0x55aa)
-    {
-      /* Erase request */
-      crc_range = 0;
-      memset ((void *) image, 0xff, nbytes);
-      nw = nbytes / 2;
-    }
-  else if ((byteoff == 0) &&
-          ((nbytes == SPROM_SIZE * 2) ||
-           (nbytes == (SPROM_CRC_RANGE * 2)) ||
-           (nbytes == (SROM4_WORDS * 2))))
-    {
-      /* Are we writing the whole thing at once? */
-      crc_range = nbytes;
-      bcopy ((void *) buf, (void *) image, nbytes);
-      nw = nbytes / 2;
-    }
-  else
-    {
-      if ((byteoff + nbytes) > (SPROM_SIZE * 2))
-       return 1;
-
-      if (BUSTYPE (bustype) == PCMCIA_BUS)
-       {
-         crc_range = SPROM_SIZE * 2;
-       }
-      else
-       {
-         crc_range = SPROM_CRC_RANGE * 2;      /* Tentative */
-       }
-
-      nw = crc_range / 2;
-      /* read first 64 words from srom */
-      if (srom_read (sbh, bustype, curmap, osh, 0, crc_range, image))
-       return 1;
-      if (image[SROM4_SIGN] == SROM4_SIGNATURE)
-       {
-         nw = SROM4_WORDS;
-         crc_range = nw * 2;
-         if (srom_read (sbh, bustype, curmap, osh, 0, crc_range, image))
-           return 1;
-       }
-      /* make changes */
-      bcopy ((void *) buf, (void *) &image[byteoff / 2], nbytes);
-    }
-
-  if (crc_range)
-    {
-      /* calculate crc */
-      htol16_buf (image, crc_range);
-      crc = ~hndcrc8 ((uint8 *) image, crc_range - 1, 0xff);
-      ltoh16_buf (image, crc_range);
-      image[nw - 1] = (crc << 8) | (image[nw - 1] & 0xff);
-    }
-
-  if (BUSTYPE (bustype) == PCI_BUS)
-    {
-      srom = (uint16 *) ((uchar *) curmap + PCI_BAR0_SPROM_OFFSET);
-      /* enable writes to the SPROM */
-      val32 = OSL_PCI_READ_CONFIG (osh, PCI_SPROM_CONTROL, sizeof (uint32));
-      val32 |= SPROM_WRITEEN;
-      OSL_PCI_WRITE_CONFIG (osh, PCI_SPROM_CONTROL, sizeof (uint32), val32);
-      bcm_mdelay (WRITE_ENABLE_DELAY);
-      /* write srom */
-      for (i = 0; i < nw; i++)
-       {
-         W_REG (osh, &srom[i], image[i]);
-         bcm_mdelay (WRITE_WORD_DELAY);
-       }
-      /* disable writes to the SPROM */
-      OSL_PCI_WRITE_CONFIG (osh, PCI_SPROM_CONTROL, sizeof (uint32), val32 &
-                           ~SPROM_WRITEEN);
-    }
-  else if (BUSTYPE (bustype) == PCMCIA_BUS)
-    {
-      /* enable writes to the SPROM */
-      if (sprom_cmd_pcmcia (osh, SROM_WEN))
-       return 1;
-      bcm_mdelay (WRITE_ENABLE_DELAY);
-      /* write srom */
-      for (i = 0; i < nw; i++)
-       {
-         sprom_write_pcmcia (osh, (uint16) (i), image[i]);
-         bcm_mdelay (WRITE_WORD_DELAY);
-       }
-      /* disable writes to the SPROM */
-      if (sprom_cmd_pcmcia (osh, SROM_WDS))
-       return 1;
-    }
-  else if (BUSTYPE (bustype) == SB_BUS)
-    {
-#ifdef BCMUSBDEV
-      if (SPROMBUS == PCMCIA_BUS)
-       {
-         uint origidx;
-         void *regs;
-         int rc;
-         bool wasup;
-
-         origidx = sb_coreidx (sbh);
-         regs = sb_setcore (sbh, SB_PCMCIA, 0);
-         ASSERT (regs != NULL);
-
-         if (!(wasup = sb_iscoreup (sbh)))
-           sb_core_reset (sbh, 0, 0);
-
-         rc = set_sb_pcmcia_srom (sbh, osh, regs, byteoff, buf, nbytes);
-
-         if (!wasup)
-           sb_core_disable (sbh, 0);
-
-         sb_setcoreidx (sbh, origidx);
-         return rc;
-       }
-#endif /* def BCMUSBDEV */
-      return 1;
-    }
-  else
-    {
-      return 1;
-    }
-
-  bcm_mdelay (WRITE_ENABLE_DELAY);
-  return 0;
-}
-
-#ifdef BCMUSBDEV
-#define SB_PCMCIA_READ(osh, regs, fcr) \
-               R_REG(osh, (volatile uint8 *)(regs) + 0x600 + (fcr) - 0x700 / 2)
-#define SB_PCMCIA_WRITE(osh, regs, fcr, v) \
-               W_REG(osh, (volatile uint8 *)(regs) + 0x600 + (fcr) - 0x700 / 2, v)
-
-/* set PCMCIA srom command register */
-static int
-srom_cmd_sb_pcmcia (osl_t * osh, uint8 * pcmregs, uint8 cmd)
-{
-  uint8 status = 0;
-  uint wait_cnt = 0;
-
-  /* write srom command register */
-  SB_PCMCIA_WRITE (osh, pcmregs, SROM_CS, cmd);
-
-  /* wait status */
-  while (++wait_cnt < 1000000)
-    {
-      status = SB_PCMCIA_READ (osh, pcmregs, SROM_CS);
-      if (status & SROM_DONE)
-       return 0;
-      OSL_DELAY (1);
-    }
-
-  BS_ERROR (("sr_cmd: Give up after %d tries, stat = 0x%x\n", wait_cnt,
-            status));
-  return 1;
-}
-
-/* read a word from the PCMCIA srom over SB */
-static int
-srom_read_sb_pcmcia (osl_t * osh, uint8 * pcmregs, uint16 addr, uint16 * data)
-{
-  uint8 addr_l, addr_h, data_l, data_h;
-
-  addr_l = (uint8) ((addr * 2) & 0xff);
-  addr_h = (uint8) (((addr * 2) >> 8) & 0xff);
-
-  /* set address */
-  SB_PCMCIA_WRITE (osh, pcmregs, SROM_ADDRH, addr_h);
-  SB_PCMCIA_WRITE (osh, pcmregs, SROM_ADDRL, addr_l);
-
-  /* do read */
-  if (srom_cmd_sb_pcmcia (osh, pcmregs, SROM_READ))
-    return 1;
-
-  /* read data */
-  data_h = SB_PCMCIA_READ (osh, pcmregs, SROM_DATAH);
-  data_l = SB_PCMCIA_READ (osh, pcmregs, SROM_DATAL);
-  *data = ((uint16) data_h << 8) | data_l;
-
-  return 0;
-}
-
-/* write a word to the PCMCIA srom over SB */
-static int
-srom_write_sb_pcmcia (osl_t * osh, uint8 * pcmregs, uint16 addr, uint16 data)
-{
-  uint8 addr_l, addr_h, data_l, data_h;
-  int rc;
-
-  addr_l = (uint8) ((addr * 2) & 0xff);
-  addr_h = (uint8) (((addr * 2) >> 8) & 0xff);
-
-  /* set address */
-  SB_PCMCIA_WRITE (osh, pcmregs, SROM_ADDRH, addr_h);
-  SB_PCMCIA_WRITE (osh, pcmregs, SROM_ADDRL, addr_l);
-
-  data_l = (uint8) (data & 0xff);
-  data_h = (uint8) ((data >> 8) & 0xff);
-
-  /* write data */
-  SB_PCMCIA_WRITE (osh, pcmregs, SROM_DATAH, data_h);
-  SB_PCMCIA_WRITE (osh, pcmregs, SROM_DATAL, data_l);
-
-  /* do write */
-  rc = srom_cmd_sb_pcmcia (osh, pcmregs, SROM_WRITE);
-  OSL_DELAY (20000);
-  return rc;
-}
-
-/*
- * Read the srom for the pcmcia-srom over sb case.
- * Return 0 on success, nonzero on error.
- */
-static int
-get_sb_pcmcia_srom (sb_t * sbh, osl_t * osh, uint8 * pcmregs,
-                   uint boff, uint16 * srom, uint bsz)
-{
-  uint i, nw, woff, wsz;
-  int err = 0;
-
-  /* read must be at word boundary */
-  ASSERT ((boff & 1) == 0 && (bsz & 1) == 0);
-
-  /* read sprom size and validate the parms */
-  if ((nw = srom_size (sbh, osh)) == 0)
-    {
-      BS_ERROR (("get_sb_pcmcia_srom: sprom size unknown\n"));
-      err = -1;
-      goto out;
-    }
-  if (boff + bsz > 2 * nw)
-    {
-      BS_ERROR (("get_sb_pcmcia_srom: sprom size exceeded\n"));
-      err = -2;
-      goto out;
-    }
-
-  /* read in sprom contents */
-  for (woff = boff / 2, wsz = bsz / 2, i = 0;
-       woff < nw && i < wsz; woff++, i++)
-    {
-      if (srom_read_sb_pcmcia (osh, pcmregs, (uint16) woff, &srom[i]))
-       {
-         BS_ERROR (("get_sb_pcmcia_srom: sprom read failed\n"));
-         err = -3;
-         goto out;
-       }
-    }
-
-out:
-  return err;
-}
-
-/*
- * Write the srom for the pcmcia-srom over sb case.
- * Return 0 on success, nonzero on error.
- */
-static int
-set_sb_pcmcia_srom (sb_t * sbh, osl_t * osh, uint8 * pcmregs,
-                   uint boff, uint16 * srom, uint bsz)
-{
-  uint i, nw, woff, wsz;
-  uint16 word;
-  uint8 crc;
-  int err = 0;
-
-  /* write must be at word boundary */
-  ASSERT ((boff & 1) == 0 && (bsz & 1) == 0);
-
-  /* read sprom size and validate the parms */
-  if ((nw = srom_size (sbh, osh)) == 0)
-    {
-      BS_ERROR (("set_sb_pcmcia_srom: sprom size unknown\n"));
-      err = -1;
-      goto out;
-    }
-  if (boff + bsz > 2 * nw)
-    {
-      BS_ERROR (("set_sb_pcmcia_srom: sprom size exceeded\n"));
-      err = -2;
-      goto out;
-    }
-
-  /* enable write */
-  if (srom_cmd_sb_pcmcia (osh, pcmregs, SROM_WEN))
-    {
-      BS_ERROR (("set_sb_pcmcia_srom: sprom wen failed\n"));
-      err = -3;
-      goto out;
-    }
-
-  /* write buffer to sprom */
-  for (woff = boff / 2, wsz = bsz / 2, i = 0;
-       woff < nw && i < wsz; woff++, i++)
-    {
-      if (srom_write_sb_pcmcia (osh, pcmregs, (uint16) woff, srom[i]))
-       {
-         BS_ERROR (("set_sb_pcmcia_srom: sprom write failed\n"));
-         err = -4;
-         goto out;
-       }
-    }
-
-  /* fix crc */
-  crc = 0xff;
-  for (woff = 0; woff < nw; woff++)
-    {
-      if (srom_read_sb_pcmcia (osh, pcmregs, (uint16) woff, &word))
-       {
-         BS_ERROR (("set_sb_pcmcia_srom: sprom fix crc read failed\n"));
-         err = -5;
-         goto out;
-       }
-      word = htol16 (word);
-      crc = hndcrc8 ((uint8 *) & word, woff != nw - 1 ? 2 : 1, crc);
-    }
-  word = (~crc << 8) + (ltoh16 (word) & 0xff);
-  if (srom_write_sb_pcmcia (osh, pcmregs, (uint16) (woff - 1), word))
-    {
-      BS_ERROR (("set_sb_pcmcia_srom: sprom fix crc write failed\n"));
-      err = -6;
-      goto out;
-    }
-
-  /* disable write */
-  if (srom_cmd_sb_pcmcia (osh, pcmregs, SROM_WDS))
-    {
-      BS_ERROR (("set_sb_pcmcia_srom: sprom wds failed\n"));
-      err = -7;
-      goto out;
-    }
-
-out:
-  return err;
-}
-#endif /* def BCMUSBDEV */
-
-int
-srom_parsecis (osl_t * osh, uint8 * pcis[], uint ciscnt, char **vars,
-              uint * count)
-{
-  char eabuf[32];
-  char *base;
-  varbuf_t b;
-  uint8 *cis, tup, tlen, sromrev = 1;
-  int i, j;
-  uint varsize;
-  bool ag_init = FALSE;
-  uint32 w32;
-  uint funcid;
-  uint cisnum;
-  int32 boardnum = -1;
-
-  ASSERT (vars);
-  ASSERT (count);
-
-  base = MALLOC (osh, MAXSZ_NVRAM_VARS);
-  ASSERT (base);
-  if (!base)
-    return -2;
-
-  varbuf_init (&b, base, MAXSZ_NVRAM_VARS);
-
-  eabuf[0] = '\0';
-  for (cisnum = 0; cisnum < ciscnt; cisnum++)
-    {
-      cis = *pcis++;
-      i = 0;
-      funcid = 0;
-      do
-       {
-         tup = cis[i++];
-         tlen = cis[i++];
-         if ((i + tlen) >= CIS_SIZE)
-           break;
-
-         switch (tup)
-           {
-           case CISTPL_VERS_1:
-             /* assume the strings are good if the version field checks out */
-             if (((cis[i + 1] << 8) + cis[i]) >= 0x0008)
-               {
-                 varbuf_append (&b, "manf=%s", &cis[i + 2]);
-                 varbuf_append (&b, "productname=%s",
-                                &cis[i + 3 + strlen ((char *) &cis[i + 2])]);
-                 break;
-               }
-
-           case CISTPL_MANFID:
-             varbuf_append (&b, "manfid=0x%x", (cis[i + 1] << 8) + cis[i]);
-             varbuf_append (&b, "prodid=0x%x",
-                            (cis[i + 3] << 8) + cis[i + 2]);
-             break;
-
-           case CISTPL_FUNCID:
-             funcid = cis[i];
-             break;
-
-           case CISTPL_FUNCE:
-             switch (funcid)
-               {
-               default:
-                 /* set macaddr if HNBU_MACADDR not seen yet */
-                 if (eabuf[0] == '\0' && cis[i] == LAN_NID)
-                   {
-                     ASSERT (cis[i + 1] == ETHER_ADDR_LEN);
-                     bcm_ether_ntoa ((struct ether_addr *) &cis[i + 2],
-                                     eabuf);
-                   }
-                 /* set boardnum if HNBU_BOARDNUM not seen yet */
-                 if (boardnum == -1)
-                   boardnum = (cis[i + 6] << 8) + cis[i + 7];
-                 break;
-               }
-             break;
-
-           case CISTPL_CFTABLE:
-             varbuf_append (&b, "regwindowsz=%d",
-                            (cis[i + 7] << 8) | cis[i + 6]);
-             break;
-
-           case CISTPL_BRCM_HNBU:
-             switch (cis[i])
-               {
-               case HNBU_SROMREV:
-                 sromrev = cis[i + 1];
-                 varbuf_append (&b, "sromrev=%d", sromrev);
-                 break;
-
-               case HNBU_CHIPID:
-                 varbuf_append (&b, "vendid=0x%x", (cis[i + 2] << 8) +
-                                cis[i + 1]);
-                 varbuf_append (&b, "devid=0x%x", (cis[i + 4] << 8) +
-                                cis[i + 3]);
-                 if (tlen >= 7)
-                   {
-                     varbuf_append (&b, "chiprev=%d",
-                                    (cis[i + 6] << 8) + cis[i + 5]);
-                   }
-                 if (tlen >= 9)
-                   {
-                     varbuf_append (&b, "subvendid=0x%x",
-                                    (cis[i + 8] << 8) + cis[i + 7]);
-                   }
-                 if (tlen >= 11)
-                   {
-                     varbuf_append (&b, "subdevid=0x%x",
-                                    (cis[i + 10] << 8) + cis[i + 9]);
-                     /* subdevid doubles for boardtype */
-                     varbuf_append (&b, "boardtype=0x%x",
-                                    (cis[i + 10] << 8) + cis[i + 9]);
-                   }
-                 break;
-
-               case HNBU_BOARDREV:
-                 varbuf_append (&b, "boardrev=0x%x", cis[i + 1]);
-                 break;
-
-               case HNBU_AA:
-                 varbuf_append (&b, "aa2g=%d", cis[i + 1]);
-                 break;
-
-               case HNBU_AG:
-                 varbuf_append (&b, "ag0=%d", cis[i + 1]);
-                 ag_init = TRUE;
-                 break;
-
-               case HNBU_ANT5G:
-                 varbuf_append (&b, "aa5g=%d", cis[i + 1]);
-                 varbuf_append (&b, "ag1=%d", cis[i + 2]);
-                 break;
-
-               case HNBU_CC:
-                 ASSERT (sromrev == 1);
-                 varbuf_append (&b, "cc=%d", cis[i + 1]);
-                 break;
-
-               case HNBU_PAPARMS:
-                 if (tlen == 2)
-                   {
-                     ASSERT (sromrev == 1);
-                     varbuf_append (&b, "pa0maxpwr=%d", cis[i + 1]);
-                   }
-                 else if (tlen >= 9)
-                   {
-                     if (tlen == 10)
-                       {
-                         ASSERT (sromrev >= 2);
-                         varbuf_append (&b, "opo=%d", cis[i + 9]);
-                       }
-                     else
-                       ASSERT (tlen == 9);
-
-                     for (j = 0; j < 3; j++)
-                       {
-                         varbuf_append (&b, "pa0b%d=%d", j,
-                                        (cis[i + (j * 2) + 2] << 8) +
-                                        cis[i + (j * 2) + 1]);
-                       }
-                     varbuf_append (&b, "pa0itssit=%d", cis[i + 7]);
-                     varbuf_append (&b, "pa0maxpwr=%d", cis[i + 8]);
-                   }
-                 else
-                   ASSERT (tlen >= 9);
-                 break;
-
-               case HNBU_PAPARMS5G:
-                 ASSERT ((sromrev == 2) || (sromrev == 3));
-                 for (j = 0; j < 3; j++)
-                   {
-                     varbuf_append (&b, "pa1b%d=%d", j,
-                                    (cis[i + (j * 2) + 2] << 8) +
-                                    cis[i + (j * 2) + 1]);
-                   }
-                 for (j = 3; j < 6; j++)
-                   {
-                     varbuf_append (&b, "pa1lob%d=%d", j - 3,
-                                    (cis[i + (j * 2) + 2] << 8) +
-                                    cis[i + (j * 2) + 1]);
-                   }
-                 for (j = 6; j < 9; j++)
-                   {
-                     varbuf_append (&b, "pa1hib%d=%d", j - 6,
-                                    (cis[i + (j * 2) + 2] << 8) +
-                                    cis[i + (j * 2) + 1]);
-                   }
-                 varbuf_append (&b, "pa1itssit=%d", cis[i + 19]);
-                 varbuf_append (&b, "pa1maxpwr=%d", cis[i + 20]);
-                 varbuf_append (&b, "pa1lomaxpwr=%d", cis[i + 21]);
-                 varbuf_append (&b, "pa1himaxpwr=%d", cis[i + 22]);
-                 break;
-
-               case HNBU_OEM:
-                 ASSERT (sromrev == 1);
-                 varbuf_append (&b, "oem=%02x%02x%02x%02x%02x%02x%02x%02x",
-                                cis[i + 1], cis[i + 2],
-                                cis[i + 3], cis[i + 4],
-                                cis[i + 5], cis[i + 6],
-                                cis[i + 7], cis[i + 8]);
-                 break;
-
-               case HNBU_BOARDFLAGS:
-                 w32 = (cis[i + 2] << 8) + cis[i + 1];
-                 if (tlen == 5)
-                   w32 |= (cis[i + 4] << 24) + (cis[i + 3] << 16);
-                 varbuf_append (&b, "boardflags=0x%x", w32);
-                 break;
-
-               case HNBU_LEDS:
-                 if (cis[i + 1] != 0xff)
-                   {
-                     varbuf_append (&b, "ledbh0=%d", cis[i + 1]);
-                   }
-                 if (cis[i + 2] != 0xff)
-                   {
-                     varbuf_append (&b, "ledbh1=%d", cis[i + 2]);
-                   }
-                 if (cis[i + 3] != 0xff)
-                   {
-                     varbuf_append (&b, "ledbh2=%d", cis[i + 3]);
-                   }
-                 if (cis[i + 4] != 0xff)
-                   {
-                     varbuf_append (&b, "ledbh3=%d", cis[i + 4]);
-                   }
-                 break;
-
-               case HNBU_CCODE:
-                 ASSERT (sromrev > 1);
-                 if ((cis[i + 1] == 0) || (cis[i + 2] == 0))
-                   varbuf_append (&b, "ccode=");
-                 else
-                   varbuf_append (&b, "ccode=%c%c", cis[i + 1], cis[i + 2]);
-                 varbuf_append (&b, "cctl=0x%x", cis[i + 3]);
-                 break;
-
-               case HNBU_CCKPO:
-                 ASSERT (sromrev > 2);
-                 varbuf_append (&b, "cckpo=0x%x",
-                                (cis[i + 2] << 8) | cis[i + 1]);
-                 break;
-
-               case HNBU_OFDMPO:
-                 ASSERT (sromrev > 2);
-                 varbuf_append (&b, "ofdmpo=0x%x",
-                                (cis[i + 4] << 24) |
-                                (cis[i + 3] << 16) |
-                                (cis[i + 2] << 8) | cis[i + 1]);
-                 break;
-
-               case HNBU_RDLID:
-                 varbuf_append (&b, "rdlid=0x%x",
-                                (cis[i + 2] << 8) | cis[i + 1]);
-                 break;
-
-               case HNBU_RDLRNDIS:
-                 varbuf_append (&b, "rdlrndis=%d", cis[i + 1]);
-                 break;
-
-               case HNBU_RDLRWU:
-                 varbuf_append (&b, "rdlrwu=%d", cis[i + 1]);
-                 break;
-
-               case HNBU_RDLSN:
-                 varbuf_append (&b, "rdlsn=%d",
-                                (cis[i + 2] << 8) | cis[i + 1]);
-                 break;
-
-               case HNBU_XTALFREQ:
-                 varbuf_append (&b, "xtalfreq=%d",
-                                (cis[i + 4] << 24) |
-                                (cis[i + 3] << 16) |
-                                (cis[i + 2] << 8) | cis[i + 1]);
-                 break;
-
-               case HNBU_RSSISMBXA2G:
-                 ASSERT (sromrev == 3);
-                 varbuf_append (&b, "rssismf2g=%d", cis[i + 1] & 0xf);
-                 varbuf_append (&b, "rssismc2g=%d", (cis[i + 1] >> 4) & 0xf);
-                 varbuf_append (&b, "rssisav2g=%d", cis[i + 2] & 0x7);
-                 varbuf_append (&b, "bxa2g=%d", (cis[i + 2] >> 3) & 0x3);
-                 break;
-
-               case HNBU_RSSISMBXA5G:
-                 ASSERT (sromrev == 3);
-                 varbuf_append (&b, "rssismf5g=%d", cis[i + 1] & 0xf);
-                 varbuf_append (&b, "rssismc5g=%d", (cis[i + 1] >> 4) & 0xf);
-                 varbuf_append (&b, "rssisav5g=%d", cis[i + 2] & 0x7);
-                 varbuf_append (&b, "bxa5g=%d", (cis[i + 2] >> 3) & 0x3);
-                 break;
-
-               case HNBU_TRI2G:
-                 ASSERT (sromrev == 3);
-                 varbuf_append (&b, "tri2g=%d", cis[i + 1]);
-                 break;
-
-               case HNBU_TRI5G:
-                 ASSERT (sromrev == 3);
-                 varbuf_append (&b, "tri5gl=%d", cis[i + 1]);
-                 varbuf_append (&b, "tri5g=%d", cis[i + 2]);
-                 varbuf_append (&b, "tri5gh=%d", cis[i + 3]);
-                 break;
-
-               case HNBU_RXPO2G:
-                 ASSERT (sromrev == 3);
-                 varbuf_append (&b, "rxpo2g=%d", cis[i + 1]);
-                 break;
-
-               case HNBU_RXPO5G:
-                 ASSERT (sromrev == 3);
-                 varbuf_append (&b, "rxpo5g=%d", cis[i + 1]);
-                 break;
-
-               case HNBU_BOARDNUM:
-                 boardnum = (cis[i + 2] << 8) + cis[i + 1];
-                 break;
-
-               case HNBU_MACADDR:
-                 bcm_ether_ntoa ((struct ether_addr *) &cis[i + 1], eabuf);
-                 break;
-
-               case HNBU_BOARDTYPE:
-                 varbuf_append (&b, "boardtype=0x%x",
-                                (cis[i + 2] << 8) + cis[i + 1]);
-                 break;
-
-#if defined(BCMCCISSR3)
-               case HNBU_SROM3SWRGN:
-                 {
-                   uint16 srom[35];
-                   uint8 srev = cis[i + 1 + 70];
-                   ASSERT (srev == 3);
-                   /* make tuple value 16-bit aligned and parse it */
-                   bcopy (&cis[i + 1], srom, sizeof (srom));
-                   _initvars_srom_pci (srev, srom, SROM3_SWRGN_OFF, &b);
-                   /* create extra variables */
-                   varbuf_append (&b, "vendid=0x%x",
-                                  (cis[i + 1 + 73] << 8) + cis[i + 1 + 72]);
-                   varbuf_append (&b, "devid=0x%x",
-                                  (cis[i + 1 + 75] << 8) + cis[i + 1 + 74]);
-                   varbuf_append (&b, "xtalfreq=%d",
-                                  (cis[i + 1 + 77] << 8) + cis[i + 1 + 76]);
-                   /* 2.4G antenna gain is included in SROM */
-                   ag_init = TRUE;
-                   /* Ethernet MAC address is included in SROM */
-                   eabuf[0] = 0;
-                   boardnum = -1;
-                   break;
-                 }
-#endif
-               }
-             break;
-           }
-         i += tlen;
-       }
-      while (tup != CISTPL_END);
-    }
-
-  if (boardnum != -1)
-    {
-      varbuf_append (&b, "boardnum=%d", boardnum);
-    }
-
-  if (eabuf[0])
-    {
-      varbuf_append (&b, "macaddr=%s", eabuf);
-    }
-
-  /* if there is no antenna gain field, set default */
-  if (ag_init == FALSE)
-    {
-      varbuf_append (&b, "ag0=%d", 0xff);
-    }
-
-  /* final nullbyte terminator */
-  ASSERT (b.size >= 1);
-  *b.buf++ = '\0';
-  varsize = (uint) (b.buf - base);
-  ASSERT (varsize < MAXSZ_NVRAM_VARS);
-  if (varsize < MAXSZ_NVRAM_VARS)
-    {
-      char *new_buf;
-      new_buf = (char *) MALLOC (osh, varsize);
-      ASSERT (new_buf);
-      if (new_buf)
-       {
-         bcopy (base, new_buf, varsize);
-         MFREE (osh, base, MAXSZ_NVRAM_VARS);
-         base = new_buf;
-       }
-    }
-
-  *vars = base;
-  *count = varsize;
-
-  return (0);
-}
-
-
-/* set PCMCIA sprom command register */
-static int
-sprom_cmd_pcmcia (osl_t * osh, uint8 cmd)
-{
-  uint8 status = 0;
-  uint wait_cnt = 1000;
-
-  /* write sprom command register */
-  OSL_PCMCIA_WRITE_ATTR (osh, SROM_CS, &cmd, 1);
-
-  /* wait status */
-  while (wait_cnt--)
-    {
-      OSL_PCMCIA_READ_ATTR (osh, SROM_CS, &status, 1);
-      if (status & SROM_DONE)
-       return 0;
-    }
-
-  return 1;
-}
-
-/* read a word from the PCMCIA srom */
-static int
-sprom_read_pcmcia (osl_t * osh, uint16 addr, uint16 * data)
-{
-  uint8 addr_l, addr_h, data_l, data_h;
-
-  addr_l = (uint8) ((addr * 2) & 0xff);
-  addr_h = (uint8) (((addr * 2) >> 8) & 0xff);
-
-  /* set address */
-  OSL_PCMCIA_WRITE_ATTR (osh, SROM_ADDRH, &addr_h, 1);
-  OSL_PCMCIA_WRITE_ATTR (osh, SROM_ADDRL, &addr_l, 1);
-
-  /* do read */
-  if (sprom_cmd_pcmcia (osh, SROM_READ))
-    return 1;
-
-  /* read data */
-  data_h = data_l = 0;
-  OSL_PCMCIA_READ_ATTR (osh, SROM_DATAH, &data_h, 1);
-  OSL_PCMCIA_READ_ATTR (osh, SROM_DATAL, &data_l, 1);
-
-  *data = (data_h << 8) | data_l;
-  return 0;
-}
-
-/* write a word to the PCMCIA srom */
-static int
-sprom_write_pcmcia (osl_t * osh, uint16 addr, uint16 data)
-{
-  uint8 addr_l, addr_h, data_l, data_h;
-
-  addr_l = (uint8) ((addr * 2) & 0xff);
-  addr_h = (uint8) (((addr * 2) >> 8) & 0xff);
-  data_l = (uint8) (data & 0xff);
-  data_h = (uint8) ((data >> 8) & 0xff);
-
-  /* set address */
-  OSL_PCMCIA_WRITE_ATTR (osh, SROM_ADDRH, &addr_h, 1);
-  OSL_PCMCIA_WRITE_ATTR (osh, SROM_ADDRL, &addr_l, 1);
-
-  /* write data */
-  OSL_PCMCIA_WRITE_ATTR (osh, SROM_DATAH, &data_h, 1);
-  OSL_PCMCIA_WRITE_ATTR (osh, SROM_DATAL, &data_l, 1);
-
-  /* do write */
-  return sprom_cmd_pcmcia (osh, SROM_WRITE);
-}
-
-/*
- * Read in and validate sprom.
- * Return 0 on success, nonzero on error.
- */
-static int
-sprom_read_pci (osl_t * osh, uint16 * sprom, uint wordoff, uint16 * buf,
-               uint nwords, bool check_crc)
-{
-  int err = 0;
-  uint i;
-
-  /* read the sprom */
-  for (i = 0; i < nwords; i++)
-    {
-#ifdef BCMQT
-      buf[i] = R_REG (osh, &sprom[wordoff + i]);
-#endif
-      buf[i] = R_REG (osh, &sprom[wordoff + i]);
-    }
-
-  if (check_crc)
-    {
-      if (buf[0] == 0xffff)
-       {
-         /* The hardware thinks that an srom that starts with 0xffff
-          * is blank, regardless of the rest of the content, so declare
-          * it bad.
-          */
-         BS_ERROR (("%s: buf[0] = 0x%x, returning bad-crc\n", __FUNCTION__,
-                    buf[0]));
-         return 1;
-       }
-
-      /* fixup the endianness so crc8 will pass */
-      htol16_buf (buf, nwords * 2);
-      if (hndcrc8 ((uint8 *) buf, nwords * 2, 0xff) != 0x9f)
-       err = 1;
-      /* now correct the endianness of the byte array */
-      ltoh16_buf (buf, nwords * 2);
-    }
-
-  return err;
-}
-
-/*
-* Create variable table from memory.
-* Return 0 on success, nonzero on error.
-*/
-static int
-BCMINITFN (initvars_table) (osl_t * osh, char *start, char *end, char **vars,
-                           uint * count)
-{
-  int c = (int) (end - start);
-
-  /* do it only when there is more than just the null string */
-  if (c > 1)
-    {
-      char *vp = MALLOC (osh, c);
-      ASSERT (vp);
-      if (!vp)
-       return BCME_NOMEM;
-      bcopy (start, vp, c);
-      *vars = vp;
-      *count = c;
-    }
-  else
-    {
-      *vars = NULL;
-      *count = 0;
-    }
-
-  return 0;
-}
-
-/*
- * Find variables with <devpath> from flash. 'base' points to the beginning
- * of the table upon enter and to the end of the table upon exit when success.
- * Return 0 on success, nonzero on error.
- */
-static int
-initvars_flash (sb_t * sbh, osl_t * osh, char **base, uint len)
-{
-  char *vp = *base;
-  char *flash;
-  int err;
-  char *s;
-  uint l, dl, copy_len;
-  char devpath[SB_DEVPATH_BUFSZ];
-
-  /* allocate memory and read in flash */
-  if (!(flash = MALLOC (osh, NVRAM_SPACE)))
-    return BCME_NOMEM;
-  if ((err = nvram_getall (flash, NVRAM_SPACE)))
-    goto exit;
-
-  sb_devpath (sbh, devpath, sizeof (devpath));
-
-  /* grab vars with the <devpath> prefix in name */
-  dl = strlen (devpath);
-  for (s = flash; s && *s; s += l + 1)
-    {
-      l = strlen (s);
-
-      /* skip non-matching variable */
-      if (strncmp (s, devpath, dl))
-       continue;
-
-      /* is there enough room to copy? */
-      copy_len = l - dl + 1;
-      if (len < copy_len)
-       {
-         err = BCME_BUFTOOSHORT;
-         goto exit;
-       }
-
-      /* no prefix, just the name=value */
-      strncpy (vp, &s[dl], copy_len);
-      vp += copy_len;
-      len -= copy_len;
-    }
-
-  /* add null string as terminator */
-  if (len < 1)
-    {
-      err = BCME_BUFTOOSHORT;
-      goto exit;
-    }
-  *vp++ = '\0';
-
-  *base = vp;
-
-exit:MFREE (osh, flash, NVRAM_SPACE);
-  return err;
-}
-
-#if !defined(BCMUSBDEV) && !defined(BCMSDIODEV)
-/*
- * Initialize nonvolatile variable table from flash.
- * Return 0 on success, nonzero on error.
- */
-static int
-initvars_flash_sb (sb_t * sbh, char **vars, uint * count)
-{
-  osl_t *osh = sb_osh (sbh);
-  char *vp, *base;
-  int err;
-
-  ASSERT (vars);
-  ASSERT (count);
-
-  base = vp = MALLOC (osh, MAXSZ_NVRAM_VARS);
-  ASSERT (vp);
-  if (!vp)
-    return BCME_NOMEM;
-
-  if ((err = initvars_flash (sbh, osh, &vp, MAXSZ_NVRAM_VARS)) == 0)
-    err = initvars_table (osh, base, vp, vars, count);
-
-  MFREE (osh, base, MAXSZ_NVRAM_VARS);
-
-  return err;
-}
-#endif /* !BCMUSBDEV && !BCMSDIODEV */
-
-#ifdef WLTEST
-char mfgsromvars[256];
-char *defaultsromvars = "il0macaddr=00:11:22:33:44:51\0"
-  "et0macaddr=00:11:22:33:44:52\0"
-  "et1macaddr=00:11:22:33:44:53\0"
-  "boardtype=0xffff\0"
-  "boardrev=0x10\0" "boardflags=8\0" "sromrev=2\0" "aa2g=3\0" "\0";
-#define        MFGSROM_DEFVARSLEN      149     /* default srom len */
-#endif /* WL_TEST */
-
-/*
- * Initialize nonvolatile variable table from sprom.
- * Return 0 on success, nonzero on error.
- */
-
-typedef struct
-{
-  const char *name;
-  uint32 revmask;
-  uint32 flags;
-  uint16 off;
-  uint16 mask;
-} sromvar_t;
-
-#define SRFL_MORE      1       /* value continues as described by the next entry */
-#define        SRFL_NOFFS      2       /* value bits can't be all one's */
-#define        SRFL_PRHEX      4       /* value is in hexdecimal format */
-#define        SRFL_PRSIGN     8       /* value is in signed decimal format */
-#define        SRFL_CCODE      0x10    /* value is in country code format */
-#define        SRFL_ETHADDR    0x20    /* value is an Ethernet address */
-#define SRFL_LEDDC     0x40    /* value is an LED duty cycle */
-
-/* Assumptions:
- * - Ethernet address spins across 3 consective words
- *
- * Table rules:
- * - Add multiple entries next to each other if a value spins across multiple words
- *   (even multiple fields in the same word) with each entry except the last having
- *   it's SRFL_MORE bit set.
- * - Ethernet address entry does not follow above rule and must not have SRFL_MORE
- *   bit set. Its SRFL_ETHADDR bit implies it takes multiple words.
- * - The last entry's name field must be NULL to indicate the end of the table. Other
- *   entries must have non-NULL name.
- */
-
-static const sromvar_t pci_sromvars[] = {
-  {"boardrev", 0x0000000e, SRFL_PRHEX, SROM_AABREV, SROM_BR_MASK},
-  {"boardrev", 0x000000f0, SRFL_PRHEX, SROM4_BREV, 0xffff},
-  {"boardrev", 0xffffff00, SRFL_PRHEX, SROM8_BREV, 0xffff},
-  {"boardflags", 0x00000002, SRFL_PRHEX, SROM_BFL, 0xffff},
-  {"boardflags", 0x00000004, SRFL_PRHEX | SRFL_MORE, SROM_BFL, 0xffff},
-  {"", 0, 0, SROM_BFL2, 0xffff},
-  {"boardflags", 0x00000008, SRFL_PRHEX | SRFL_MORE, SROM_BFL, 0xffff},
-  {"", 0, 0, SROM3_BFL2, 0xffff},
-  {"boardflags", 0x00000010, SRFL_PRHEX | SRFL_MORE, SROM4_BFL0, 0xffff},
-  {"", 0, 0, SROM4_BFL1, 0xffff},
-  {"boardflags", 0x000000e0, SRFL_PRHEX | SRFL_MORE, SROM5_BFL0, 0xffff},
-  {"", 0, 0, SROM5_BFL1, 0xffff},
-  {"boardflags", 0xffffff00, SRFL_PRHEX | SRFL_MORE, SROM8_BFL0, 0xffff},
-  {"", 0, 0, SROM8_BFL1, 0xffff},
-  {"boardflags2", 0x00000010, SRFL_PRHEX | SRFL_MORE, SROM4_BFL2, 0xffff},
-  {"", 0, 0, SROM4_BFL3, 0xffff},
-  {"boardflags2", 0x000000e0, SRFL_PRHEX | SRFL_MORE, SROM5_BFL2, 0xffff},
-  {"", 0, 0, SROM5_BFL3, 0xffff},
-  {"boardflags2", 0xffffff00, SRFL_PRHEX | SRFL_MORE, SROM8_BFL2, 0xffff},
-  {"", 0, 0, SROM8_BFL3, 0xffff},
-  {"boardtype", 0xfffffffc, SRFL_PRHEX, SROM_SSID, 0xffff},
-  {"boardnum", 0x00000006, 0, SROM_MACLO_IL0, 0xffff},
-  {"boardnum", 0x00000008, 0, SROM3_MACLO, 0xffff},
-  {"boardnum", 0x00000010, 0, SROM4_MACLO, 0xffff},
-  {"boardnum", 0x000000e0, 0, SROM5_MACLO, 0xffff},
-  {"boardnum", 0xffffff00, 0, SROM8_MACLO, 0xffff},
-  {"cc", 0x00000002, 0, SROM_AABREV, SROM_CC_MASK},
-  {"regrev", 0x00000008, 0, SROM_OPO, 0xff00},
-  {"regrev", 0x00000010, 0, SROM4_REGREV, 0xff},
-  {"regrev", 0x000000e0, 0, SROM5_REGREV, 0xff},
-  {"regrev", 0xffffff00, 0, SROM8_REGREV, 0xff},
-  {"ledbh0", 0x0000000e, SRFL_NOFFS, SROM_LEDBH10, 0xff},
-  {"ledbh1", 0x0000000e, SRFL_NOFFS, SROM_LEDBH10, 0xff00},
-  {"ledbh2", 0x0000000e, SRFL_NOFFS, SROM_LEDBH32, 0xff},
-  {"ledbh3", 0x0000000e, SRFL_NOFFS, SROM_LEDBH32, 0xff00},
-  {"ledbh0", 0x00000010, SRFL_NOFFS, SROM4_LEDBH10, 0xff},
-  {"ledbh1", 0x00000010, SRFL_NOFFS, SROM4_LEDBH10, 0xff00},
-  {"ledbh2", 0x00000010, SRFL_NOFFS, SROM4_LEDBH32, 0xff},
-  {"ledbh3", 0x00000010, SRFL_NOFFS, SROM4_LEDBH32, 0xff00},
-  {"ledbh0", 0x000000e0, SRFL_NOFFS, SROM5_LEDBH10, 0xff},
-  {"ledbh1", 0x000000e0, SRFL_NOFFS, SROM5_LEDBH10, 0xff00},
-  {"ledbh2", 0x000000e0, SRFL_NOFFS, SROM5_LEDBH32, 0xff},
-  {"ledbh3", 0x000000e0, SRFL_NOFFS, SROM5_LEDBH32, 0xff00},
-  {"ledbh0", 0xffffff00, SRFL_NOFFS, SROM8_LEDBH10, 0xff},
-  {"ledbh1", 0xffffff00, SRFL_NOFFS, SROM8_LEDBH10, 0xff00},
-  {"ledbh2", 0xffffff00, SRFL_NOFFS, SROM8_LEDBH32, 0xff},
-  {"ledbh3", 0xffffff00, SRFL_NOFFS, SROM8_LEDBH32, 0xff00},
-  {"pa0b0", 0x0000000e, SRFL_PRHEX, SROM_WL0PAB0, 0xffff},
-  {"pa0b1", 0x0000000e, SRFL_PRHEX, SROM_WL0PAB1, 0xffff},
-  {"pa0b2", 0x0000000e, SRFL_PRHEX, SROM_WL0PAB2, 0xffff},
-  {"pa0itssit", 0x0000000e, 0, SROM_ITT, 0xff},
-  {"pa0maxpwr", 0x0000000e, 0, SROM_WL10MAXP, 0xff},
-  {"pa0b0", 0xffffff00, SRFL_PRHEX, SROM8_W0_PAB0, 0xffff},
-  {"pa0b1", 0xffffff00, SRFL_PRHEX, SROM8_W0_PAB1, 0xffff},
-  {"pa0b2", 0xffffff00, SRFL_PRHEX, SROM8_W0_PAB2, 0xffff},
-  {"pa0itssit", 0xffffff00, 0, SROM8_W0_ITTMAXP, 0xff00},
-  {"pa0maxpwr", 0xffffff00, 0, SROM8_W0_ITTMAXP, 0xff},
-  {"opo", 0x0000000c, 0, SROM_OPO, 0xff},
-  {"opo", 0xffffff00, 0, SROM8_2G_OFDMPO, 0xff},
-  {"aa2g", 0x0000000e, 0, SROM_AABREV, SROM_AA0_MASK},
-  {"aa2g", 0x000000f0, 0, SROM4_AA, 0xff},
-  {"aa2g", 0xffffff00, 0, SROM8_AA, 0xff},
-  {"aa5g", 0x0000000e, 0, SROM_AABREV, SROM_AA1_MASK},
-  {"aa5g", 0x000000f0, 0, SROM4_AA, 0xff00},
-  {"aa5g", 0xffffff00, 0, SROM8_AA, 0xff00},
-  {"ag0", 0x0000000e, 0, SROM_AG10, 0xff},
-  {"ag1", 0x0000000e, 0, SROM_AG10, 0xff00},
-  {"ag0", 0x000000f0, 0, SROM4_AG10, 0xff},
-  {"ag1", 0x000000f0, 0, SROM4_AG10, 0xff00},
-  {"ag2", 0x000000f0, 0, SROM4_AG32, 0xff},
-  {"ag3", 0x000000f0, 0, SROM4_AG32, 0xff00},
-  {"ag0", 0xffffff00, 0, SROM8_AG10, 0xff},
-  {"ag1", 0xffffff00, 0, SROM8_AG10, 0xff00},
-  {"ag2", 0xffffff00, 0, SROM8_AG32, 0xff},
-  {"ag3", 0xffffff00, 0, SROM8_AG32, 0xff00},
-  {"pa1b0", 0x0000000e, SRFL_PRHEX, SROM_WL1PAB0, 0xffff},
-  {"pa1b1", 0x0000000e, SRFL_PRHEX, SROM_WL1PAB1, 0xffff},
-  {"pa1b2", 0x0000000e, SRFL_PRHEX, SROM_WL1PAB2, 0xffff},
-  {"pa1lob0", 0x0000000c, SRFL_PRHEX, SROM_WL1LPAB0, 0xffff},
-  {"pa1lob1", 0x0000000c, SRFL_PRHEX, SROM_WL1LPAB1, 0xffff},
-  {"pa1lob2", 0x0000000c, SRFL_PRHEX, SROM_WL1LPAB2, 0xffff},
-  {"pa1hib0", 0x0000000c, SRFL_PRHEX, SROM_WL1HPAB0, 0xffff},
-  {"pa1hib1", 0x0000000c, SRFL_PRHEX, SROM_WL1HPAB1, 0xffff},
-  {"pa1hib2", 0x0000000c, SRFL_PRHEX, SROM_WL1HPAB2, 0xffff},
-  {"pa1itssit", 0x0000000e, 0, SROM_ITT, 0xff00},
-  {"pa1maxpwr", 0x0000000e, 0, SROM_WL10MAXP, 0xff00},
-  {"pa1lomaxpwr", 0x0000000c, 0, SROM_WL1LHMAXP, 0xff00},
-  {"pa1himaxpwr", 0x0000000c, 0, SROM_WL1LHMAXP, 0xff},
-  {"pa1b0", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB0, 0xffff},
-  {"pa1b1", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB1, 0xffff},
-  {"pa1b2", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB2, 0xffff},
-  {"pa1lob0", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB0_LC, 0xffff},
-  {"pa1lob1", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB1_LC, 0xffff},
-  {"pa1lob2", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB2_LC, 0xffff},
-  {"pa1hib0", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB0_HC, 0xffff},
-  {"pa1hib1", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB1_HC, 0xffff},
-  {"pa1hib2", 0xffffff00, SRFL_PRHEX, SROM8_W1_PAB2_HC, 0xffff},
-  {"pa1itssit", 0xffffff00, 0, SROM8_W1_ITTMAXP, 0xff00},
-  {"pa1maxpwr", 0xffffff00, 0, SROM8_W1_ITTMAXP, 0xff},
-  {"pa1lomaxpwr", 0xffffff00, 0, SROM8_W1_MAXP_LCHC, 0xff00},
-  {"pa1himaxpwr", 0xffffff00, 0, SROM8_W1_MAXP_LCHC, 0xff},
-  {"bxa2g", 0x00000008, 0, SROM_BXARSSI2G, 0x1800},
-  {"rssisav2g", 0x00000008, 0, SROM_BXARSSI2G, 0x0700},
-  {"rssismc2g", 0x00000008, 0, SROM_BXARSSI2G, 0x00f0},
-  {"rssismf2g", 0x00000008, 0, SROM_BXARSSI2G, 0x000f},
-  {"bxa2g", 0xffffff00, 0, SROM8_BXARSSI2G, 0x1800},
-  {"rssisav2g", 0xffffff00, 0, SROM8_BXARSSI2G, 0x0700},
-  {"rssismc2g", 0xffffff00, 0, SROM8_BXARSSI2G, 0x00f0},
-  {"rssismf2g", 0xffffff00, 0, SROM8_BXARSSI2G, 0x000f},
-  {"bxa5g", 0x00000008, 0, SROM_BXARSSI5G, 0x1800},
-  {"rssisav5g", 0x00000008, 0, SROM_BXARSSI5G, 0x0700},
-  {"rssismc5g", 0x00000008, 0, SROM_BXARSSI5G, 0x00f0},
-  {"rssismf5g", 0x00000008, 0, SROM_BXARSSI5G, 0x000f},
-  {"bxa5g", 0xffffff00, 0, SROM8_BXARSSI5G, 0x1800},
-  {"rssisav5g", 0xffffff00, 0, SROM8_BXARSSI5G, 0x0700},
-  {"rssismc5g", 0xffffff00, 0, SROM8_BXARSSI5G, 0x00f0},
-  {"rssismf5g", 0xffffff00, 0, SROM8_BXARSSI5G, 0x000f},
-  {"tri2g", 0x00000008, 0, SROM_TRI52G, 0xff},
-  {"tri5g", 0x00000008, 0, SROM_TRI52G, 0xff00},
-  {"tri5gl", 0x00000008, 0, SROM_TRI5GHL, 0xff},
-  {"tri5gh", 0x00000008, 0, SROM_TRI5GHL, 0xff00},
-  {"tri2g", 0xffffff00, 0, SROM8_TRI52G, 0xff},
-  {"tri5g", 0xffffff00, 0, SROM8_TRI52G, 0xff00},
-  {"tri5gl", 0xffffff00, 0, SROM8_TRI5GHL, 0xff},
-  {"tri5gh", 0xffffff00, 0, SROM8_TRI5GHL, 0xff00},
-  {"rxpo2g", 0x00000008, SRFL_PRSIGN, SROM_RXPO52G, 0xff},
-  {"rxpo5g", 0x00000008, SRFL_PRSIGN, SROM_RXPO52G, 0xff00},
-  {"rxpo2g", 0xffffff00, SRFL_PRSIGN, SROM8_RXPO52G, 0xff},
-  {"rxpo5g", 0xffffff00, SRFL_PRSIGN, SROM8_RXPO52G, 0xff00},
-  {"txchain", 0x000000f0, SRFL_NOFFS, SROM4_TXRXC, SROM4_TXCHAIN_MASK},
-  {"rxchain", 0x000000f0, SRFL_NOFFS, SROM4_TXRXC, SROM4_RXCHAIN_MASK},
-  {"antswitch", 0x000000f0, SRFL_NOFFS, SROM4_TXRXC, SROM4_SWITCH_MASK},
-  {"txchain", 0xffffff00, SRFL_NOFFS, SROM8_TXRXC, SROM4_TXCHAIN_MASK},
-  {"rxchain", 0xffffff00, SRFL_NOFFS, SROM8_TXRXC, SROM4_RXCHAIN_MASK},
-  {"antswitch", 0xffffff00, SRFL_NOFFS, SROM8_TXRXC, SROM4_SWITCH_MASK},
-  {"txpid2ga0", 0x000000f0, 0, SROM4_TXPID2G, 0xff},
-  {"txpid2ga1", 0x000000f0, 0, SROM4_TXPID2G, 0xff00},
-  {"txpid2ga2", 0x000000f0, 0, SROM4_TXPID2G + 1, 0xff},
-  {"txpid2ga3", 0x000000f0, 0, SROM4_TXPID2G + 1, 0xff00},
-  {"txpid5ga0", 0x000000f0, 0, SROM4_TXPID5G, 0xff},
-  {"txpid5ga1", 0x000000f0, 0, SROM4_TXPID5G, 0xff00},
-  {"txpid5ga2", 0x000000f0, 0, SROM4_TXPID5G + 1, 0xff},
-  {"txpid5ga3", 0x000000f0, 0, SROM4_TXPID5G + 1, 0xff00},
-  {"txpid5gla0", 0x000000f0, 0, SROM4_TXPID5GL, 0xff},
-  {"txpid5gla1", 0x000000f0, 0, SROM4_TXPID5GL, 0xff00},
-  {"txpid5gla2", 0x000000f0, 0, SROM4_TXPID5GL + 1, 0xff},
-  {"txpid5gla3", 0x000000f0, 0, SROM4_TXPID5GL + 1, 0xff00},
-  {"txpid5gha0", 0x000000f0, 0, SROM4_TXPID5GH, 0xff},
-  {"txpid5gha1", 0x000000f0, 0, SROM4_TXPID5GH, 0xff00},
-  {"txpid5gha2", 0x000000f0, 0, SROM4_TXPID5GH + 1, 0xff},
-  {"txpid5gha3", 0x000000f0, 0, SROM4_TXPID5GH + 1, 0xff00},
-  {"cck2gpo", 0x000000f0, 0, SROM4_2G_CCKPO, 0xffff},
-  {"cck2gpo", 0xffffff00, 0, SROM8_2G_CCKPO, 0xffff},
-  {"ofdm2gpo", 0x000000f0, SRFL_MORE, SROM4_2G_OFDMPO, 0xffff},
-  {"", 0, 0, SROM4_2G_OFDMPO + 1, 0xffff},
-  {"ofdm5gpo", 0x000000f0, SRFL_MORE, SROM4_5G_OFDMPO, 0xffff},
-  {"", 0, 0, SROM4_5G_OFDMPO + 1, 0xffff},
-  {"ofdm5glpo", 0x000000f0, SRFL_MORE, SROM4_5GL_OFDMPO, 0xffff},
-  {"", 0, 0, SROM4_5GL_OFDMPO + 1, 0xffff},
-  {"ofdm5ghpo", 0x000000f0, SRFL_MORE, SROM4_5GH_OFDMPO, 0xffff},
-  {"", 0, 0, SROM4_5GH_OFDMPO + 1, 0xffff},
-  {"ofdm2gpo", 0xffffff00, SRFL_MORE, SROM8_2G_OFDMPO, 0xffff},
-  {"", 0, 0, SROM8_2G_OFDMPO + 1, 0xffff},
-  {"ofdm5gpo", 0xffffff00, SRFL_MORE, SROM8_5G_OFDMPO, 0xffff},
-  {"", 0, 0, SROM8_5G_OFDMPO + 1, 0xffff},
-  {"ofdm5glpo", 0xffffff00, SRFL_MORE, SROM8_5GL_OFDMPO, 0xffff},
-  {"", 0, 0, SROM8_5GL_OFDMPO + 1, 0xffff},
-  {"ofdm5ghpo", 0xffffff00, SRFL_MORE, SROM8_5GH_OFDMPO, 0xffff},
-  {"", 0, 0, SROM8_5GH_OFDMPO + 1, 0xffff},
-  {"mcs2gpo0", 0x000000f0, 0, SROM4_2G_MCSPO, 0xffff},
-  {"mcs2gpo1", 0x000000f0, 0, SROM4_2G_MCSPO + 1, 0xffff},
-  {"mcs2gpo2", 0x000000f0, 0, SROM4_2G_MCSPO + 2, 0xffff},
-  {"mcs2gpo3", 0x000000f0, 0, SROM4_2G_MCSPO + 3, 0xffff},
-  {"mcs2gpo4", 0x000000f0, 0, SROM4_2G_MCSPO + 4, 0xffff},
-  {"mcs2gpo5", 0x000000f0, 0, SROM4_2G_MCSPO + 5, 0xffff},
-  {"mcs2gpo6", 0x000000f0, 0, SROM4_2G_MCSPO + 6, 0xffff},
-  {"mcs2gpo7", 0x000000f0, 0, SROM4_2G_MCSPO + 7, 0xffff},
-  {"mcs5gpo0", 0x000000f0, 0, SROM4_5G_MCSPO, 0xffff},
-  {"mcs5gpo1", 0x000000f0, 0, SROM4_5G_MCSPO + 1, 0xffff},
-  {"mcs5gpo2", 0x000000f0, 0, SROM4_5G_MCSPO + 2, 0xffff},
-  {"mcs5gpo3", 0x000000f0, 0, SROM4_5G_MCSPO + 3, 0xffff},
-  {"mcs5gpo4", 0x000000f0, 0, SROM4_5G_MCSPO + 4, 0xffff},
-  {"mcs5gpo5", 0x000000f0, 0, SROM4_5G_MCSPO + 5, 0xffff},
-  {"mcs5gpo6", 0x000000f0, 0, SROM4_5G_MCSPO + 6, 0xffff},
-  {"mcs5gpo7", 0x000000f0, 0, SROM4_5G_MCSPO + 7, 0xffff},
-  {"mcs5glpo0", 0x000000f0, 0, SROM4_5GL_MCSPO, 0xffff},
-  {"mcs5glpo1", 0x000000f0, 0, SROM4_5GL_MCSPO + 1, 0xffff},
-  {"mcs5glpo2", 0x000000f0, 0, SROM4_5GL_MCSPO + 2, 0xffff},
-  {"mcs5glpo3", 0x000000f0, 0, SROM4_5GL_MCSPO + 3, 0xffff},
-  {"mcs5glpo4", 0x000000f0, 0, SROM4_5GL_MCSPO + 4, 0xffff},
-  {"mcs5glpo5", 0x000000f0, 0, SROM4_5GL_MCSPO + 5, 0xffff},
-  {"mcs5glpo6", 0x000000f0, 0, SROM4_5GL_MCSPO + 6, 0xffff},
-  {"mcs5glpo7", 0x000000f0, 0, SROM4_5GL_MCSPO + 7, 0xffff},
-  {"mcs5ghpo0", 0x000000f0, 0, SROM4_5GH_MCSPO, 0xffff},
-  {"mcs5ghpo1", 0x000000f0, 0, SROM4_5GH_MCSPO + 1, 0xffff},
-  {"mcs5ghpo2", 0x000000f0, 0, SROM4_5GH_MCSPO + 2, 0xffff},
-  {"mcs5ghpo3", 0x000000f0, 0, SROM4_5GH_MCSPO + 3, 0xffff},
-  {"mcs5ghpo4", 0x000000f0, 0, SROM4_5GH_MCSPO + 4, 0xffff},
-  {"mcs5ghpo5", 0x000000f0, 0, SROM4_5GH_MCSPO + 5, 0xffff},
-  {"mcs5ghpo6", 0x000000f0, 0, SROM4_5GH_MCSPO + 6, 0xffff},
-  {"mcs5ghpo7", 0x000000f0, 0, SROM4_5GH_MCSPO + 7, 0xffff},
-  {"mcs2gpo0", 0xffffff00, 0, SROM8_2G_MCSPO, 0xffff},
-  {"mcs2gpo1", 0xffffff00, 0, SROM8_2G_MCSPO + 1, 0xffff},
-  {"mcs2gpo2", 0xffffff00, 0, SROM8_2G_MCSPO + 2, 0xffff},
-  {"mcs2gpo3", 0xffffff00, 0, SROM8_2G_MCSPO + 3, 0xffff},
-  {"mcs2gpo4", 0xffffff00, 0, SROM8_2G_MCSPO + 4, 0xffff},
-  {"mcs2gpo5", 0xffffff00, 0, SROM8_2G_MCSPO + 5, 0xffff},
-  {"mcs2gpo6", 0xffffff00, 0, SROM8_2G_MCSPO + 6, 0xffff},
-  {"mcs2gpo7", 0xffffff00, 0, SROM8_2G_MCSPO + 7, 0xffff},
-  {"mcs5gpo0", 0xffffff00, 0, SROM8_5G_MCSPO, 0xffff},
-  {"mcs5gpo1", 0xffffff00, 0, SROM8_5G_MCSPO + 1, 0xffff},
-  {"mcs5gpo2", 0xffffff00, 0, SROM8_5G_MCSPO + 2, 0xffff},
-  {"mcs5gpo3", 0xffffff00, 0, SROM8_5G_MCSPO + 3, 0xffff},
-  {"mcs5gpo4", 0xffffff00, 0, SROM8_5G_MCSPO + 4, 0xffff},
-  {"mcs5gpo5", 0xffffff00, 0, SROM8_5G_MCSPO + 5, 0xffff},
-  {"mcs5gpo6", 0xffffff00, 0, SROM8_5G_MCSPO + 6, 0xffff},
-  {"mcs5gpo7", 0xffffff00, 0, SROM8_5G_MCSPO + 7, 0xffff},
-  {"mcs5glpo0", 0xffffff00, 0, SROM8_5GL_MCSPO, 0xffff},
-  {"mcs5glpo1", 0xffffff00, 0, SROM8_5GL_MCSPO + 1, 0xffff},
-  {"mcs5glpo2", 0xffffff00, 0, SROM8_5GL_MCSPO + 2, 0xffff},
-  {"mcs5glpo3", 0xffffff00, 0, SROM8_5GL_MCSPO + 3, 0xffff},
-  {"mcs5glpo4", 0xffffff00, 0, SROM8_5GL_MCSPO + 4, 0xffff},
-  {"mcs5glpo5", 0xffffff00, 0, SROM8_5GL_MCSPO + 5, 0xffff},
-  {"mcs5glpo6", 0xffffff00, 0, SROM8_5GL_MCSPO + 6, 0xffff},
-  {"mcs5glpo7", 0xffffff00, 0, SROM8_5GL_MCSPO + 7, 0xffff},
-  {"mcs5ghpo0", 0xffffff00, 0, SROM8_5GH_MCSPO, 0xffff},
-  {"mcs5ghpo1", 0xffffff00, 0, SROM8_5GH_MCSPO + 1, 0xffff},
-  {"mcs5ghpo2", 0xffffff00, 0, SROM8_5GH_MCSPO + 2, 0xffff},
-  {"mcs5ghpo3", 0xffffff00, 0, SROM8_5GH_MCSPO + 3, 0xffff},
-  {"mcs5ghpo4", 0xffffff00, 0, SROM8_5GH_MCSPO + 4, 0xffff},
-  {"mcs5ghpo5", 0xffffff00, 0, SROM8_5GH_MCSPO + 5, 0xffff},
-  {"mcs5ghpo6", 0xffffff00, 0, SROM8_5GH_MCSPO + 6, 0xffff},
-  {"mcs5ghpo7", 0xffffff00, 0, SROM8_5GH_MCSPO + 7, 0xffff},
-  {"cddpo", 0x000000f0, 0, SROM4_CDDPO, 0xffff},
-  {"stbcpo", 0x000000f0, 0, SROM4_STBCPO, 0xffff},
-  {"bw40po", 0x000000f0, 0, SROM4_BW40PO, 0xffff},
-  {"bwduppo", 0x000000f0, 0, SROM4_BWDUPPO, 0xffff},
-  {"cddpo", 0xffffff00, 0, SROM8_CDDPO, 0xffff},
-  {"stbcpo", 0xffffff00, 0, SROM8_STBCPO, 0xffff},
-  {"bw40po", 0xffffff00, 0, SROM8_BW40PO, 0xffff},
-  {"bwduppo", 0xffffff00, 0, SROM8_BWDUPPO, 0xffff},
-  {"ccode", 0x0000000f, SRFL_CCODE, SROM_CCODE, 0xffff},
-  {"ccode", 0x00000010, SRFL_CCODE, SROM4_CCODE, 0xffff},
-  {"ccode", 0x000000e0, SRFL_CCODE, SROM5_CCODE, 0xffff},
-  {"ccode", 0xffffff00, SRFL_CCODE, SROM8_CCODE, 0xffff},
-  {"macaddr", 0xffffff00, SRFL_ETHADDR, SROM8_MACHI, 0xffff},
-  {"macaddr", 0x000000e0, SRFL_ETHADDR, SROM5_MACHI, 0xffff},
-  {"macaddr", 0x00000010, SRFL_ETHADDR, SROM4_MACHI, 0xffff},
-  {"macaddr", 0x00000008, SRFL_ETHADDR, SROM3_MACHI, 0xffff},
-  {"il0macaddr", 0x00000007, SRFL_ETHADDR, SROM_MACHI_IL0, 0xffff},
-  {"et1macaddr", 0x00000007, SRFL_ETHADDR, SROM_MACHI_ET1, 0xffff},
-  {"leddc", 0xffffff00, SRFL_NOFFS | SRFL_LEDDC, SROM8_LEDDC, 0xffff},
-  {"leddc", 0x000000e0, SRFL_NOFFS | SRFL_LEDDC, SROM5_LEDDC, 0xffff},
-  {"leddc", 0x00000010, SRFL_NOFFS | SRFL_LEDDC, SROM4_LEDDC, 0xffff},
-  {"leddc", 0x00000008, SRFL_NOFFS | SRFL_LEDDC, SROM3_LEDDC, 0xffff},
-  {NULL, 0, 0, 0, 0}
-};
-
-static const sromvar_t perpath_pci_sromvars[] = {
-  {"maxp2ga", 0x000000f0, 0, SROM4_2G_ITT_MAXP, 0xff},
-  {"itt2ga", 0x000000f0, 0, SROM4_2G_ITT_MAXP, 0xff00},
-  {"itt5ga", 0x000000f0, 0, SROM4_5G_ITT_MAXP, 0xff00},
-  {"pa2gw0a", 0x000000f0, SRFL_PRHEX, SROM4_2G_PA, 0xffff},
-  {"pa2gw1a", 0x000000f0, SRFL_PRHEX, SROM4_2G_PA + 1, 0xffff},
-  {"pa2gw2a", 0x000000f0, SRFL_PRHEX, SROM4_2G_PA + 2, 0xffff},
-  {"pa2gw3a", 0x000000f0, SRFL_PRHEX, SROM4_2G_PA + 3, 0xffff},
-  {"maxp5ga", 0x000000f0, 0, SROM4_5G_ITT_MAXP, 0xff},
-  {"maxp5gha", 0x000000f0, 0, SROM4_5GLH_MAXP, 0xff},
-  {"maxp5gla", 0x000000f0, 0, SROM4_5GLH_MAXP, 0xff00},
-  {"pa5gw0a", 0x000000f0, SRFL_PRHEX, SROM4_5G_PA, 0xffff},
-  {"pa5gw1a", 0x000000f0, SRFL_PRHEX, SROM4_5G_PA + 1, 0xffff},
-  {"pa5gw2a", 0x000000f0, SRFL_PRHEX, SROM4_5G_PA + 2, 0xffff},
-  {"pa5gw3a", 0x000000f0, SRFL_PRHEX, SROM4_5G_PA + 3, 0xffff},
-  {"pa5glw0a", 0x000000f0, SRFL_PRHEX, SROM4_5GL_PA, 0xffff},
-  {"pa5glw1a", 0x000000f0, SRFL_PRHEX, SROM4_5GL_PA + 1, 0xffff},
-  {"pa5glw2a", 0x000000f0, SRFL_PRHEX, SROM4_5GL_PA + 2, 0xffff},
-  {"pa5glw3a", 0x000000f0, SRFL_PRHEX, SROM4_5GL_PA + 3, 0xffff},
-  {"pa5ghw0a", 0x000000f0, SRFL_PRHEX, SROM4_5GH_PA, 0xffff},
-  {"pa5ghw1a", 0x000000f0, SRFL_PRHEX, SROM4_5GH_PA + 1, 0xffff},
-  {"pa5ghw2a", 0x000000f0, SRFL_PRHEX, SROM4_5GH_PA + 2, 0xffff},
-  {"pa5ghw3a", 0x000000f0, SRFL_PRHEX, SROM4_5GH_PA + 3, 0xffff},
-  {"maxp2ga", 0xffffff00, 0, SROM8_2G_ITT_MAXP, 0xff},
-  {"itt2ga", 0xffffff00, 0, SROM8_2G_ITT_MAXP, 0xff00},
-  {"itt5ga", 0xffffff00, 0, SROM8_5G_ITT_MAXP, 0xff00},
-  {"pa2gw0a", 0xffffff00, SRFL_PRHEX, SROM8_2G_PA, 0xffff},
-  {"pa2gw1a", 0xffffff00, SRFL_PRHEX, SROM8_2G_PA + 1, 0xffff},
-  {"pa2gw2a", 0xffffff00, SRFL_PRHEX, SROM8_2G_PA + 2, 0xffff},
-  {"maxp5ga", 0xffffff00, 0, SROM8_5G_ITT_MAXP, 0xff},
-  {"maxp5gha", 0xffffff00, 0, SROM8_5GLH_MAXP, 0xff},
-  {"maxp5gla", 0xffffff00, 0, SROM8_5GLH_MAXP, 0xff00},
-  {"pa5gw0a", 0xffffff00, SRFL_PRHEX, SROM8_5G_PA, 0xffff},
-  {"pa5gw1a", 0xffffff00, SRFL_PRHEX, SROM8_5G_PA + 1, 0xffff},
-  {"pa5gw2a", 0xffffff00, SRFL_PRHEX, SROM8_5G_PA + 2, 0xffff},
-  {"pa5glw0a", 0xffffff00, SRFL_PRHEX, SROM8_5GL_PA, 0xffff},
-  {"pa5glw1a", 0xffffff00, SRFL_PRHEX, SROM8_5GL_PA + 1, 0xffff},
-  {"pa5glw2a", 0xffffff00, SRFL_PRHEX, SROM8_5GL_PA + 2, 0xffff},
-  {"pa5ghw0a", 0xffffff00, SRFL_PRHEX, SROM8_5GH_PA, 0xffff},
-  {"pa5ghw1a", 0xffffff00, SRFL_PRHEX, SROM8_5GH_PA + 1, 0xffff},
-  {"pa5ghw2a", 0xffffff00, SRFL_PRHEX, SROM8_5GH_PA + 2, 0xffff},
-  {NULL, 0, 0, 0, 0}
-};
-
-/* Parse SROM and create name=value pairs. 'srom' points to
- * the SROM word array. 'off' specifies the offset of the
- * first word 'srom' points to, which should be either 0 or
- * SROM3_SWRG_OFF (full SROM or software region).
- */
-
-static uint
-mask_shift (uint16 mask)
-{
-  uint i;
-  for (i = 0; i < (sizeof (mask) << 3); i++)
-    {
-      if (mask & (1 << i))
-       return i;
-    }
-  ASSERT (mask);
-  return 0;
-}
-
-static uint
-mask_width (uint16 mask)
-{
-  int i;
-  for (i = (sizeof (mask) << 3) - 1; i >= 0; i--)
-    {
-      if (mask & (1 << i))
-       return (uint) (i - mask_shift (mask) + 1);
-    }
-  ASSERT (mask);
-  return 0;
-}
-
-#ifdef BCMDBG_ASSERT
-static bool
-mask_valid (uint16 mask)
-{
-  uint shift = mask_shift (mask);
-  uint width = mask_width (mask);
-  return mask == ((~0 << shift) & ~(~0 << (shift + width)));
-}
-#endif
-
-static void
-_initvars_srom_pci (uint8 sromrev, uint16 * srom, uint off, varbuf_t * b)
-{
-  uint16 w;
-  uint32 val;
-  const sromvar_t *srv;
-  uint width;
-  uint flags;
-  uint32 sr = (1 << sromrev);
-
-  varbuf_append (b, "sromrev=%d", sromrev);
-
-  for (srv = pci_sromvars; srv->name != NULL; srv++)
-    {
-      const char *name;
-
-      if ((srv->revmask & sr) == 0)
-       continue;
-
-      if (srv->off < off)
-       continue;
-
-      flags = srv->flags;
-      name = srv->name;
-
-      if (flags & SRFL_ETHADDR)
-       {
-         char eabuf[ETHER_ADDR_STR_LEN];
-         struct ether_addr ea;
-
-         ea.octet[0] = (srom[srv->off - off] >> 8) & 0xff;
-         ea.octet[1] = srom[srv->off - off] & 0xff;
-         ea.octet[2] = (srom[srv->off + 1 - off] >> 8) & 0xff;
-         ea.octet[3] = srom[srv->off + 1 - off] & 0xff;
-         ea.octet[4] = (srom[srv->off + 2 - off] >> 8) & 0xff;
-         ea.octet[5] = srom[srv->off + 2 - off] & 0xff;
-         bcm_ether_ntoa (&ea, eabuf);
-
-         varbuf_append (b, "%s=%s", name, eabuf);
-       }
-      else
-       {
-         ASSERT (mask_valid (srv->mask));
-         ASSERT (mask_width (srv->mask));
-
-         w = srom[srv->off - off];
-         val = (w & srv->mask) >> mask_shift (srv->mask);
-         width = mask_width (srv->mask);
-
-         while (srv->flags & SRFL_MORE)
-           {
-             srv++;
-             ASSERT (srv->name);
-
-             if (srv->off == 0 || srv->off < off)
-               continue;
-
-             ASSERT (mask_valid (srv->mask));
-             ASSERT (mask_width (srv->mask));
-
-             w = srom[srv->off - off];
-             val += ((w & srv->mask) >> mask_shift (srv->mask)) << width;
-             width += mask_width (srv->mask);
-           }
-
-         if ((flags & SRFL_NOFFS) && ((int) val == (1 << width) - 1))
-           continue;
-
-         if (flags & SRFL_CCODE)
-           {
-             if (val == 0)
-               varbuf_append (b, "ccode=");
-             else
-               varbuf_append (b, "ccode=%c%c", (val >> 8), (val & 0xff));
-           }
-         /* LED Powersave duty cycle has to be scaled:
-          *(oncount >> 24) (offcount >> 8)
-          */
-         else if (flags & SRFL_LEDDC)
-           {
-             uint32 w32 = (((val >> 8) & 0xff) << 24) |        /* oncount */
-               (((val & 0xff)) << 8);  /* offcount */
-             varbuf_append (b, "leddc=%d", w32);
-           }
-         else if (flags & SRFL_PRHEX)
-           varbuf_append (b, "%s=0x%x", name, val);
-         else if ((flags & SRFL_PRSIGN) && (val & (1 << (width - 1))))
-           varbuf_append (b, "%s=%d", name, (int) (val | (~0 << width)));
-         else
-           varbuf_append (b, "%s=%u", name, val);
-       }
-    }
-
-  if (sromrev >= 4)
-    {
-      /* Do per-path variables */
-      uint p, pb, psz;
-
-      if (sromrev >= 8)
-       {
-         pb = SROM8_PATH0;
-         psz = SROM8_PATH1 - SROM8_PATH0;
-       }
-      else
-       {
-         pb = SROM4_PATH0;
-         psz = SROM4_PATH1 - SROM4_PATH0;
-       }
-
-      for (p = 0; p < MAX_PATH; p++)
-       {
-         for (srv = perpath_pci_sromvars; srv->name != NULL; srv++)
-           {
-             if ((srv->revmask & sr) == 0)
-               continue;
-
-             if (pb + srv->off < off)
-               continue;
-
-             w = srom[pb + srv->off - off];
-             ASSERT (mask_valid (srv->mask));
-             val = (w & srv->mask) >> mask_shift (srv->mask);
-             width = mask_width (srv->mask);
-
-             /* Cheating: no per-path var is more than 1 word */
-
-             if ((srv->flags & SRFL_NOFFS)
-                 && ((int) val == (1 << width) - 1))
-               continue;
-
-             if (srv->flags & SRFL_PRHEX)
-               varbuf_append (b, "%s%d=0x%x", srv->name, p, val);
-             else
-               varbuf_append (b, "%s%d=%d", srv->name, p, val);
-           }
-         pb += psz;
-       }
-    }
-}
-
-static int
-initvars_srom_pci (sb_t * sbh, void *curmap, char **vars, uint * count)
-{
-  uint16 *srom;
-  uint8 sromrev = 0;
-  uint32 sr;
-  varbuf_t b;
-  char *vp, *base = NULL;
-  osl_t *osh = sb_osh (sbh);
-  bool flash = FALSE;
-  char *value;
-  int err;
-
-  /*
-   * Apply CRC over SROM content regardless SROM is present or not,
-   * and use variable <devpath>sromrev's existance in flash to decide
-   * if we should return an error when CRC fails or read SROM variables
-   * from flash.
-   */
-  srom = MALLOC (osh, SROM_MAX);
-  ASSERT (srom);
-  if (!srom)
-    return -2;
-
-  err =
-    sprom_read_pci (osh, (void *) ((int8 *) curmap + PCI_BAR0_SPROM_OFFSET),
-                   0, srom, SROM_WORDS, TRUE);
-
-  if ((srom[SROM4_SIGN] == SROM4_SIGNATURE) ||
-      ((sbh->buscoretype == SB_PCIE) && (sbh->buscorerev >= 6)))
-    {
-      /* sromrev >= 4, read more */
-      err =
-       sprom_read_pci (osh,
-                       (void *) ((int8 *) curmap + PCI_BAR0_SPROM_OFFSET), 0,
-                       srom, SROM4_WORDS, TRUE);
-      sromrev = srom[SROM4_CRCREV] & 0xff;
-    }
-  else if (err == 0)
-    {
-      /* srom is good and is rev < 4 */
-      /* top word of sprom contains version and crc8 */
-      sromrev = srom[SROM_CRCREV] & 0xff;
-      /* bcm4401 sroms misprogrammed */
-      if (sromrev == 0x10)
-       sromrev = 1;
-    }
-
-  if (err)
-    {
-#ifdef WLTEST
-      uint32 val;
-
-      BS_ERROR (("SROM Crc Error, so see if we could use a default\n"));
-      val = OSL_PCI_READ_CONFIG (osh, PCI_SPROM_CONTROL, sizeof (uint32));
-      if (val & SPROM_OTPIN_USE)
-       {
-         BS_ERROR (("srom crc failed with OTP, use default vars....\n"));
-         vp = base = mfgsromvars;
-         if (sb_chip (sbh) == BCM4311_CHIP_ID)
-           {
-             const char *devid = "devid=0x4311";
-             const size_t devid_strlen = strlen (devid);
-             BS_ERROR (("setting the devid to be 4311\n"));
-             bcopy (devid, vp, devid_strlen + 1);
-             vp += devid_strlen + 1;
-           }
-         bcopy (defaultsromvars, vp, MFGSROM_DEFVARSLEN);
-         vp += MFGSROM_DEFVARSLEN;
-         goto varsdone;
-       }
-      else
-       {
-#endif /* WLTEST */
-         BS_ERROR (("srom crc failed with SPROM....\n"));
-         if (!(value = sb_getdevpathvar (sbh, "sromrev")))
-           {
-             err = -1;
-             goto errout;
-           }
-         sromrev = (uint8) simple_strtoul (value, NULL, 0);
-         flash = TRUE;
-#ifdef WLTEST
-       }
-#endif /* WLTEST */
-    }
-
-  /* Bitmask for the sromrev */
-  sr = 1 << sromrev;
-
-  /* srom version check
-   * Current valid versions: 1, 2, 3, 4, 5, 8
-   */
-  if ((sr & 0x13e) == 0)
-    {
-      err = -2;
-      goto errout;
-    }
-
-  ASSERT (vars);
-  ASSERT (count);
-
-  base = vp = MALLOC (osh, MAXSZ_NVRAM_VARS);
-  ASSERT (vp);
-  if (!vp)
-    {
-      err = -2;
-      goto errout;
-    }
-
-  /* read variables from flash */
-  if (flash)
-    {
-      if ((err = initvars_flash (sbh, osh, &vp, MAXSZ_NVRAM_VARS)))
-       goto errout;
-      goto varsdone;
-    }
-
-  varbuf_init (&b, base, MAXSZ_NVRAM_VARS);
-
-  /* parse SROM into name=value pairs. */
-  _initvars_srom_pci (sromrev, srom, 0, &b);
-
-  /* final nullbyte terminator */
-  ASSERT (b.size >= 1);
-  vp = b.buf;
-  *vp++ = '\0';
-
-  ASSERT ((vp - base) <= MAXSZ_NVRAM_VARS);
-
-varsdone:
-  err = initvars_table (osh, base, vp, vars, count);
-
-errout:
-#ifdef WLTEST
-  if (base && (base != mfgsromvars))
-#else
-  if (base)
-#endif
-    MFREE (osh, base, MAXSZ_NVRAM_VARS);
-
-  MFREE (osh, srom, SROM_MAX);
-  return err;
-}
-
-/*
- * Read the cis and call parsecis to initialize the vars.
- * Return 0 on success, nonzero on error.
- */
-static int
-initvars_cis_pcmcia (sb_t * sbh, osl_t * osh, char **vars, uint * count)
-{
-  uint8 *cis = NULL;
-  int rc;
-  uint data_sz;
-
-  data_sz = (sb_pcmciarev (sbh) == 1) ? (SPROM_SIZE * 2) : CIS_SIZE;
-
-  if ((cis = MALLOC (osh, data_sz)) == NULL)
-    return (-2);
-
-  if (sb_pcmciarev (sbh) == 1)
-    {
-      if (srom_read
-         (sbh, PCMCIA_BUS, (void *) NULL, osh, 0, data_sz, (uint16 *) cis))
-       {
-         MFREE (osh, cis, data_sz);
-         return (-1);
-       }
-      /* fix up endianess for 16-bit data vs 8-bit parsing */
-      htol16_buf ((uint16 *) cis, data_sz);
-    }
-  else
-    OSL_PCMCIA_READ_ATTR (osh, 0, cis, data_sz);
-
-  rc = srom_parsecis (osh, &cis, 1, vars, count);
-
-  MFREE (osh, cis, data_sz);
-
-  return (rc);
-}
-
-
-static int
-BCMINITFN (initvars_srom_sb) (sb_t * sbh, osl_t * osh, void *curmap,
-                             char **vars, uint * varsz)
-{
-#if defined(BCMSDIODEV)
-  /* CIS is read and supplied by the host */
-  return BCME_OK;
-#elif defined(BCMUSBDEV)
-  static bool srvars = FALSE;  /* Use OTP/SPROM as global variables */
-
-  int sel = 0;                 /* where to read the srom. 0 - nowhere, 1 - otp, 2 - sprom */
-  uint sz = 0;                 /* srom size in bytes */
-  void *oh = NULL;
-  int rc = BCME_OK;
-
-  /* Bail out if we've dealt with OTP/SPROM before! */
-  if (srvars)
-    return 0;
-
-#if defined(BCM4328)
-  if (sbh->chip == BCM4328_CHIP_ID)
-    {
-      /* Access the SPROM if it is present */
-      if ((sz = srom_size (sbh, osh)) != 0)
-       {
-         sz <<= 1;
-         sel = 2;
-       }
-    }
-#endif
-#if defined(BCM4325)
-  if (sbh->chip == BCM4325_CHIP_ID)
-    {
-      uint32 cst = sbh->chipst & CST4325_SPROM_OTP_SEL_MASK;
-
-      /* Access OTP if it is present, powered on, and programmed */
-      if ((oh = otp_init (sbh)) != NULL && (otp_status (oh) & OTPS_GUP_SW))
-       {
-         sz = otp_size (oh);
-         sel = 1;
-       }
-      /* Access the SPROM if it is present and allow to be accessed */
-      else if ((cst == CST4325_OTP_PWRDN || cst == CST4325_SPROM_SEL) &&
-              (sz = srom_size (sbh, osh)) != 0)
-       {
-         sz <<= 1;
-         sel = 2;
-       }
-    }
-#endif /* BCM4325 */
-
-  /* Read CIS in OTP/SPROM */
-  if (sel != 0)
-    {
-      uint16 *srom;
-      uint8 *body = NULL;
-
-      ASSERT (sz);
-
-      /* Allocate memory */
-      if ((srom = (uint16 *) MALLOC (osh, sz)) == NULL)
-       return BCME_NOMEM;
-
-      /* Read CIS */
-      switch (sel)
-       {
-       case 1:
-         rc = otp_read_region (oh, OTP_SW_RGN, srom, sz);
-         body = (uint8 *) srom;
-         break;
-       case 2:
-         rc = srom_read (sbh, SB_BUS, curmap, osh, 0, sz, srom);
-         /* sprom has 8 byte h/w header */
-         body = (uint8 *) srom + SBSDIO_SPROM_CIS_OFFSET;
-         break;
-       default:
-         /* impossible to come here */
-         ASSERT (0);
-         break;
-       }
-
-      /* Parse CIS */
-      if (rc == BCME_OK)
-       {
-         uint i, tpls = 0xffffffff;
-         /* # sdiod fns + common + extra */
-         uint8 *cis[SBSDIO_NUM_FUNCTION + 2];
-         uint ciss = 0;
-
-         /* each word is in host endian */
-         htol16_buf ((uint8 *) srom, sz);
-
-         ASSERT (body);
-
-         /* count cis tuple chains */
-         for (i = 0; i < sz && ciss < ARRAYSIZE (cis) && tpls != 0; i++)
-           {
-             cis[ciss++] = &body[i];
-             for (tpls = 0; i < sz - 1; tpls++)
-               {
-                 if (body[i++] == CISTPL_END)
-                   break;
-                 i += body[i] + 1;
-               }
-           }
-
-         /* call parser routine only when there are tuple chains */
-         if (ciss > 1)
-           rc = srom_parsecis (osh, cis, ciss, vars, varsz);
-       }
-
-      /* Clean up */
-      MFREE (osh, srom, sz);
-
-      /* Make SROM variables global */
-      if (rc == BCME_OK)
-       {
-         rc = nvram_append ((void *) sbh, *vars, *varsz);
-         srvars = TRUE;
-
-         /* Tell the caller there is no individual SROM variables */
-         *vars = NULL;
-         *varsz = 0;
-       }
-    }
-
-  return rc;
-#else /* !BCMUSBDEV && !BCMSDIODEV */
-  /* Search flash nvram section for srom variables */
-  return initvars_flash_sb (sbh, vars, varsz);
-#endif /* !BCMUSBDEV && !BCMSDIODEV */
-}
-
-#ifdef BCMUSBDEV
-/* Return sprom size in 16-bit words */
-static uint
-srom_size (sb_t * sbh, osl_t * osh)
-{
-  uint size = 0;
-  if (SPROMBUS == PCMCIA_BUS)
-    {
-      uint32 origidx;
-      sdpcmd_regs_t *pcmregs;
-      bool wasup;
-
-      origidx = sb_coreidx (sbh);
-      pcmregs = sb_setcore (sbh, SB_PCMCIA, 0);
-      ASSERT (pcmregs);
-
-      if (!(wasup = sb_iscoreup (sbh)))
-       sb_core_reset (sbh, 0, 0);
-
-      /* not worry about earlier core revs */
-      if (sb_corerev (sbh) < 8)
-       goto done;
-
-      /* SPROM is accessible only in PCMCIA mode unless there is SDIO clock */
-      if (!(R_REG (osh, &pcmregs->corestatus) & CS_PCMCIAMODE))
-       goto done;
-
-      switch (SB_PCMCIA_READ (osh, pcmregs, SROM_INFO) & SRI_SZ_MASK)
-       {
-       case 1:
-         size = 256;           /* SROM_INFO == 1 means 4kbit */
-         break;
-       case 2:
-         size = 1024;          /* SROM_INFO == 2 means 16kbit */
-         break;
-       default:
-         break;
-       }
-
-    done:
-      if (!wasup)
-       sb_core_disable (sbh, 0);
-
-      sb_setcoreidx (sbh, origidx);
-    }
-  return size;
-}
-#endif /* def BCMUSBDEV */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/cfe_env.c b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/cfe_env.c
deleted file mode 100644 (file)
index 22ef0c5..0000000
+++ /dev/null
@@ -1,232 +0,0 @@
-/*
- * NVRAM variable manipulation (Linux kernel half)
- *
- * Copyright 2001-2003, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#include <linux/config.h>
-#include <linux/init.h>
-#include <linux/module.h>
-#include <linux/kernel.h>
-#include <linux/string.h>
-#include <asm/io.h>
-#include <asm/uaccess.h>
-
-#include <typedefs.h>
-#include <osl.h>
-#include <bcmendian.h>
-
-#define NVRAM_SIZE       (0x1ff0)
-static char _nvdata[NVRAM_SIZE] __initdata;
-static char _valuestr[256] __initdata;
-
-/*
- * TLV types.  These codes are used in the "type-length-value"
- * encoding of the items stored in the NVRAM device (flash or EEPROM)
- *
- * The layout of the flash/nvram is as follows:
- *
- * <type> <length> <data ...> <type> <length> <data ...> <type_end>
- *
- * The type code of "ENV_TLV_TYPE_END" marks the end of the list.
- * The "length" field marks the length of the data section, not
- * including the type and length fields.
- *
- * Environment variables are stored as follows:
- *
- * <type_env> <length> <flags> <name> = <value>
- *
- * If bit 0 (low bit) is set, the length is an 8-bit value.
- * If bit 0 (low bit) is clear, the length is a 16-bit value
- * 
- * Bit 7 set indicates "user" TLVs.  In this case, bit 0 still
- * indicates the size of the length field.  
- *
- * Flags are from the constants below:
- *
- */
-#define ENV_LENGTH_16BITS      0x00    /* for low bit */
-#define ENV_LENGTH_8BITS       0x01
-
-#define ENV_TYPE_USER          0x80
-
-#define ENV_CODE_SYS(n,l) (((n)<<1)|(l))
-#define ENV_CODE_USER(n,l) ((((n)<<1)|(l)) | ENV_TYPE_USER)
-
-/*
- * The actual TLV types we support
- */
-
-#define ENV_TLV_TYPE_END       0x00    
-#define ENV_TLV_TYPE_ENV       ENV_CODE_SYS(0,ENV_LENGTH_8BITS)
-
-/*
- * Environment variable flags 
- */
-
-#define ENV_FLG_NORMAL         0x00    /* normal read/write */
-#define ENV_FLG_BUILTIN                0x01    /* builtin - not stored in flash */
-#define ENV_FLG_READONLY       0x02    /* read-only - cannot be changed */
-
-#define ENV_FLG_MASK           0xFF    /* mask of attributes we keep */
-#define ENV_FLG_ADMIN          0x100   /* lets us internally override permissions */
-
-
-/*  *********************************************************************
-    *  _nvram_read(buffer,offset,length)
-    *  
-    *  Read data from the NVRAM device
-    *  
-    *  Input parameters: 
-    *             buffer - destination buffer
-    *             offset - offset of data to read
-    *             length - number of bytes to read
-    *             
-    *  Return value:
-    *             number of bytes read, or <0 if error occured
-    ********************************************************************* */
-static int
-_nvram_read(unsigned char *nv_buf, unsigned char *buffer, int offset, int length)
-{
-    int i;
-    if (offset > NVRAM_SIZE)
-       return -1; 
-
-    for ( i = 0; i < length; i++) {
-       buffer[i] = ((volatile unsigned char*)nv_buf)[offset + i];
-    }
-    return length;
-}
-
-
-static char*
-_strnchr(const char *dest,int c,size_t cnt)
-{
-       while (*dest && (cnt > 0)) {
-       if (*dest == c) return (char *) dest;
-       dest++;
-       cnt--;
-       }
-       return NULL;
-}
-
-
-
-/*
- * Core support API: Externally visible.
- */
-
-/*
- * Get the value of an NVRAM variable
- * @param      name    name of variable to get
- * @return     value of variable or NULL if undefined
- */
-
-char* 
-cfe_env_get(unsigned char *nv_buf, char* name)
-{
-    int size;
-    unsigned char *buffer;
-    unsigned char *ptr;
-    unsigned char *envval;
-    unsigned int reclen;
-    unsigned int rectype;
-    int offset;
-    int flg;
-    
-    size = NVRAM_SIZE;
-    buffer = &_nvdata[0];
-
-    ptr = buffer;
-    offset = 0;
-
-    /* Read the record type and length */
-    if (_nvram_read(nv_buf, ptr,offset,1) != 1) {
-       goto error;
-    }
-    
-    while ((*ptr != ENV_TLV_TYPE_END)  && (size > 1)) {
-
-       /* Adjust pointer for TLV type */
-       rectype = *(ptr);
-       offset++;
-       size--;
-
-       /* 
-        * Read the length.  It can be either 1 or 2 bytes
-        * depending on the code 
-        */
-       if (rectype & ENV_LENGTH_8BITS) {
-           /* Read the record type and length - 8 bits */
-           if (_nvram_read(nv_buf, ptr,offset,1) != 1) {
-               goto error;
-           }
-           reclen = *(ptr);
-           size--;
-           offset++;
-       }
-       else {
-           /* Read the record type and length - 16 bits, MSB first */
-           if (_nvram_read(nv_buf, ptr,offset,2) != 2) {
-               goto error;
-           }
-           reclen = (((unsigned int) *(ptr)) << 8) + (unsigned int) *(ptr+1);
-           size -= 2;
-           offset += 2;
-       }
-
-       if (reclen > size)
-           break;      /* should not happen, bad NVRAM */
-
-       switch (rectype) {
-           case ENV_TLV_TYPE_ENV:
-               /* Read the TLV data */
-               if (_nvram_read(nv_buf, ptr,offset,reclen) != reclen)
-                   goto error;
-               flg = *ptr++;
-               envval = (unsigned char *) _strnchr(ptr,'=',(reclen-1));
-               if (envval) {
-                   *envval++ = '\0';
-                   memcpy(_valuestr,envval,(reclen-1)-(envval-ptr));
-                   _valuestr[(reclen-1)-(envval-ptr)] = '\0';
-#if 0                  
-                   printk(KERN_INFO "NVRAM:%s=%s\n", ptr, _valuestr);
-#endif
-                   if(!strcmp(ptr, name)){
-                       return _valuestr;
-                   }
-                   if((strlen(ptr) > 1) && !strcmp(&ptr[1], name))
-                       return _valuestr;
-               }
-               break;
-               
-           default: 
-               /* Unknown TLV type, skip it. */
-               break;
-           }
-
-       /*
-        * Advance to next TLV 
-        */
-               
-       size -= (int)reclen;
-       offset += reclen;
-
-       /* Read the next record type */
-       ptr = buffer;
-       if (_nvram_read(nv_buf, ptr,offset,1) != 1)
-           goto error;
-       }
-
-error:
-    return NULL;
-
-}
-
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/export.c b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/export.c
deleted file mode 100644 (file)
index 35a578a..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-#include <linux/module.h>
-
-#define _export(n) \
-               void n(void); \
-               EXPORT_SYMBOL(n);
-
-_export(bcm947xx_sbh)
-
-_export(sb_alp_clock)
-_export(sb_attach)
-_export(sb_kattach)
-_export(sb_backplane64)
-_export(sb_boardtype)
-_export(sb_boardvendor)
-_export(sb_btcgpiowar)
-_export(sb_bus)
-_export(sb_chip)
-_export(sb_chiprev)
-_export(sb_chipcrev)
-_export(sb_chippkg)
-_export(sb_clkctl_clk)
-_export(sb_clkctl_fast_pwrup_delay)
-_export(sb_clkctl_init)
-_export(sb_clkctl_xtal)
-_export(sb_core_disable)
-_export(sb_core_reset)
-_export(sb_core_tofixup)
-_export(sb_coreflags)
-_export(sb_coreflags_wo)
-_export(sb_coreflagshi)
-_export(sb_coreidx)
-_export(sb_coreregs)
-_export(sb_corerev)
-_export(sb_coreunit)
-_export(sb_detach)
-_export(sb_deviceremoved)
-_export(sb_gpiosetcore)
-_export(sb_gpiocontrol)
-_export(sb_gpiointmask)
-_export(sb_gpiointpolarity)
-_export(sb_gpioled)
-_export(sb_gpioin)
-_export(sb_gpioout)
-_export(sb_gpioouten)
-_export(sb_gpiopull)
-_export(sb_gpiotimerval)
-_export(sb_irq)
-_export(sb_iscoreup)
-_export(sb_pci_setup)
-_export(sb_pci_sleep)
-_export(sb_pci_down)
-_export(sb_pci_up)
-_export(sb_pcirev)
-_export(sb_pcmcia_init)
-_export(sb_pcmciarev)
-_export(sb_pmu_paref_ldo_enable)
-_export(sb_pmu_rcal)
-_export(sb_pmu_set_ldo_voltage)
-_export(sb_deregister_intr_callback)
-_export(sb_register_intr_callback)
-_export(sb_setcore)
-_export(sb_setcoreidx)
-_export(sb_war16165)
-_export(sb_war42780_clkreq)
-_export(sb_osh)
-
-_export(getvar)
-_export(getintvar)
-
-_export(nvram_get)
-_export(nvram_getall)
-
-_export(srom_read)
-_export(srom_write)
-
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/Makefile b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/Makefile
deleted file mode 100644 (file)
index 7e03a34..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-#
-# Makefile for the BCM947xx specific kernel interface routines
-# under Linux.
-#
-EXTRA_CFLAGS += -fno-delayed-branch
-USE_STANDARD_AS_RULE := true
-
-O_TARGET        := brcm.o
-
-obj-y  := int-handler.o irq.o
-
-include $(TOPDIR)/Rules.make
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/int-handler.S b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/int-handler.S
deleted file mode 100644 (file)
index b4e9361..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Generic interrupt handler for Broadcom MIPS boards
- *
- * Copyright 2004, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#include <linux/config.h>
-
-#include <asm/asm.h>
-#include <asm/mipsregs.h>
-#include <asm/regdef.h>
-#include <asm/stackframe.h>
-
-/*
- *     MIPS IRQ        Source
- *      --------        ------
- *             0       Software (ignored)
- *             1        Software (ignored)
- *             2        Combined hardware interrupt (hw0)
- *             3        Hardware
- *             4        Hardware
- *             5        Hardware
- *             6        Hardware
- *             7        R4k timer
- */
-
-       .text
-       .set    noreorder
-       .set    noat
-       .align  5
-       NESTED(brcmIRQ, PT_SIZE, sp)
-       SAVE_ALL
-       CLI
-       .set    at
-    .set    noreorder
-
-       jal         brcm_irq_dispatch
-        move   a0, sp
-
-       j           ret_from_irq
-        nop
-               
-       END(brcmIRQ)
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/irq.c b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/generic/irq.c
deleted file mode 100644 (file)
index cf680a7..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * Generic interrupt control functions for Broadcom MIPS boards
- *
- * Copyright 2004, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#include <linux/config.h>
-#include <linux/init.h>
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/interrupt.h>
-#include <linux/irq.h>
-
-#include <asm/irq.h>
-#include <asm/mipsregs.h>
-#include <asm/gdb-stub.h>
-
-#define ALLINTS (IE_IRQ0 | IE_IRQ1 | IE_IRQ2 | IE_IRQ3 | IE_IRQ4 | IE_IRQ5)
-
-extern asmlinkage void brcmIRQ(void);
-extern asmlinkage unsigned int do_IRQ(int irq, struct pt_regs *regs);
-
-void
-brcm_irq_dispatch(struct pt_regs *regs)
-{
-       u32 cause;
-
-       cause = read_c0_cause() &
-               read_c0_status() &
-               CAUSEF_IP;
-
-#ifdef CONFIG_KERNPROF
-       change_c0_status(cause | 1, 1);
-#else
-       clear_c0_status(cause);
-#endif
-
-       if (cause & CAUSEF_IP7)
-               do_IRQ(7, regs);
-       if (cause & CAUSEF_IP2)
-               do_IRQ(2, regs);
-       if (cause & CAUSEF_IP3)
-               do_IRQ(3, regs);
-       if (cause & CAUSEF_IP4)
-               do_IRQ(4, regs);
-       if (cause & CAUSEF_IP5)
-               do_IRQ(5, regs);
-       if (cause & CAUSEF_IP6)
-               do_IRQ(6, regs);
-}
-
-static void
-enable_brcm_irq(unsigned int irq)
-{
-       if (irq < 8)
-               set_c0_status(1 << (irq + 8));
-       else
-               set_c0_status(IE_IRQ0);
-}
-
-static void
-disable_brcm_irq(unsigned int irq)
-{
-       if (irq < 8)
-               clear_c0_status(1 << (irq + 8));
-       else
-               clear_c0_status(IE_IRQ0);
-}
-
-static void
-ack_brcm_irq(unsigned int irq)
-{
-       /* Already done in brcm_irq_dispatch */
-}
-
-static unsigned int
-startup_brcm_irq(unsigned int irq)
-{ 
-       enable_brcm_irq(irq);
-
-       return 0; /* never anything pending */
-}
-
-static void
-end_brcm_irq(unsigned int irq)
-{
-       if (!(irq_desc[irq].status & (IRQ_DISABLED|IRQ_INPROGRESS)))
-               enable_brcm_irq(irq);
-}
-
-static struct hw_interrupt_type brcm_irq_type = {
-       typename: "MIPS",
-       startup: startup_brcm_irq,
-       shutdown: disable_brcm_irq,
-       enable: enable_brcm_irq,
-       disable: disable_brcm_irq,
-       ack: ack_brcm_irq,
-       end: end_brcm_irq,
-       NULL
-};
-
-void __init
-init_IRQ(void)
-{
-       int i;
-
-       for (i = 0; i < NR_IRQS; i++) {
-               irq_desc[i].status = IRQ_DISABLED;
-               irq_desc[i].action = 0;
-               irq_desc[i].depth = 1;
-               irq_desc[i].handler = &brcm_irq_type;
-       }
-
-       set_except_vector(0, brcmIRQ);
-       change_c0_status(ST0_IM, ALLINTS);
-
-#ifdef CONFIG_REMOTE_DEBUG
-       printk("Breaking into debugger...\n");
-       set_debug_traps();
-       breakpoint(); 
-#endif
-}
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/gpio.c b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/gpio.c
deleted file mode 100644 (file)
index a0aba5d..0000000
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * GPIO char driver
- *
- * Copyright 2005, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#include <linux/module.h>
-#include <linux/init.h>
-#include <linux/fs.h>
-#include <linux/miscdevice.h>
-#include <asm/uaccess.h>
-
-#include <typedefs.h>
-#include <osl.h>
-#include <sbutils.h>
-#include <bcmdevs.h>
-
-static sb_t *gpio_sbh;
-static int gpio_major;
-static devfs_handle_t gpio_dir;
-static struct {
-       char *name;
-       devfs_handle_t handle;
-} gpio_file[] = {
-       { "in", NULL },
-       { "out", NULL },
-       { "outen", NULL },
-       { "control", NULL }
-};
-
-static int
-gpio_open(struct inode *inode, struct file * file)
-{
-       if (MINOR(inode->i_rdev) > ARRAYSIZE(gpio_file))
-               return -ENODEV;
-
-       MOD_INC_USE_COUNT;
-       return 0;
-}
-
-static int
-gpio_release(struct inode *inode, struct file * file)
-{
-       MOD_DEC_USE_COUNT;
-       return 0;
-}
-
-static ssize_t
-gpio_read(struct file *file, char *buf, size_t count, loff_t *ppos)
-{
-       u32 val;
-
-       switch (MINOR(file->f_dentry->d_inode->i_rdev)) {
-       case 0:
-               val = sb_gpioin(gpio_sbh);
-               break;
-       case 1:
-               val = sb_gpioout(gpio_sbh, 0, 0, GPIO_DRV_PRIORITY);
-               break;
-       case 2:
-               val = sb_gpioouten(gpio_sbh, 0, 0, GPIO_DRV_PRIORITY);
-               break;
-       case 3:
-               val = sb_gpiocontrol(gpio_sbh, 0, 0, GPIO_DRV_PRIORITY);
-               break;
-       default:
-               return -ENODEV;
-       }
-
-       if (put_user(val, (u32 *) buf))
-               return -EFAULT;
-
-       return sizeof(val);
-}
-
-static ssize_t
-gpio_write(struct file *file, const char *buf, size_t count, loff_t *ppos)
-{
-       u32 val;
-
-       if (get_user(val, (u32 *) buf))
-               return -EFAULT;
-
-       switch (MINOR(file->f_dentry->d_inode->i_rdev)) {
-       case 0:
-               return -EACCES;
-       case 1:
-               sb_gpioout(gpio_sbh, ~0, val, GPIO_DRV_PRIORITY);
-               break;
-       case 2:
-               sb_gpioouten(gpio_sbh, ~0, val, GPIO_DRV_PRIORITY);
-               break;
-       case 3:
-               sb_gpiocontrol(gpio_sbh, ~0, val, GPIO_DRV_PRIORITY);
-               break;
-       default:
-               return -ENODEV;
-       }
-
-       return sizeof(val);
-}
-
-static struct file_operations gpio_fops = {
-       owner:          THIS_MODULE,
-       open:           gpio_open,
-       release:        gpio_release,
-       read:           gpio_read,
-       write:          gpio_write,
-};
-
-static int __init
-gpio_init(void)
-{
-       int i;
-
-       if (!(gpio_sbh = sb_kattach(SB_OSH)))
-               return -ENODEV;
-
-       sb_gpiosetcore(gpio_sbh);
-
-       if ((gpio_major = devfs_register_chrdev(0, "gpio", &gpio_fops)) < 0)
-               return gpio_major;
-
-       gpio_dir = devfs_mk_dir(NULL, "gpio", NULL);
-
-       for (i = 0; i < ARRAYSIZE(gpio_file); i++) {
-               gpio_file[i].handle = devfs_register(gpio_dir,
-                                                    gpio_file[i].name,
-                                                    DEVFS_FL_DEFAULT, gpio_major, i,
-                                                    S_IFCHR | S_IRUGO | S_IWUGO,
-                                                    &gpio_fops, NULL);
-       }
-
-       return 0;
-}
-
-static void __exit
-gpio_exit(void)
-{
-       int i;
-
-       for (i = 0; i < ARRAYSIZE(gpio_file); i++)
-               devfs_unregister(gpio_file[i].handle);
-       devfs_unregister(gpio_dir);
-       devfs_unregister_chrdev(gpio_major, "gpio");
-       sb_detach(gpio_sbh);
-}
-
-module_init(gpio_init);
-module_exit(gpio_exit);
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/hndchipc.c b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/hndchipc.c
deleted file mode 100644 (file)
index 4e58bf1..0000000
+++ /dev/null
@@ -1,339 +0,0 @@
-/*
- * BCM47XX support code for some chipcommon facilities (uart, jtagm)
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#include <typedefs.h>
-#include <bcmdefs.h>
-#include <osl.h>
-#include <sbutils.h>
-#include <bcmdevs.h>
-#include <bcmnvram.h>
-#include <sbconfig.h>
-#include <sbchipc.h>
-#include <sbextif.h>
-#include <hndchipc.h>
-#include <hndcpu.h>
-
-/* debug/trace */
-#define        CC_ERROR(args)
-
-#ifdef BCMDBG
-#define        CC_MSG(args)    printf args
-#else
-#define        CC_MSG(args)
-#endif /* BCMDBG */
-
-/* interested chipcommon interrupt source
- *  - GPIO
- *  - EXTIF
- *  - ECI
- *  - PMU
- *  - UART
- */
-#define        MAX_CC_INT_SOURCE 5
-
-/* chipc secondary isr info */
-typedef struct {
-       uint intmask;           /* int mask */
-       cc_isr_fn isr;          /* secondary isr handler */
-       void *cbdata;           /* pointer to private data */
-} cc_isr_info_t;
-
-static cc_isr_info_t cc_isr_desc[MAX_CC_INT_SOURCE];
-
-/* chip common intmask */
-static uint32 cc_intmask = 0;
-
-static bool BCMINITFN(serial_exists) (osl_t * osh, uint8 * regs) {
-       uint8 save_mcr, status1;
-
-       save_mcr = R_REG(osh, &regs[UART_MCR]);
-       W_REG(osh, &regs[UART_MCR], UART_MCR_LOOP | 0x0a);
-       status1 = R_REG(osh, &regs[UART_MSR]) & 0xf0;
-       W_REG(osh, &regs[UART_MCR], save_mcr);
-
-       return (status1 == 0x90);
-}
-
-static void __init sb_extif_serial_init(sb_t * sbh, void *regs,
-                                       sb_serial_init_fn add)
-{
-       osl_t *osh = sb_osh(sbh);
-       extifregs_t *eir = (extifregs_t *) regs;
-       sbconfig_t *sb;
-       ulong base;
-       uint irq;
-       int i, n;
-
-       /* Determine external UART register base */
-       sb = (sbconfig_t *) ((ulong) eir + SBCONFIGOFF);
-       base = EXTIF_CFGIF_BASE(sb_base(R_REG(osh, &sb->sbadmatch1)));
-
-       /* Determine IRQ */
-       irq = sb_irq(sbh);
-
-       /* Disable GPIO interrupt initially */
-       W_REG(osh, &eir->gpiointpolarity, 0);
-       W_REG(osh, &eir->gpiointmask, 0);
-
-       /* Search for external UARTs */
-       n = 2;
-       for (i = 0; i < 2; i++) {
-               regs = (void *)REG_MAP(base + (i * 8), 8);
-               if (serial_exists(osh, regs)) {
-                       /* Set GPIO 1 to be the external UART IRQ */
-                       W_REG(osh, &eir->gpiointmask, 2);
-                       /* XXXDetermine external UART clock */
-                       if (add)
-                               add(regs, irq, 13500000, 0);
-               }
-       }
-
-       /* Add internal UART if enabled */
-       if (R_REG(osh, &eir->corecontrol) & CC_UE)
-               if (add)
-                       add((void *)&eir->uartdata, irq, sb_clock(sbh), 2);
-}
-
-/*
- * Initializes UART access. The callback function will be called once
- * per found UART.
- */
-void BCMINITFN(sb_serial_init) (sb_t * sbh, sb_serial_init_fn add) {
-       osl_t *osh;
-       void *regs;
-       chipcregs_t *cc;
-       uint32 rev, cap, pll, baud_base, div;
-       uint irq;
-       int i, n;
-
-       osh = sb_osh(sbh);
-
-       regs = sb_setcore(sbh, SB_EXTIF, 0);
-       if (regs) {
-               sb_extif_serial_init(sbh, regs, add);
-               return;
-       }
-
-       cc = (chipcregs_t *) sb_setcore(sbh, SB_CC, 0);
-       ASSERT(cc);
-
-       /* Determine core revision and capabilities */
-       rev = sbh->ccrev;
-       cap = sbh->cccaps;
-       pll = cap & CC_CAP_PLL_MASK;
-
-       /* Determine IRQ */
-       irq = sb_irq(sbh);
-
-       if (pll == PLL_TYPE1) {
-               /* PLL clock */
-               baud_base = sb_clock_rate(pll,
-                                         R_REG(osh, &cc->clockcontrol_n),
-                                         R_REG(osh, &cc->clockcontrol_m2));
-               div = 1;
-       } else {
-               /* 5354 chip common uart uses a constant clock
-                * frequency of 25MHz */
-               if (sb_corerev(sbh) == 20) {
-                       /* Set the override bit so we don't divide it */
-                       W_REG(osh, &cc->corecontrol, CC_UARTCLKO);
-                       baud_base = 25000000;
-               } else if (rev >= 11 && rev != 15) {
-                       /* Fixed ALP clock */
-                       baud_base = sb_alp_clock(sbh);
-                       div = 1;
-                       /* Turn off UART clock before switching clock source */
-                       if (rev >= 21)
-                               AND_REG(osh, &cc->corecontrol, ~CC_UARTCLKEN);
-                       /* Set the override bit so we don't divide it */
-                       OR_REG(osh, &cc->corecontrol, CC_UARTCLKO);
-                       if (rev >= 21)
-                               OR_REG(osh, &cc->corecontrol, CC_UARTCLKEN);
-               } else if (rev >= 3) {
-                       /* Internal backplane clock */
-                       baud_base = sb_clock(sbh);
-                       div = 2;        /* Minimum divisor */
-                       W_REG(osh, &cc->clkdiv,
-                             ((R_REG(osh, &cc->clkdiv) & ~CLKD_UART) | div));
-               } else {
-                       /* Fixed internal backplane clock */
-                       baud_base = 88000000;
-                       div = 48;
-               }
-
-               /* Clock source depends on strapping if UartClkOverride is unset */
-               if ((rev > 0)
-                   && ((R_REG(osh, &cc->corecontrol) & CC_UARTCLKO) == 0)) {
-                       if ((cap & CC_CAP_UCLKSEL) == CC_CAP_UINTCLK) {
-                               /* Internal divided backplane clock */
-                               baud_base /= div;
-                       } else {
-                               /* Assume external clock of 1.8432 MHz */
-                               baud_base = 1843200;
-                       }
-               }
-       }
-
-       /* Add internal UARTs */
-       n = cap & CC_CAP_UARTS_MASK;
-       for (i = 0; i < n; i++) {
-               /* Register offset changed after revision 0 */
-               if (rev)
-                       regs = (void *)((ulong) & cc->uart0data + (i * 256));
-               else
-                       regs = (void *)((ulong) & cc->uart0data + (i * 8));
-
-               if (add)
-                       add(regs, irq, baud_base, 0);
-       }
-}
-
-#if 0
-/*
- * Initialize jtag master and return handle for
- * jtag_rwreg. Returns NULL on failure.
- */
-void *sb_jtagm_init(sb_t * sbh, uint clkd, bool exttap)
-{
-       void *regs;
-
-       if ((regs = sb_setcore(sbh, SB_CC, 0)) != NULL) {
-               chipcregs_t *cc = (chipcregs_t *) regs;
-               uint32 tmp;
-
-               /*
-                * Determine jtagm availability from
-                * core revision and capabilities.
-                */
-
-               /*
-                * Corerev 10 has jtagm, but the only chip
-                * with it does not have a mips, and
-                * the layout of the jtagcmd register is
-                * different. We'll only accept >= 11.
-                */
-               if (sbh->ccrev < 11)
-                       return (NULL);
-
-               if ((sbh->cccaps & CC_CAP_JTAGP) == 0)
-                       return (NULL);
-
-               /* Set clock divider if requested */
-               if (clkd != 0) {
-                       tmp = R_REG(osh, &cc->clkdiv);
-                       tmp =
-                           (tmp & ~CLKD_JTAG) | ((clkd << CLKD_JTAG_SHIFT) &
-                                                 CLKD_JTAG);
-                       W_REG(osh, &cc->clkdiv, tmp);
-               }
-
-               /* Enable jtagm */
-               tmp = JCTRL_EN | (exttap ? JCTRL_EXT_EN : 0);
-               W_REG(osh, &cc->jtagctrl, tmp);
-       }
-
-       return (regs);
-}
-
-void sb_jtagm_disable(osl_t * osh, void *h)
-{
-       chipcregs_t *cc = (chipcregs_t *) h;
-
-       W_REG(osh, &cc->jtagctrl, R_REG(osh, &cc->jtagctrl) & ~JCTRL_EN);
-}
-
-/*
- * Read/write a jtag register. Assumes a target with
- * 8 bit IR and 32 bit DR.
- */
-#define        IRWIDTH         8       /* Default Instruction Register width */
-#define        DRWIDTH         32      /* Default Data Register width */
-
-uint32 jtag_rwreg(osl_t * osh, void *h, uint32 ir, uint32 dr)
-{
-       chipcregs_t *cc = (chipcregs_t *) h;
-       uint32 tmp;
-
-       W_REG(osh, &cc->jtagir, ir);
-       W_REG(osh, &cc->jtagdr, dr);
-       tmp = JCMD_START | JCMD_ACC_IRDR |
-           ((IRWIDTH - 1) << JCMD_IRW_SHIFT) | (DRWIDTH - 1);
-       W_REG(osh, &cc->jtagcmd, tmp);
-       while (((tmp = R_REG(osh, &cc->jtagcmd)) & JCMD_BUSY) == JCMD_BUSY) {
-               /* OSL_DELAY(1); */
-       }
-
-       tmp = R_REG(osh, &cc->jtagdr);
-       return (tmp);
-}
-#endif
-
-/*
- * Interface to register chipc secondary isr
- */
-bool
-BCMINITFN(sb_cc_register_isr) (sb_t * sbh, cc_isr_fn isr, uint32 ccintmask,
-                              void *cbdata) {
-       bool done = FALSE;
-       chipcregs_t *regs;
-       uint origidx;
-       uint i;
-
-       /* Save the current core index */
-       origidx = sb_coreidx(sbh);
-       regs = sb_setcore(sbh, SB_CC, 0);
-       ASSERT(regs);
-
-       for (i = 0; i < MAX_CC_INT_SOURCE; i++) {
-               if (cc_isr_desc[i].isr == NULL) {
-                       cc_isr_desc[i].isr = isr;
-                       cc_isr_desc[i].cbdata = cbdata;
-                       cc_isr_desc[i].intmask = ccintmask;
-                       done = TRUE;
-                       break;
-               }
-       }
-
-       if (done) {
-               cc_intmask = R_REG(sb_osh(sbh), &regs->intmask);
-               cc_intmask |= ccintmask;
-               W_REG(sb_osh(sbh), &regs->intmask, cc_intmask);
-       }
-
-       /* restore original coreidx */
-       sb_setcoreidx(sbh, origidx);
-       return done;
-}
-
-/* 
- * chipc primary interrupt handler
- */
-void sb_cc_isr(sb_t * sbh, chipcregs_t * regs)
-{
-       uint32 ccintstatus;
-       uint32 intstatus;
-       uint32 i;
-
-       /* prior to rev 21 chipc interrupt means uart and gpio */
-       if (sbh->ccrev >= 21)
-               ccintstatus = R_REG(sb_osh(sbh), &regs->intstatus) & cc_intmask;
-       else
-               ccintstatus = (CI_UART | CI_GPIO);
-
-       for (i = 0; i < MAX_CC_INT_SOURCE; i++) {
-               if ((cc_isr_desc[i].isr != NULL) &&
-                   (intstatus = (cc_isr_desc[i].intmask & ccintstatus))) {
-                       (cc_isr_desc[i].isr) (cc_isr_desc[i].cbdata, intstatus);
-               }
-       }
-}
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/hndpmu.c b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/hndpmu.c
deleted file mode 100644 (file)
index 0e95f2c..0000000
+++ /dev/null
@@ -1,1256 +0,0 @@
-/*
- * Misc utility routines for accessing PMU corerev specific features
- * of the SiliconBackplane-based Broadcom chips.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- */
-
-#include <typedefs.h>
-#include <bcmdefs.h>
-#include <osl.h>
-#include <sbutils.h>
-#include <bcmdevs.h>
-#include <sbconfig.h>
-#include <sbchipc.h>
-#include <hndpmu.h>
-
-/* debug/trace */
-#define        PMU_ERROR(args)
-
-#ifdef BCMDBG
-#define        PMU_MSG(args)   printf args
-#else
-#define        PMU_MSG(args)
-#endif /* BCMDBG */
-
-/* PMU & control */
-/* PMU rev 0 pll control for BCM4328 and BCM5354 */
-static void sb_pmu0_pllinit0 (sb_t * sbh, osl_t * osh, chipcregs_t * cc,
-                             uint32 xtal);
-static uint32 sb_pmu0_alpclk0 (sb_t * sbh, osl_t * osh, chipcregs_t * cc);
-static uint32 sb_pmu0_cpuclk0 (sb_t * sbh, osl_t * osh, chipcregs_t * cc);
-/* PMU rev 0 pll control for BCM4325 BCM4329 */
-static void sb_pmu1_pllinit0 (sb_t * sbh, osl_t * osh, chipcregs_t * cc,
-                             uint32 xtal);
-static uint32 sb_pmu1_cpuclk0 (sb_t * sbh, osl_t * osh, chipcregs_t * cc);
-static uint32 sb_pmu1_alpclk0 (sb_t * sbh, osl_t * osh, chipcregs_t * cc);
-
-/* Setup switcher voltage */
-void
-BCMINITFN (sb_pmu_set_switcher_voltage) (sb_t * sbh, osl_t * osh,
-                                        uint8 bb_voltage, uint8 rf_voltage)
-{
-  chipcregs_t *cc;
-  uint origidx;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  W_REG (osh, &cc->regcontrol_addr, 0x01);
-  W_REG (osh, &cc->regcontrol_data, (uint32) (bb_voltage & 0x1f) << 22);
-
-  W_REG (osh, &cc->regcontrol_addr, 0x00);
-  W_REG (osh, &cc->regcontrol_data, (uint32) (rf_voltage & 0x1f) << 14);
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-}
-
-void
-sb_pmu_set_ldo_voltage (sb_t * sbh, osl_t * osh, uint8 ldo, uint8 voltage)
-{
-  uint8 sr_cntl_shift, rc_shift, shift, mask;
-  uint32 addr;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  switch (sbh->chip)
-    {
-    case BCM4328_CHIP_ID:
-    case BCM5354_CHIP_ID:
-      switch (ldo)
-       {
-       case SET_LDO_VOLTAGE_LDO1:
-         addr = 2;
-         sr_cntl_shift = 8;
-         rc_shift = 17;
-         mask = 0xf;
-         break;
-       case SET_LDO_VOLTAGE_LDO2:
-         addr = 3;
-         sr_cntl_shift = 0;
-         rc_shift = 1;
-         mask = 0xf;
-         break;
-       case SET_LDO_VOLTAGE_LDO3:
-         addr = 3;
-         sr_cntl_shift = 0;
-         rc_shift = 9;
-         mask = 0xf;
-         break;
-       case SET_LDO_VOLTAGE_PAREF:
-         addr = 3;
-         sr_cntl_shift = 0;
-         rc_shift = 17;
-         mask = 0x3f;
-         break;
-       default:
-         ASSERT (FALSE);
-         return;
-       }
-      break;
-    case BCM4312_CHIP_ID:
-      switch (ldo)
-       {
-       case SET_LDO_VOLTAGE_PAREF:
-         addr = 0;
-         sr_cntl_shift = 0;
-         rc_shift = 21;
-         mask = 0x3f;
-         break;
-       default:
-         ASSERT (FALSE);
-         return;
-       }
-      break;
-    default:
-      ASSERT (FALSE);
-      return;
-    }
-
-  shift = sr_cntl_shift + rc_shift;
-
-  sb_corereg (sbh, SB_CC_IDX, OFFSETOF (chipcregs_t, regcontrol_addr),
-             ~0, addr);
-  sb_corereg (sbh, SB_CC_IDX, OFFSETOF (chipcregs_t, regcontrol_data),
-             mask << shift, (voltage & mask) << shift);
-}
-
-void
-sb_pmu_paref_ldo_enable (sb_t * sbh, osl_t * osh, bool enable)
-{
-  uint ldo = 0;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  switch (sbh->chip)
-    {
-    case BCM4328_CHIP_ID:
-      ldo = RES4328_PA_REF_LDO;
-      break;
-    case BCM5354_CHIP_ID:
-      ldo = RES5354_PA_REF_LDO;
-      break;
-    case BCM4312_CHIP_ID:
-      ldo = RES4312_PA_REF_LDO;
-      break;
-    default:
-      return;
-    }
-
-  sb_corereg (sbh, SB_CC_IDX, OFFSETOF (chipcregs_t, min_res_mask),
-             PMURES_BIT (ldo), enable ? PMURES_BIT (ldo) : 0);
-}
-
-uint16 BCMINITFN (sb_pmu_fast_pwrup_delay) (sb_t * sbh, osl_t * osh)
-{
-  uint16 delay = PMU_MAX_TRANSITION_DLY;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  switch (sbh->chip)
-    {
-    case BCM4328_CHIP_ID:
-      delay = 7000;
-      break;
-
-    case BCM4325_CHIP_ID:
-    case BCM4312_CHIP_ID:
-#ifdef BCMQT
-      delay = 70;
-#else
-      delay = 2800;
-#endif
-      break;
-
-    default:
-      PMU_MSG (("No PMU fast power up delay specified "
-               "for chip %x rev %d, using default %d us\n",
-               sbh->chip, sbh->chiprev, delay));
-      break;
-    }
-
-  return delay;
-}
-
-uint32 BCMINITFN (sb_pmu_force_ilp) (sb_t * sbh, osl_t * osh, bool force)
-{
-  chipcregs_t *cc;
-  uint origidx;
-  uint32 oldpmucontrol;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  oldpmucontrol = R_REG (osh, &cc->pmucontrol);
-  if (force)
-    W_REG (osh, &cc->pmucontrol, oldpmucontrol &
-          ~(PCTL_HT_REQ_EN | PCTL_ALP_REQ_EN));
-  else
-    W_REG (osh, &cc->pmucontrol, oldpmucontrol |
-          (PCTL_HT_REQ_EN | PCTL_ALP_REQ_EN));
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-
-  return oldpmucontrol;
-}
-
-/* Setup min/max resources and up/down timers */
-typedef struct
-{
-  uint8 resnum;
-  uint16 updown;
-} pmu_res_updown_t;
-
-typedef struct
-{
-  uint8 resnum;
-  int8 action;                 /* 0 - set, 1 - add, -1 - remove */
-  uint32 depend_mask;
-} pmu_res_depend_t;
-
-static const pmu_res_updown_t
-BCMINITDATA (bcm4328a0_res_updown)[] =
-{
-  {
-  RES4328_EXT_SWITCHER_PWM, 0x0101},
-  {
-  RES4328_BB_SWITCHER_PWM, 0x1f01},
-  {
-  RES4328_BB_SWITCHER_BURST, 0x010f},
-  {
-  RES4328_BB_EXT_SWITCHER_BURST, 0x0101},
-  {
-  RES4328_ILP_REQUEST, 0x0202},
-  {
-  RES4328_RADIO_SWITCHER_PWM, 0x0f01},
-  {
-  RES4328_RADIO_SWITCHER_BURST, 0x0f01},
-  {
-  RES4328_ROM_SWITCH, 0x0101},
-  {
-  RES4328_PA_REF_LDO, 0x0f01},
-  {
-  RES4328_RADIO_LDO, 0x0f01},
-  {
-  RES4328_AFE_LDO, 0x0f01},
-  {
-  RES4328_PLL_LDO, 0x0f01},
-  {
-  RES4328_BG_FILTBYP, 0x0101},
-  {
-  RES4328_TX_FILTBYP, 0x0101},
-  {
-  RES4328_RX_FILTBYP, 0x0101},
-  {
-  RES4328_XTAL_PU, 0x0101},
-  {
-  RES4328_XTAL_EN, 0xa001},
-  {
-  RES4328_BB_PLL_FILTBYP, 0x0101},
-  {
-  RES4328_RF_PLL_FILTBYP, 0x0101},
-  {
-  RES4328_BB_PLL_PU, 0x0701}
-};
-
-static const pmu_res_depend_t
-BCMINITDATA (bcm4328a0_res_depend)[] =
-{
-  /* Adjust ILP request resource not to force ext/BB switchers into burst mode */
-  {
-  RES4328_ILP_REQUEST, 0,
-      PMURES_BIT (RES4328_EXT_SWITCHER_PWM) |
-      PMURES_BIT (RES4328_BB_SWITCHER_PWM)}
-};
-
-#ifdef BCMQT                   /* for power save on slow QT/small beacon interval */
-static const pmu_res_updown_t
-BCMINITDATA (bcm4325a0_res_updown_qt)[] =
-{
-  {
-  RES4325_HT_AVAIL, 0x0300},
-  {
-  RES4325_BBPLL_PWRSW_PU, 0x0101},
-  {
-  RES4325_RFPLL_PWRSW_PU, 0x0101},
-  {
-  RES4325_ALP_AVAIL, 0x0100},
-  {
-  RES4325_XTAL_PU, 0x1000},
-  {
-  RES4325_LNLDO1_PU, 0x0800},
-  {
-  RES4325_CLDO_CBUCK_PWM, 0x0101},
-  {
-  RES4325_CBUCK_PWM, 0x0803}
-};
-#else
-static const pmu_res_updown_t
-BCMINITDATA (bcm4325a0_res_updown)[] =
-{
-  {
-  RES4325_XTAL_PU, 0x1501}
-};
-#endif /* !BCMQT */
-
-static const pmu_res_depend_t
-BCMINITDATA (bcm4325a0_res_depend)[] =
-{
-  /* Adjust HT Avail resource dependencies */
-  {
-  RES4325_HT_AVAIL, 1,
-      PMURES_BIT (RES4325_RX_PWRSW_PU) | PMURES_BIT (RES4325_TX_PWRSW_PU) |
-      PMURES_BIT (RES4325_LOGEN_PWRSW_PU) | PMURES_BIT (RES4325_AFE_PWRSW_PU)}
-};
-
-void BCMINITFN (sb_pmu_res_init) (sb_t * sbh, osl_t * osh)
-{
-  chipcregs_t *cc;
-  uint origidx;
-  const pmu_res_updown_t *pmu_res_updown_table = NULL;
-  int pmu_res_updown_table_sz = 0;
-  const pmu_res_depend_t *pmu_res_depend_table = NULL;
-  int pmu_res_depend_table_sz = 0;
-  uint32 min_mask = 0, max_mask = 0;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  switch (sbh->chip)
-    {
-    case BCM4328_CHIP_ID:
-      /* Down to ILP request excluding ROM */
-      min_mask = PMURES_BIT (RES4328_EXT_SWITCHER_PWM) |
-       PMURES_BIT (RES4328_BB_SWITCHER_PWM) | PMURES_BIT (RES4328_XTAL_EN);
-#ifdef BCMROMOFFLOAD
-      /* Including ROM */
-      min_mask |= PMURES_BIT (RES4328_ROM_SWITCH);
-#endif
-      /* Allow (but don't require) PLL to turn on */
-      max_mask = 0xfffff;
-      pmu_res_updown_table = bcm4328a0_res_updown;
-      pmu_res_updown_table_sz = ARRAYSIZE (bcm4328a0_res_updown);
-      pmu_res_depend_table = bcm4328a0_res_depend;
-      pmu_res_depend_table_sz = ARRAYSIZE (bcm4328a0_res_depend);
-      break;
-    case BCM4312_CHIP_ID:
-      /* keep default
-       * min_mask = 0xcbb; max_mask = 0x7ffff;
-       * pmu_res_updown_table_sz = 0;
-       * pmu_res_depend_table_sz = 0;
-       */
-      break;
-    case BCM5354_CHIP_ID:
-      /* Allow (but don't require) PLL to turn on */
-      max_mask = 0xfffff;
-      break;
-
-    case BCM4325_CHIP_ID:
-      /* Leave OTP powered up and power it down later. */
-      min_mask =
-       PMURES_BIT (RES4325_CBUCK_BURST) | PMURES_BIT (RES4325_LNLDO2_PU);
-      if (((sbh->chipst & CST4325_PMUTOP_2B_MASK) >>
-          CST4325_PMUTOP_2B_SHIFT) == 1)
-       min_mask |= PMURES_BIT (RES4325_CLDO_CBUCK_BURST);
-      /* Allow (but don't require) PLL to turn on */
-      max_mask = 0x3fffff;
-#ifdef BCMQT
-      pmu_res_updown_table = bcm4325a0_res_updown_qt;
-      pmu_res_updown_table_sz = ARRAYSIZE (bcm4325a0_res_updown_qt);
-#else
-      pmu_res_updown_table = bcm4325a0_res_updown;
-      pmu_res_updown_table_sz = ARRAYSIZE (bcm4325a0_res_updown);
-      pmu_res_depend_table = bcm4325a0_res_depend;
-      pmu_res_depend_table_sz = ARRAYSIZE (bcm4325a0_res_depend);
-#endif
-      break;
-
-    default:
-      break;
-    }
-
-  /* Program up/down timers */
-  while (pmu_res_updown_table_sz--)
-    {
-      ASSERT (pmu_res_updown_table);
-      W_REG (osh, &cc->res_table_sel,
-            pmu_res_updown_table[pmu_res_updown_table_sz].resnum);
-      W_REG (osh, &cc->res_updn_timer,
-            pmu_res_updown_table[pmu_res_updown_table_sz].updown);
-    }
-
-  /* Program resource dependencies table */
-  while (pmu_res_depend_table_sz--)
-    {
-      ASSERT (pmu_res_depend_table);
-      W_REG (osh, &cc->res_table_sel,
-            pmu_res_depend_table[pmu_res_depend_table_sz].resnum);
-      switch (pmu_res_depend_table[pmu_res_depend_table_sz].action)
-       {
-       case 0:
-         W_REG (osh, &cc->res_dep_mask,
-                pmu_res_depend_table[pmu_res_depend_table_sz].depend_mask);
-         break;
-       case 1:
-         OR_REG (osh, &cc->res_dep_mask,
-                 pmu_res_depend_table[pmu_res_depend_table_sz].depend_mask);
-         break;
-       case -1:
-         AND_REG (osh, &cc->res_dep_mask,
-                  ~pmu_res_depend_table[pmu_res_depend_table_sz].
-                  depend_mask);
-         break;
-       default:
-         ASSERT (0);
-         break;
-       }
-    }
-
-  /* program min resource mask */
-  if (min_mask)
-    {
-      PMU_MSG (("Changing min_res_mask to 0x%x\n", min_mask));
-      W_REG (osh, &cc->min_res_mask, min_mask);
-    }
-  /* program max resource mask */
-  if (max_mask)
-    {
-      PMU_MSG (("Changing max_res_mask to 0x%x\n", max_mask));
-      W_REG (osh, &cc->max_res_mask, max_mask);
-    }
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-}
-
-/* setup pll and query clock speed */
-typedef struct
-{
-  uint16 freq;
-  uint8 xf;
-  uint8 wbint;
-  uint32 wbfrac;
-} pmu0_xtaltab0_t;
-
-/* the following table is based on 880Mhz Fvco */
-#define PMU0_PLL0_FVCO 880000  /* Fvco 880Mhz */
-static const pmu0_xtaltab0_t
-BCMINITDATA (pmu0_xtaltab0)[] =
-{
-  {
-  12000, 1, 73, 349525},
-  {
-  13000, 2, 67, 725937},
-  {
-  14400, 3, 61, 116508},
-  {
-  15360, 4, 57, 305834},
-  {
-  16200, 5, 54, 336579},
-  {
-  16800, 6, 52, 399457},
-  {
-  19200, 7, 45, 873813},
-  {
-  19800, 8, 44, 466033},
-  {
-  20000, 9, 44, 0},
-  {
-  25000, 10, 70, 419430},
-  {
-  26000, 11, 67, 725937},
-  {
-  30000, 12, 58, 699050},
-  {
-  38400, 13, 45, 873813},
-  {
-  40000, 14, 45, 0},
-  {
-  0, 0, 0, 0}
-};
-
-#ifdef BCMUSBDEV
-#define        PMU0_XTAL0_DEFAULT      11
-#else
-#define PMU0_XTAL0_DEFAULT     8
-#endif
-
-#ifdef BCMUSBDEV
-/*
- * Set new backplane PLL clock frequency
- */
-static void BCMINITFN (sb_pmu0_sbclk4328) (sb_t * sbh, int freq)
-{
-  uint32 tmp, oldmax, oldmin, origidx;
-  chipcregs_t *cc;
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  /* Set new backplane PLL clock */
-  W_REG (osh, &cc->pllcontrol_addr, PMU0_PLL0_PLLCTL0);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  tmp &= ~(PMU0_PLL0_PC0_DIV_ARM_MASK);
-  tmp |= freq << PMU0_PLL0_PC0_DIV_ARM_SHIFT;
-  W_REG (osh, &cc->pllcontrol_data, tmp);
-
-  /* Power cycle BB_PLL_PU by disabling/enabling it to take on new freq */
-  /* Disable PLL */
-  oldmin = R_REG (osh, &cc->min_res_mask);
-  oldmax = R_REG (osh, &cc->max_res_mask);
-  W_REG (osh, &cc->min_res_mask, oldmin & ~PMURES_BIT (RES4328_BB_PLL_PU));
-  W_REG (osh, &cc->max_res_mask, oldmax & ~PMURES_BIT (RES4328_BB_PLL_PU));
-
-  /* It takes over several hundred usec to re-enable the PLL since the
-   * sequencer state machines run on ILP clock. Set delay at 450us to be safe.
-   *
-   * Be sure PLL is powered down first before re-enabling it.
-   */
-
-  OSL_DELAY (PLL_DELAY);
-  SPINWAIT ((R_REG (osh, &cc->res_state) & PMURES_BIT (RES4328_BB_PLL_PU)),
-           PLL_DELAY * 3);
-
-  if (R_REG (osh, &cc->res_state) & PMURES_BIT (RES4328_BB_PLL_PU))
-    {
-      /* If BB_PLL not powered down yet, new backplane PLL clock
-       *  may not take effect.
-       *
-       * Still early during bootup so no serial output here.
-       */
-      PMU_ERROR (("Fatal: BB_PLL not power down yet!\n"));
-      ASSERT (!
-             (R_REG (osh, &cc->res_state) & PMURES_BIT (RES4328_BB_PLL_PU)));
-    }
-
-  /* Enable PLL */
-  W_REG (osh, &cc->max_res_mask, oldmax);
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-}
-#endif /* BCMUSBDEV */
-
-/* Set up PLL registers in the PMU as per the crystal speed.
- * Uses xtalfreq variable, or passed-in default.
- */
-static void
-BCMINITFN (sb_pmu0_pllinit0) (sb_t * sbh, osl_t * osh, chipcregs_t * cc,
-                             uint32 xtal)
-{
-  uint32 tmp;
-  const pmu0_xtaltab0_t *xt;
-
-  if ((sb_chip (sbh) == BCM5354_CHIP_ID) && (xtal == 0))
-    {
-      /* 5354 has xtal freq of 25MHz */
-      xtal = 25000;
-    }
-
-  /* Find the frequency in the table */
-  for (xt = pmu0_xtaltab0; xt->freq; xt++)
-    if (xt->freq == xtal)
-      break;
-  if (xt->freq == 0)
-    xt = &pmu0_xtaltab0[PMU0_XTAL0_DEFAULT];
-
-  PMU_MSG (("XTAL %d (%d)\n", xtal, xt->xf));
-
-  /* Check current PLL state */
-  tmp = (R_REG (osh, &cc->pmucontrol) & PCTL_XTALFREQ_MASK) >>
-    PCTL_XTALFREQ_SHIFT;
-  if (tmp == xt->xf)
-    {
-      PMU_MSG (("PLL already programmed for %d.%d MHz\n",
-               (xt->freq / 1000), (xt->freq % 1000)));
-
-#ifdef BCMUSBDEV
-      if (sbh->chip == BCM4328_CHIP_ID)
-       sb_pmu0_sbclk4328 (sbh, PMU0_PLL0_PC0_DIV_ARM_88MHZ);
-#endif
-      return;
-    }
-
-  if (tmp)
-    {
-      PMU_MSG (("Reprogramming PLL for %d.%d MHz (was %d.%dMHz)\n",
-               (xt->freq / 1000), (xt->freq % 1000),
-               (pmu0_xtaltab0[tmp - 1].freq / 1000),
-               (pmu0_xtaltab0[tmp - 1].freq % 1000)));
-    }
-  else
-    {
-      PMU_MSG (("Programming PLL for %d.%d MHz\n", (xt->freq / 1000),
-               (xt->freq % 1000)));
-    }
-
-  /* Make sure the PLL is off */
-  switch (sbh->chip)
-    {
-    case BCM4328_CHIP_ID:
-      AND_REG (osh, &cc->min_res_mask, ~PMURES_BIT (RES4328_BB_PLL_PU));
-      AND_REG (osh, &cc->max_res_mask, ~PMURES_BIT (RES4328_BB_PLL_PU));
-      break;
-    case BCM5354_CHIP_ID:
-      AND_REG (osh, &cc->min_res_mask, ~PMURES_BIT (RES5354_BB_PLL_PU));
-      AND_REG (osh, &cc->max_res_mask, ~PMURES_BIT (RES5354_BB_PLL_PU));
-      break;
-    default:
-      ASSERT (0);
-    }
-  SPINWAIT (R_REG (osh, &cc->clk_ctl_st) & CCS0_HTAVAIL,
-           PMU_MAX_TRANSITION_DLY);
-  ASSERT (!(R_REG (osh, &cc->clk_ctl_st) & CCS0_HTAVAIL));
-
-  PMU_MSG (("Done masking\n"));
-
-  /* Write PDIV in pllcontrol[0] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU0_PLL0_PLLCTL0);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  if (xt->freq >= PMU0_PLL0_PC0_PDIV_FREQ)
-    tmp |= PMU0_PLL0_PC0_PDIV_MASK;
-  else
-    tmp &= ~PMU0_PLL0_PC0_PDIV_MASK;
-  W_REG (osh, &cc->pllcontrol_data, tmp);
-
-  /* Write WILD in pllcontrol[1] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU0_PLL0_PLLCTL1);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  tmp =
-    ((tmp & ~(PMU0_PLL0_PC1_WILD_INT_MASK | PMU0_PLL0_PC1_WILD_FRAC_MASK)) |
-     (((xt->
-       wbint << PMU0_PLL0_PC1_WILD_INT_SHIFT) & PMU0_PLL0_PC1_WILD_INT_MASK)
-      | ((xt->wbfrac << PMU0_PLL0_PC1_WILD_FRAC_SHIFT) &
-        PMU0_PLL0_PC1_WILD_FRAC_MASK)));
-  if (xt->wbfrac == 0)
-    tmp |= PMU0_PLL0_PC1_STOP_MOD;
-  else
-    tmp &= ~PMU0_PLL0_PC1_STOP_MOD;
-  W_REG (osh, &cc->pllcontrol_data, tmp);
-
-  /* Write WILD in pllcontrol[2] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU0_PLL0_PLLCTL2);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  tmp = ((tmp & ~PMU0_PLL0_PC2_WILD_INT_MASK) |
-        ((xt->wbint >> PMU0_PLL0_PC2_WILD_INT_SHIFT) &
-         PMU0_PLL0_PC2_WILD_INT_MASK));
-  W_REG (osh, &cc->pllcontrol_data, tmp);
-
-  PMU_MSG (("Done pll\n"));
-
-  /* Write XtalFreq. Set the divisor also. */
-  tmp = R_REG (osh, &cc->pmucontrol);
-  tmp = ((tmp & ~PCTL_ILP_DIV_MASK) |
-        (((((xt->freq + 127) / 128) - 1) << PCTL_ILP_DIV_SHIFT) &
-         PCTL_ILP_DIV_MASK));
-  tmp = ((tmp & ~PCTL_XTALFREQ_MASK) |
-        ((xt->xf << PCTL_XTALFREQ_SHIFT) & PCTL_XTALFREQ_MASK));
-  W_REG (osh, &cc->pmucontrol, tmp);
-}
-
-static uint32
-BCMINITFN (sb_pmu0_alpclk0) (sb_t * sbh, osl_t * osh, chipcregs_t * cc)
-{
-  const pmu0_xtaltab0_t *xt;
-  uint32 xf;
-
-  /* Find the frequency in the table */
-  xf = (R_REG (osh, &cc->pmucontrol) & PCTL_XTALFREQ_MASK) >>
-    PCTL_XTALFREQ_SHIFT;
-  for (xt = pmu0_xtaltab0; xt->freq; xt++)
-    if (xt->xf == xf)
-      break;
-  if (xt->freq == 0)
-    xt = &pmu0_xtaltab0[PMU0_XTAL0_DEFAULT];
-
-  return xt->freq * 1000;
-}
-
-static uint32
-BCMINITFN (sb_pmu0_cpuclk0) (sb_t * sbh, osl_t * osh, chipcregs_t * cc)
-{
-  const pmu0_xtaltab0_t *xt;
-  uint32 xf, tmp, divarm;
-#ifdef BCMDBG
-  uint32 pdiv, wbint, wbfrac, fvco;
-#endif
-
-  if (sb_chip (sbh) == BCM5354_CHIP_ID)
-    {
-      /* 5354 gets sb clock of 120MHz from main pll */
-      return 120000000;
-    }
-
-  /* Find the xtal frequency in the table */
-  xf = (R_REG (osh, &cc->pmucontrol) & PCTL_XTALFREQ_MASK) >>
-    PCTL_XTALFREQ_SHIFT;
-  for (xt = pmu0_xtaltab0; xt->freq; xt++)
-    if (xt->xf == xf)
-      break;
-  if (xt->freq == 0)
-    xt = &pmu0_xtaltab0[PMU0_XTAL0_DEFAULT];
-
-  /* Read divarm from pllcontrol[0] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU0_PLL0_PLLCTL0);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  divarm = (tmp & PMU0_PLL0_PC0_DIV_ARM_MASK) >> PMU0_PLL0_PC0_DIV_ARM_SHIFT;
-
-#ifdef BCMDBG
-  /* Calculate Fvco based on xtal freq, pdiv, and wild */
-  pdiv = tmp & PMU0_PLL0_PC0_PDIV_MASK;
-
-  W_REG (osh, &cc->pllcontrol_addr, PMU0_PLL0_PLLCTL1);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  wbfrac =
-    (tmp & PMU0_PLL0_PC1_WILD_FRAC_MASK) >> PMU0_PLL0_PC1_WILD_FRAC_SHIFT;
-  wbint = (tmp & PMU0_PLL0_PC1_WILD_INT_MASK) >> PMU0_PLL0_PC1_WILD_INT_SHIFT;
-
-  W_REG (osh, &cc->pllcontrol_addr, PMU0_PLL0_PLLCTL2);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  wbint +=
-    (tmp & PMU0_PLL0_PC2_WILD_INT_MASK) << PMU0_PLL0_PC2_WILD_INT_SHIFT;
-
-  fvco = (xt->freq * wbint) << 8;
-  fvco += (xt->freq * (wbfrac >> 10)) >> 2;
-  fvco += (xt->freq * (wbfrac & 0x3ff)) >> 10;
-  fvco >>= 8;
-  fvco >>= pdiv;
-  fvco /= 1000;
-  fvco *= 1000;
-
-  PMU_MSG (("sb_pmu0_cpuclk0: wbint %u wbfrac %u fvco %u\n",
-           wbint, wbfrac, fvco));
-  ASSERT (fvco == PMU0_PLL0_FVCO);
-#endif /* BCMDBG */
-
-  /* Return ARM/SB clock */
-  return PMU0_PLL0_FVCO / (divarm + PMU0_PLL0_PC0_DIV_ARM_BASE) * 1000;
-}
-
-/* PMU corerev 1 pll programming for BCM4325 */
-/* setup pll and query clock speed */
-typedef struct
-{
-  uint16 fref;
-  uint8 xf;
-  uint8 p1div;
-  uint8 p2div;
-  uint8 ndiv_int;
-  uint32 ndiv_frac;
-} pmu1_xtaltab0_t;
-
-/* the following table is based on 880Mhz Fvco */
-#define PMU1_PLL0_FVCO 880000  /* Fvco 880Mhz */
-static const pmu1_xtaltab0_t
-BCMINITDATA (pmu1_xtaltab0)[] =
-{
-  {
-  12000, 1, 3, 22, 0x9, 0xFFFFEF},
-  {
-  13000, 2, 1, 6, 0xb, 0x483483},
-  {
-  14400, 3, 1, 10, 0xa, 0x1C71C7},
-  {
-  15360, 4, 1, 5, 0xb, 0x755555},
-  {
-  16200, 5, 1, 10, 0x5, 0x6E9E06},
-  {
-  16800, 6, 1, 10, 0x5, 0x3Cf3Cf},
-  {
-  19200, 7, 1, 9, 0x5, 0x17B425},
-  {
-  19800, 8, 1, 11, 0x4, 0xA57EB},
-  {
-  20000, 9, 1, 11, 0x4, 0x0},
-  {
-  24000, 10, 3, 11, 0xa, 0x0},
-  {
-  25000, 11, 5, 16, 0xb, 0x0},
-  {
-  26000, 12, 1, 2, 0x10, 0xEC4EC4},
-  {
-  30000, 13, 3, 8, 0xb, 0x0},
-  {
-  38400, 14, 1, 5, 0x4, 0x955555},
-  {
-  40000, 15, 1, 2, 0xb, 0},
-  {
-  0, 0, 0, 0, 0, 0}
-};
-
-/* Default to 15360Khz crystal */
-#define PMU1_XTAL0_DEFAULT     3
-
-static uint32
-BCMINITFN (sb_pmu1_alpclk0) (sb_t * sbh, osl_t * osh, chipcregs_t * cc)
-{
-  const pmu1_xtaltab0_t *xt;
-  uint32 xf;
-
-  /* Find the frequency in the table */
-  xf = (R_REG (osh, &cc->pmucontrol) & PCTL_XTALFREQ_MASK) >>
-    PCTL_XTALFREQ_SHIFT;
-  for (xt = pmu1_xtaltab0; xt->fref; xt++)
-    if (xt->xf == xf)
-      break;
-  if (xt->fref == 0)
-    xt = &pmu1_xtaltab0[PMU1_XTAL0_DEFAULT];
-
-  return xt->fref * 1000;
-}
-
-/* Set up PLL registers in the PMU as per the crystal speed.
- * Uses xtalfreq variable, or passed-in default.
- */
-static void
-BCMINITFN (sb_pmu1_pllinit0) (sb_t * sbh, osl_t * osh, chipcregs_t * cc,
-                             uint32 xtal)
-{
-  const pmu1_xtaltab0_t *xt;
-  uint32 tmp;
-  uint32 buf_strength = 0;
-
-  /* 4312: assume default works */
-  if (sbh->chip == BCM4312_CHIP_ID)
-    return;
-
-  /* Find the frequency in the table */
-  for (xt = pmu1_xtaltab0; xt->fref; xt++)
-    if (xt->fref == xtal)
-      break;
-  if (xt->fref == 0)
-    xt = &pmu1_xtaltab0[PMU1_XTAL0_DEFAULT];
-
-  PMU_MSG (("XTAL %d (%d)\n", xtal, xt->xf));
-
-  /* Check current PLL state */
-  if (((R_REG (osh, &cc->pmucontrol) & PCTL_XTALFREQ_MASK) >>
-       PCTL_XTALFREQ_SHIFT) == xt->xf)
-    {
-      PMU_MSG (("PLL already programmed for %d.%d MHz\n",
-               (xt->fref / 1000), (xt->fref % 1000)));
-      return;
-    }
-
-  PMU_MSG (("Programming PLL for %d.%d MHz\n", (xt->fref / 1000),
-           (xt->fref % 1000)));
-
-  /* Make sure the PLL is off */
-  switch (sbh->chip)
-    {
-    case BCM4325_CHIP_ID:
-      AND_REG (osh, &cc->min_res_mask,
-              ~(PMURES_BIT (RES4325_BBPLL_PWRSW_PU) |
-                PMURES_BIT (RES4325_HT_AVAIL)));
-      AND_REG (osh, &cc->max_res_mask,
-              ~(PMURES_BIT (RES4325_BBPLL_PWRSW_PU) |
-                PMURES_BIT (RES4325_HT_AVAIL)));
-
-      /* Change the BBPLL drive strength to 2 for all channels */
-      buf_strength = 0x222222;
-      break;
-    default:
-      ASSERT (0);
-    }
-  SPINWAIT (R_REG (osh, &cc->clk_ctl_st) & CCS_HTAVAIL,
-           PMU_MAX_TRANSITION_DLY);
-  ASSERT (!(R_REG (osh, &cc->clk_ctl_st) & CCS_HTAVAIL));
-
-  PMU_MSG (("Done masking\n"));
-
-  /* Write p1div and p2div to pllcontrol[0] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU1_PLL0_PLLCTL0);
-  tmp = R_REG (osh, &cc->pllcontrol_data) &
-    ~(PMU1_PLL0_PC0_P1DIV_MASK | PMU1_PLL0_PC0_P2DIV_MASK);
-  tmp |=
-    ((xt->
-      p1div << PMU1_PLL0_PC0_P1DIV_SHIFT) & PMU1_PLL0_PC0_P1DIV_MASK) | ((xt->
-                                                                         p2div
-                                                                         <<
-                                                                         PMU1_PLL0_PC0_P2DIV_SHIFT)
-                                                                        &
-                                                                        PMU1_PLL0_PC0_P2DIV_MASK);
-  W_REG (osh, &cc->pllcontrol_data, tmp);
-
-  /* Write ndiv_int and ndiv_mode to pllcontrol[2] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU1_PLL0_PLLCTL2);
-  tmp = R_REG (osh, &cc->pllcontrol_data) &
-    ~(PMU1_PLL0_PC2_NDIV_INT_MASK | PMU1_PLL0_PC2_NDIV_MODE_MASK);
-  tmp |=
-    ((xt->
-      ndiv_int << PMU1_PLL0_PC2_NDIV_INT_SHIFT) & PMU1_PLL0_PC2_NDIV_INT_MASK)
-    | ((1 << PMU1_PLL0_PC2_NDIV_MODE_SHIFT) & PMU1_PLL0_PC2_NDIV_MODE_MASK);
-  W_REG (osh, &cc->pllcontrol_data, tmp);
-
-  /* Write ndiv_frac to pllcontrol[3] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU1_PLL0_PLLCTL3);
-  tmp = R_REG (osh, &cc->pllcontrol_data) & ~PMU1_PLL0_PC3_NDIV_FRAC_MASK;
-  tmp |= ((xt->ndiv_frac << PMU1_PLL0_PC3_NDIV_FRAC_SHIFT) &
-         PMU1_PLL0_PC3_NDIV_FRAC_MASK);
-  W_REG (osh, &cc->pllcontrol_data, tmp);
-
-  if (buf_strength)
-    {
-      PMU_MSG (("Adjusting PLL buffer drive strength: %x\n", buf_strength));
-
-      W_REG (osh, &cc->pllcontrol_addr, PMU1_PLL0_PLLCTL5);
-      tmp = R_REG (osh, &cc->pllcontrol_data) & ~PMU1_PLL0_PC5_CLK_DRV_MASK;
-      tmp |= (buf_strength << PMU1_PLL0_PC5_CLK_DRV_SHIFT);
-      W_REG (osh, &cc->pllcontrol_data, tmp);
-    }
-
-  PMU_MSG (("Done pll\n"));
-
-  /* Write XtalFreq. Set the divisor also. */
-  tmp = R_REG (osh, &cc->pmucontrol) &
-    ~(PCTL_ILP_DIV_MASK | PCTL_XTALFREQ_MASK);
-  tmp |= (((((xt->fref + 127) / 128) - 1) << PCTL_ILP_DIV_SHIFT) &
-         PCTL_ILP_DIV_MASK) |
-    ((xt->xf << PCTL_XTALFREQ_SHIFT) & PCTL_XTALFREQ_MASK);
-  W_REG (osh, &cc->pmucontrol, tmp);
-}
-
-
-static uint32
-BCMINITFN (sb_pmu1_cpuclk0) (sb_t * sbh, osl_t * osh, chipcregs_t * cc)
-{
-  const pmu1_xtaltab0_t *xt;
-  uint32 xf, tmp, m1div;
-#ifdef BCMDBG
-  uint32 ndiv_int, ndiv_frac, p2div, p1div, fvco;
-#endif
-
-  /* Find the xtal frequency in the table */
-  xf = (R_REG (osh, &cc->pmucontrol) & PCTL_XTALFREQ_MASK) >>
-    PCTL_XTALFREQ_SHIFT;
-  for (xt = pmu1_xtaltab0; xt->fref; xt++)
-    if (xt->xf == xf)
-      break;
-  if (xt->fref == 0)
-    xt = &pmu1_xtaltab0[PMU1_XTAL0_DEFAULT];
-
-  /* Read m1div from pllcontrol[1] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU1_PLL0_PLLCTL1);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  m1div = (tmp & PMU1_PLL0_PC1_M1DIV_MASK) >> PMU1_PLL0_PC1_M1DIV_SHIFT;
-
-#ifdef BCMDBG
-  /* Read p2div/p1div from pllcontrol[0] */
-  W_REG (osh, &cc->pllcontrol_addr, PMU1_PLL0_PLLCTL0);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  p2div = (tmp & PMU1_PLL0_PC0_P2DIV_MASK) >> PMU1_PLL0_PC0_P2DIV_SHIFT;
-  p1div = (tmp & PMU1_PLL0_PC0_P1DIV_MASK) >> PMU1_PLL0_PC0_P1DIV_SHIFT;
-
-  /* Calculate Fvco based on xtal freq and ndiv and pdiv */
-  W_REG (osh, &cc->pllcontrol_addr, PMU1_PLL0_PLLCTL2);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  ndiv_int =
-    (tmp & PMU1_PLL0_PC2_NDIV_INT_MASK) >> PMU1_PLL0_PC2_NDIV_INT_SHIFT;
-
-  W_REG (osh, &cc->pllcontrol_addr, PMU1_PLL0_PLLCTL3);
-  tmp = R_REG (osh, &cc->pllcontrol_data);
-  ndiv_frac =
-    (tmp & PMU1_PLL0_PC3_NDIV_FRAC_MASK) >> PMU1_PLL0_PC3_NDIV_FRAC_SHIFT;
-
-  fvco = (xt->fref * ndiv_int) << 8;
-  fvco += (xt->fref * (ndiv_frac >> 12)) >> 4;
-  fvco += (xt->fref * (ndiv_frac & 0xfff)) >> 12;
-  fvco >>= 8;
-  fvco *= p2div;
-  fvco /= p1div;
-  fvco /= 1000;
-  fvco *= 1000;
-
-  PMU_MSG (("sb_pmu0_cpuclk0: ndiv_int %u ndiv_frac %u "
-           "p2div %u p1div %u fvco %u\n",
-           ndiv_int, ndiv_frac, p2div, p1div, fvco));
-  ASSERT (fvco == PMU1_PLL0_FVCO);
-#endif /* BCMDBG */
-
-  /* Return ARM/SB clock */
-  return PMU1_PLL0_FVCO / m1div * 1000;
-}
-
-void BCMINITFN (sb_pmu_pll_init) (sb_t * sbh, osl_t * osh, uint xtalfreq)
-{
-  chipcregs_t *cc;
-  uint origidx;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  switch (sbh->chip)
-    {
-    case BCM4328_CHIP_ID:
-      sb_pmu0_pllinit0 (sbh, osh, cc, xtalfreq);
-      break;
-    case BCM5354_CHIP_ID:
-      sb_pmu0_pllinit0 (sbh, osh, cc, xtalfreq);
-      break;
-    case BCM4325_CHIP_ID:
-      sb_pmu1_pllinit0 (sbh, osh, cc, xtalfreq);
-      break;
-    case BCM4312_CHIP_ID:
-      sb_pmu1_pllinit0 (sbh, osh, cc, xtalfreq);
-      break;
-    default:
-      PMU_MSG (("No PLL init done for chip %x rev %d pmurev %d\n",
-               sbh->chip, sbh->chiprev, sbh->pmurev));
-      break;
-    }
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-}
-
-uint32 BCMINITFN (sb_pmu_alp_clock) (sb_t * sbh, osl_t * osh)
-{
-  chipcregs_t *cc;
-  uint origidx;
-  uint32 clock = ALP_CLOCK;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  switch (sbh->chip)
-    {
-    case BCM4328_CHIP_ID:
-      clock = sb_pmu0_alpclk0 (sbh, osh, cc);
-      break;
-    case BCM5354_CHIP_ID:
-      clock = sb_pmu0_alpclk0 (sbh, osh, cc);
-      break;
-    case BCM4325_CHIP_ID:
-      clock = sb_pmu1_alpclk0 (sbh, osh, cc);
-      break;
-    case BCM4312_CHIP_ID:
-      clock = sb_pmu1_alpclk0 (sbh, osh, cc);
-      /* always 20Mhz */
-      clock = 20000 * 1000;
-      break;
-    default:
-      PMU_MSG (("No ALP clock specified "
-               "for chip %x rev %d pmurev %d, using default %d Hz\n",
-               sbh->chip, sbh->chiprev, sbh->pmurev, clock));
-      break;
-    }
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-  return clock;
-}
-
-uint BCMINITFN (sb_pmu_cpu_clock) (sb_t * sbh, osl_t * osh)
-{
-  chipcregs_t *cc;
-  uint origidx;
-  uint32 clock = HT_CLOCK;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  switch (sbh->chip)
-    {
-    case BCM4328_CHIP_ID:
-      clock = sb_pmu0_cpuclk0 (sbh, osh, cc);
-      break;
-    case BCM5354_CHIP_ID:
-      clock = sb_pmu0_cpuclk0 (sbh, osh, cc);
-      break;
-    case BCM4325_CHIP_ID:
-      clock = sb_pmu1_cpuclk0 (sbh, osh, cc);
-      break;
-    case BCM4312_CHIP_ID:
-      clock = sb_pmu1_cpuclk0 (sbh, osh, cc);
-      break;
-    default:
-      PMU_MSG (("No CPU clock specified "
-               "for chip %x rev %d pmurev %d, using default %d Hz\n",
-               sbh->chip, sbh->chiprev, sbh->pmurev, clock));
-      break;
-    }
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-  return clock;
-}
-
-void BCMINITFN (sb_pmu_init) (sb_t * sbh, osl_t * osh)
-{
-  chipcregs_t *cc;
-  uint origidx;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  if (sbh->pmurev >= 1)
-    {
-      if (sbh->chip == BCM4325_CHIP_ID && sbh->chiprev <= 1)
-       AND_REG (osh, &cc->pmucontrol, ~PCTL_NOILP_ON_WAIT);
-      else
-       OR_REG (osh, &cc->pmucontrol, PCTL_NOILP_ON_WAIT);
-    }
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-}
-
-void BCMINITFN (sb_pmu_otp_power) (sb_t * sbh, osl_t * osh, bool on)
-{
-  chipcregs_t *cc;
-  uint origidx;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  switch (sbh->chip)
-    {
-    case BCM4325_CHIP_ID:
-      if (on)
-       {
-         OR_REG (osh, &cc->min_res_mask, PMURES_BIT (RES4325_LNLDO2_PU));
-         if (sbh->boardflags & BFL_BUCKBOOST)
-           AND_REG (osh, &cc->min_res_mask,
-                    ~PMURES_BIT (RES4325_BUCK_BOOST_PWM));
-         OSL_DELAY (500);
-       }
-      else
-       {
-         if (sbh->boardflags & BFL_BUCKBOOST)
-           OR_REG (osh, &cc->min_res_mask,
-                   PMURES_BIT (RES4325_BUCK_BOOST_PWM));
-         AND_REG (osh, &cc->min_res_mask, ~PMURES_BIT (RES4325_LNLDO2_PU));
-       }
-      break;
-    default:
-      break;
-    }
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-}
-
-void
-sb_pmu_rcal (sb_t * sbh, osl_t * osh)
-{
-  chipcregs_t *cc;
-  uint origidx;
-
-  ASSERT (sbh->cccaps & CC_CAP_PMU);
-
-  /* Remember original core before switch to chipc */
-  origidx = sb_coreidx (sbh);
-  cc = sb_setcore (sbh, SB_CC, 0);
-  ASSERT (cc);
-
-  switch (sbh->chip)
-    {
-    case BCM4325_CHIP_ID:
-      {
-       uint8 rcal_code;
-       uint32 val;
-
-       /* Kick RCal */
-       W_REG (osh, &cc->chipcontrol_addr, 1);
-       AND_REG (osh, &cc->chipcontrol_data, ~0x04);
-       OR_REG (osh, &cc->chipcontrol_data, 0x04);
-
-       /* Wait for completion */
-       SPINWAIT (0 == (R_REG (osh, &cc->chipstatus) & 0x08),
-                 10 * 1000 * 1000);
-       ASSERT (R_REG (osh, &cc->chipstatus) & 0x08);
-
-       /* Drop the LSB to convert from 5 bit code to 4 bit code */
-       rcal_code = (uint8) (R_REG (osh, &cc->chipstatus) >> 5) & 0x0f;
-       PMU_MSG (("RCal completed, status 0x%x, code 0x%x\n",
-                 R_REG (osh, &cc->chipstatus), rcal_code));
-
-       /* Write RCal code into pmu_vreg_ctrl[32:29] */
-       W_REG (osh, &cc->regcontrol_addr, 0);
-       val = R_REG (osh, &cc->regcontrol_data) & ~((uint32) 0x07 << 29);
-       val |= (uint32) (rcal_code & 0x07) << 29;
-       W_REG (osh, &cc->regcontrol_data, val);
-       W_REG (osh, &cc->regcontrol_addr, 1);
-       val = R_REG (osh, &cc->regcontrol_data) & ~(uint32) 0x01;
-       val |= (uint32) ((rcal_code >> 3) & 0x01);
-       W_REG (osh, &cc->regcontrol_data, val);
-
-       /* Write RCal code into pmu_chip_ctrl[33:30] */
-       W_REG (osh, &cc->chipcontrol_addr, 0);
-       val = R_REG (osh, &cc->chipcontrol_data) & ~((uint32) 0x03 << 30);
-       val |= (uint32) (rcal_code & 0x03) << 30;
-       W_REG (osh, &cc->chipcontrol_data, val);
-       W_REG (osh, &cc->chipcontrol_addr, 1);
-       val = R_REG (osh, &cc->chipcontrol_data) & ~(uint32) 0x03;
-       val |= (uint32) ((rcal_code >> 2) & 0x03);
-       W_REG (osh, &cc->chipcontrol_data, val);
-
-       /* Set override in pmu_chip_ctrl[29] */
-       W_REG (osh, &cc->chipcontrol_addr, 0);
-       OR_REG (osh, &cc->chipcontrol_data, (0x01 << 29));
-
-       /* Power off RCal block */
-       W_REG (osh, &cc->chipcontrol_addr, 1);
-       AND_REG (osh, &cc->chipcontrol_data, ~0x04);
-
-       break;
-      }
-    default:
-      break;
-    }
-
-  /* Return to original core */
-  sb_setcoreidx (sbh, origidx);
-}
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcm4710.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcm4710.h
deleted file mode 100644 (file)
index c099717..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * BCM4710 address space map and definitions
- * Think twice before adding to this file, this is not the kitchen sink
- * These definitions are not guaranteed for all 47xx chips, only the 4710
- *
- * Copyright 2004, Broadcom Corporation   
- * All Rights Reserved.   
- *    
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY   
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM   
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS   
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.   
- *
- */
-
-#ifndef _bcm4710_h_
-#define _bcm4710_h_
-
-/* Address map */
-#define BCM4710_SDRAM          0x00000000      /* Physical SDRAM */
-#define BCM4710_PCI_MEM                0x08000000      /* Host Mode PCI memory access space (64 MB) */
-#define BCM4710_PCI_CFG                0x0c000000      /* Host Mode PCI configuration space (64 MB) */
-#define BCM4710_PCI_DMA                0x40000000      /* Client Mode PCI memory access space (1 GB) */
-#define        BCM4710_SDRAM_SWAPPED   0x10000000      /* Byteswapped Physical SDRAM */
-#define BCM4710_ENUM           0x18000000      /* Beginning of core enumeration space */
-
-/* Core register space */
-#define BCM4710_REG_SDRAM      0x18000000      /* SDRAM core registers */
-#define BCM4710_REG_ILINE20    0x18001000      /* InsideLine20 core registers */
-#define BCM4710_REG_EMAC0      0x18002000      /* Ethernet MAC 0 core registers */
-#define BCM4710_REG_CODEC      0x18003000      /* Codec core registers */
-#define BCM4710_REG_USB                0x18004000      /* USB core registers */
-#define BCM4710_REG_PCI                0x18005000      /* PCI core registers */
-#define BCM4710_REG_MIPS       0x18006000      /* MIPS core registers */
-#define BCM4710_REG_EXTIF      0x18007000      /* External Interface core registers */
-#define BCM4710_REG_EMAC1      0x18008000      /* Ethernet MAC 1 core registers */
-
-#define        BCM4710_EXTIF           0x1f000000      /* External Interface base address */
-#define BCM4710_PCMCIA_MEM     0x1f000000      /* External Interface PCMCIA memory access */
-#define BCM4710_PCMCIA_IO      0x1f100000      /* PCMCIA I/O access */
-#define BCM4710_PCMCIA_CONF    0x1f200000      /* PCMCIA configuration */
-#define BCM4710_PROG           0x1f800000      /* Programable interface */
-#define BCM4710_FLASH          0x1fc00000      /* Flash */
-
-#define        BCM4710_EJTAG           0xff200000      /* MIPS EJTAG space (2M) */
-
-#define        BCM4710_UART            (BCM4710_REG_EXTIF + 0x00000300)
-
-#define        BCM4710_EUART           (BCM4710_EXTIF + 0x00800000)
-#define        BCM4710_LED             (BCM4710_EXTIF + 0x00900000)
-
-#define        SBFLAG_PCI      0
-#define        SBFLAG_ENET0    1
-#define        SBFLAG_ILINE20  2
-#define        SBFLAG_CODEC    3
-#define        SBFLAG_USB      4
-#define        SBFLAG_EXTIF    5
-#define        SBFLAG_ENET1    6
-
-#ifdef CONFIG_HWSIM
-#define        BCM4710_TRACE(trval)        do { *((int *)0xa0000f18) = (trval); } while (0)
-#else
-#define        BCM4710_TRACE(trval)
-#endif
-
-
-/* BCM94702 CPCI -ExtIF used for LocalBus devs */
-
-#define BCM94702_CPCI_RESET_ADDR        BCM4710_EXTIF
-#define BCM94702_CPCI_BOARDID_ADDR     (BCM4710_EXTIF | 0x4000)
-#define BCM94702_CPCI_DOC_ADDR         (BCM4710_EXTIF | 0x6000)
-#define BCM94702_DOC_ADDR                BCM94702_CPCI_DOC_ADDR
-#define BCM94702_CPCI_LED_ADDR         (BCM4710_EXTIF | 0xc000)
-#define BCM94702_CPCI_NVRAM_ADDR       (BCM4710_EXTIF | 0xe000)
-#define BCM94702_CPCI_NVRAM_SIZE         0x1ff0 /* 8K NVRAM : DS1743/STM48txx*/
-#define BCM94702_CPCI_TOD_REG_BASE       (BCM94702_CPCI_NVRAM_ADDR | 0x1ff0)
-
-#define LED_REG(x)      \
- (*(volatile unsigned char *) (KSEG1ADDR(BCM94702_CPCI_LED_ADDR) + (x)))
-
-/* 
- * Reset function implemented in PLD.  Read or write should trigger hard reset 
- */
-#define SYS_HARD_RESET()   \
-    { for (;;) \
-     *( (volatile unsigned char *)\
-      KSEG1ADDR(BCM94702_CPCI_RESET_ADDR) ) = 0x80; \
-    }
-
-#endif /* _bcm4710_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdefs.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdefs.h
deleted file mode 100644 (file)
index 4185167..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * Misc system wide definitions
- *
- * Copyright 2006, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- */
-
-#ifndef        _bcmdefs_h_
-#define        _bcmdefs_h_
-
-/*
- * One doesn't need to include this file explicitly, gets included automatically if
- * typedefs.h is included.
- */
-
-/* Reclaiming text and data :
- * The following macros specify special linker sections that can be reclaimed
- * after a system is considered 'up'.
- */
-#if defined(__GNUC__) && defined(BCMRECLAIM)
-extern bool    bcmreclaimed;
-#define BCMINITDATA(_data)     __attribute__ ((__section__ (".dataini." #_data))) _data
-#define BCMINITFN(_fn)         __attribute__ ((__section__ (".textini." #_fn))) _fn
-#else /* #if defined(__GNUC__) && defined(BCMRECLAIM) */
-#define BCMINITDATA(_data)     _data
-#define BCMINITFN(_fn)         _fn
-#define bcmreclaimed           0
-#endif /* #if defined(__GNUC__) && defined(BCMRECLAIM) */
-
-/* Reclaim uninit functions if BCMNODOWN is defined            */
-/* and if they are not already removed by -gc-sections */
-#ifdef BCMNODOWN
-#define BCMUNINITFN(_fn)               BCMINITFN(_fn)
-#else
-#define BCMUNINITFN(_fn)               _fn
-#endif
-
-#ifdef BCMRECLAIM
-#define CONST
-#else
-#define CONST  const
-#endif /* BCMRECLAIM */
-
-/* Compatibility with old-style BCMRECLAIM */
-#define BCMINIT(_id)           _id
-
-
-/* Put some library data/code into ROM to reduce RAM requirements */
-#if defined(__GNUC__) && defined(BCMROMOFFLOAD)
-#define BCMROMDATA(_data)      __attribute__ ((__section__ (".datarom." #_data))) _data
-#define BCMROMFN(_fn)          __attribute__ ((__section__ (".textrom." #_fn))) _fn
-#else
-#define BCMROMDATA(_data)      _data
-#define BCMROMFN(_fn)          _fn
-#endif
-
-/* Bus types */
-#define        SB_BUS                  0       /* Silicon Backplane */
-#define        PCI_BUS                 1       /* PCI target */
-#define        PCMCIA_BUS              2       /* PCMCIA target */
-#define SDIO_BUS               3       /* SDIO target */
-#define JTAG_BUS               4       /* JTAG */
-#define NO_BUS                 0xFF    /* Bus that does not support R/W REG */
-
-/* Allows optimization for single-bus support */
-#ifdef BCMBUSTYPE
-#define BUSTYPE(bus) (BCMBUSTYPE)
-#else
-#define BUSTYPE(bus) (bus)
-#endif
-
-/* Defines for DMA Address Width - Shared between OSL and HNDDMA */
-#define DMADDR_MASK_32 0x0             /* Address mask for 32-bits */
-#define DMADDR_MASK_30 0xc0000000      /* Address mask for 30-bits */
-#define DMADDR_MASK_0  0xffffffff      /* Address mask for 0-bits (hi-part) */
-
-#define        DMADDRWIDTH_30  30 /* 30-bit addressing capability */
-#define        DMADDRWIDTH_32  32 /* 32-bit addressing capability */
-#define        DMADDRWIDTH_63  63 /* 64-bit addressing capability */
-#define        DMADDRWIDTH_64  64 /* 64-bit addressing capability */
-
-/* packet headroom necessary to accomodate the largest header in the system, (i.e TXOFF).
- * By doing, we avoid the need  to allocate an extra buffer for the header when bridging to WL.
- * There is a compile time check in wlc.c which ensure that this value is at least as big
- * as TXOFF. This value is used in dma_rxfill (hnddma.c).
- */
-#define BCMEXTRAHDROOM 160
-
-/* Headroom required for dongle-to-host communication.  Packets allocated
- * locally in the dongle (e.g. for CDC ioctls or RNDIS messages) should
- * leave this much room in front for low-level message headers which may
- * be needed to get across the dongle bus to the host.  (These messages
- * don't go over the network, so room for the full WL header above would
- * be a waste.)
- */
-#define BCMDONGLEHDRSZ 8
-
-/* Max. nvram variable table size */
-#define    MAXSZ_NVRAM_VARS    4096
-
-
-#endif /* _bcmdefs_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdevs.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdevs.h
deleted file mode 100644 (file)
index 5d0bb92..0000000
+++ /dev/null
@@ -1,393 +0,0 @@
-/*
- * Broadcom device-specific manifest constants.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- */
-
-#ifndef        _BCMDEVS_H
-#define        _BCMDEVS_H
-
-/* PCI vendor IDs */
-#define        VENDOR_EPIGRAM          0xfeda
-#define        VENDOR_BROADCOM         0x14e4
-#define        VENDOR_3COM             0x10b7
-#define        VENDOR_NETGEAR          0x1385
-#define        VENDOR_DIAMOND          0x1092
-#define        VENDOR_DELL             0x1028
-#define        VENDOR_HP               0x0e11
-#define        VENDOR_APPLE            0x106b
-#define VENDOR_SI_IMAGE                0x1095          /* Silicon Image, used by Arasan SDIO Host */
-#define VENDOR_BUFFALO         0x1154          /* Buffalo vendor id */
-#define VENDOR_TI              0x104c          /* Texas Instruments */
-
-/* PCMCIA vendor IDs */
-#define        VENDOR_BROADCOM_PCMCIA  0x02d0
-
-/* SDIO vendor IDs */
-#define        VENDOR_BROADCOM_SDIO    0x00BF
-
-/* PCI Device IDs */
-#define        BCM4210_DEVICE_ID       0x1072          /* never used */
-#define        BCM4230_DEVICE_ID       0x1086          /* never used */
-#define        BCM4401_ENET_ID         0x170c          /* 4401b0 production enet cards */
-#define        BCM3352_DEVICE_ID       0x3352          /* bcm3352 device id */
-#define        BCM3360_DEVICE_ID       0x3360          /* bcm3360 device id */
-#define        BCM4211_DEVICE_ID       0x4211
-#define        BCM4231_DEVICE_ID       0x4231
-#define        BCM4303_D11B_ID         0x4303          /* 4303 802.11b */
-#define        BCM4311_D11G_ID         0x4311          /* 4311 802.11b/g id */
-#define        BCM4311_D11DUAL_ID      0x4312          /* 4311 802.11a/b/g id */
-#define        BCM4311_D11A_ID         0x4313          /* 4311 802.11a id */
-#define        BCM4328_D11DUAL_ID      0x4314          /* 4328 802.11a/g id */
-#define        BCM4328_D11G_ID         0x4315          /* 4328 802.11g 2.4Ghz band id */
-#define        BCM4328_D11A_ID         0x4316          /* 4328 802.11a 5Ghz band id */
-#define        BCM4318_D11G_ID         0x4318          /* 4318 802.11b/g id */
-#define        BCM4318_D11DUAL_ID      0x4319          /* 4318 802.11a/b/g id */
-#define        BCM4318_D11A_ID         0x431a          /* 4318 802.11a id */
-#define        BCM4325_D11DUAL_ID      0x431b          /* 4325 802.11a/g id */
-#define        BCM4325_D11G_ID         0x431c          /* 4325 802.11g 2.4Ghz band id */
-#define        BCM4325_D11A_ID         0x431d          /* 4325 802.11a 5Ghz band id */
-#define        BCM4306_D11G_ID         0x4320          /* 4306 802.11g */
-#define        BCM4306_D11A_ID         0x4321          /* 4306 802.11a */
-#define        BCM4306_UART_ID         0x4322          /* 4306 uart */
-#define        BCM4306_V90_ID          0x4323          /* 4306 v90 codec */
-#define        BCM4306_D11DUAL_ID      0x4324          /* 4306 dual A+B */
-#define        BCM4306_D11G_ID2        0x4325          
-#define        BCM4321_D11N_ID         0x4328          /* 4321 802.11n dualband id */
-#define        BCM4321_D11N2G_ID       0x4329          /* 4321 802.11n 2.4Ghz band id */
-#define        BCM4321_D11N5G_ID       0x432a          /* 4321 802.11n 5Ghz band id */
-#define        BCMGPRS_UART_ID         0x4333          /* Uart id used by 4306/gprs card */
-#define        BCMGPRS2_UART_ID        0x4344          /* Uart id used by 4306/gprs card */
-#define FPGA_JTAGM_ID          0x43f0          /* FPGA jtagm device id */
-#define BCM_JTAGM_ID           0x43f1          /* BCM jtagm device id */
-#define SDIOH_FPGA_ID          0x43f2          /* sdio host fpga */
-#define BCM_SDIOH_ID           0x43f3          /* BCM sdio host id */
-#define SDIOD_FPGA_ID          0x43f4          /* sdio device fpga */
-#define SPIH_FPGA_ID           0x43f5          /* PCI SPI Host Controller FPGA */
-#define MIMO_FPGA_ID           0x43f8          /* FPGA mimo minimacphy device id */
-#define        BCM4402_ENET_ID         0x4402          /* 4402 enet */
-#define        BCM4402_V90_ID          0x4403          /* 4402 v90 codec */
-#define        BCM4410_DEVICE_ID       0x4410          /* bcm44xx family pci iline */
-#define        BCM4412_DEVICE_ID       0x4412          /* bcm44xx family pci enet */
-#define        BCM4430_DEVICE_ID       0x4430          /* bcm44xx family cardbus iline */
-#define        BCM4432_DEVICE_ID       0x4432          /* bcm44xx family cardbus enet */
-#define        BCM4704_ENET_ID         0x4706          /* 4704 enet (Use 47XX_ENET_ID instead!) */
-#define        BCM4710_DEVICE_ID       0x4710          /* 4710 primary function 0 */
-#define        BCM47XX_ILINE_ID        0x4711          /* 47xx iline20 */
-#define        BCM47XX_V90_ID          0x4712          /* 47xx v90 codec */
-#define        BCM47XX_ENET_ID         0x4713          /* 47xx enet */
-#define        BCM47XX_EXT_ID          0x4714          /* 47xx external i/f */
-#define        BCM47XX_USB_ID          0x4715          /* 47xx usb */
-#define        BCM47XX_USBH_ID         0x4716          /* 47xx usb host */
-#define        BCM47XX_USBD_ID         0x4717          /* 47xx usb device */
-#define        BCM47XX_IPSEC_ID        0x4718          /* 47xx ipsec */
-#define        BCM47XX_ROBO_ID         0x4719          /* 47xx/53xx roboswitch core */
-#define        BCM47XX_USB20H_ID       0x471a          /* 47xx usb 2.0 host */
-#define        BCM47XX_USB20D_ID       0x471b          /* 47xx usb 2.0 device */
-#define        BCM47XX_ATA100_ID       0x471d          /* 47xx parallel ATA */
-#define        BCM47XX_SATAXOR_ID      0x471e          /* 47xx serial ATA & XOR DMA */
-#define        BCM47XX_GIGETH_ID       0x471f          /* 47xx GbE (5700) */
-#define        BCM4712_MIPS_ID         0x4720          /* 4712 base devid */
-#define BCM47XX_SMBUS_EMU_ID   0x47fe          /* 47xx emulated SMBus device */
-#define        BCM47XX_XOR_EMU_ID      0x47ff          /* 47xx emulated XOR engine */
-#define        EPI41210_DEVICE_ID      0xa0fa          /* bcm4210 */
-#define        EPI41230_DEVICE_ID      0xa10e          /* bcm4230 */
-#define JINVANI_SDIOH_ID       0x4743          /* Jinvani SDIO Gold Host */
-#define BCM27XX_SDIOH_ID       0x2702          /* BCM27xx Standard SDIO Host */
-#define PCIXX21_FLASHMEDIA_ID  0x803b          /* TI PCI xx21 Standard Host Controller */
-#define PCIXX21_SDIOH_ID       0x803c          /* TI PCI xx21 Standard Host Controller */
-
-/* Chip IDs */
-#define        BCM4710_CHIP_ID         0x4710          /* 4710 chipid returned by sb_chip() */
-#define        BCM4402_CHIP_ID         0x4402          /* 4402 chipid */
-#define        BCM4306_CHIP_ID         0x4306          /* 4306 chipcommon chipid */
-#define        BCM4311_CHIP_ID         0x4311          /* 4311 PCIe 802.11a/b/g */
-#define        BCM4704_CHIP_ID         0x4704          /* 4704 chipcommon chipid */
-#define        BCM4312_CHIP_ID         0x4312          /* 4312 chip common chipid */
-#define        BCM4318_CHIP_ID         0x4318          /* 4318 chip common chipid */
-#define        BCM4321_CHIP_ID         0x4321          /* 4321 chip common chipid */
-#define        BCM4328_CHIP_ID         0x4328          /* 4328 chip common chipid */
-#define        BCM4325_CHIP_ID         0x4325          /* 4325 chip common chipid */
-#define        BCM4712_CHIP_ID         0x4712          /* 4712 chipcommon chipid */
-#define BCM5365_CHIP_ID                0x5365          /* 5365 chipcommon chipid */
-#define        BCM5350_CHIP_ID         0x5350          /* bcm5350 chipcommon chipid */
-#define        BCM5352_CHIP_ID         0x5352          /* bcm5352 chipcommon chipid */
-#define        BCM5354_CHIP_ID         0x5354          /* bcm5354 chipcommon chipid */
-#define        BCM4320_CHIP_ID         0x4320          /* bcm4320 chipcommon chipid */
-#define BCM4785_CHIP_ID                0x4785          /* 4785 chipcommon chipid */
-
-/* Package IDs */
-#define        BCM4303_PKG_ID          2               /* 4303 package id */
-#define        BCM4309_PKG_ID          1               /* 4309 package id */
-#define        BCM4712LARGE_PKG_ID     0               /* 340pin 4712 package id */
-#define        BCM4712SMALL_PKG_ID     1               /* 200pin 4712 package id */
-#define        BCM4712MID_PKG_ID       2               /* 225pin 4712 package id */
-#define BCM4328USBD11G_PKG_ID  2               /* 4328 802.11g USB package id */
-#define BCM4328USBDUAL_PKG_ID  3               /* 4328 802.11a/g USB package id */
-#define BCM4328SDIOD11G_PKG_ID 4               /* 4328 802.11g SDIO package id */
-#define BCM4328SDIODUAL_PKG_ID 5               /* 4328 802.11a/g SDIO package id */
-#define BCM5354E_PKG_ID                1               /* 5354E package id */
-#define HDLSIM5350_PKG_ID      1               /* HDL simulator package id for a 5350 */
-#define HDLSIM_PKG_ID          14              /* HDL simulator package id */
-#define HWSIM_PKG_ID           15              /* Hardware simulator package id */
-
-#define PCIXX21_FLASHMEDIA0_ID 0x8033          /* TI PCI xx21 Standard Host Controller */
-#define PCIXX21_SDIOH0_ID      0x8034          /* TI PCI xx21 Standard Host Controller */
-/* boardflags */
-#define        BFL_BTCOEXIST           0x00000001      /* This board implements Bluetooth coexistance */
-#define        BFL_PACTRL              0x00000002      /* This board has gpio 9 controlling the PA */
-#define        BFL_AIRLINEMODE 0x00000004      /* This board implements gpio13 radio disable indication */
-#define        BFL_ADCDIV              0x00000008      /* This board has the rssi ADC divider */
-#define        BFL_ENETROBO            0x00000010      /* This board has robo switch or core */
-#define        BFL_NOPLLDOWN   0x00000020      /* Not ok to power down the chip pll and oscillator */
-#define        BFL_CCKHIPWR            0x00000040      /* Can do high-power CCK transmission */
-#define        BFL_ENETADM             0x00000080      /* This board has ADMtek switch */
-#define        BFL_ENETVLAN            0x00000100      /* This board has vlan capability */
-#define        BFL_AFTERBURNER         0x00000200      /* This board supports Afterburner mode */
-#define BFL_NOPCI              0x00000400      /* This board leaves PCI floating */
-#define BFL_FEM                        0x00000800  /* This board supports the Front End Module */
-#define BFL_EXTLNA             0x00001000      /* This board has an external LNA */
-#define BFL_HGPA               0x00002000      /* This board has a high gain PA */
-#define        BFL_BTCMOD      0x00004000      /* This board' BTCOEXIST is in the alternate gpios */
-#define        BFL_ALTIQ               0x00008000      /* Alternate I/Q settings */
-#define BFL_NOPA       0x00010000      /* This board has no PA */
-#define BFL_RSSIINV            0x00020000      /* This board's RSSI uses positive slope */
-#define BFL_PAREF              0x00040000      /* This board uses the PARef LDO */
-#define BFL_3TSWITCH   0x00080000      /* This board uses a triple throw switch shared with BT */
-#define BFL_PHASESHIFTER       0x00100000      /* This board can support phase shifter */
-#define BFL_BUCKBOOST  0x00200000      /* This board has buck/booster */
-/* boardflags2 */
-#define BFL2_RXBB_INT_REG_DIS  0x00000001      /* This board has an external rxbb regulator */
-#define BFL2_DEPRECIATED_STUB  0x00000002      /* This board flag is depreciated */
-#define BFL2_TXPWRCTRL_EN      0x00000004      /* This board permits enabling TX Power Control */
-#define BFL2_2X4_DIV           0x00000008      /* This board supports the 2X4 diversity switch */
-#define BFL2_5G_PWRGAIN                0x00000010      /* This board supports 5G band power gain */
-#define BFL2_PCIEWAR_OVR       0x00000020      /* This board overrides ASPM and Clkreq settings */
-#define BFL2_CAESERS_BRD       0x00000040      /* This board is Dell Caeser's brd (unused by sw) */
-
-/* board specific GPIO assignment, gpio 0-3 are also customer-configurable led */
-#define        BOARD_GPIO_BTCMOD_IN    0x010   /* bit 4 is the alternate BT Coexistance Input */
-#define        BOARD_GPIO_BTCMOD_OUT   0x020   /* bit 5 is the alternate BT Coexistance Out */
-#define        BOARD_GPIO_BTC_IN       0x080   /* bit 7 is BT Coexistance Input */
-#define        BOARD_GPIO_BTC_OUT      0x100   /* bit 8 is BT Coexistance Out */
-#define        BOARD_GPIO_PACTRL       0x200   /* bit 9 controls the PA on new 4306 boards */
-#define BOARD_GPIO_ANT0_SEL    0x100   /* With BFL2_2X4_DIV */
-#define BOARD_GPIO_ANT1_SEL    0x200   /* With BFL2_2X4_DIV */
-
-#define        PCI_CFG_GPIO_SCS        0x10    /* PCI config space bit 4 for 4306c0 slow clock source */
-#define PCI_CFG_GPIO_HWRAD     0x20    /* PCI config space GPIO 13 for hw radio disable */
-#define PCI_CFG_GPIO_XTAL      0x40    /* PCI config space GPIO 14 for Xtal powerup */
-#define PCI_CFG_GPIO_PLL       0x80    /* PCI config space GPIO 15 for PLL powerdown */
-
-/* power control defines */
-#define PLL_DELAY              150             /* us pll on delay */
-#define FREF_DELAY             200             /* us fref change delay */
-#define MIN_SLOW_CLK           32              /* us Slow clock period */
-#define        XTAL_ON_DELAY           1000            /* us crystal power-on delay */
-
-/* Reference Board Types */
-#define        BU4710_BOARD            0x0400
-#define        VSIM4710_BOARD          0x0401
-#define        QT4710_BOARD            0x0402
-
-#define        BU4309_BOARD            0x040a
-#define        BCM94309CB_BOARD        0x040b
-#define        BCM94309MP_BOARD        0x040c
-#define        BCM4309AP_BOARD         0x040d
-
-#define        BCM94302MP_BOARD        0x040e
-
-#define        BU4306_BOARD            0x0416
-#define        BCM94306CB_BOARD        0x0417
-#define        BCM94306MP_BOARD        0x0418
-
-#define        BCM94710D_BOARD         0x041a
-#define        BCM94710R1_BOARD        0x041b
-#define        BCM94710R4_BOARD        0x041c
-#define        BCM94710AP_BOARD        0x041d
-
-#define        BU2050_BOARD            0x041f
-
-
-#define        BCM94309G_BOARD         0x0421
-
-#define        BU4704_BOARD            0x0423
-#define        BU4702_BOARD            0x0424
-
-#define        BCM94306PC_BOARD        0x0425          /* pcmcia 3.3v 4306 card */
-
-
-#define        BCM94702MN_BOARD        0x0428
-
-/* BCM4702 1U CompactPCI Board */
-#define        BCM94702CPCI_BOARD      0x0429
-
-/* BCM4702 with BCM95380 VLAN Router */
-#define        BCM95380RR_BOARD        0x042a
-
-/* cb4306 with SiGe PA */
-#define        BCM94306CBSG_BOARD      0x042b
-
-/* cb4306 with SiGe PA */
-#define        PCSG94306_BOARD         0x042d
-
-/* bu4704 with sdram */
-#define        BU4704SD_BOARD          0x042e
-
-/* Dual 11a/11g Router */
-#define        BCM94704AGR_BOARD       0x042f
-
-/* 11a-only minipci */
-#define        BCM94308MP_BOARD        0x0430
-
-
-
-#define BU4712_BOARD           0x0444
-#define        BU4712SD_BOARD          0x045d
-#define        BU4712L_BOARD           0x045f
-
-/* BCM4712 boards */
-#define BCM94712AP_BOARD       0x0445
-#define BCM94712P_BOARD                0x0446
-
-/* BCM4318 boards */
-#define BU4318_BOARD           0x0447
-#define CB4318_BOARD           0x0448
-#define MPG4318_BOARD          0x0449
-#define MP4318_BOARD           0x044a
-#define SD4318_BOARD           0x044b
-
-/* BCM63XX boards */
-#define BCM96338_BOARD         0x6338
-#define BCM96348_BOARD         0x6348
-#define BCM96358_BOARD         0x6358
-
-/* Another mp4306 with SiGe */
-#define        BCM94306P_BOARD         0x044c
-
-/* mp4303 */
-#define        BCM94303MP_BOARD        0x044e
-
-/* mpsgh4306 */
-#define        BCM94306MPSGH_BOARD     0x044f
-
-/* BRCM 4306 w/ Front End Modules */
-#define BCM94306MPM            0x0450
-#define BCM94306MPL            0x0453
-
-/* 4712agr */
-#define        BCM94712AGR_BOARD       0x0451
-
-/* pcmcia 4303 */
-#define        PC4303_BOARD            0x0454
-
-/* 5350K */
-#define        BCM95350K_BOARD         0x0455
-
-/* 5350R */
-#define        BCM95350R_BOARD         0x0456
-
-/* 4306mplna */
-#define        BCM94306MPLNA_BOARD     0x0457
-
-/* 4320 boards */
-#define        BU4320_BOARD            0x0458
-#define        BU4320S_BOARD           0x0459
-#define        BCM94320PH_BOARD        0x045a
-
-/* 4306mph */
-#define        BCM94306MPH_BOARD       0x045b
-
-/* 4306pciv */
-#define        BCM94306PCIV_BOARD      0x045c
-
-#define        BU4712SD_BOARD          0x045d
-
-#define        BCM94320PFLSH_BOARD     0x045e
-
-#define        BU4712L_BOARD           0x045f
-#define        BCM94712LGR_BOARD       0x0460
-#define        BCM94320R_BOARD         0x0461
-
-#define        BU5352_BOARD            0x0462
-
-#define        BCM94318MPGH_BOARD      0x0463
-
-#define        BU4311_BOARD            0x0464
-#define        BCM94311MC_BOARD        0x0465
-#define        BCM94311MCAG_BOARD      0x0466
-
-#define        BCM95352GR_BOARD        0x0467
-
-/* bcm95351agr */
-#define        BCM95351AGR_BOARD       0x0470
-
-/* bcm94704mpcb */
-#define        BCM94704MPCB_BOARD      0x0472
-
-/* 4785 boards */
-#define BU4785_BOARD           0x0478
-
-/* 4321 boards */
-#define BU4321_BOARD           0x046b
-#define BU4321E_BOARD          0x047c
-#define MP4321_BOARD           0x046c
-#define CB2_4321_BOARD         0x046d
-#define MC4321_BOARD           0x046e
-
-/* 4328 boards */
-#define BU4328_BOARD           0x0481
-#define BCM4328SDG_BOARD       0x0482
-#define BCM4328SDAG_BOARD      0x0483
-#define BCM4328UG_BOARD                0x0484
-#define BCM4328UAG_BOARD       0x0485
-#define BCM4328PC_BOARD                0x0486
-#define BCM4328CF_BOARD                0x0487
-
-/* 4325 boards */
-#define BU4325_BOARD           0x0490
-
-/* # of GPIO pins */
-#define GPIO_NUMPINS           16
-
-/* radio ID codes */
-#define        NORADIO_ID              0xe4f5
-#define        NORADIO_IDCODE          0x4e4f5246
-
-#define        BCM2050_ID              0x2050
-#define        BCM2050_IDCODE          0x02050000
-#define        BCM2050A0_IDCODE        0x1205017f
-#define        BCM2050A1_IDCODE        0x2205017f
-#define        BCM2050R8_IDCODE        0x8205017f
-
-#define BCM2055_ID             0x2055
-#define BCM2055_IDCODE         0x02055000
-#define BCM2055A0_IDCODE       0x1205517f
-
-#define        BCM2060_ID              0x2060
-#define        BCM2060_IDCODE          0x02060000
-#define        BCM2060WW_IDCODE        0x1206017f
-
-#define BCM2062_ID             0x2062
-#define BCM2062_IDCODE         0x02062000
-#define BCM2062A0_IDCODE       0x0206217f
-
-#define BCM2063_ID             0x2063
-#define BCM2063_IDCODE         0x02063000
-#define BCM2063A0_IDCODE       0x0206317f
-
-/* parts of an idcode: */
-#define        IDCODE_MFG_MASK         0x00000fff
-#define        IDCODE_MFG_SHIFT        0
-#define        IDCODE_ID_MASK          0x0ffff000
-#define        IDCODE_ID_SHIFT         12
-#define        IDCODE_REV_MASK         0xf0000000
-#define        IDCODE_REV_SHIFT        28
-
-#endif /* _BCMDEVS_H */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdevs1.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmdevs1.h
deleted file mode 100644 (file)
index b779222..0000000
+++ /dev/null
@@ -1,390 +0,0 @@
-/*
- * Broadcom device-specific manifest constants.
- *
- * Copyright 2005, Broadcom Corporation   
- * All Rights Reserved.   
- *    
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY   
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM   
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS   
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.   
- */
-
-#ifndef        _BCMDEVS_H
-#define        _BCMDEVS_H
-
-
-/* Known PCI vendor Id's */
-#define        VENDOR_EPIGRAM          0xfeda
-#define        VENDOR_BROADCOM         0x14e4
-#define        VENDOR_3COM             0x10b7
-#define        VENDOR_NETGEAR          0x1385
-#define        VENDOR_DIAMOND          0x1092
-#define        VENDOR_DELL             0x1028
-#define        VENDOR_HP               0x0e11
-#define        VENDOR_APPLE            0x106b
-
-/* PCI Device Id's */
-#define        BCM4210_DEVICE_ID       0x1072          /* never used */
-#define        BCM4211_DEVICE_ID       0x4211
-#define        BCM4230_DEVICE_ID       0x1086          /* never used */
-#define        BCM4231_DEVICE_ID       0x4231
-
-#define        BCM4410_DEVICE_ID       0x4410          /* bcm44xx family pci iline */
-#define        BCM4430_DEVICE_ID       0x4430          /* bcm44xx family cardbus iline */
-#define        BCM4412_DEVICE_ID       0x4412          /* bcm44xx family pci enet */
-#define        BCM4432_DEVICE_ID       0x4432          /* bcm44xx family cardbus enet */
-
-#define        BCM3352_DEVICE_ID       0x3352          /* bcm3352 device id */
-#define        BCM3360_DEVICE_ID       0x3360          /* bcm3360 device id */
-
-#define        EPI41210_DEVICE_ID      0xa0fa          /* bcm4210 */
-#define        EPI41230_DEVICE_ID      0xa10e          /* bcm4230 */
-
-#define        BCM47XX_ILINE_ID        0x4711          /* 47xx iline20 */
-#define        BCM47XX_V90_ID          0x4712          /* 47xx v90 codec */
-#define        BCM47XX_ENET_ID         0x4713          /* 47xx enet */
-#define        BCM47XX_EXT_ID          0x4714          /* 47xx external i/f */
-#define        BCM47XX_USB_ID          0x4715          /* 47xx usb */
-#define        BCM47XX_USBH_ID         0x4716          /* 47xx usb host */
-#define        BCM47XX_USBD_ID         0x4717          /* 47xx usb device */
-#define        BCM47XX_IPSEC_ID        0x4718          /* 47xx ipsec */
-#define        BCM47XX_ROBO_ID         0x4719          /* 47xx/53xx roboswitch core */
-#define        BCM47XX_USB20H_ID       0x471a          /* 47xx usb 2.0 host */
-#define        BCM47XX_USB20D_ID       0x471b          /* 47xx usb 2.0 device */
-
-#define        BCM4710_DEVICE_ID       0x4710          /* 4710 primary function 0 */
-
-#define        BCM4610_DEVICE_ID       0x4610          /* 4610 primary function 0 */
-#define        BCM4610_ILINE_ID        0x4611          /* 4610 iline100 */
-#define        BCM4610_V90_ID          0x4612          /* 4610 v90 codec */
-#define        BCM4610_ENET_ID         0x4613          /* 4610 enet */
-#define        BCM4610_EXT_ID          0x4614          /* 4610 external i/f */
-#define        BCM4610_USB_ID          0x4615          /* 4610 usb */
-
-#define        BCM4402_DEVICE_ID       0x4402          /* 4402 primary function 0 */
-#define        BCM4402_ENET_ID         0x4402          /* 4402 enet */
-#define        BCM4402_V90_ID          0x4403          /* 4402 v90 codec */
-#define        BCM4401_ENET_ID         0x170c          /* 4401b0 production enet cards */
-
-#define        BCM4301_DEVICE_ID       0x4301          /* 4301 primary function 0 */
-#define        BCM4301_D11B_ID         0x4301          /* 4301 802.11b */
-
-#define        BCM4307_DEVICE_ID       0x4307          /* 4307 primary function 0 */
-#define        BCM4307_V90_ID          0x4305          /* 4307 v90 codec */
-#define        BCM4307_ENET_ID         0x4306          /* 4307 enet */
-#define        BCM4307_D11B_ID         0x4307          /* 4307 802.11b */
-
-#define        BCM4306_DEVICE_ID       0x4306          /* 4306 chipcommon chipid */
-#define        BCM4306_D11G_ID         0x4320          /* 4306 802.11g */
-#define        BCM4306_D11G_ID2        0x4325          
-#define        BCM4306_D11A_ID         0x4321          /* 4306 802.11a */
-#define        BCM4306_UART_ID         0x4322          /* 4306 uart */
-#define        BCM4306_V90_ID          0x4323          /* 4306 v90 codec */
-#define        BCM4306_D11DUAL_ID      0x4324          /* 4306 dual A+B */
-
-#define        BCM4309_PKG_ID          1               /* 4309 package id */
-
-#define        BCM4303_D11B_ID         0x4303          /* 4303 802.11b */
-#define        BCM4303_PKG_ID          2               /* 4303 package id */
-
-#define        BCM4310_DEVICE_ID       0x4310          /* 4310 chipcommon chipid */
-#define        BCM4310_D11B_ID         0x4311          /* 4310 802.11b */
-#define        BCM4310_UART_ID         0x4312          /* 4310 uart */
-#define        BCM4310_ENET_ID         0x4313          /* 4310 enet */
-#define        BCM4310_USB_ID          0x4315          /* 4310 usb */
-
-#define        BCMGPRS_UART_ID         0x4333          /* Uart id used by 4306/gprs card */
-#define        BCMGPRS2_UART_ID        0x4344          /* Uart id used by 4306/gprs card */
-
-
-#define        BCM4704_DEVICE_ID       0x4704          /* 4704 chipcommon chipid */
-#define        BCM4704_ENET_ID         0x4706          /* 4704 enet (Use 47XX_ENET_ID instead!) */
-
-#define        BCM4317_DEVICE_ID       0x4317          /* 4317 chip common chipid */
-
-#define        BCM4318_DEVICE_ID       0x4318          /* 4318 chip common chipid */
-#define        BCM4318_D11G_ID         0x4318          /* 4318 801.11b/g id */
-#define        BCM4318_D11DUAL_ID      0x4319          /* 4318 801.11a/b/g id */
-#define BCM4318_JTAGM_ID       0x4331          /* 4318 jtagm device id */
-
-#define FPGA_JTAGM_ID          0x4330          /* ??? */
-
-/* Address map */
-#define BCM4710_SDRAM           0x00000000      /* Physical SDRAM */
-#define BCM4710_PCI_MEM         0x08000000      /* Host Mode PCI memory access space (64 MB) */
-#define BCM4710_PCI_CFG         0x0c000000      /* Host Mode PCI configuration space (64 MB) */
-#define BCM4710_PCI_DMA         0x40000000      /* Client Mode PCI memory access space (1 GB) */
-#define BCM4710_SDRAM_SWAPPED   0x10000000      /* Byteswapped Physical SDRAM */
-#define BCM4710_ENUM            0x18000000      /* Beginning of core enumeration space */
-
-/* Core register space */
-#define BCM4710_REG_SDRAM       0x18000000      /* SDRAM core registers */
-#define BCM4710_REG_ILINE20     0x18001000      /* InsideLine20 core registers */
-#define BCM4710_REG_EMAC0       0x18002000      /* Ethernet MAC 0 core registers */
-#define BCM4710_REG_CODEC       0x18003000      /* Codec core registers */
-#define BCM4710_REG_USB         0x18004000      /* USB core registers */
-#define BCM4710_REG_PCI         0x18005000      /* PCI core registers */
-#define BCM4710_REG_MIPS        0x18006000      /* MIPS core registers */
-#define BCM4710_REG_EXTIF       0x18007000      /* External Interface core registers */
-#define BCM4710_REG_EMAC1       0x18008000      /* Ethernet MAC 1 core registers */
-
-#define BCM4710_EXTIF           0x1f000000      /* External Interface base address */
-#define BCM4710_PCMCIA_MEM      0x1f000000      /* External Interface PCMCIA memory access */
-#define BCM4710_PCMCIA_IO       0x1f100000      /* PCMCIA I/O access */
-#define BCM4710_PCMCIA_CONF     0x1f200000      /* PCMCIA configuration */
-#define BCM4710_PROG            0x1f800000      /* Programable interface */
-#define BCM4710_FLASH           0x1fc00000      /* Flash */
-
-#define BCM4710_EJTAG           0xff200000      /* MIPS EJTAG space (2M) */
-
-#define BCM4710_UART            (BCM4710_REG_EXTIF + 0x00000300)
-
-#define BCM4710_EUART           (BCM4710_EXTIF + 0x00800000)
-#define BCM4710_LED             (BCM4710_EXTIF + 0x00900000)
-
-#define        BCM4712_DEVICE_ID       0x4712          /* 4712 chipcommon chipid */
-#define        BCM4712_MIPS_ID         0x4720          /* 4712 base devid */
-#define        BCM4712LARGE_PKG_ID     0               /* 340pin 4712 package id */
-#define        BCM4712SMALL_PKG_ID     1               /* 200pin 4712 package id */
-#define        BCM4712MID_PKG_ID       2               /* 225pin 4712 package id */
-
-#define        SDIOH_FPGA_ID           0x4380          /* sdio host fpga */
-
-#define BCM5365_DEVICE_ID       0x5365          /* 5365 chipcommon chipid */
-#define        BCM5350_DEVICE_ID       0x5350          /* bcm5350 chipcommon chipid */
-#define        BCM5352_DEVICE_ID       0x5352          /* bcm5352 chipcommon chipid */
-
-#define        BCM4320_DEVICE_ID       0x4320          /* bcm4320 chipcommon chipid */
-
-/* PCMCIA vendor Id's */
-
-#define        VENDOR_BROADCOM_PCMCIA  0x02d0
-
-/* SDIO vendor Id's */
-#define        VENDOR_BROADCOM_SDIO    0x00BF
-
-
-/* boardflags */
-#define        BFL_BTCOEXIST           0x0001  /* This board implements Bluetooth coexistance */
-#define        BFL_PACTRL              0x0002  /* This board has gpio 9 controlling the PA */
-#define        BFL_AIRLINEMODE         0x0004  /* This board implements gpio13 radio disable indication */
-#define        BFL_ENETROBO            0x0010  /* This board has robo switch or core */
-#define        BFL_CCKHIPWR            0x0040  /* Can do high-power CCK transmission */
-#define        BFL_ENETADM             0x0080  /* This board has ADMtek switch */
-#define        BFL_ENETVLAN            0x0100  /* This board has vlan capability */
-#define        BFL_AFTERBURNER         0x0200  /* This board supports Afterburner mode */
-#define BFL_NOPCI              0x0400  /* This board leaves PCI floating */
-#define BFL_FEM                        0x0800  /* This board supports the Front End Module */
-#define BFL_EXTLNA             0x1000  /* This board has an external LNA */
-#define BFL_HGPA               0x2000  /* This board has a high gain PA */
-#define        BFL_BTCMOD              0x4000  /* This board' BTCOEXIST is in the alternate gpios */
-#define        BFL_ALTIQ               0x8000  /* Alternate I/Q settings */
-
-/* board specific GPIO assignment, gpio 0-3 are also customer-configurable led */
-#define BOARD_GPIO_HWRAD_B     0x010   /* bit 4 is HWRAD input on 4301 */
-#define        BOARD_GPIO_BTCMOD_IN    0x010   /* bit 4 is the alternate BT Coexistance Input */
-#define        BOARD_GPIO_BTCMOD_OUT   0x020   /* bit 5 is the alternate BT Coexistance Out */
-#define        BOARD_GPIO_BTC_IN       0x080   /* bit 7 is BT Coexistance Input */
-#define        BOARD_GPIO_BTC_OUT      0x100   /* bit 8 is BT Coexistance Out */
-#define        BOARD_GPIO_PACTRL       0x200   /* bit 9 controls the PA on new 4306 boards */
-#define        PCI_CFG_GPIO_SCS        0x10    /* PCI config space bit 4 for 4306c0 slow clock source */
-#define PCI_CFG_GPIO_HWRAD     0x20    /* PCI config space GPIO 13 for hw radio disable */
-#define PCI_CFG_GPIO_XTAL      0x40    /* PCI config space GPIO 14 for Xtal powerup */
-#define PCI_CFG_GPIO_PLL       0x80    /* PCI config space GPIO 15 for PLL powerdown */
-
-/* Bus types */
-#define        SB_BUS                  0       /* Silicon Backplane */
-#define        PCI_BUS                 1       /* PCI target */
-#define        PCMCIA_BUS              2       /* PCMCIA target */
-#define SDIO_BUS               3       /* SDIO target */
-#define JTAG_BUS               4       /* JTAG */
-
-/* Allows optimization for single-bus support */
-#ifdef BCMBUSTYPE
-#define BUSTYPE(bus) (BCMBUSTYPE)
-#else
-#define BUSTYPE(bus) (bus)
-#endif
-
-/* power control defines */
-#define PLL_DELAY              150             /* us pll on delay */
-#define FREF_DELAY             200             /* us fref change delay */
-#define MIN_SLOW_CLK           32              /* us Slow clock period */
-#define        XTAL_ON_DELAY           1000            /* us crystal power-on delay */
-
-/* Reference Board Types */
-
-#define        BU4710_BOARD            0x0400
-#define        VSIM4710_BOARD          0x0401
-#define        QT4710_BOARD            0x0402
-
-#define        BU4610_BOARD            0x0403
-#define        VSIM4610_BOARD          0x0404
-
-#define        BU4307_BOARD            0x0405
-#define        BCM94301CB_BOARD        0x0406
-#define        BCM94301PC_BOARD        0x0406          /* Pcmcia 5v card */
-#define        BCM94301MP_BOARD        0x0407
-#define        BCM94307MP_BOARD        0x0408
-#define        BCMAP4307_BOARD         0x0409
-
-#define        BU4309_BOARD            0x040a
-#define        BCM94309CB_BOARD        0x040b
-#define        BCM94309MP_BOARD        0x040c
-#define        BCM4309AP_BOARD         0x040d
-
-#define        BCM94302MP_BOARD        0x040e
-
-#define        VSIM4310_BOARD          0x040f
-#define        BU4711_BOARD            0x0410
-#define        BCM94310U_BOARD         0x0411
-#define        BCM94310AP_BOARD        0x0412
-#define        BCM94310MP_BOARD        0x0414
-
-#define        BU4306_BOARD            0x0416
-#define        BCM94306CB_BOARD        0x0417
-#define        BCM94306MP_BOARD        0x0418
-
-#define        BCM94710D_BOARD         0x041a
-#define        BCM94710R1_BOARD        0x041b
-#define        BCM94710R4_BOARD        0x041c
-#define        BCM94710AP_BOARD        0x041d
-
-
-#define        BU2050_BOARD            0x041f
-
-
-#define        BCM94309G_BOARD         0x0421
-
-#define        BCM94301PC3_BOARD       0x0422          /* Pcmcia 3.3v card */
-
-#define        BU4704_BOARD            0x0423
-#define        BU4702_BOARD            0x0424
-
-#define        BCM94306PC_BOARD        0x0425          /* pcmcia 3.3v 4306 card */
-
-#define        BU4317_BOARD            0x0426
-
-
-#define        BCM94702MN_BOARD        0x0428
-
-/* BCM4702 1U CompactPCI Board */
-#define        BCM94702CPCI_BOARD      0x0429
-
-/* BCM4702 with BCM95380 VLAN Router */
-#define        BCM95380RR_BOARD        0x042a
-
-/* cb4306 with SiGe PA */
-#define        BCM94306CBSG_BOARD      0x042b
-
-/* mp4301 with 2050 radio */
-#define        BCM94301MPL_BOARD       0x042c
-
-/* cb4306 with SiGe PA */
-#define        PCSG94306_BOARD         0x042d
-
-/* bu4704 with sdram */
-#define        BU4704SD_BOARD          0x042e
-
-/* Dual 11a/11g Router */
-#define        BCM94704AGR_BOARD       0x042f
-
-/* 11a-only minipci */
-#define        BCM94308MP_BOARD        0x0430
-
-
-
-/* BCM94317 boards */
-#define BCM94317CB_BOARD       0x0440
-#define BCM94317MP_BOARD       0x0441
-#define BCM94317PCMCIA_BOARD   0x0442
-#define BCM94317SDIO_BOARD     0x0443
-
-#define BU4712_BOARD           0x0444
-#define        BU4712SD_BOARD          0x045d
-#define        BU4712L_BOARD           0x045f
-
-/* BCM4712 boards */
-#define BCM94712AP_BOARD       0x0445
-#define BCM94712P_BOARD                0x0446
-
-/* BCM4318 boards */
-#define BU4318_BOARD           0x0447
-#define CB4318_BOARD           0x0448
-#define MPG4318_BOARD          0x0449
-#define MP4318_BOARD           0x044a
-#define SD4318_BOARD           0x044b
-
-/* BCM63XX boards */
-#define BCM96338_BOARD         0x6338
-#define BCM96345_BOARD         0x6345
-#define BCM96348_BOARD         0x6348
-
-/* Another mp4306 with SiGe */
-#define        BCM94306P_BOARD         0x044c
-
-/* CF-like 4317 modules */
-#define        BCM94317CF_BOARD        0x044d
-
-/* mp4303 */
-#define        BCM94303MP_BOARD        0x044e
-
-/* mpsgh4306 */
-#define        BCM94306MPSGH_BOARD     0x044f
-
-/* BRCM 4306 w/ Front End Modules */
-#define BCM94306MPM            0x0450
-#define BCM94306MPL            0x0453
-
-/* 4712agr */
-#define        BCM94712AGR_BOARD       0x0451
-
-/* The real CF 4317 board */
-#define        CFI4317_BOARD           0x0452
-
-/* pcmcia 4303 */
-#define        PC4303_BOARD            0x0454
-
-/* 5350K */
-#define        BCM95350K_BOARD         0x0455
-
-/* 5350R */
-#define        BCM95350R_BOARD         0x0456
-
-/* 4306mplna */
-#define        BCM94306MPLNA_BOARD     0x0457
-
-/* 4320 boards */
-#define        BU4320_BOARD            0x0458
-#define        BU4320S_BOARD           0x0459
-#define        BCM94320PH_BOARD        0x045a
-
-/* 4306mph */
-#define        BCM94306MPH_BOARD       0x045b
-
-/* 4306pciv */
-#define        BCM94306PCIV_BOARD      0x045c
-
-#define        BU4712SD_BOARD          0x045d
-
-#define        BCM94320PFLSH_BOARD     0x045e
-
-#define        BU4712L_BOARD           0x045f
-#define        BCM94712LGR_BOARD       0x0460
-#define        BCM94320R_BOARD         0x0461
-
-#define        BU5352_BOARD            0x0462
-
-#define        BCM94318MPGH_BOARD      0x0463
-
-
-#define        BCM95352GR_BOARD        0x0467
-
-/* bcm95351agr */
-#define        BCM95351AGR_BOARD       0x0470
-
-/* # of GPIO pins */
-#define GPIO_NUMPINS           16
-
-#endif /* _BCMDEVS_H */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmendian.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmendian.h
deleted file mode 100644 (file)
index 042f603..0000000
+++ /dev/null
@@ -1,197 +0,0 @@
-/*
- * local version of endian.h - byte order defines
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
-*/
-
-#ifndef _BCMENDIAN_H_
-#define _BCMENDIAN_H_
-
-#include <typedefs.h>
-
-/* Byte swap a 16 bit value */
-#define BCMSWAP16(val) \
-       ((uint16)(\
-               (((uint16)(val) & (uint16)0x00ffU) << 8) | \
-               (((uint16)(val) & (uint16)0xff00U) >> 8)))
-
-/* Byte swap a 32 bit value */
-#define BCMSWAP32(val) \
-       ((uint32)(\
-               (((uint32)(val) & (uint32)0x000000ffUL) << 24) | \
-               (((uint32)(val) & (uint32)0x0000ff00UL) <<  8) | \
-               (((uint32)(val) & (uint32)0x00ff0000UL) >>  8) | \
-               (((uint32)(val) & (uint32)0xff000000UL) >> 24)))
-
-/* 2 Byte swap a 32 bit value */
-#define BCMSWAP32BY16(val) \
-       ((uint32)(\
-               (((uint32)(val) & (uint32)0x0000ffffUL) << 16) | \
-               (((uint32)(val) & (uint32)0xffff0000UL) >> 16)))
-
-
-static INLINE uint16
-bcmswap16(uint16 val)
-{
-       return BCMSWAP16(val);
-}
-
-static INLINE uint32
-bcmswap32(uint32 val)
-{
-       return BCMSWAP32(val);
-}
-
-static INLINE uint32
-bcmswap32by16(uint32 val)
-{
-       return BCMSWAP32BY16(val);
-}
-
-/* buf - start of buffer of shorts to swap */
-/* len  - byte length of buffer */
-static INLINE void
-bcmswap16_buf(uint16 *buf, uint len)
-{
-       len = len/2;
-
-       while (len--) {
-               *buf = bcmswap16(*buf);
-               buf++;
-       }
-}
-
-#ifndef hton16
-#ifndef IL_BIGENDIAN
-#define HTON16(i) BCMSWAP16(i)
-#define        hton16(i) bcmswap16(i)
-#define        hton32(i) bcmswap32(i)
-#define        ntoh16(i) bcmswap16(i)
-#define        ntoh32(i) bcmswap32(i)
-#define ltoh16(i) (i)
-#define ltoh32(i) (i)
-#define htol16(i) (i)
-#define htol32(i) (i)
-#else
-#define HTON16(i) (i)
-#define        hton16(i) (i)
-#define        hton32(i) (i)
-#define        ntoh16(i) (i)
-#define        ntoh32(i) (i)
-#define        ltoh16(i) bcmswap16(i)
-#define        ltoh32(i) bcmswap32(i)
-#define htol16(i) bcmswap16(i)
-#define htol32(i) bcmswap32(i)
-#endif /* IL_BIGENDIAN */
-#endif /* hton16 */
-
-#ifndef IL_BIGENDIAN
-#define ltoh16_buf(buf, i)
-#define htol16_buf(buf, i)
-#else
-#define ltoh16_buf(buf, i) bcmswap16_buf((uint16*)buf, i)
-#define htol16_buf(buf, i) bcmswap16_buf((uint16*)buf, i)
-#endif /* IL_BIGENDIAN */
-
-/*
-* store 16-bit value to unaligned little endian byte array.
-*/
-static INLINE void
-htol16_ua_store(uint16 val, uint8 *bytes)
-{
-       bytes[0] = val&0xff;
-       bytes[1] = val>>8;
-}
-
-/*
-* store 32-bit value to unaligned little endian byte array.
-*/
-static INLINE void
-htol32_ua_store(uint32 val, uint8 *bytes)
-{
-       bytes[0] = val&0xff;
-       bytes[1] = (val>>8)&0xff;
-       bytes[2] = (val>>16)&0xff;
-       bytes[3] = val>>24;
-}
-
-/*
-* store 16-bit value to unaligned network(big) endian byte array.
-*/
-static INLINE void
-hton16_ua_store(uint16 val, uint8 *bytes)
-{
-       bytes[1] = val&0xff;
-       bytes[0] = val>>8;
-}
-
-/*
-* store 32-bit value to unaligned network(big) endian byte array.
-*/
-static INLINE void
-hton32_ua_store(uint32 val, uint8 *bytes)
-{
-       bytes[3] = val&0xff;
-       bytes[2] = (val>>8)&0xff;
-       bytes[1] = (val>>16)&0xff;
-       bytes[0] = val>>24;
-}
-
-/*
-* load 16-bit value from unaligned little endian byte array.
-*/
-static INLINE uint16
-ltoh16_ua(void *bytes)
-{
-       return (((uint8*)bytes)[1]<<8)+((uint8 *)bytes)[0];
-}
-
-/*
-* load 32-bit value from unaligned little endian byte array.
-*/
-static INLINE uint32
-ltoh32_ua(void *bytes)
-{
-       return (((uint8*)bytes)[3]<<24)+(((uint8*)bytes)[2]<<16)+
-              (((uint8*)bytes)[1]<<8)+((uint8*)bytes)[0];
-}
-
-/*
-* load 16-bit value from unaligned big(network) endian byte array.
-*/
-static INLINE uint16
-ntoh16_ua(void *bytes)
-{
-       return (((uint8*)bytes)[0]<<8)+((uint8*)bytes)[1];
-}
-
-/*
-* load 32-bit value from unaligned big(network) endian byte array.
-*/
-static INLINE uint32
-ntoh32_ua(void *bytes)
-{
-       return (((uint8*)bytes)[0]<<24)+(((uint8*)bytes)[1]<<16)+
-              (((uint8*)bytes)[2]<<8)+((uint8*)bytes)[3];
-}
-
-#define ltoh_ua(ptr) (\
-       sizeof(*(ptr)) == sizeof(uint8) ?  *(uint8 *)ptr : \
-       sizeof(*(ptr)) == sizeof(uint16) ? (((uint8 *)ptr)[1]<<8)+((uint8 *)ptr)[0] : \
-       (((uint8 *)ptr)[3]<<24)+(((uint8 *)ptr)[2]<<16)+(((uint8 *)ptr)[1]<<8)+((uint8 *)ptr)[0] \
-)
-
-#define ntoh_ua(ptr) (\
-       sizeof(*(ptr)) == sizeof(uint8) ?  *(uint8 *)ptr : \
-       sizeof(*(ptr)) == sizeof(uint16) ? (((uint8 *)ptr)[0]<<8)+((uint8 *)ptr)[1] : \
-       (((uint8 *)ptr)[0]<<24)+(((uint8 *)ptr)[1]<<16)+(((uint8 *)ptr)[2]<<8)+((uint8 *)ptr)[3] \
-)
-
-#endif /* _BCMENDIAN_H_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmnvram.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmnvram.h
deleted file mode 100644 (file)
index 9dd6d85..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- * NVRAM variable manipulation
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef _bcmnvram_h_
-#define _bcmnvram_h_
-
-#ifndef _LANGUAGE_ASSEMBLY
-
-#include <typedefs.h>
-#include <bcmdefs.h>
-
-struct nvram_header {
-       uint32 magic;
-       uint32 len;
-       uint32 crc_ver_init;    /* 0:7 crc, 8:15 ver, 16:31 sdram_init */
-       uint32 config_refresh;  /* 0:15 sdram_config, 16:31 sdram_refresh */
-       uint32 config_ncdl;     /* ncdl values for memc */
-};
-
-struct nvram_tuple {
-       char *name;
-       char *value;
-       struct nvram_tuple *next;
-};
-
-/*
- * Get default value for an NVRAM variable
- */
-extern char *nvram_default_get(const char *name);
-
-/*
- * Append a chunk of nvram variables to the global list
- */
-extern int nvram_append(void *sb, char *vars, uint varsz);
-
-/*
- * Check for reset button press for restoring factory defaults.
- */
-extern bool nvram_reset(void *sbh);
-
-/*
- * Disable NVRAM access. May be unnecessary or undefined on certain
- * platforms.
- */
-extern void nvram_exit(void *sbh);
-
-/*
- * Get the value of an NVRAM variable. The pointer returned may be
- * invalid after a set.
- * @param      name    name of variable to get
- * @return     value of variable or NULL if undefined
- */
-extern char * nvram_get(const char *name);
-
-/* 
- * Read the reset GPIO value from the nvram and set the GPIO
- * as input
- */
-extern int BCMINITFN(nvram_resetgpio_init)(void *sbh);
-
-/* 
- * Get the value of an NVRAM variable.
- * @param      name    name of variable to get
- * @return     value of variable or NUL if undefined
- */
-#define nvram_safe_get(name) (nvram_get(name) ? : "")
-
-/*
- * Match an NVRAM variable.
- * @param      name    name of variable to match
- * @param      match   value to compare against value of variable
- * @return     TRUE if variable is defined and its value is string equal
- *             to match or FALSE otherwise
- */
-static INLINE int
-nvram_match(char *name, char *match) {
-       const char *value = nvram_get(name);
-       return (value && !strcmp(value, match));
-}
-
-/*
- * Inversely match an NVRAM variable.
- * @param      name    name of variable to match
- * @param      match   value to compare against value of variable
- * @return     TRUE if variable is defined and its value is not string
- *             equal to invmatch or FALSE otherwise
- */
-static INLINE int
-nvram_invmatch(char *name, char *invmatch) {
-       const char *value = nvram_get(name);
-       return (value && strcmp(value, invmatch));
-}
-
-/*
- * Set the value of an NVRAM variable. The name and value strings are
- * copied into private storage. Pointers to previously set values
- * may become invalid. The new value may be immediately
- * retrieved but will not be permanently stored until a commit.
- * @param      name    name of variable to set
- * @param      value   value of variable
- * @return     0 on success and errno on failure
- */
-extern int nvram_set(const char *name, const char *value);
-
-/*
- * Unset an NVRAM variable. Pointers to previously set values
- * remain valid until a set.
- * @param      name    name of variable to unset
- * @return     0 on success and errno on failure
- * NOTE: use nvram_commit to commit this change to flash.
- */
-extern int nvram_unset(const char *name);
-
-/*
- * Commit NVRAM variables to permanent storage. All pointers to values
- * may be invalid after a commit.
- * NVRAM values are undefined after a commit.
- * @return     0 on success and errno on failure
- */
-extern int nvram_commit(void);
-
-/*
- * Get all NVRAM variables (format name=value\0 ... \0\0).
- * @param      buf     buffer to store variables
- * @param      count   size of buffer in bytes
- * @return     0 on success and errno on failure
- */
-extern int nvram_getall(char *nvram_buf, int count);
-
-/*
- * returns the crc value of the nvram
- * @param      nvh     nvram header pointer
- */
-extern uint8 nvram_calc_crc(struct nvram_header * nvh);
-
-extern char* getvar(char *vars, const char *name);
-extern int getintvar(char *vars, const char *name);
-
-#endif /* _LANGUAGE_ASSEMBLY */
-
-/* The NVRAM version number stored as an NVRAM variable */
-#define NVRAM_SOFTWARE_VERSION "1"
-
-#define NVRAM_MAGIC            0x48534C46      /* 'FLSH' */
-#define NVRAM_CLEAR_MAGIC      0x0
-#define NVRAM_INVALID_MAGIC    0xFFFFFFFF
-#define NVRAM_VERSION          1
-#define NVRAM_HEADER_SIZE      20
-#define NVRAM_SPACE            0x8000
-
-#define NVRAM_MAX_VALUE_LEN 255
-#define NVRAM_MAX_PARAM_LEN 64
-
-#define NVRAM_CRC_START_POSITION       9 /* magic, len, crc8 to be skipped */
-#define NVRAM_CRC_VER_MASK     0xffffff00 /* for crc_ver_init */
-
-#endif /* _bcmnvram_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmsrom.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmsrom.h
deleted file mode 100644 (file)
index 5185900..0000000
+++ /dev/null
@@ -1,309 +0,0 @@
-/*
- * Misc useful routines to access NIC local SROM/OTP .
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef        _bcmsrom_h_
-#define        _bcmsrom_h_
-
-/* Maximum srom: 4 Kilobits == 512 bytes */
-#define        SROM_MAX                512
-
-
-#define        SROM_WORDS              64
-
-#define SROM3_SWRGN_OFF                28      /* s/w region offset in words */
-
-#define        SROM_SSID               2
-
-#define        SROM_WL1LHMAXP          29
-
-#define        SROM_WL1LPAB0           30
-#define        SROM_WL1LPAB1           31
-#define        SROM_WL1LPAB2           32
-
-#define        SROM_WL1HPAB0           33
-#define        SROM_WL1HPAB1           34
-#define        SROM_WL1HPAB2           35
-
-#define        SROM_MACHI_IL0          36
-#define        SROM_MACMID_IL0         37
-#define        SROM_MACLO_IL0          38
-#define        SROM_MACHI_ET0          39
-#define        SROM_MACMID_ET0         40
-#define        SROM_MACLO_ET0          41
-#define        SROM_MACHI_ET1          42
-#define        SROM_MACMID_ET1         43
-#define        SROM_MACLO_ET1          44
-#define        SROM3_MACHI             37
-#define        SROM3_MACMID            38
-#define        SROM3_MACLO             39
-
-#define        SROM_BXARSSI2G          40
-#define        SROM_BXARSSI5G          41
-
-#define        SROM_TRI52G             42
-#define        SROM_TRI5GHL            43
-
-#define        SROM_RXPO52G            45
-
-#define        SROM2_ENETPHY           45
-
-#define        SROM_AABREV             46
-/* Fields in AABREV */
-#define        SROM_BR_MASK            0x00ff
-#define        SROM_CC_MASK            0x0f00
-#define        SROM_CC_SHIFT           8
-#define        SROM_AA0_MASK           0x3000
-#define        SROM_AA0_SHIFT          12
-#define        SROM_AA1_MASK           0xc000
-#define        SROM_AA1_SHIFT          14
-
-#define        SROM_WL0PAB0            47
-#define        SROM_WL0PAB1            48
-#define        SROM_WL0PAB2            49
-
-#define        SROM_LEDBH10            50
-#define        SROM_LEDBH32            51
-
-#define        SROM_WL10MAXP           52
-
-#define        SROM_WL1PAB0            53
-#define        SROM_WL1PAB1            54
-#define        SROM_WL1PAB2            55
-
-#define        SROM_ITT                56
-
-#define        SROM_BFL                57
-#define        SROM_BFL2               28
-#define        SROM3_BFL2              61
-
-#define        SROM_AG10               58
-
-#define        SROM_CCODE              59
-
-#define        SROM_OPO                60
-
-#define        SROM3_LEDDC             62
-
-#define        SROM_CRCREV             63
-
-/* SROM Rev 4: Reallocate the software part of the srom to accomodate
- * MIMO features. It assumes up to two PCIE functions and 440 bytes
- * of useable srom i.e. the useable storage in chips with OTP that
- * implements hardware redundancy.
- */
-
-#define        SROM4_WORDS             220
-
-#define        SROM4_SIGN              32
-#define        SROM4_SIGNATURE         0x5372
-
-#define        SROM4_BREV              33
-
-#define        SROM4_BFL0              34
-#define        SROM4_BFL1              35
-#define        SROM4_BFL2              36
-#define        SROM4_BFL3              37
-#define        SROM5_BFL0              37
-#define        SROM5_BFL1              38
-#define        SROM5_BFL2              39
-#define        SROM5_BFL3              40
-
-#define        SROM4_MACHI             38
-#define        SROM4_MACMID            39
-#define        SROM4_MACLO             40
-#define        SROM5_MACHI             41
-#define        SROM5_MACMID            42
-#define        SROM5_MACLO             43
-
-#define        SROM4_CCODE             41
-#define        SROM4_REGREV            42
-#define        SROM5_CCODE             34
-#define        SROM5_REGREV            35
-
-#define        SROM4_LEDBH10           43
-#define        SROM4_LEDBH32           44
-#define        SROM5_LEDBH10           59
-#define        SROM5_LEDBH32           60
-
-#define        SROM4_LEDDC             45
-#define        SROM5_LEDDC             45
-
-#define        SROM4_AA                46
-#define        SROM4_AA2G_MASK         0x00ff
-#define        SROM4_AA2G_SHIFT        0
-#define        SROM4_AA5G_MASK         0xff00
-#define        SROM4_AA5G_SHIFT        8
-
-#define        SROM4_AG10              47
-#define        SROM4_AG32              48
-
-#define        SROM4_TXPID2G           49
-#define        SROM4_TXPID5G           51
-#define        SROM4_TXPID5GL          53
-#define        SROM4_TXPID5GH          55
-
-#define SROM4_TXRXC            61
-#define SROM4_TXCHAIN_MASK     0x000f
-#define SROM4_TXCHAIN_SHIFT    0
-#define SROM4_RXCHAIN_MASK     0x00f0
-#define SROM4_RXCHAIN_SHIFT    4
-#define SROM4_SWITCH_MASK      0xff00
-#define SROM4_SWITCH_SHIFT     8
-
-/* Per-path fields */
-#define        MAX_PATH                4
-#define        SROM4_PATH0             64
-#define        SROM4_PATH1             87
-#define        SROM4_PATH2             110
-#define        SROM4_PATH3             133
-
-#define        SROM4_2G_ITT_MAXP       0
-#define        SROM4_2G_PA             1
-#define        SROM4_5G_ITT_MAXP       5
-#define        SROM4_5GLH_MAXP         6
-#define        SROM4_5G_PA             7
-#define        SROM4_5GL_PA            11
-#define        SROM4_5GH_PA            15
-
-/* Fields in the ITT_MAXP and 5GLH_MAXP words */
-#define        B2G_MAXP_MASK           0xff
-#define        B2G_ITT_SHIFT           8
-#define        B5G_MAXP_MASK           0xff
-#define        B5G_ITT_SHIFT           8
-#define        B5GH_MAXP_MASK          0xff
-#define        B5GL_MAXP_SHIFT         8
-
-/* All the miriad power offsets */
-#define        SROM4_2G_CCKPO          156
-#define        SROM4_2G_OFDMPO         157
-#define        SROM4_5G_OFDMPO         159
-#define        SROM4_5GL_OFDMPO        161
-#define        SROM4_5GH_OFDMPO        163
-#define        SROM4_2G_MCSPO          165
-#define        SROM4_5G_MCSPO          173
-#define        SROM4_5GL_MCSPO         181
-#define        SROM4_5GH_MCSPO         189
-#define        SROM4_CDDPO             197
-#define        SROM4_STBCPO            198
-#define        SROM4_BW40PO            199
-#define        SROM4_BWDUPPO           200
-
-#define        SROM4_CRCREV            219
-
-
-/*SROM Rev 8: Make space for a 48word hardware header for PCIe rev >= 6.
- * This is acombined srom for both MIMO and SISO boards, usable in
- * the .130 4Kilobit OTP with hardware redundancy.
- */
-
-#define        SROM8_SIGN              64
-
-#define        SROM8_BREV              65
-
-#define        SROM8_BFL0              66
-#define        SROM8_BFL1              67
-#define        SROM8_BFL2              68
-#define        SROM8_BFL3              69
-
-#define        SROM8_MACHI             70
-#define        SROM8_MACMID            71
-#define        SROM8_MACLO             72
-
-#define        SROM8_CCODE             73
-#define        SROM8_REGREV            74
-
-#define        SROM8_LEDBH10           75
-#define        SROM8_LEDBH32           76
-
-#define        SROM8_LEDDC             77
-
-#define        SROM8_AA                78
-
-#define        SROM8_AG10              79
-#define        SROM8_AG32              80
-
-#define        SROM8_TXRXC             81
-
-#define        SROM8_BXARSSI2G         82
-#define        SROM8_BXARSSI5G         83
-#define        SROM8_TRI52G            84
-#define        SROM8_TRI5GHL           85
-#define        SROM8_RXPO52G           86
-
-/* Per-path offsets & fields */
-#define        SROM8_PATH0             96
-#define        SROM8_PATH1             112
-#define        SROM8_PATH2             128
-#define        SROM8_PATH3             144
-
-#define        SROM8_2G_ITT_MAXP       0
-#define        SROM8_2G_PA             1
-#define        SROM8_5G_ITT_MAXP       4
-#define        SROM8_5GLH_MAXP         5
-#define        SROM8_5G_PA             6
-#define        SROM8_5GL_PA            9
-#define        SROM8_5GH_PA            12
-
-/* All the miriad power offsets */
-#define        SROM8_2G_CCKPO          160
-
-#define        SROM8_2G_OFDMPO         161
-#define        SROM8_5G_OFDMPO         163
-#define        SROM8_5GL_OFDMPO        165
-#define        SROM8_5GH_OFDMPO        167
-
-#define        SROM8_2G_MCSPO          169
-#define        SROM8_5G_MCSPO          177
-#define        SROM8_5GL_MCSPO         185
-#define        SROM8_5GH_MCSPO         193
-
-#define        SROM8_CDDPO             201
-#define        SROM8_STBCPO            202
-#define        SROM8_BW40PO            203
-#define        SROM8_BWDUPPO           204
-
-/* SISO PA parameters are in the path0 spaces */
-#define        SROM8_SISO              96
-
-/* Legacy names for SISO PA paramters */
-#define        SROM8_W0_ITTMAXP        (SROM8_SISO + SROM8_2G_ITT_MAXP)
-#define        SROM8_W0_PAB0           (SROM8_SISO + SROM8_2G_PA)
-#define        SROM8_W0_PAB1           (SROM8_SISO + SROM8_2G_PA + 1)
-#define        SROM8_W0_PAB2           (SROM8_SISO + SROM8_2G_PA + 2)
-#define        SROM8_W1_ITTMAXP        (SROM8_SISO + SROM8_5G_ITT_MAXP)
-#define        SROM8_W1_MAXP_LCHC      (SROM8_SISO + SROM8_5GLH_MAXP)
-#define        SROM8_W1_PAB0           (SROM8_SISO + SROM8_5G_PA)
-#define        SROM8_W1_PAB1           (SROM8_SISO + SROM8_5G_PA + 1)
-#define        SROM8_W1_PAB2           (SROM8_SISO + SROM8_5G_PA + 2)
-#define        SROM8_W1_PAB0_LC        (SROM8_SISO + SROM8_5GL_PA)
-#define        SROM8_W1_PAB1_LC        (SROM8_SISO + SROM8_5GL_PA + 1)
-#define        SROM8_W1_PAB2_LC        (SROM8_SISO + SROM8_5GL_PA + 2)
-#define        SROM8_W1_PAB0_HC        (SROM8_SISO + SROM8_5GH_PA)
-#define        SROM8_W1_PAB1_HC        (SROM8_SISO + SROM8_5GH_PA + 1)
-#define        SROM8_W1_PAB2_HC        (SROM8_SISO + SROM8_5GH_PA + 2)
-
-#define        SROM8_CRCREV            219
-
-/* Prototypes */
-extern int srom_var_init(sb_t *sbh, uint bus, void *curmap, osl_t *osh,
-                         char **vars, uint *count);
-
-extern int srom_read(sb_t *sbh, uint bus, void *curmap, osl_t *osh,
-                     uint byteoff, uint nbytes, uint16 *buf);
-extern int srom_write(sb_t *sbh, uint bus, void *curmap, osl_t *osh,
-                      uint byteoff, uint nbytes, uint16 *buf);
-
-extern int srom_parsecis(osl_t *osh, uint8 **pcis, uint ciscnt,
-                         char **vars, uint *count);
-
-#endif /* _bcmsrom_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmutils.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/bcmutils.h
deleted file mode 100644 (file)
index 4c4986c..0000000
+++ /dev/null
@@ -1,589 +0,0 @@
-/*
- * Misc useful os-independent macros and functions.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- * $Id$
- */
-
-#ifndef        _bcmutils_h_
-#define        _bcmutils_h_
-
-/* ctype replacement */
-#define _BCM_U 0x01    /* upper */
-#define _BCM_L 0x02    /* lower */
-#define _BCM_D 0x04    /* digit */
-#define _BCM_C 0x08    /* cntrl */
-#define _BCM_P 0x10    /* punct */
-#define _BCM_S 0x20    /* white space (space/lf/tab) */
-#define _BCM_X 0x40    /* hex digit */
-#define _BCM_SP        0x80    /* hard space (0x20) */
-
-extern const unsigned char bcm_ctype[];
-#define bcm_ismask(x)  (bcm_ctype[(int)(unsigned char)(x)])
-
-#define bcm_isalnum(c) ((bcm_ismask(c)&(_BCM_U|_BCM_L|_BCM_D)) != 0)
-#define bcm_isalpha(c) ((bcm_ismask(c)&(_BCM_U|_BCM_L)) != 0)
-#define bcm_iscntrl(c) ((bcm_ismask(c)&(_BCM_C)) != 0)
-#define bcm_isdigit(c) ((bcm_ismask(c)&(_BCM_D)) != 0)
-#define bcm_isgraph(c) ((bcm_ismask(c)&(_BCM_P|_BCM_U|_BCM_L|_BCM_D)) != 0)
-#define bcm_islower(c) ((bcm_ismask(c)&(_BCM_L)) != 0)
-#define bcm_isprint(c) ((bcm_ismask(c)&(_BCM_P|_BCM_U|_BCM_L|_BCM_D|_BCM_SP)) != 0)
-#define bcm_ispunct(c) ((bcm_ismask(c)&(_BCM_P)) != 0)
-#define bcm_isspace(c) ((bcm_ismask(c)&(_BCM_S)) != 0)
-#define bcm_isupper(c) ((bcm_ismask(c)&(_BCM_U)) != 0)
-#define bcm_isxdigit(c)        ((bcm_ismask(c)&(_BCM_D|_BCM_X)) != 0)
-#define bcm_tolower(c) (bcm_isupper((c)) ? ((c) + 'a' - 'A') : (c))
-#define bcm_toupper(c) (bcm_islower((c)) ? ((c) + 'A' - 'a') : (c))
-
-/* Buffer structure for collecting string-formatted data 
-* using bcm_bprintf() API.
-* Use bcm_binit() to initialize before use
-*/
-
-struct bcmstrbuf {
-       char *buf;      /* pointer to current position in origbuf */
-       unsigned int size;      /* current (residual) size in bytes */
-       char *origbuf;  /* unmodified pointer to orignal buffer */
-       unsigned int origsize;  /* unmodified orignal buffer size in bytes */
-};
-
-/* ** driver-only section ** */
-#ifdef BCMDRIVER
-#include <osl.h>
-
-#define GPIO_PIN_NOTDEFINED    0x20    /* Pin not defined */
-
-/*
- * Spin at most 'us' microseconds while 'exp' is true.
- * Caller should explicitly test 'exp' when this completes
- * and take appropriate error action if 'exp' is still true.
- */
-#define SPINWAIT(exp, us) { \
-       uint countdown = (us) + 9; \
-       while ((exp) && (countdown >= 10)) {\
-               OSL_DELAY(10); \
-               countdown -= 10; \
-       } \
-}
-
-
-/* osl multi-precedence packet queue */
-#ifndef PKTQ_LEN_DEFAULT
-#define PKTQ_LEN_DEFAULT        128    /* Max 128 packets */
-#endif
-#ifndef PKTQ_MAX_PREC
-#define PKTQ_MAX_PREC           16     /* Maximum precedence levels */
-#endif
-
-typedef struct pktq_prec {
-       void *head;     /* first packet to dequeue */
-       void *tail;     /* last packet to dequeue */
-       uint16 len;     /* number of queued packets */
-       uint16 max;     /* maximum number of queued packets */
-} pktq_prec_t;
-
-
-/* multi-priority pkt queue */
-struct pktq {
-       uint16 num_prec;        /* number of precedences in use */
-       uint16 hi_prec;         /* rapid dequeue hint (>= highest non-empty prec) */
-       uint16 max;             /* total max packets */
-       uint16 len;             /* total number of packets */
-       /* q array must be last since # of elements can be either PKTQ_MAX_PREC or 1 */
-       struct pktq_prec q[PKTQ_MAX_PREC];
-};
-
-/* simple, non-priority pkt queue */
-struct spktq {
-       uint16 num_prec;        /* number of precedences in use (always 1) */
-       uint16 hi_prec;         /* rapid dequeue hint (>= highest non-empty prec) */
-       uint16 max;             /* total max packets */
-       uint16 len;             /* total number of packets */
-       /* q array must be last since # of elements can be either PKTQ_MAX_PREC or 1 */
-       struct pktq_prec q[1];
-};
-
-#define PKTQ_PREC_ITER(pq, prec)        for (prec = (pq)->num_prec - 1; prec >= 0; prec--)
-
-/* forward definition of ether_addr structure used by some function prototypes */
-
-struct ether_addr;
-
-/* operations on a specific precedence in packet queue */
-
-#define pktq_psetmax(pq, prec, _max)    ((pq)->q[prec].max = (_max))
-#define pktq_plen(pq, prec)             ((pq)->q[prec].len)
-#define pktq_pavail(pq, prec)           ((pq)->q[prec].max - (pq)->q[prec].len)
-#define pktq_pfull(pq, prec)            ((pq)->q[prec].len >= (pq)->q[prec].max)
-#define pktq_pempty(pq, prec)           ((pq)->q[prec].len == 0)
-
-#define pktq_ppeek(pq, prec)            ((pq)->q[prec].head)
-#define pktq_ppeek_tail(pq, prec)       ((pq)->q[prec].tail)
-
-extern void *pktq_penq(struct pktq *pq, int prec, void *p);
-extern void *pktq_penq_head(struct pktq *pq, int prec, void *p);
-extern void *pktq_pdeq(struct pktq *pq, int prec);
-extern void *pktq_pdeq_tail(struct pktq *pq, int prec);
-/* Empty the queue at particular precedence level */
-extern void pktq_pflush(osl_t *osh, struct pktq *pq, int prec, bool dir);
-/* Remove a specified packet from its queue */
-extern bool pktq_pdel(struct pktq *pq, void *p, int prec);
-
-/* operations on a set of precedences in packet queue */
-
-extern int pktq_mlen(struct pktq *pq, uint prec_bmp);
-extern void *pktq_mdeq(struct pktq *pq, uint prec_bmp, int *prec_out);
-
-/* operations on packet queue as a whole */
-
-#define pktq_len(pq)                    ((int)(pq)->len)
-#define pktq_max(pq)                    ((int)(pq)->max)
-#define pktq_avail(pq)                  ((int)((pq)->max - (pq)->len))
-#define pktq_full(pq)                   ((pq)->len >= (pq)->max)
-#define pktq_empty(pq)                  ((pq)->len == 0)
-
-/* operations for single precedence queues */
-#define pktenq(pq, p)          pktq_penq(((struct pktq *)pq), 0, (p))
-#define pktenq_head(pq, p)     pktq_penq_head(((struct pktq *)pq), 0, (p))
-#define pktdeq(pq)             pktq_pdeq(((struct pktq *)pq), 0)
-#define pktdeq_tail(pq)                pktq_pdeq_tail(((struct pktq *)pq), 0)
-#define pktqinit(pq, len) pktq_init(((struct pktq *)pq), 1, len)
-
-extern void pktq_init(struct pktq *pq, int num_prec, int max_len);
-/* prec_out may be NULL if caller is not interested in return value */
-extern void *pktq_deq(struct pktq *pq, int *prec_out);
-extern void *pktq_deq_tail(struct pktq *pq, int *prec_out);
-extern void *pktq_peek(struct pktq *pq, int *prec_out);
-extern void *pktq_peek_tail(struct pktq *pq, int *prec_out);
-extern void pktq_flush(osl_t *osh, struct pktq *pq, bool dir); /* Empty the entire queue */
-extern int pktq_setmax(struct pktq *pq, int max_len);
-
-/* externs */
-/* packet */
-extern uint pktcopy(osl_t *osh, void *p, uint offset, int len, uchar *buf);
-extern uint pkttotlen(osl_t *osh, void *p);
-extern void *pktlast(osl_t *osh, void *p);
-
-/* Get priority from a packet and pass it back in scb (or equiv) */
-extern uint pktsetprio(void *pkt, bool update_vtag);
-#define        PKTPRIO_VDSCP   0x100           /* DSCP prio found after VLAN tag */
-#define        PKTPRIO_VLAN    0x200           /* VLAN prio found */
-#define        PKTPRIO_UPD     0x400           /* DSCP used to update VLAN prio */
-#define        PKTPRIO_DSCP    0x800           /* DSCP prio found */
-
-/* string */
-extern int BCMROMFN(bcm_atoi)(char *s);
-extern ulong BCMROMFN(bcm_strtoul)(char *cp, char **endp, uint base);
-extern char *BCMROMFN(bcmstrstr)(char *haystack, char *needle);
-extern char *BCMROMFN(bcmstrcat)(char *dest, const char *src);
-extern char *BCMROMFN(bcmstrncat)(char *dest, const char *src, uint size);
-extern ulong wchar2ascii(char *abuf, ushort *wbuf, ushort wbuflen, ulong abuflen);
-/* ethernet address */
-extern char *bcm_ether_ntoa(struct ether_addr *ea, char *buf);
-extern int BCMROMFN(bcm_ether_atoe)(char *p, struct ether_addr *ea);
-
-/* ip address */
-struct ipv4_addr;
-extern char *bcm_ip_ntoa(struct ipv4_addr *ia, char *buf);
-
-/* delay */
-extern void bcm_mdelay(uint ms);
-/* variable access */
-extern char *getvar(char *vars, const char *name);
-extern int getintvar(char *vars, const char *name);
-extern uint getgpiopin(char *vars, char *pin_name, uint def_pin);
-#ifdef BCMPERFSTATS
-extern void bcm_perf_enable(void);
-extern void bcmstats(char *fmt);
-extern void bcmlog(char *fmt, uint a1, uint a2);
-extern void bcmdumplog(char *buf, int size);
-extern int bcmdumplogent(char *buf, uint idx);
-#else
-#define bcm_perf_enable()
-#define bcmstats(fmt)
-#define        bcmlog(fmt, a1, a2)
-#define        bcmdumplog(buf, size)   *buf = '\0'
-#define        bcmdumplogent(buf, idx) -1
-#endif /* BCMPERFSTATS */
-extern char *bcm_nvram_vars(uint *length);
-extern int bcm_nvram_cache(void *sbh);
-
-/* Support for sharing code across in-driver iovar implementations.
- * The intent is that a driver use this structure to map iovar names
- * to its (private) iovar identifiers, and the lookup function to
- * find the entry.  Macros are provided to map ids and get/set actions
- * into a single number space for a switch statement.
- */
-
-/* iovar structure */
-typedef struct bcm_iovar {
-       const char *name;       /* name for lookup and display */
-       uint16 varid;           /* id for switch */
-       uint16 flags;           /* driver-specific flag bits */
-       uint16 type;            /* base type of argument */
-       uint16 minlen;          /* min length for buffer vars */
-} bcm_iovar_t;
-
-/* varid definitions are per-driver, may use these get/set bits */
-
-/* IOVar action bits for id mapping */
-#define IOV_GET 0 /* Get an iovar */
-#define IOV_SET 1 /* Set an iovar */
-
-/* Varid to actionid mapping */
-#define IOV_GVAL(id)           ((id)*2)
-#define IOV_SVAL(id)           (((id)*2)+IOV_SET)
-#define IOV_ISSET(actionid)    ((actionid & IOV_SET) == IOV_SET)
-
-/* flags are per-driver based on driver attributes */
-
-extern const bcm_iovar_t *bcm_iovar_lookup(const bcm_iovar_t *table, const char *name);
-extern int bcm_iovar_lencheck(const bcm_iovar_t *table, void *arg, int len, bool set);
-
-#endif /* BCMDRIVER */
-
-/* Base type definitions */
-#define IOVT_VOID      0       /* no value (implictly set only) */
-#define IOVT_BOOL      1       /* any value ok (zero/nonzero) */
-#define IOVT_INT8      2       /* integer values are range-checked */
-#define IOVT_UINT8     3       /* unsigned int 8 bits */
-#define IOVT_INT16     4       /* int 16 bits */
-#define IOVT_UINT16    5       /* unsigned int 16 bits */
-#define IOVT_INT32     6       /* int 32 bits */
-#define IOVT_UINT32    7       /* unsigned int 32 bits */
-#define IOVT_BUFFER    8       /* buffer is size-checked as per minlen */
-#define BCM_IOVT_VALID(type) (((unsigned int)(type)) <= IOVT_BUFFER)
-
-/* Initializer for IOV type strings */
-#define BCM_IOV_TYPE_INIT { \
-       "void", \
-       "bool", \
-       "int8", \
-       "uint8", \
-       "int16", \
-       "uint16", \
-       "int32", \
-       "uint32", \
-       "buffer", \
-       "" }
-
-#define BCM_IOVT_IS_INT(type) (\
-       (type == IOVT_BOOL) || \
-       (type == IOVT_INT8) || \
-       (type == IOVT_UINT8) || \
-       (type == IOVT_INT16) || \
-       (type == IOVT_UINT16) || \
-       (type == IOVT_INT32) || \
-       (type == IOVT_UINT32))
-
-/* ** driver/apps-shared section ** */
-
-#define BCME_STRLEN            64      /* Max string length for BCM errors */
-#define VALID_BCMERROR(e)  ((e <= 0) && (e >= BCME_LAST))
-
-
-/*
- * error codes could be added but the defined ones shouldn't be changed/deleted
- * these error codes are exposed to the user code
- * when ever a new error code is added to this list
- * please update errorstring table with the related error string and
- * update osl files with os specific errorcode map
-*/
-
-#define BCME_OK                                0       /* Success */
-#define BCME_ERROR                     -1      /* Error generic */
-#define BCME_BADARG                    -2      /* Bad Argument */
-#define BCME_BADOPTION                 -3      /* Bad option */
-#define BCME_NOTUP                     -4      /* Not up */
-#define BCME_NOTDOWN                   -5      /* Not down */
-#define BCME_NOTAP                     -6      /* Not AP */
-#define BCME_NOTSTA                    -7      /* Not STA  */
-#define BCME_BADKEYIDX                 -8      /* BAD Key Index */
-#define BCME_RADIOOFF                  -9      /* Radio Off */
-#define BCME_NOTBANDLOCKED             -10     /* Not  band locked */
-#define BCME_NOCLK                     -11     /* No Clock */
-#define BCME_BADRATESET                        -12     /* BAD Rate valueset */
-#define BCME_BADBAND                   -13     /* BAD Band */
-#define BCME_BUFTOOSHORT               -14     /* Buffer too short */
-#define BCME_BUFTOOLONG                        -15     /* Buffer too long */
-#define BCME_BUSY                      -16     /* Busy */
-#define BCME_NOTASSOCIATED             -17     /* Not Associated */
-#define BCME_BADSSIDLEN                        -18     /* Bad SSID len */
-#define BCME_OUTOFRANGECHAN            -19     /* Out of Range Channel */
-#define BCME_BADCHAN                   -20     /* Bad Channel */
-#define BCME_BADADDR                   -21     /* Bad Address */
-#define BCME_NORESOURCE                        -22     /* Not Enough Resources */
-#define BCME_UNSUPPORTED               -23     /* Unsupported */
-#define BCME_BADLEN                    -24     /* Bad length */
-#define BCME_NOTREADY                  -25     /* Not Ready */
-#define BCME_EPERM                     -26     /* Not Permitted */
-#define BCME_NOMEM                     -27     /* No Memory */
-#define BCME_ASSOCIATED                        -28     /* Associated */
-#define BCME_RANGE                     -29     /* Not In Range */
-#define BCME_NOTFOUND                  -30     /* Not Found */
-#define BCME_WME_NOT_ENABLED           -31     /* WME Not Enabled */
-#define BCME_TSPEC_NOTFOUND            -32     /* TSPEC Not Found */
-#define BCME_ACM_NOTSUPPORTED          -33     /* ACM Not Supported */
-#define BCME_NOT_WME_ASSOCIATION       -34     /* Not WME Association */
-#define BCME_SDIO_ERROR                        -35     /* SDIO Bus Error */
-#define BCME_DONGLE_DOWN               -36     /* Dongle Not Accessible */
-#define BCME_VERSION                   -37 /* Incorrect version */
-#define BCME_LAST                      BCME_VERSION
-
-/* These are collection of BCME Error strings */
-#define BCMERRSTRINGTABLE {            \
-       "OK",                           \
-       "Undefined error",              \
-       "Bad Argument",                 \
-       "Bad Option",                   \
-       "Not up",                       \
-       "Not down",                     \
-       "Not AP",                       \
-       "Not STA",                      \
-       "Bad Key Index",                \
-       "Radio Off",                    \
-       "Not band locked",              \
-       "No clock",                     \
-       "Bad Rate valueset",            \
-       "Bad Band",                     \
-       "Buffer too short",             \
-       "Buffer too long",              \
-       "Busy",                         \
-       "Not Associated",               \
-       "Bad SSID len",                 \
-       "Out of Range Channel",         \
-       "Bad Channel",                  \
-       "Bad Address",                  \
-       "Not Enough Resources",         \
-       "Unsupported",                  \
-       "Bad length",                   \
-       "Not Ready",                    \
-       "Not Permitted",                \
-       "No Memory",                    \
-       "Associated",                   \
-       "Not In Range",                 \
-       "Not Found",                    \
-       "WME Not Enabled",              \
-       "TSPEC Not Found",              \
-       "ACM Not Supported",            \
-       "Not WME Association",          \
-       "SDIO Bus Error",               \
-       "Dongle Not Accessible",        \
-       "Incorrect version"     \
-}
-
-#ifndef ABS
-#define        ABS(a)                  (((a) < 0)?-(a):(a))
-#endif /* ABS */
-
-#ifndef MIN
-#define        MIN(a, b)               (((a) < (b))?(a):(b))
-#endif /* MIN */
-
-#ifndef MAX
-#define        MAX(a, b)               (((a) > (b))?(a):(b))
-#endif /* MAX */
-
-#define CEIL(x, y)             (((x) + ((y)-1)) / (y))
-#define        ROUNDUP(x, y)           ((((x)+((y)-1))/(y))*(y))
-#define        ISALIGNED(a, x)         (((a) & ((x)-1)) == 0)
-#define        ISPOWEROF2(x)           ((((x)-1)&(x)) == 0)
-#define VALID_MASK(mask)       !((mask) & ((mask) + 1))
-#ifndef OFFSETOF
-#define        OFFSETOF(type, member)  ((uint)(uintptr)&((type *)0)->member)
-#endif /* OFFSETOF */
-#ifndef ARRAYSIZE
-#define ARRAYSIZE(a)           (sizeof(a)/sizeof(a[0]))
-#endif
-
-/* bit map related macros */
-#ifndef setbit
-#ifndef NBBY               /* the BSD family defines NBBY */
-#define        NBBY    8       /* 8 bits per byte */
-#endif /* #ifndef NBBY */
-#define        setbit(a, i)    (((uint8 *)a)[(i)/NBBY] |= 1<<((i)%NBBY))
-#define        clrbit(a, i)    (((uint8 *)a)[(i)/NBBY] &= ~(1<<((i)%NBBY)))
-#define        isset(a, i)     (((const uint8 *)a)[(i)/NBBY] & (1<<((i)%NBBY)))
-#define        isclr(a, i)     ((((const uint8 *)a)[(i)/NBBY] & (1<<((i)%NBBY))) == 0)
-#endif /* setbit */
-
-#define        NBITS(type)     (sizeof(type) * 8)
-#define NBITVAL(nbits) (1 << (nbits))
-#define MAXBITVAL(nbits)       ((1 << (nbits)) - 1)
-#define        NBITMASK(nbits) MAXBITVAL(nbits)
-#define MAXNBVAL(nbyte)        MAXBITVAL((nbyte) * 8)
-
-/* basic mux operation - can be optimized on several architectures */
-#define MUX(pred, true, false) ((pred) ? (true) : (false))
-
-/* modulo inc/dec - assumes x E [0, bound - 1] */
-#define MODDEC(x, bound) MUX((x) == 0, (bound) - 1, (x) - 1)
-#define MODINC(x, bound) MUX((x) == (bound) - 1, 0, (x) + 1)
-
-/* modulo inc/dec, bound = 2^k */
-#define MODDEC_POW2(x, bound) (((x) - 1) & ((bound) - 1))
-#define MODINC_POW2(x, bound) (((x) + 1) & ((bound) - 1))
-
-/* modulo add/sub - assumes x, y E [0, bound - 1] */
-#define MODADD(x, y, bound) \
-    MUX((x) + (y) >= (bound), (x) + (y) - (bound), (x) + (y))
-#define MODSUB(x, y, bound) \
-    MUX(((int)(x)) - ((int)(y)) < 0, (x) - (y) + (bound), (x) - (y))
-
-/* module add/sub, bound = 2^k */
-#define MODADD_POW2(x, y, bound) (((x) + (y)) & ((bound) - 1))
-#define MODSUB_POW2(x, y, bound) (((x) - (y)) & ((bound) - 1))
-
-/* crc defines */
-#define CRC8_INIT_VALUE  0xff          /* Initial CRC8 checksum value */
-#define CRC8_GOOD_VALUE  0x9f          /* Good final CRC8 checksum value */
-#define CRC16_INIT_VALUE 0xffff                /* Initial CRC16 checksum value */
-#define CRC16_GOOD_VALUE 0xf0b8                /* Good final CRC16 checksum value */
-#define CRC32_INIT_VALUE 0xffffffff    /* Initial CRC32 checksum value */
-#define CRC32_GOOD_VALUE 0xdebb20e3    /* Good final CRC32 checksum value */
-
-/* bcm_format_flags() bit description structure */
-typedef struct bcm_bit_desc {
-       uint32  bit;
-       const char* name;
-} bcm_bit_desc_t;
-
-/* tag_ID/length/value_buffer tuple */
-typedef struct bcm_tlv {
-       uint8   id;
-       uint8   len;
-       uint8   data[1];
-} bcm_tlv_t;
-
-/* Check that bcm_tlv_t fits into the given buflen */
-#define bcm_valid_tlv(elt, buflen) ((buflen) >= 2 && (int)(buflen) >= (int)(2 + (elt)->len))
-
-/* buffer length for ethernet address from bcm_ether_ntoa() */
-#define ETHER_ADDR_STR_LEN     18      /* 18-bytes of Ethernet address buffer length */
-
-/* unaligned load and store macros */
-#ifdef IL_BIGENDIAN
-static INLINE uint32
-load32_ua(uint8 *a)
-{
-       return ((a[0] << 24) | (a[1] << 16) | (a[2] << 8) | a[3]);
-}
-
-static INLINE void
-store32_ua(uint8 *a, uint32 v)
-{
-       a[0] = (v >> 24) & 0xff;
-       a[1] = (v >> 16) & 0xff;
-       a[2] = (v >> 8) & 0xff;
-       a[3] = v & 0xff;
-}
-
-static INLINE uint16
-load16_ua(uint8 *a)
-{
-       return ((a[0] << 8) | a[1]);
-}
-
-static INLINE void
-store16_ua(uint8 *a, uint16 v)
-{
-       a[0] = (v >> 8) & 0xff;
-       a[1] = v & 0xff;
-}
-
-#else /* IL_BIGENDIAN */
-
-static INLINE uint32
-load32_ua(uint8 *a)
-{
-       return ((a[3] << 24) | (a[2] << 16) | (a[1] << 8) | a[0]);
-}
-
-static INLINE void
-store32_ua(uint8 *a, uint32 v)
-{
-       a[3] = (v >> 24) & 0xff;
-       a[2] = (v >> 16) & 0xff;
-       a[1] = (v >> 8) & 0xff;
-       a[0] = v & 0xff;
-}
-
-static INLINE uint16
-load16_ua(uint8 *a)
-{
-       return ((a[1] << 8) | a[0]);
-}
-
-static INLINE void
-store16_ua(uint8 *a, uint16 v)
-{
-       a[1] = (v >> 8) & 0xff;
-       a[0] = v & 0xff;
-}
-
-#endif /* IL_BIGENDIAN */
-
-/* externs */
-/* crc */
-extern uint8 BCMROMFN(hndcrc8)(uint8 *p, uint nbytes, uint8 crc);
-extern uint16 BCMROMFN(hndcrc16)(uint8 *p, uint nbytes, uint16 crc);
-extern uint32 BCMROMFN(hndcrc32)(uint8 *p, uint nbytes, uint32 crc);
-/* format/print */
-extern char *bcm_brev_str(uint16 brev, char *buf);
-extern void printfbig(char *buf);
-
-/* IE parsing */
-extern bcm_tlv_t *BCMROMFN(bcm_next_tlv)(bcm_tlv_t *elt, int *buflen);
-extern bcm_tlv_t *BCMROMFN(bcm_parse_tlvs)(void *buf, int buflen, uint key);
-extern bcm_tlv_t *BCMROMFN(bcm_parse_ordered_tlvs)(void *buf, int buflen, uint key);
-
-/* bcmerror */
-extern const char *bcmerrorstr(int bcmerror);
-
-/* multi-bool data type: set of bools, mbool is true if any is set */
-typedef uint32 mbool;
-#define mboolset(mb, bit)              ((mb) |= (bit))         /* set one bool */
-#define mboolclr(mb, bit)              ((mb) &= ~(bit))        /* clear one bool */
-#define mboolisset(mb, bit)            (((mb) & (bit)) != 0)   /* TRUE if one bool is set */
-#define        mboolmaskset(mb, mask, val)     ((mb) = (((mb) & ~(mask)) | (val)))
-
-/* power conversion */
-extern uint16 BCMROMFN(bcm_qdbm_to_mw)(uint8 qdbm);
-extern uint8 BCMROMFN(bcm_mw_to_qdbm)(uint16 mw);
-
-/* generic datastruct to help dump routines */
-struct fielddesc {
-       const char *nameandfmt;
-       uint32  offset;
-       uint32  len;
-};
-
-extern void bcm_binit(struct bcmstrbuf *b, char *buf, uint size);
-extern int bcm_bprintf(struct bcmstrbuf *b, const char *fmt, ...);
-
-typedef  uint32 (*readreg_rtn)(void *arg0, void *arg1, uint32 offset);
-extern uint bcmdumpfields(readreg_rtn func_ptr, void *arg0, void *arg1, struct fielddesc *str,
-                          char *buf, uint32 bufsize);
-
-extern uint bcm_mkiovar(char *name, char *data, uint datalen, char *buf, uint len);
-extern uint BCMROMFN(bcm_bitcount)(uint8 *bitmap, uint bytelength);
-
-#ifdef BCMDBG_PKT      /* pkt logging for debugging */
-#define PKTLIST_SIZE 1000
-typedef struct {
-       void *list[PKTLIST_SIZE]; /* List of pointers to packets */
-       uint count; /* Total count of the packets */
-} pktlist_info_t;
-
-extern void pktlist_add(pktlist_info_t *pktlist, void *p);
-extern void pktlist_remove(pktlist_info_t *pktlist, void *p);
-extern char* pktlist_dump(pktlist_info_t *pktlist, char *buf);
-#endif  /* BCMDBG_PKT */
-
-#endif /* _bcmutils_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndchipc.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndchipc.h
deleted file mode 100644 (file)
index aba28bd..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * HND SiliconBackplane chipcommon support.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef _hndchipc_h_
-#define _hndchipc_h_
-
-typedef void (*sb_serial_init_fn)(void *regs, uint irq, uint baud_base, uint reg_shift);
-
-extern void sb_serial_init(sb_t *sbh, sb_serial_init_fn add);
-
-extern void *sb_jtagm_init(sb_t *sbh, uint clkd, bool exttap);
-extern void sb_jtagm_disable(osl_t *osh, void *h);
-extern uint32 jtag_rwreg(osl_t *osh, void *h, uint32 ir, uint32 dr);
-
-typedef        void (*cc_isr_fn)(void* cbdata, uint32 ccintst);
-
-extern bool sb_cc_register_isr(sb_t *sbh, cc_isr_fn isr, uint32 ccintmask, void *cbdata);
-extern void sb_cc_isr(sb_t *sbh, chipcregs_t *regs);
-
-#endif /* _hndchipc_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndcpu.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndcpu.h
deleted file mode 100644 (file)
index 5cfee70..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * HND SiliconBackplane MIPS/ARM cores software interface.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef _hndcpu_h_
-#define _hndcpu_h_
-
-#if defined(mips)
-#include <hndmips.h>
-#elif defined(__arm__) || defined(__thumb__) || defined(__thumb2__)
-#include <hndarm.h>
-#endif
-
-extern uint sb_irq(sb_t *sbh);
-extern uint32 sb_cpu_clock(sb_t *sbh);
-extern void hnd_cpu_wait(sb_t *sbh);
-extern void hnd_cpu_jumpto(void *addr);
-extern void hnd_cpu_reset(sb_t *sbh);
-
-#endif /* _hndcpu_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndmips.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndmips.h
deleted file mode 100644 (file)
index c6051ec..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * HND SiliconBackplane MIPS core software interface.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef _hndmips_h_
-#define _hndmips_h_
-
-extern void sb_mips_init(sb_t *sbh, uint shirq_map_base);
-extern bool sb_mips_setclock(sb_t *sbh, uint32 mipsclock, uint32 sbclock, uint32 pciclock);
-extern void enable_pfc(uint32 mode);
-extern uint32 sb_memc_get_ncdl(sb_t *sbh);
-
-#if defined(BCMPERFSTATS)
-/* enable counting - exclusive version. Only one set of counters allowed at a time */
-extern void hndmips_perf_cyclecount_enable(void);
-extern void hndmips_perf_instrcount_enable(void);
-extern void hndmips_perf_icachecount_enable(void);
-extern void hndmips_perf_dcachecount_enable(void);
-/* start and stop counting */
-#define hndmips_perf_start01() \
-       MTC0(C0_PERFORMANCE, 4, MFC0(C0_PERFORMANCE, 4) | 0x80008000)
-#define hndmips_perf_stop01() \
-       MTC0(C0_PERFORMANCE, 4, MFC0(C0_PERFORMANCE, 4) & ~0x80008000)
-/* retrieve coutners - counters *decrement* */
-#define hndmips_perf_read0() -(long)(MFC0(C0_PERFORMANCE, 0))
-#define hndmips_perf_read1() -(long)(MFC0(C0_PERFORMANCE, 1))
-#define hndmips_perf_read2() -(long)(MFC0(C0_PERFORMANCE, 2))
-/* enable counting - modular version. Each counters can be enabled separately. */
-extern void hndmips_perf_icache_hit_enable(void);
-extern void hndmips_perf_icache_miss_enable(void);
-extern uint32 hndmips_perf_read_instrcount(void);
-extern uint32 hndmips_perf_read_cache_miss(void);
-extern uint32 hndmips_perf_read_cache_hit(void);
-#endif 
-
-#endif /* _hndmips_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndpci.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndpci.h
deleted file mode 100644 (file)
index 9a3bc4a..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * HND SiliconBackplane PCI core software interface.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- */
-
-#ifndef _hndpci_h_
-#define _hndpci_h_
-
-extern int sbpci_read_config(sb_t *sbh, uint bus, uint dev, uint func, uint off, void *buf,
-                             int len);
-extern int extpci_read_config(sb_t *sbh, uint bus, uint dev, uint func, uint off, void *buf,
-                              int len);
-extern int sbpci_write_config(sb_t *sbh, uint bus, uint dev, uint func, uint off, void *buf,
-                              int len);
-extern int extpci_write_config(sb_t *sbh, uint bus, uint dev, uint func, uint off, void *buf,
-                               int len);
-extern void sbpci_ban(uint16 core);
-extern int sbpci_init(sb_t *sbh);
-extern int sbpci_init_pci(sb_t *sbh);
-extern void sbpci_init_cores(sb_t *sbh);
-extern void sbpci_arb_park(sb_t *sbh, uint parkid);
-
-#define PCI_PARK_NVRAM    0xff
-
-#endif /* _hndpci_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndpmu.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/hndpmu.h
deleted file mode 100644 (file)
index bef3758..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * HND SiliconBackplane PMU support.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef _hndpmu_h_
-#define _hndpmu_h_
-
-#define SET_LDO_VOLTAGE_LDO1   1
-#define SET_LDO_VOLTAGE_LDO2   2
-#define SET_LDO_VOLTAGE_LDO3   3
-#define SET_LDO_VOLTAGE_PAREF  4
-
-extern void sb_pmu_init(sb_t *sbh, osl_t *osh);
-extern void sb_pmu_pll_init(sb_t *sbh, osl_t *osh, uint32 xtalfreq);
-extern void sb_pmu_res_init(sb_t *sbh, osl_t *osh);
-extern uint32 sb_pmu_force_ilp(sb_t *sbh, osl_t *osh, bool force);
-extern uint32 sb_pmu_cpu_clock(sb_t *sbh, osl_t *osh);
-extern uint32 sb_pmu_alp_clock(sb_t *sbh, osl_t *osh);
-
-extern void sb_pmu_set_switcher_voltage(sb_t *sbh, osl_t *osh, uint8 bb_voltage, uint8 rf_voltage);
-extern void sb_pmu_set_ldo_voltage(sb_t *sbh, osl_t *osh, uint8 ldo, uint8 voltage);
-extern void sb_pmu_paref_ldo_enable(sb_t *sbh, osl_t *osh, bool enable);
-extern uint16 sb_pmu_fast_pwrup_delay(sb_t *sbh, osl_t *osh);
-extern void sb_pmu_otp_power(sb_t *sbh, osl_t *osh, bool on);
-extern void sb_pmu_rcal(sb_t *sbh, osl_t *osh);
-
-#endif /* _hndpmu_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/linux_gpio.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/linux_gpio.h
deleted file mode 100644 (file)
index c98beb6..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Linux Broadcom BCM47xx GPIO char driver
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef _linux_gpio_h_
-#define _linux_gpio_h_
-
-struct gpio_ioctl {
-       uint32 mask;
-       uint32 val;
-};
-
-#define GPIO_IOC_MAGIC  'G'
-
-/* reserve/release a gpio to the caller */
-#define  GPIO_IOC_RESERVE      _IOWR(GPIO_IOC_MAGIC, 1, struct gpio_ioctl)
-#define  GPIO_IOC_RELEASE      _IOWR(GPIO_IOC_MAGIC, 2, struct gpio_ioctl)
-/* ioctls to read/write the gpio registers */
-#define  GPIO_IOC_OUT          _IOWR(GPIO_IOC_MAGIC, 3, struct gpio_ioctl)
-#define  GPIO_IOC_IN           _IOWR(GPIO_IOC_MAGIC, 4, struct gpio_ioctl)
-#define  GPIO_IOC_OUTEN                _IOWR(GPIO_IOC_MAGIC, 5, struct gpio_ioctl)
-
-#endif /* _linux_gpio_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/linuxver.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/linuxver.h
deleted file mode 100644 (file)
index 3f16345..0000000
+++ /dev/null
@@ -1,432 +0,0 @@
-/*
- * Linux-specific abstractions to gain some independence from linux kernel versions.
- * Pave over some 2.2 versus 2.4 versus 2.6 kernel differences.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef _linuxver_h_
-#define _linuxver_h_
-
-#include <linux/version.h>
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0))
-#include <linux/config.h>
-#else
-#include <linux/autoconf.h>
-#endif
-#include <linux/module.h>
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 0))
-/* __NO_VERSION__ must be defined for all linkables except one in 2.2 */
-#ifdef __UNDEF_NO_VERSION__
-#undef __NO_VERSION__
-#else
-#define __NO_VERSION__
-#endif
-#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 0) */
-
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 5, 0)
-#define module_param(_name_, _type_, _perm_)   MODULE_PARM(_name_, "i")
-#define module_param_string(_name_, _string_, _size_, _perm_) \
-               MODULE_PARM(_string_, "c" __MODULE_STRING(_size_))
-#endif
-
-/* linux/malloc.h is deprecated, use linux/slab.h instead. */
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 9))
-#include <linux/malloc.h>
-#else
-#include <linux/slab.h>
-#endif
-
-#include <linux/types.h>
-#include <linux/init.h>
-#include <linux/mm.h>
-#include <linux/string.h>
-#include <linux/pci.h>
-#include <linux/interrupt.h>
-#include <linux/netdevice.h>
-#include <asm/io.h>
-
-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 41))
-#include <linux/workqueue.h>
-#else
-#include <linux/tqueue.h>
-#ifndef work_struct
-#define work_struct tq_struct
-#endif
-#ifndef INIT_WORK
-#define INIT_WORK(_work, _func, _data) INIT_TQUEUE((_work), (_func), (_data))
-#endif
-#ifndef schedule_work
-#define schedule_work(_work) schedule_task((_work))
-#endif
-#ifndef flush_scheduled_work
-#define flush_scheduled_work() flush_scheduled_tasks()
-#endif
-#endif /* LINUX_VERSION_CODE > KERNEL_VERSION(2, 5, 41) */
-
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 20)
-#define        MY_INIT_WORK(_work, _func, _data)       INIT_WORK(_work, _func)
-#else
-#define        MY_INIT_WORK(_work, _func, _data)       INIT_WORK(_work, _func, _data)
-typedef void (*work_func_t)(void *work);
-#endif /* < 2.6.20 */
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0))
-/* Some distributions have their own 2.6.x compatibility layers */
-#ifndef IRQ_NONE
-typedef void irqreturn_t;
-#define IRQ_NONE
-#define IRQ_HANDLED
-#define IRQ_RETVAL(x)
-#endif
-#else
-typedef irqreturn_t(*FN_ISR) (int irq, void *dev_id, struct pt_regs *ptregs);
-#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) */
-
-#if defined(CONFIG_PCMCIA) || defined(CONFIG_PCMCIA_MODULE)
-
-#include <pcmcia/version.h>
-#include <pcmcia/cs_types.h>
-#include <pcmcia/cs.h>
-#include <pcmcia/cistpl.h>
-#include <pcmcia/cisreg.h>
-#include <pcmcia/ds.h>
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 5, 69))
-/* In 2.5 (as of 2.5.69 at least) there is a cs_error exported which
- * does this, but it's not in 2.4 so we do our own for now.
- */
-static inline void
-cs_error(client_handle_t handle, int func, int ret)
-{
-       error_info_t err = { func, ret };
-       CardServices(ReportError, handle, &err);
-}
-#endif
-
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 15))
-
-typedef        struct pcmcia_device dev_link_t;
-
-#endif
-
-#endif /* CONFIG_PCMCIA */
-
-#ifndef __exit
-#define __exit
-#endif
-#ifndef __devexit
-#define __devexit
-#endif
-#ifndef __devinit
-#define __devinit      __init
-#endif
-#ifndef __devinitdata
-#define __devinitdata
-#endif
-#ifndef __devexit_p
-#define __devexit_p(x) x
-#endif
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 0))
-
-#define pci_get_drvdata(dev)           (dev)->sysdata
-#define pci_set_drvdata(dev, value)    (dev)->sysdata = (value)
-
-/*
- * New-style (2.4.x) PCI/hot-pluggable PCI/CardBus registration
- */
-
-struct pci_device_id {
-       unsigned int vendor, device;            /* Vendor and device ID or PCI_ANY_ID */
-       unsigned int subvendor, subdevice;      /* Subsystem ID's or PCI_ANY_ID */
-       unsigned int class, class_mask;         /* (class,subclass,prog-if) triplet */
-       unsigned long driver_data;              /* Data private to the driver */
-};
-
-struct pci_driver {
-       struct list_head node;
-       char *name;
-       const struct pci_device_id *id_table;   /* NULL if wants all devices */
-       int (*probe)(struct pci_dev *dev,
-                    const struct pci_device_id *id); /* New device inserted */
-       void (*remove)(struct pci_dev *dev);    /* Device removed (NULL if not a hot-plug
-                                                * capable driver)
-                                                */
-       void (*suspend)(struct pci_dev *dev);   /* Device suspended */
-       void (*resume)(struct pci_dev *dev);    /* Device woken up */
-};
-
-#define MODULE_DEVICE_TABLE(type, name)
-#define PCI_ANY_ID (~0)
-
-/* compatpci.c */
-#define pci_module_init pci_register_driver
-extern int pci_register_driver(struct pci_driver *drv);
-extern void pci_unregister_driver(struct pci_driver *drv);
-
-#endif /* PCI registration */
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 2, 18))
-#ifdef MODULE
-#define module_init(x) int init_module(void) { return x(); }
-#define module_exit(x) void cleanup_module(void) { x(); }
-#else
-#define module_init(x) __initcall(x);
-#define module_exit(x) __exitcall(x);
-#endif
-#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2, 2, 18) */
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 48))
-#define list_for_each(pos, head) \
-       for (pos = (head)->next; pos != (head); pos = pos->next)
-#endif
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 13))
-#define pci_resource_start(dev, bar)   ((dev)->base_address[(bar)])
-#elif (LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 44))
-#define pci_resource_start(dev, bar)   ((dev)->resource[(bar)].start)
-#endif
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 23))
-#define pci_enable_device(dev) do { } while (0)
-#endif
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 14))
-#define net_device device
-#endif
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 42))
-
-/*
- * DMA mapping
- *
- * See linux/Documentation/DMA-mapping.txt
- */
-
-#ifndef PCI_DMA_TODEVICE
-#define        PCI_DMA_TODEVICE        1
-#define        PCI_DMA_FROMDEVICE      2
-#endif
-
-typedef u32 dma_addr_t;
-
-/* Pure 2^n version of get_order */
-static inline int get_order(unsigned long size)
-{
-       int order;
-
-       size = (size-1) >> (PAGE_SHIFT-1);
-       order = -1;
-       do {
-               size >>= 1;
-               order++;
-       } while (size);
-       return order;
-}
-
-static inline void *pci_alloc_consistent(struct pci_dev *hwdev, size_t size,
-                                         dma_addr_t *dma_handle)
-{
-       void *ret;
-       int gfp = GFP_ATOMIC | GFP_DMA;
-
-       ret = (void *)__get_free_pages(gfp, get_order(size));
-
-       if (ret != NULL) {
-               memset(ret, 0, size);
-               *dma_handle = virt_to_bus(ret);
-       }
-       return ret;
-}
-static inline void pci_free_consistent(struct pci_dev *hwdev, size_t size,
-                                       void *vaddr, dma_addr_t dma_handle)
-{
-       free_pages((unsigned long)vaddr, get_order(size));
-}
-#ifdef ILSIM
-extern uint pci_map_single(void *dev, void *va, uint size, int direction);
-extern void pci_unmap_single(void *dev, uint pa, uint size, int direction);
-#else
-#define pci_map_single(cookie, address, size, dir)     virt_to_bus(address)
-#define pci_unmap_single(cookie, address, size, dir)
-#endif
-
-#endif /* DMA mapping */
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 3, 43))
-
-#define dev_kfree_skb_any(a)           dev_kfree_skb(a)
-#define netif_down(dev)                        do { (dev)->start = 0; } while (0)
-
-/* pcmcia-cs provides its own netdevice compatibility layer */
-#ifndef _COMPAT_NETDEVICE_H
-
-/*
- * SoftNet
- *
- * For pre-softnet kernels we need to tell the upper layer not to
- * re-enter start_xmit() while we are in there. However softnet
- * guarantees not to enter while we are in there so there is no need
- * to do the netif_stop_queue() dance unless the transmit queue really
- * gets stuck. This should also improve performance according to tests
- * done by Aman Singla.
- */
-
-#define dev_kfree_skb_irq(a)   dev_kfree_skb(a)
-#define netif_wake_queue(dev) \
-               do { clear_bit(0, &(dev)->tbusy); mark_bh(NET_BH); } while (0)
-#define netif_stop_queue(dev)  set_bit(0, &(dev)->tbusy)
-
-static inline void netif_start_queue(struct net_device *dev)
-{
-       dev->tbusy = 0;
-       dev->interrupt = 0;
-       dev->start = 1;
-}
-
-#define netif_queue_stopped(dev)       (dev)->tbusy
-#define netif_running(dev)             (dev)->start
-
-#endif /* _COMPAT_NETDEVICE_H */
-
-#define netif_device_attach(dev)       netif_start_queue(dev)
-#define netif_device_detach(dev)       netif_stop_queue(dev)
-
-/* 2.4.x renamed bottom halves to tasklets */
-#define tasklet_struct                         tq_struct
-static inline void tasklet_schedule(struct tasklet_struct *tasklet)
-{
-       queue_task(tasklet, &tq_immediate);
-       mark_bh(IMMEDIATE_BH);
-}
-
-static inline void tasklet_init(struct tasklet_struct *tasklet,
-                                void (*func)(unsigned long),
-                                unsigned long data)
-{
-       tasklet->next = NULL;
-       tasklet->sync = 0;
-       tasklet->routine = (void (*)(void *))func;
-       tasklet->data = (void *)data;
-}
-#define tasklet_kill(tasklet)  { do{} while (0); }
-
-/* 2.4.x introduced del_timer_sync() */
-#define del_timer_sync(timer) del_timer(timer)
-
-#else
-
-#define netif_down(dev)
-
-#endif /* SoftNet */
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 3))
-
-/*
- * Emit code to initialise a tq_struct's routine and data pointers
- */
-#define PREPARE_TQUEUE(_tq, _routine, _data)                   \
-       do {                                                    \
-               (_tq)->routine = _routine;                      \
-               (_tq)->data = _data;                            \
-       } while (0)
-
-/*
- * Emit code to initialise all of a tq_struct
- */
-#define INIT_TQUEUE(_tq, _routine, _data)                      \
-       do {                                                    \
-               INIT_LIST_HEAD(&(_tq)->list);                   \
-               (_tq)->sync = 0;                                \
-               PREPARE_TQUEUE((_tq), (_routine), (_data));     \
-       } while (0)
-
-#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 3) */
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 6))
-
-/* Power management related routines */
-
-static inline int
-pci_save_state(struct pci_dev *dev, u32 *buffer)
-{
-       int i;
-       if (buffer) {
-               for (i = 0; i < 16; i++)
-                       pci_read_config_dword(dev, i * 4, &buffer[i]);
-       }
-       return 0;
-}
-
-static inline int
-pci_restore_state(struct pci_dev *dev, u32 *buffer)
-{
-       int i;
-
-       if (buffer) {
-               for (i = 0; i < 16; i++)
-                       pci_write_config_dword(dev, i * 4, buffer[i]);
-       }
-       /*
-        * otherwise, write the context information we know from bootup.
-        * This works around a problem where warm-booting from Windows
-        * combined with a D3(hot)->D0 transition causes PCI config
-        * header data to be forgotten.
-        */
-       else {
-               for (i = 0; i < 6; i ++)
-                       pci_write_config_dword(dev,
-                                              PCI_BASE_ADDRESS_0 + (i * 4),
-                                              pci_resource_start(dev, i));
-               pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
-       }
-       return 0;
-}
-
-#endif /* PCI power management */
-
-/* Old cp0 access macros deprecated in 2.4.19 */
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 19))
-#define read_c0_count() read_32bit_cp0_register(CP0_COUNT)
-#endif
-
-/* Module refcount handled internally in 2.6.x */
-#ifndef SET_MODULE_OWNER
-#define SET_MODULE_OWNER(dev)          do {} while (0)
-#define OLD_MOD_INC_USE_COUNT          MOD_INC_USE_COUNT
-#define OLD_MOD_DEC_USE_COUNT          MOD_DEC_USE_COUNT
-#else
-#define OLD_MOD_INC_USE_COUNT          do {} while (0)
-#define OLD_MOD_DEC_USE_COUNT          do {} while (0)
-#endif
-
-#ifndef SET_NETDEV_DEV
-#define SET_NETDEV_DEV(net, pdev)      do {} while (0)
-#endif
-
-#ifndef HAVE_FREE_NETDEV
-#define free_netdev(dev)               kfree(dev)
-#endif
-
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0))
-/* struct packet_type redefined in 2.6.x */
-#define af_packet_priv                 data
-#endif
-
-/* suspend args */
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 11)
-#define DRV_SUSPEND_STATE_TYPE pm_message_t
-#else
-#define DRV_SUSPEND_STATE_TYPE uint32
-#endif
-
-#endif /* _linuxver_h_ */
diff --git a/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/mipsinc.h b/target/linux/brcm-2.4/files/arch/mips/bcm947xx/include/mipsinc.h
deleted file mode 100644 (file)
index 7e44f1b..0000000
+++ /dev/null
@@ -1,542 +0,0 @@
-/*
- * HND Run Time Environment for standalone MIPS programs.
- *
- * Copyright 2007, Broadcom Corporation
- * All Rights Reserved.
- * 
- * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
- * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
- * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
- * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
- *
- */
-
-#ifndef        _MISPINC_H
-#define _MISPINC_H
-
-
-/* MIPS defines */
-
-#ifdef _LANGUAGE_ASSEMBLY
-
-/*
- * Symbolic register names for 32 bit ABI
- */
-#define zero   $0      /* wired zero */
-#define AT     $1      /* assembler temp - uppercase because of ".set at" */
-#define v0     $2      /* return value */
-#define v1     $3
-#define a0     $4      /* argument registers */
-#define a1     $5
-#define a2     $6
-#define a3     $7
-#define t0     $8      /* caller saved */
-#define t1     $9
-#define t2     $10
-#define t3     $11
-#define t4     $12
-#define t5     $13
-#define t6     $14
-#define t7     $15
-#define s0     $16     /* callee saved */
-#define s1     $17
-#define s2     $18
-#define s3     $19
-#define s4     $20
-#define s5     $21
-#define s6     $22
-#define s7     $23
-#define t8     $24     /* caller saved */
-#define t9     $25
-#define jp     $25     /* PIC jump register */
-#define k0     $26     /* kernel scratch */
-#define k1     $27
-#define gp     $28     /* global pointer */
-#define sp     $29     /* stack pointer */
-#define fp     $30     /* frame pointer */
-#define s8     $30     /* same like fp! */
-#define ra     $31     /* return address */
-
-
-/* CP0 Registers */
-
-#define C0_INX         $0
-#define C0_RAND                $1
-#define C0_TLBLO0      $2
-#define C0_TLBLO       C0_TLBLO0
-#define C0_TLBLO1      $3
-#define C0_CTEXT       $4
-#define C0_PGMASK      $5
-#define C0_WIRED       $6
-#define C0_INFO                $7
-#define C0_BADVADDR    $8
-#define C0_COUNT       $9
-#define C0_TLBHI       $10
-#define C0_COMPARE     $11
-#define C0_SR          $12
-#define C0_STATUS      C0_SR
-#define C0_CAUSE       $13
-#define C0_EPC         $14
-#define C0_PRID                $15
-#define C0_CONFIG      $16
-#define C0_LLADDR      $17
-#define C0_WATCHLO     $18
-#define C0_WATCHHI     $19
-#define C0_XCTEXT      $20
-#define C0_DIAGNOSTIC  $22
-#define C0_BROADCOM    C0_DIAGNOSTIC
-#define        C0_PERFORMANCE  $25
-#define C0_ECC         $26
-#define C0_CACHEERR    $27
-#define C0_TAGLO       $28
-#define C0_TAGHI       $29
-#define C0_ERREPC      $30
-#define C0_DESAVE      $31
-
-/*
- * LEAF - declare leaf routine
- */
-#define LEAF(symbol)                           \
-               .globl  symbol;                 \
-               .align  2;                      \
-               .type   symbol, @function;      \
-               .ent    symbol, 0;              \
-symbol:                .frame  sp, 0, ra
-
-/*
- * END - mark end of function
- */
-#define END(function)                          \
-               .end    function;               \
-               .size   function, . - function
-
-#define _ULCAST_
-
-#define MFC0_SEL(dst, src, sel) \
-               .word\t(0x40000000 | ((dst) << 16) | ((src) << 11) | (sel))
-
-
-#define MTC0_SEL(dst, src, sel) \
-               .word\t(0x40800000 | ((dst) << 16) | ((src) << 11) | (sel))
-
-#else
-
-/*
- * The following macros are especially useful for __asm__
- * inline assembler.
- */
-#ifndef __STR
-#define __STR(x) #x
-#endif
-#ifndef STR
-#define STR(x) __STR(x)
-#endif
-
-#define _ULCAST_ (unsigned long)
-
-
-/* CP0 Registers */
-
-#define C0_INX         0               /* CP0: TLB Index */
-#define C0_RAND                1               /* CP0: TLB Random */
-#define C0_TLBLO0      2               /* CP0: TLB EntryLo0 */
-#define C0_TLBLO       C0_TLBLO0       /* CP0: TLB EntryLo0 */
-#define C0_TLBLO1      3               /* CP0: TLB EntryLo1 */
-#define C0_CTEXT       4               /* CP0: Context */
-#define C0_PGMASK      5               /* CP0: TLB PageMask */
-#define C0_WIRED       6               /* CP0: TLB Wired */
-#define C0_INFO                7               /* CP0: Info */
-#define C0_BADVADDR    8               /* CP0: Bad Virtual Address */
-#define C0_COUNT       9               /* CP0: Count */
-#define C0_TLBHI       10              /* CP0: TLB EntryHi */
-#define C0_COMPARE     11              /* CP0: Compare */
-#define C0_SR          12              /* CP0: Processor Status */
-#define C0_STATUS      C0_SR           /* CP0: Processor Status */
-#define C0_CAUSE       13              /* CP0: Exception Cause */
-#define C0_EPC         14              /* CP0: Exception PC */
-#define C0_PRID                15              /* CP0: Processor Revision Indentifier */
-#define C0_CONFIG      16              /* CP0: Config */
-#define C0_LLADDR      17              /* CP0: LLAddr */
-#define C0_WATCHLO     18              /* CP0: WatchpointLo */
-#define C0_WATCHHI     19              /* CP0: WatchpointHi */
-#define C0_XCTEXT      20              /* CP0: XContext */
-#define C0_DIAGNOSTIC  22              /* CP0: Diagnostic */
-#define C0_BROADCOM    C0_DIAGNOSTIC   /* CP0: Broadcom Register */
-#define        C0_PERFORMANCE  25              /* CP0: Performance Counter/Control Registers */
-#define C0_ECC         26              /* CP0: ECC */
-#define C0_CACHEERR    27              /* CP0: CacheErr */
-#define C0_TAGLO       28              /* CP0: TagLo */
-#define C0_TAGHI       29              /* CP0: TagHi */
-#define C0_ERREPC      30              /* CP0: ErrorEPC */
-#define C0_DESAVE      31              /* CP0: DebugSave */
-
-#endif /* _LANGUAGE_ASSEMBLY */
-
-/*
- * Memory segments (32bit kernel mode addresses)
- */
-#undef KUSEG
-#undef KSEG0
-#undef KSEG1
-#undef KSEG2
-#undef KSEG3
-#define KUSEG          0x00000000
-#define KSEG0          0x80000000
-#define KSEG1          0xa0000000
-#define KSEG2          0xc0000000
-#define KSEG3          0xe0000000
-#define PHYSADDR_MASK  0x1fffffff
-
-/*
- * Map an address to a certain kernel segment
- */
-#undef PHYSADDR
-#undef KSEG0ADDR
-#undef KSEG1ADDR
-#undef KSEG2ADDR
-#undef KSEG3ADDR
-
-#define PHYSADDR(a)    (_ULCAST_(a) & PHYSADDR_MASK)
-#define KSEG0ADDR(a)   ((_ULCAST_(a) & PHYSADDR_MASK) | KSEG0)
-#define KSEG1ADDR(a)   ((_ULCAST_(a) & PHYSADDR_MASK) | KSEG1)
-#define KSEG2ADDR(a)   ((_ULCAST_(a) & PHYSADDR_MASK) | KSEG2)
-#define KSEG3ADDR(a)   ((_ULCAST_(a) & PHYSADDR_MASK) | KSEG3)
-
-
-#ifndef        Index_Invalidate_I
-/*
- * Cache Operations
- */
-#define Index_Invalidate_I     0x00
-#define Index_Writeback_Inv_D  0x01
-#define Index_Invalidate_SI    0x02
-#define Index_Writeback_Inv_SD 0x03
-#define Index_Load_Tag_I       0x04
-#define Index_Load_Tag_D       0x05
-#define Index_Load_Tag_SI      0x06
-#define Index_Load_Tag_SD      0x07
-#define Index_Store_Tag_I      0x08
-#define Index_Store_Tag_D      0x09
-#define Index_Store_Tag_SI     0x0A
-#define Index_Store_Tag_SD     0x0B
-#define Create_Dirty_Excl_D    0x0d
-#define Create_Dirty_Excl_SD   0x0f
-#define Hit_Invalidate_I       0x10
-#define Hit_Invalidate_D       0x11
-#define Hit_Invalidate_SI      0x12
-#define Hit_Invalidate_SD      0x13
-#define Fill_I                 0x14
-#define Hit_Writeback_Inv_D    0x15
-                                       /* 0x16 is unused */
-#define Hit_Writeback_Inv_SD   0x17
-#define R5K_Page_Invalidate_S  0x17
-#define Hit_Writeback_I                0x18
-#define Hit_Writeback_D                0x19
-                                       /* 0x1a is unused */
-#define Hit_Writeback_SD       0x1b
-                                       /* 0x1c is unused */
-                                       /* 0x1e is unused */
-#define Hit_Set_Virtual_SI     0x1e
-#define Hit_Set_Virtual_SD     0x1f
-#endif /* !Index_Invalidate_I */
-
-
-/*
- * R4x00 interrupt enable / cause bits
- */
-#define IE_SW0                 (_ULCAST_(1) <<  8)
-#define IE_SW1                 (_ULCAST_(1) <<  9)
-#define IE_IRQ0                        (_ULCAST_(1) << 10)
-#define IE_IRQ1                        (_ULCAST_(1) << 11)
-#define IE_IRQ2                        (_ULCAST_(1) << 12)
-#define IE_IRQ3                        (_ULCAST_(1) << 13)
-#define IE_IRQ4                        (_ULCAST_(1) << 14)
-#define IE_IRQ5                        (_ULCAST_(1) << 15)
-
-#ifndef        ST0_UM
-/*
- * Bitfields in the mips32 cp0 status register
- */
-#define ST0_IE