From owner-freebsd-arm@freebsd.org Fri Nov 6 11:37:14 2015 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 31D56A27841 for ; Fri, 6 Nov 2015 11:37:14 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from kif.fubar.geek.nz (kif.fubar.geek.nz [178.62.119.249]) by mx1.freebsd.org (Postfix) with ESMTP id 004731CB3 for ; Fri, 6 Nov 2015 11:37:13 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from bender (global-5-141.nat-2.net.cam.ac.uk [131.111.5.141]) by kif.fubar.geek.nz (Postfix) with ESMTPSA id 1506FD78E6; Fri, 6 Nov 2015 11:36:43 +0000 (UTC) Date: Fri, 6 Nov 2015 11:36:41 +0000 From: Andrew Turner To: Zbigniew Bodek Cc: "freebsd-arm@freebsd.org" Subject: Re: HEADS UP: Cavium ThunderX support in the tree Message-ID: <20151106113641.02e0f826@bender> In-Reply-To: References: <20151106094714.5e8632c6@bender.Home> X-Mailer: Claws Mail 3.13.0 (GTK+ 2.24.28; amd64-portbld-freebsd10.1) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Nov 2015 11:37:14 -0000 On Fri, 6 Nov 2015 12:23:11 +0100 Zbigniew Bodek wrote: > 2015-11-06 10:47 GMT+01:00 Andrew Turner : > > On Thu, 5 Nov 2015 17:14:03 +0100 > > Zbigniew Bodek wrote: > > > >> Hello all, > >> > >> Semihalf is happy to officially announce that starting from SVN > >> revision r289550 FreeBSD is ready to run on Cavium ThunderX > >> system-on-chip! > >> ThunderX is the first ARM64 (ARMv8) hardware platform to be > >> supported by FreeBSD and the only one that introduces 96-CPU cores > >> SMP. The integrated code includes support for: > >> > > ... > >> - Network Interface Controller (VNIC) 1/10/40G > > > > We do? Then why don't I see it in ifconfig on the ThunderX in the > > cluster? > > > > root@cavium:~ # ifconfig -a > > em0: flags=8843 metric 0 mtu > > 1500 > > options=4019b > > ether 00:15:17:0b:6b:08 > > inet 192.168.5.167 netmask 0xffffff00 broadcast > > 192.168.5.255 media: Ethernet autoselect (1000baseT ) > > status: active > > nd6 options=29 > > lo0: flags=8049 metric 0 mtu 16384 > > options=600003 > > inet6 ::1 prefixlen 128 > > inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2 > > inet 127.0.0.1 netmask 0xff000000 > > groups: lo > > nd6 options=21 > > > > Andrew > > Strange. Works for me ;P > > First of all, networking cards on ThunderX are PCI Virtual Functions > so you need to bring them up using iovctl. > If you watched the youtube demo you should have seen that at first > there are no interfaces in ifconfig and then I do iovctl and they > appear. Ok, so it's similar to wlan where we need some extra configuration before we can use it. What is the option I need to enable in rc.conf to enable this? > Secondly, EFI that runs on the board needs to pass the correct DTB to > the kernel (it has to have PCIB, BGX, MDIO, PHYs nodes and they need > to be in the correct order [MDIO needs to attach before BGX]). If this is the case the code is broken. It should just work with the vendor dtb and GENERIC. We already have to handle the We already have to handle this in other parts of the code by having the dependent drivers on an earlier pass than later drivers. I also don't see any documentation. I can see the bgx driver, bit there doesn't seem to be a manual page. root@cavium:~ # man bgx No manual entry for bgx Andrew