Author: adrian
Date: Sat May 12 04:52:59 2012
New Revision: 235320
URL: http://svn.freebsd.org/changeset/base/235320

Log:
  Add in the AP93 configuration file.
  
  The AP93 has:
  
  * AR7240 - mips24k processor with integrated 10/100 switch and
    various other peripherals;
  * AR9283 - 2x2 2.4GHz 802.11n (with calibration data in flash);
  * 64MB RAM;
  * 16MB SPI flash.
  
  The switch code detects as an AR8216 at the present moment, which isn't
  _entirely_ strictly true.  However, the MII/MDIO routing in AP93.hints
  works - the arge0 MAC connects to PHY4 in the switch, but via the
  switch internal MDIO bus.  The switch connects to arge0's MDIO bus,
  but only to export the switch registers.
  
  Thanks to stb and ray for the switch work, and ray for helping determine
  what the correct switch hints should be for this thing.

Added:
  head/sys/mips/conf/AP93   (contents, props changed)
  head/sys/mips/conf/AP93.hints   (contents, props changed)

Added: head/sys/mips/conf/AP93
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/sys/mips/conf/AP93     Sat May 12 04:52:59 2012        (r235320)
@@ -0,0 +1,138 @@
+#
+# AP93 -- Kernel configuration file for FreeBSD/mips for Atheros AP93 reference
+#         board (AR7240)
+#
+# $FreeBSD$
+#
+
+ident          AP93
+
+# XXX The default load address in the Uboot environment is 0x80010000
+makeoptions    KERNLOADADDR=0x80050000
+options                HZ=1000
+
+# The AP93 has 64mb of RAM; hard-code that
+options                AR71XX_REALMEM=64*1024*1024
+
+# It's UBOOT, not Redboot - without this, things will hang at startup
+options                AR71XX_ENV_UBOOT
+
+makeoptions    MODULES_OVERRIDE="ath ath_pci ath_ahb bridgestp if_bridge 
if_gif if_gre random wlan wlan_acl wlan_amrr wlan_ccmp wlan_rssadapt wlan_tkip 
wlan_wep wlan_xauth usb ar71xx"
+
+hints          "AP93.hints"
+include                "../atheros/std.ar71xx"
+
+makeoptions    DEBUG=-g                #Build kernel with gdb(1) debug symbols
+makeoptions    MODULES_OVERRIDE=""
+
+options                DDB
+options                KDB
+
+options                SCHED_4BSD              #4BSD scheduler
+options                INET                    #InterNETworking
+# Can't do IPv6 - it just doesn't fit.
+# options              INET6
+# options              NFSCL                   #Network Filesystem Client
+options                PSEUDOFS                #Pseudo-filesystem framework
+options                _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time 
extensions
+options                ALQ
+
+# Debugging for use in -current
+options                DEADLKRES
+options                INVARIANTS
+options                INVARIANT_SUPPORT
+options                WITNESS
+options                WITNESS_SKIPSPIN
+options         FFS                     #Berkeley Fast Filesystem
+
+# Support uncompress lzma rootfs
+device         geom_uncompress
+options                GEOM_UNCOMPRESS
+options                ROOTDEVNAME=\"ufs:/dev/map/rootfs.uncompress\"
+
+# PCI bus
+device         pci
+device         ar724x_pci
+# Enable the AR71xx EEPROM PCI(e) workaround
+options                AR71XX_ATH_EEPROM
+
+# NVRAM U-Boot Environment -> Kernel environment
+device         nvram2env
+
+# Wireless NIC cards
+options                IEEE80211_DEBUG
+options                IEEE80211_SUPPORT_MESH
+options                IEEE80211_SUPPORT_TDMA
+options                IEEE80211_ALQ
+
+device         wlan            # 802.11 support
+device         wlan_wep        # 802.11 WEP support
+device         wlan_ccmp       # 802.11 CCMP support
+device         wlan_tkip       # 802.11 TKIP support
+device         wlan_xauth      # 802.11 hostap support
+
+device         ath             # Atheros pci/cardbus NIC's
+device         ath_pci         # PCI/PCIe bus glue
+options        ATH_DEBUG
+options                ATH_ENABLE_11N
+options                ATH_DIAGAPI
+device         firmware
+options                ATH_EEPROM_FIRMWARE
+
+device         ath_hal
+options                AH_SUPPORT_AR5416
+options                AH_DEBUG
+options                AH_DEBUG_ALQ
+
+device         ath_rate_sample
+
+device         mii
+device         arge
+device         miiproxy
+options                ARGE_DEBUG
+options                ARGE_MDIO
+device         etherswitch
+device         arswitch
+
+# USB devices - (todo: does AR7240 have OHCI, or just EHCI?)
+
+#device                usb
+options                USB_EHCI_BIG_ENDIAN_DESC        # handle big-endian 
byte order
+options                USB_DEBUG
+options                USB_HOST_ALIGN=32
+#device                ehci
+
+# Mass storage
+#device                scbus
+#device                umass
+#device                da
+
+# Read MSDOS formatted disks
+options                GEOM_PART_BSD
+options                GEOM_PART_MBR
+#options               MSDOSFS
+
+# GPIO Bus
+#device                gpio
+#device                gpioled
+
+# SPI and flash
+device         spibus
+device         ar71xx_spi
+device         mx25l
+
+# The flash is statically partitioned; add in that
+device         geom_map
+
+device         ar71xx_wdog
+
+# Serial
+device         uart
+
+# Network twiddling
+device         loop
+device         ether
+device         md
+device         bpf
+device         random
+device         if_bridge

