From owner-freebsd-arm@freebsd.org Mon Dec 26 01:06:35 2016 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 261B6C90313 for ; Mon, 26 Dec 2016 01:06:35 +0000 (UTC) (envelope-from daniel.huebleitner@student.tuwien.ac.at) Received: from mail2.student.tuwien.ac.at (mail2.student.tuwien.ac.at [193.170.73.222]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BC46A1277 for ; Mon, 26 Dec 2016 01:06:34 +0000 (UTC) (envelope-from daniel.huebleitner@student.tuwien.ac.at) Received: from [192.168.1.101] (213162068064.public.t-mobile.at [213.162.68.64]) (authenticated bits=0) by mail2.student.tuwien.ac.at (8.13.8/8.13.8) with ESMTP id uBQ15cJS000988 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Mon, 26 Dec 2016 02:05:39 +0100 From: =?utf-8?Q?Daniel_H=C3=BCbleitner?= Content-Type: multipart/mixed; boundary="Apple-Mail=_806FB05C-BC43-4C6E-B3EB-5CE27D25D194" Subject: Finally bringing FreeBSD to Parallella Message-Id: <7E7AC5B2-02A5-462B-B111-F0C7DCF59DF4@student.tuwien.ac.at> Date: Mon, 26 Dec 2016 02:05:38 +0100 To: freebsd-arm@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) X-Mailer: Apple Mail (2.3124) X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Dec 2016 01:06:35 -0000 --Apple-Mail=_806FB05C-BC43-4C6E-B3EB-5CE27D25D194 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Merry Christmas everyone, I am trying to port FreeBSD on the parallella board. So far I just wrote = a kernel config where I included the zedboard config. I can build the = world no problem. Where I ran into trouble is trying to statically = compile the DTB. I have to say I dont really understand how the OS knows = the driver it should use from the DTS. Furthermore there is a DTS under = GPL from Xilinx itself in ../../../gnu/dts/arm/zynq-parallella.dts. How = can it be that the Vendor DTS is so much different from the BSD DTS in = sys/boot/fdt/dts. Shouldnt be there just one correct DTS for each board? = And could it work if I just use the Vendor DTS? It looks to me that = everybody just writes the DTS the way they want and due to a miracle it = somehow works. So what I=C2=B4m trying to say is, would someone be interested in = helping me bringing FreeBSD to the parallella micro-server. Its the = first time I try to port BSD and I am doing it as part of a university = project where I want to benchmark FreeBSD against Linux.=20 I attached the kernel config I have so far. There are some links to the = hardware in the config header. Thanks in advance. Kind regards, Daniel --Apple-Mail=_806FB05C-BC43-4C6E-B3EB-5CE27D25D194 Content-Disposition: attachment; filename=PARALLELLA_SERVER Content-Type: application/octet-stream; name="PARALLELLA_SERVER" Content-Transfer-Encoding: 7bit # # PARALLELLA_SERVER # Custom configuration for the Xilinx Zynq-7010/20 16 core # adapteva epiphany coprocessor based parallella16 board. # (https://www.xilinx.com) # (https://www.parallella.org) # (http://www.adapteva.com) # # For more information on this file, please read the config(5) manual page, # and/or the handbook section on Kernel Configuration Files: # # http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html # # The handbook is also available locally in /usr/share/doc/handbook # if you've installed the doc distribution, otherwise always see the # FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the # latest information. # # An exhaustive list of options and more detailed explanations of the # device lines is also present in the ../../conf/NOTES and NOTES files. # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # # $FreeBSD$ ident PARALLELLA_SERVER #name of the kernel include ZEDBOARD #include the kernel config from the Zedboard maxusers 0 #when set 0 autotune internal table sizes according to space available options INCLUDE_CONFIG_FILE #include this file in kernel options COMPAT_LINUXKPI #enable Linux Kernel Programming Interface makeoptions BOOTWAIT=1000 #wait 1sec before boot makeoptions COPTFLAGS=-O3 #compiler optimization on 3 makeoptions KERNCONF=PARALLELLA_SERVER #kernelconfig to build # Flattened Device Tree options FDT_DTB_STATIC #compile device tree blob static into kernel makeoptions FDT_DTS_FILE=../../../gnu/dts/arm/zynq-parallella.dts #dts file relativ to sys/boot/fdt/dts makeoptions WITHOUT_MODULES="dtb/zynq" #remove module dtb/zynq from zedboard config since DTB is staic --Apple-Mail=_806FB05C-BC43-4C6E-B3EB-5CE27D25D194--