From owner-svn-src-all@FreeBSD.ORG Thu Dec 29 05:51:49 2011 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 48B97106564A; Thu, 29 Dec 2011 05:51:49 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 32B128FC08; Thu, 29 Dec 2011 05:51:49 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id pBT5pn8l041798; Thu, 29 Dec 2011 05:51:49 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id pBT5pnbp041788; Thu, 29 Dec 2011 05:51:49 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201112290551.pBT5pnbp041788@svn.freebsd.org> From: Adrian Chadd Date: Thu, 29 Dec 2011 05:51:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r228944 - head/sys/mips/conf X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Dec 2011 05:51:49 -0000 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\"