svn commit: r228944 - head/sys/mips/conf
Adrian Chadd
adrian at FreeBSD.org
Thu Dec 29 05:51:49 UTC 2011
Author: adrian
Date: Thu Dec 29 05:51:48 2011
New Revision: 228944
URL: http://svn.freebsd.org/changeset/base/228944
Log:
Break out the AR71XX config file into _BASE and board specific
bits.
The ROUERSTATION and RSPRO variants contain:
* the board specific bits (eg the RTC for RSPRO, later on it'll
include the GPIO/LED definitions);
* the boot specific bits (eg, on-board flash, usb flash, etc).
For now the AR71XX_BASE file contains the common board config,
drivers and net80211/ath wireless drivers.
I'll follow this up with config files for the other boards I
have (eg the Ubiquiti LSSR71, as well as some Mikrotik boards
that use the AR71XX and atheros reference boards) which will
be quite easy to do now.
Added:
head/sys/mips/conf/AR71XX_BASE (contents, props changed)
head/sys/mips/conf/AR71XX_BASE.hints (contents, props changed)
head/sys/mips/conf/ROUTERSTATION (contents, props changed)
head/sys/mips/conf/ROUTERSTATION.hints (contents, props changed)
head/sys/mips/conf/ROUTERSTATION_MFS (contents, props changed)
head/sys/mips/conf/RSPRO (contents, props changed)
head/sys/mips/conf/RSPRO.hints (contents, props changed)
head/sys/mips/conf/RSPRO_MFS (contents, props changed)
head/sys/mips/conf/RSPRO_STANDALONE (contents, props changed)
Deleted:
head/sys/mips/conf/AR71XX
head/sys/mips/conf/AR71XX.hints
Added: head/sys/mips/conf/AR71XX_BASE
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/AR71XX_BASE Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,122 @@
+#
+# AR71XX -- Kernel configuration file for FreeBSD/MIPS for Atheros 71xx systems
+#
+# This includes all the common drivers for the AR71XX boards along with
+# the usb, net80211 and atheros driver code.
+#
+# $FreeBSD$
+#
+
+machine mips mipseb
+ident AR71XX_BASE
+cpu CPU_MIPS4KC
+options ISA_MIPS32
+makeoptions TARGET_BIG_ENDIAN
+makeoptions KERNLOADADDR=0x80050000
+options HZ=1000
+options HWPMC_HOOKS
+
+files "../atheros/files.ar71xx"
+
+# For now, hints are per-board.
+
+hints "AR71XX_BASE.hints"
+
+makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
+
+# Also build these as modules, just to ensure the build gets tested.
+makeoptions MODULES_OVERRIDE="wlan wlan_xauth wlan_acl wlan_wep wlan_tkip wlan_ccmp ath ath_pci"
+
+options DDB
+options KDB
+
+options SCHED_4BSD #4BSD scheduler
+options INET #InterNETworking
+options INET6 # IPv6
+
+# options NFS_CL #Network Filesystem Client
+
+options PSEUDOFS #Pseudo-filesystem framework
+options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
+
+# options NFS_LEGACYRPC
+# Debugging for use in -current
+options INVARIANTS
+options INVARIANT_SUPPORT
+options WITNESS
+options WITNESS_SKIPSPIN
+options DEBUG_REDZONE
+options DEBUG_MEMGUARD
+
+options FFS #Berkeley Fast Filesystem
+# options SOFTUPDATES #Enable FFS soft updates support
+# options UFS_ACL #Support for access control lists
+# options UFS_DIRHASH #Improve performance on big directories
+# options MSDOSFS # Read MSDOS filesystems; useful for USB/CF
+
+device pci
+device ar71xx_pci
+
+# 802.11 framework
+options IEEE80211_DEBUG
+options IEEE80211_ALQ
+options IEEE80211_SUPPORT_MESH
+# This option is currently broken for if_ath_tx.
+options IEEE80211_SUPPORT_TDMA
+options IEEE80211_AMPDU_AGE
+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
+
+# Atheros wireless NICs
+device ath # Atheros interface support
+device ath_pci # Atheros PCI/Cardbus bus
+options ATH_DEBUG
+options ATH_DIAGAPI
+options ATH_ENABLE_11N
+options AH_DEBUG
+options AH_DEBUG_ALQ
+options ALQ
+device ath_hal
+option AH_SUPPORT_AR5416
+device ath_rate_sample
+option AH_RXCFG_SDMAMW_4BYTES
+option AH_AR5416_INTERRUPT_MITIGATION
+# There's no DFS radar detection support yet so this won't actually
+# detect radars. It however does enable the rest of the channel change
+# machinery so DFS can be debugged.
+option ATH_ENABLE_DFS
+
+device mii
+device arge
+
+device usb
+options USB_EHCI_BIG_ENDIAN_DESC # handle big-endian byte order
+options USB_DEBUG
+options USB_HOST_ALIGN=32 # AR71XX (MIPS in general?) requires this
+device ehci
+
+device scbus
+device umass
+device da
+
+# On-board SPI flash
+device spibus
+device ar71xx_spi
+device mx25l
+device ar71xx_wdog
+
+device uart
+
+device loop
+device ether
+device md
+device bpf
+device random
+device if_bridge
+device gif # ip[46] in ip[46] tunneling protocol
+device gre # generic encapsulation - only for IPv4 in IPv4 though atm
+
+options ARGE_DEBUG # Enable if_arge debugging for now
Added: head/sys/mips/conf/AR71XX_BASE.hints
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/AR71XX_BASE.hints Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,66 @@
+#
+# $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
+
+#ohci
+hint.ohci.0.at="apb0"
+hint.ohci.0.maddr=0x1c000000
+hint.ohci.0.msize=0x01000000
+hint.ohci.0.irq=6
+
+#ehci
+hint.ehci.0.at="nexus0"
+hint.ehci.0.maddr=0x1b000000
+hint.ehci.0.msize=0x01000000
+hint.ehci.0.irq=1
+
+# pci
+hint.pcib.0.at="nexus0"
+hint.pcib.0.irq=0
+
+hint.arge.0.at="nexus0"
+hint.arge.0.maddr=0x19000000
+hint.arge.0.msize=0x1000
+hint.arge.0.irq=2
+
+# phymask, media and fduplex depend upon the specific
+# board.
+# So each board will override the settings as needed.
+
+hint.arge.1.at="nexus0"
+hint.arge.1.maddr=0x1a000000
+hint.arge.1.msize=0x1000
+hint.arge.1.irq=3
+
+# SPI flash
+hint.spi.0.at="nexus0"
+hint.spi.0.maddr=0x1f000000
+hint.spi.0.msize=0x10
+
+hint.mx25l.0.at="spibus0"
+hint.mx25l.0.cs=0
+
+# Watchdog
+hint.ar71xx_wdog.0.at="nexus0"
+
+# GPIO
+hint.gpio.0.at="apb0"
+hint.gpio.0.maddr=0x18040000
+hint.gpio.0.msize=0x1000
+hint.gpio.0.irq=2
+
+# Each board should override the GPIO bus pins with the configuration
+# relevant to it. Thus no pins are defined here.
+
+# hwpmc device
+hint.ar71xx_pmc.0.at="apb0"
+hint.ar71xx_pmc.0.irq=5
Added: head/sys/mips/conf/ROUTERSTATION
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/ROUTERSTATION Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,24 @@
+#
+# Ubiquiti Routerstation: Boot from onboard flash
+#
+# $FreeBSD$
+#
+
+include "UBNT_AR71XX_BASE"
+ident "ROUTERSTATION"
+hints "ROUTERSTATION.hints"
+
+# XXX Is there an RTC on the RS?
+
+# GEOM modules
+device geom_redboot # to get access to the SPI flash partitions
+device geom_uzip # compressed in-memory filesystem support
+options GEOM_UZIP
+
+# For DOS
+options GEOM_PART_BSD
+options GEOM_PART_MBR
+options MSDOSFS
+
+# Boot path - redboot MFS
+options ROOTDEVNAME=\"ufs:redboot/rootfs.uzip\"
Added: head/sys/mips/conf/ROUTERSTATION.hints
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/ROUTERSTATION.hints Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,19 @@
+#
+# $FreeBSD$
+#
+
+# Uncomment this hint for RS (not PRO)
+# PHY20 = 1 << 20
+hint.arge.0.phymask=0x100000
+
+# should be 100 for RS
+hint.arge.1.media=100
+hint.arge.1.fduplex=1
+# Uncomment this hint for RS (not PRO)
+hint.arge.1.phymask=0x30000
+
+# RF led
+hint.gpioled.0.at="gpiobus0"
+hint.gpioled.0.name="rf"
+# pin 2
+hint.gpioled.0.pins=0x0004
Added: head/sys/mips/conf/ROUTERSTATION_MFS
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/ROUTERSTATION_MFS Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,19 @@
+#
+# Ubiquiti Routerstation: boot from MFS
+#
+# $FreeBSD$
+#
+
+include "AR71XX_BASE"
+ident "ROUTERSTATION_MFS"
+hints "ROUTERSTATION.hints"
+
+# GEOM modules
+device geom_redboot # to get access to the SPI flash partitions
+device geom_uzip # compressed in-memory filesystem hackery!
+options GEOM_UZIP
+
+options ROOTDEVNAME=\"ufs:md0.uzip\"
+
+options MD_ROOT
+options MD_ROOT_SIZE="6144"
Added: head/sys/mips/conf/RSPRO
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/RSPRO Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,26 @@
+#
+# Routerstation Pro: boot from on-board flash
+#
+# $FreeBSD$
+#
+
+include "AR71XX_BASE"
+ident "RSPRO"
+hints "RSPRO.hints"
+
+# RTC - requires hackery in the spibus code to work
+device pcf2123_rtc
+
+# GEOM modules
+device geom_redboot # to get access to the SPI flash partitions
+device geom_uzip # compressed in-memory filesystem support
+options GEOM_UZIP
+
+# For DOS
+options GEOM_PART_BSD
+options GEOM_PART_MBR
+options MSDOSFS
+
+# Boot off of flash
+options ROOTDEVNAME=\"ufs:redboot/rootfs.uzip\"
+
Added: head/sys/mips/conf/RSPRO.hints
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/RSPRO.hints Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,13 @@
+# $FreeBSD$
+
+hint.arge.0.phymask=0x10
+
+hint.arge.1.media=1000
+hint.arge.1.fduplex=1
+hint.arge.1.phymask=0x0e
+
+# RF led
+hint.gpioled.0.at="gpiobus0"
+hint.gpioled.0.name="rf"
+# pin 2
+hint.gpioled.0.pins=0x0004
Added: head/sys/mips/conf/RSPRO_MFS
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/RSPRO_MFS Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,23 @@
+#
+# Ubiquiti Routerstation Pro: boot from MFS
+#
+# $FreeBSD$
+#
+
+include "AR71XX_BASE"
+ident "RSPRO_MFS"
+hints "RSPRO.hints"
+
+# RTC - requires hackery in the spibus code to work
+device pcf2123_rtc
+
+# GEOM modules
+device geom_redboot # to get access to the SPI flash partitions
+device geom_uzip # compressed in-memory filesystem hackery!
+options GEOM_UZIP
+
+# Boot from the first MFS uzip
+options ROOTDEVNAME=\"ufs:md0.uzip\"
+
+options MD_ROOT
+options MD_ROOT_SIZE="6144"
Added: head/sys/mips/conf/RSPRO_STANDALONE
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/sys/mips/conf/RSPRO_STANDALONE Thu Dec 29 05:51:48 2011 (r228944)
@@ -0,0 +1,26 @@
+#
+# Ubiquiti Routerstation Pro: boot from first DOS-partitioned, BSD
+# sliced flash disk.
+#
+# $FreeBSD$
+#
+
+include "AR71XX_BASE"
+ident "RSPRO_STANDALONE"
+hints "RSPRO.hints"
+
+# RTC - requires hackery in the spibus code to work
+device pcf2123_rtc
+
+# GEOM modules
+device geom_redboot # to get access to the SPI flash partitions
+device geom_uzip # compressed in-memory filesystem support
+options GEOM_UZIP
+
+# For DOS
+options GEOM_PART_BSD
+options GEOM_PART_MBR
+options MSDOSFS
+
+# .. first DOS-partitioned, BSD sliced flash disk
+options ROOTDEVNAME=\"ufs:da0s1a\"
More information about the svn-src-head
mailing list