From owner-svn-src-head@FreeBSD.ORG Tue Aug 28 06:17:44 2012 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D8FE6106566C; Tue, 28 Aug 2012 06:17:44 +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 B98788FC0A; Tue, 28 Aug 2012 06:17:44 +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 q7S6HiRP021929; Tue, 28 Aug 2012 06:17:44 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q7S6Hih5021927; Tue, 28 Aug 2012 06:17:44 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201208280617.q7S6Hih5021927@svn.freebsd.org> From: Adrian Chadd Date: Tue, 28 Aug 2012 06:17:44 +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: r239765 - head/sys/mips/conf X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Aug 2012 06:17:45 -0000 Author: adrian Date: Tue Aug 28 06:17:44 2012 New Revision: 239765 URL: http://svn.freebsd.org/changeset/base/239765 Log: This is an initial board configuration for the D-Link DIR-825 dual-band 802.11n router. The flash layout defaults to a 1 MiB section for the kernel so I'm trying very hard to squeeze a minimialistic (LZMA compressde) kernel image into that. I've verified that it boots through to single user mode fine. Issues: * USB doesn't yet work as a module - I need to add something else to the USB AR71xx build before that will work. * There's no switch PHY support - but for now it quite happily behaves as a useful dumb switch out of the box. Phew. * Since a previous flash attempt trashed my radio configuration block, I haven't yet verified whether the wireless works correctly. I'll test that out shortly (read: once I re-calibrate the board somehow.) Thanks to ray@ and the zrouter project for doing some of the initial hard work in figuring out how to bring this board up. Added: head/sys/mips/conf/DIR-825 (contents, props changed) head/sys/mips/conf/DIR-825.hints (contents, props changed) Added: head/sys/mips/conf/DIR-825 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/mips/conf/DIR-825 Tue Aug 28 06:17:44 2012 (r239765) @@ -0,0 +1,68 @@ +# +# Specific board setup for the D-Link DIR-825 router. +# +# The DIR-825 has the following hardware: +# +# + AR7161 CPU SoC +# + AR9223 2.4GHz 11n +# + AR9220 5GHz 11n +# + RealTek RTL8366S Gigabit switch +# + m25p64 based 8MB flash +# + 64MB RAM +# + uboot environment + +# $FreeBSD$ + +include "AR71XX_BASE" +ident "DIR-825" +hints "DIR-825.hints" + +# Since the kernel image must fit inside 1024KiB, we have to build almost +# everything as modules. +nodevice random +nodevice gpio +nodevice gpioled +nodevice gif +nodevice gre +nodevice bridge +nodevice usb +nodevice ehci +nodevice wlan +nodevice wlan_xauth +nodevice wlan_acl +nodevice wlan_wep +nodevice wlan_tkip +nodevice wlan_ccmp +nodevice wlan_rssadapt +nodevice wlan_amrr +nodevice ath +nodevice ath_pci +nodevice ath_hal +nodevice umass +nodevice ath_rate_sample + +nooptions INET6 + +# Don't include the SCSI/CAM strings in the default build +options SCSI_NO_SENSE_STRINGS +options SCSI_NO_OP_STRINGS + +# .. And no sysctl strings +options NO_SYSCTL_DESCR + +# GEOM modules +device geom_map # to get access to the SPI flash partitions +device geom_uncompress # compressed in-memory filesystem hackery! +options GEOM_UNCOMPRESS + +options ROOTDEVNAME=\"ufs:/dev/map/rootfs.uncompress\" +options AR71XX_REALMEM=64*1024*1024 + +options AR71XX_ENV_UBOOT + +# options MD_ROOT +# options MD_ROOT_SIZE="6144" + +options AR71XX_ATH_EEPROM # Fetch EEPROM/PCI config from flash +options ATH_EEPROM_FIRMWARE # Use EEPROM from flash +device firmware # Used by the above Added: head/sys/mips/conf/DIR-825.hints ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/mips/conf/DIR-825.hints Tue Aug 28 06:17:44 2012 (r239765) @@ -0,0 +1,67 @@ +# $FreeBSD$ + +# arge0 is connected to the LAN side of the switch PHY. +# arge1 is connected to the single port WAN side of the switch PHY. + +hint.arge.0.phymask=0x0 +hint.arge.0.media=1000 +hint.arge.0.fduplex=1 + +# XXX grab these from uboot? +# hint.arge.0.eeprommac=0x1f01fc00 + +hint.arge.1.phymask=0x0 +hint.arge.1.media=1000 +hint.arge.1.fduplex=1 + +# ath0 - slot 17 +hint.pcib.0.bus.0.17.0.ath_fixup_addr=0x1fff1000 +hint.pcib.0.bus.0.17.0.ath_fixup_size=4096 + +# ath1 - slot 18 +hint.pcib.0.bus.0.18.0.ath_fixup_addr=0x1fff5000 +hint.pcib.0.bus.0.18.0.ath_fixup_size=4096 + +# .. and now, telling each ath(4) NIC where to find the firmware +# image. +hint.ath.0.eeprom_firmware="pcib.0.bus.0.17.0.eeprom_firmware" +hint.ath.1.eeprom_firmware="pcib.0.bus.0.18.0.eeprom_firmware" + +# TODO: gpio LEDs + +# Geom MAP + +# mtdparts=ar7100-nor0:256k(uboot),64k(Config),1024k(vmlinux),5184k(rootfs),64k(caldata) + +hint.map.0.at="flash/spi0" +hint.map.0.start=0x00000000 +hint.map.0.end=0x000040000 +hint.map.0.name="uboot" +hint.map.0.readonly=1 + +# This config partition is the D-Link specific configuration area. +# I'm re-purposing it for FreeBSD. +hint.map.1.at="flash/spi0" +hint.map.1.start=0x00040000 +hint.map.1.end=0x00050000 +hint.map.1.name="cfg" +hint.map.1.readonly=1 + +hint.map.2.at="flash/spi0" +hint.map.2.start=0x0050000 +hint.map.2.end=0x00150000 +hint.map.2.name="kernel" +hint.map.2.readonly=1 + +hint.map.3.at="flash/spi0" +hint.map.3.start=0x00150000 +hint.map.3.end=0x007f0000 +hint.map.3.name="rootfs" +hint.map.3.readonly=0 + +hint.map.4.at="flash/spi0" +hint.map.4.start=0x007f0000 +hint.map.4.end=0x00800000 +hint.map.4.name="art" +hint.map.4.readonly=1 +