From owner-freebsd-arm@freebsd.org Fri Oct 14 05:44:04 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 3968AC11185 for ; Fri, 14 Oct 2016 05:44:04 +0000 (UTC) (envelope-from gonzo@id.bluezbox.com) Received: from id.bluezbox.com (id.bluezbox.com [45.55.20.155]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 24B91F76 for ; Fri, 14 Oct 2016 05:44:03 +0000 (UTC) (envelope-from gonzo@id.bluezbox.com) Received: from [136.179.10.143] (helo=[10.140.230.85]) by id.bluezbox.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.86_2 (FreeBSD)) (envelope-from ) id 1buvHl-0004FM-6u for freebsd-arm@freebsd.org; Thu, 13 Oct 2016 22:44:01 -0700 From: Oleksandr Tymoshenko Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 10.0 \(3226\)) Subject: Raspberry Pi 3 support Message-Id: <5F2E0B05-0A54-4BD6-9CFE-4DFF5FEF07DC@bluezbox.com> Date: Thu, 13 Oct 2016 22:43:31 -0700 To: freebsd-arm@freebsd.org X-Mailer: Apple Mail (2.3226) Sender: gonzo@id.bluezbox.com X-Spam-Level: -- X-Spam-Report: Spam detection software, running on the system "id.bluezbox.com", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see The administrator of that system for details. Content preview: Hello, Limited support for Raspberry Pi 3 has just landed in HEAD. No SMP and no 3D yet. And no BT/WiFi drivers. If you would like to give it a spin read this info, it may save you some googling time: [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] 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: Fri, 14 Oct 2016 05:44:04 -0000 Hello, Limited support for Raspberry Pi 3 has just landed in HEAD. No SMP and no 3D yet. And no BT/WiFi drivers. If you would like to give it a = spin read this info, it may save you some googling time: - SD card layout is the same as for RPi or RPi 2 - Firmware and DTB files can be downloaded from official repo: https://github.com/raspberrypi/firmware/tree/master/boot Just copy them as-is to FAT partition on SD. There are plans to import latest .dts files and provide rpi3.dtb just like for Raspberry Pi and Raspberry Pi 2 - boot mode on RPi 3 is controlled by arm_control parameter in = config.txt, set it to 0x200 to boot in 64-bit mode - To reduce mess with consoles for now only PL01x UART is used (old one,=20= not miniUART) in all boot component: firmware, U-Boot, kernel. - On RPi 3 firmware defaults to miniUART, use = "dtoverlay=3Dpi3-disable-bt=E2=80=9D in config.txt to revert to old behaviour - A lot of peripherals are disabled in default dtb, to enable them add = this line to config.txt before any dtoverlay line: dtparam=3Daudio=3Don,i2c_arm=3Don,spi=3Don - MMC is not included in dtb, add "dtoverlay=3Dmmc=E2=80=9D to = config.txt to enable it - Stock U-Boot uses miniUART as console so manual patching of include/configs/rpi.h required. Just search for = CONFIG_BCM283X_MU_SERIAL or CONFIG_PL01X_SERIAL - ubldr was switched for loader.efi, hence CONFIG_EFI is required for = U-Boot. Patch include/configs/rpi.h or pass CONFIG_EFI=3Dy to gmake when = building u-boot. Diane Bruce works on u-boot-rpi3 port that addresses all = these issues. - No crochet config for RPi 3 yet - To save you hassle, here are u-boot.bin, loader.efi, config.txt: https://people.freebsd.org/~gonzo/arm/rpi3/ Copy these files to FAT partition along with firmware mentioned = above - bootcmd for EFI would look like: fatload mmc 0 ${loadaddr} loader.efi; bootefi ${loadaddr} 0x100 where 0x100 is FDT blob address matching the value of = device_tree_address parameter in config.txt =E2=80=94=20 gonzo=