Added: head/sys/mips/conf/AP93.hints
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/sys/mips/conf/AP93.hints       Sat May 12 04:52:59 2012        
(r235320)
@@ -0,0 +1,197 @@
+# $FreeBSD$
+
+hint.apb.0.at="nexus0"
+hint.apb.0.irq=4
+
+# uart0
+hint.uart.0.at="apb0"
+# see atheros/uart_cpu_ar71xx.c why +3
+hint.uart.0.maddr=0x18020003
+hint.uart.0.msize=0x18
+hint.uart.0.irq=3
+
+# arge0 MDIO bus
+hint.argemdio.0.at="nexus0"
+hint.argemdio.0.maddr=0x19000000
+hint.argemdio.0.msize=0x1000
+hint.argemdio.0.order=0
+
+# arge1 MDIO bus doesn't exist on the AR7240
+
+# arge0: MII; dedicated PHY 4 on switch, connected via internal switch
+# MDIO bus.
+
+hint.arge.0.at="nexus0"
+hint.arge.0.maddr=0x19000000
+hint.arge.0.msize=0x1000
+hint.arge.0.irq=2
+# hint.arge.0.eeprommac=0x83fe9ff0
+hint.arge.0.phymask=0x10       # PHY 4
+# hint.arge.0.miimode=2                # MII
+hint.arge.0.mdio=mdioproxy1    # Hanging off the arswitch MDIO bus
+
+# arge1: connected to the LAN switch MAC, at 1000BaseTX / GMII.
+hint.arge.1.at="nexus0"
+hint.arge.1.maddr=0x1A000000
+hint.arge.1.msize=0x1000
+hint.arge.1.irq=3
+
+hint.arge.1.phymask=0x0
+# hint.arge.1.miimode=1                # GMII
+hint.arge.1.media=1000         # Force to 1000BaseTX/full
+hint.arge.1.fduplex=1
+
+# AR7240 switch config
+#
+# XXX TODO - have the AR7240 switch auto-detect correctly?
+# XXX It detects as an AR8216, which isn't strictly true!
+#
+hint.arswitch.0.numphys=4      # 4 active switch PHYs (PHY 0 -> 3)
+hint.arswitch.0.phy4cpu=1      # Yes, PHY 4 == dedicated PHY
+hint.arswitch.0.is_rgmii=0     # No, not RGMII
+hint.arswitch.0.is_gmii=0      # No, not GMII
+
+# ath0 hint - pcie slot 0
+hint.pcib.0.bus.0.0.0.ath_fixup_addr=0x1fff1000
+hint.pcib.0.bus.0.0.0.ath_fixup_size=4096
+
+# ehci - note the 0x100 offset for the AR913x/AR724x
+hint.ehci.0.at="nexus0"
+hint.ehci.0.maddr=0x1b000100
+hint.ehci.0.msize=0x00ffff00
+hint.ehci.0.irq=1
+
+# pci
+hint.pcib.0.at="nexus0"
+hint.pcib.0.irq=0
+
+# ath
+hint.ath.0.eeprom_firmware="pcib.0.bus.0.0.0.eeprom_firmware"
+
+# GPIO
+hint.gpio.0.at="apb0"
+hint.gpio.0.maddr=0x18040000
+hint.gpio.0.msize=0x1000
+hint.gpio.0.irq=2
+
+# Signal leds
+hint.gpioled.0.at="gpiobus0"
+hint.gpioled.0.name="sig1"
+hint.gpioled.0.pins=0x0001     # pin 0
+hint.gpioled.1.at="gpiobus0"
+hint.gpioled.1.name="sig2"
+hint.gpioled.1.pins=0x0002     # pin 1
+hint.gpioled.2.at="gpiobus0"
+hint.gpioled.2.name="sig3"
+hint.gpioled.2.pins=0x0800     # pin 11
+hint.gpioled.3.at="gpiobus0"
+hint.gpioled.3.name="sig4"
+hint.gpioled.3.pins=0x0080     # pin 7
+
+# SPI controller/bus
+hint.spi.0.at="nexus0"
+hint.spi.0.maddr=0x1f000000
+hint.spi.0.msize=0x10
+
+# SPI flash
+hint.mx25l.0.at="spibus0"
+hint.mx25l.0.cs=0
+
+# Watchdog
+hint.ar71xx_wdog.0.at="nexus0"
+
+# nvram mapping - XXX ?
+hint.nvram.0.base=0x1f030000
+hint.nvram.0.maxsize=0x2000
+hint.nvram.0.flags=3 # 1 = No check, 2 = Format Generic
+hint.nvram.1.base=0x1f032000
+hint.nvram.1.maxsize=0x4000
+hint.nvram.1.flags=3 # 1 = No check, 2 = Format Generic
+
+# GEOM_MAP
+#
+# From my AP93 environment:
+#
+# 256k - uboot
+# 256k - uboot-env
+# 3072k - spare-rootfs
+# 1024k - spare-uImage
+# 3072k - rootfs
+# 1024k - uImage
+# 64k - mib0
+# 64k - mib1
+# 4096k - ct
+# 3392k - var
+# 64k - ART
+
+# To make it useful for FreeBSD for now, treat spare rootfs, spare
+# uimage and rootfs as 'rootfs'.
+
+hint.map.0.at="flash/spi0"
+hint.map.0.start=0x00000000
+hint.map.0.end=0x00040000
+hint.map.0.name="uboot"
+hint.map.0.readonly=1
+
+hint.map.1.at="flash/spi0"
+hint.map.1.start=0x00040000
+hint.map.1.end=0x00080000
+hint.map.1.name="uboot-env"
+hint.map.1.readonly=1
+
+hint.map.2.at="flash/spi0"
+hint.map.2.start=0x00080000
+# hint.map.2.end=0x00380000
+hint.map.2.end=0x00780000
+# hint.map.2.name="spare-rootfs"
+hint.map.2.name="rootfs"
+hint.map.2.readonly=1
+
+#hint.map.3.at="flash/spi0"
+#hint.map.3.start=0x00380000
+#hint.map.3.end=0x00480000
+#hint.map.3.name="spare-uImage"
+#hint.map.3.readonly=1
+
+#hint.map.4.at="flash/spi0"
+#hint.map.4.start=0x00480000
+#hint.map.4.end=0x00780000
+#hint.map.4.name="rootfs"
+#hint.map.4.readonly=1
+
+hint.map.3.at="flash/spi0"
+hint.map.3.start=0x00780000
+hint.map.3.end=0x00880000
+hint.map.3.name="uImage"
+hint.map.3.readonly=1
+
+hint.map.4.at="flash/spi0"
+hint.map.4.start=0x00880000
+hint.map.4.end=0x00890000
+hint.map.4.name="mib0"
+hint.map.4.readonly=1
+
+hint.map.5.at="flash/spi0"
+hint.map.5.start=0x00890000
+hint.map.5.end=0x008a0000
+hint.map.5.name="mib1"
+hint.map.5.readonly=1
+
+hint.map.6.at="flash/spi0"
+hint.map.6.start=0x008a0000
+hint.map.6.end=0x00ca0000
+hint.map.6.name="ct"
+hint.map.6.readonly=1
+
+hint.map.7.at="flash/spi0"
+hint.map.7.start=0x00ca0000
+hint.map.7.end=0x00ff0000
+hint.map.7.name="var"
+hint.map.7.readonly=1
+
+hint.map.8.at="flash/spi0"
+hint.map.8.start=0x00ff0000
+hint.map.8.end=0x01000000      # 64k ART
+hint.map.8.name="ART"
+hint.map.8.readonly=1
+
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to