From owner-freebsd-drivers@FreeBSD.ORG Fri Feb 8 16:43:19 2008 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CD1D416A417 for ; Fri, 8 Feb 2008 16:43:19 +0000 (UTC) (envelope-from kazuhiro@robios.org) Received: from fbdnp1.nw.wakwak.com (fbdnp1.nw.wakwak.com [219.103.130.34]) by mx1.freebsd.org (Postfix) with ESMTP id 79E6713C461 for ; Fri, 8 Feb 2008 16:43:19 +0000 (UTC) (envelope-from kazuhiro@robios.org) Received: from mgdnp1.nw.wakwak.com (IDENT:0@mgdnp1.nw.wakwak.com [219.103.130.24]) by fbdnp1.nw.wakwak.com (8.14.2/8.14.2/2007-12-27) with ESMTP id m18GIB7V046257 for ; Sat, 9 Feb 2008 01:18:12 +0900 (JST) (envelope-from kazuhiro@robios.org) Received: from vckyb8.nw.wakwak.com (postfix@vckyb8.nw.wakwak.com [211.9.231.149]) by mgdnp1.nw.wakwak.com (8.14.2/8.14.2/2007-12-27) with SMTP id m18GI9NA075991 for ; Sat, 9 Feb 2008 01:18:09 +0900 (JST) (envelope-from kazuhiro@robios.org) Received: from ab.bb-east.ne.jp (ab.bb-east.ne.jp [211.9.230.70]) by vckyb8.nw.wakwak.com (Postfix) with ESMTP id 6B58D3005E for ; Sat, 9 Feb 2008 01:18:09 +0900 (JST) Received: from [192.168.1.199] (usr018.bb117-01.udi.im.wakwak.ne.jp [218.225.176.20]) (pbs=n3pcsj) by ab.bb-east.ne.jp (8.14.2/8.14.2/2007-12-26) with ESMTP/inet id m18GI9wD042266 for ; Sat, 9 Feb 2008 01:18:09 +0900 (JST) (envelope-from kazuhiro@robios.org) Mime-Version: 1.0 (Apple Message framework v753) Content-Transfer-Encoding: 7bit Message-Id: Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed To: freebsd-drivers@freebsd.org From: "Sakai, Kazuhiro" Date: Sat, 9 Feb 2008 01:18:33 +0900 X-Mailer: Apple Mail (2.753) Subject: Running FreeBSD on Firebox III X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Feb 2008 16:43:19 -0000 Hello. I am currently struggling with running the FreeBSD 4.11 based firewall, m0n0wall, on a WatchGuard Firebox III 1000. There are two difficulties: 1. Ether Station Address The Firebox III is equipped with 3 Macronix 98715AEC chips, but m0n0wall fails to get their station addresses (got all 0xff). Although this issue has been resolved by patching to the dc driver. According to the Application Notes of Macronix 98713, the beginning address (offset) of station address in EEPROM is stored in 0x70, however, for Firebox III the station address is only stored in 0x20 as other Tulip ether cards store their station address there, and 0x70 is bogus. Never minds ;-) 2. IDE Controller The second issue is the IDE controller. Firebox III has a 7MB onboard flash memory (Samsung K6F6408U0C, the same chip used in RIO), which can be accessed through the primary channel. There is also a 44 IDE pin, which is also primary, and you can connect any device as a slave. Interestingly, you can switch the master and slave by a jumper pin besides the IDE pin. First thing I tried is; connect a 2.5 HDD, which I installed m0n0wall, switch the master/slave by jumping, and power it up. Kernel loaded. But it sometimes froze when m0n0wall tries to remount the disk. To investigate further, I installed FreeBSD 4.11 to the 2.5 HDD using another PC, and boot it on Firebox. It boots up fine. I patched the dc driver, setup the network, did cvsup, built world, and built kernel, like a charm. However, if I try to mount the onboard 7MB flash memory, FreeBSD totally froze. Even fdisk -v can sometimes freeze it. Then I installed Gentoo Linux on another 2.5 HDD and boot it on Firebox. Surprisingly, Linux can fdisk, mkfs, fsck and mount/umount the onboard flash memory. Okay, here's my question. Where should I start? I looked the ata driver but found no clue. What's the big difference between the Linux ata driver and the FreeBSD's? Thanks in advance. Sakai, Kazuhiro kazuhiro@robios.org