From owner-svn-src-all@freebsd.org  Fri Oct 14 08:31:34 2016
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@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 4031DC10344;
 Fri, 14 Oct 2016 08:31:34 +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 1022B8C9;
 Fri, 14 Oct 2016 08:31:33 +0000 (UTC)
 (envelope-from andrew@fubar.geek.nz)
Received: from zapp (5ec3950e.skybroadband.com [94.195.149.14])
 by kif.fubar.geek.nz (Postfix) with ESMTPSA id 72A77D78E6;
 Fri, 14 Oct 2016 08:31:26 +0000 (UTC)
Date: Fri, 14 Oct 2016 09:31:23 +0100
From: Andrew Turner <andrew@fubar.geek.nz>
To: Oleksandr Tymoshenko <gonzo@FreeBSD.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r307257 - in head/sys: arm/broadcom/bcm2835
 arm64/broadcom arm64/broadcom/bcm2837 arm64/conf conf
Message-ID: <20161014093123.606cb8f3@zapp>
In-Reply-To: <201610140337.u9E3baB7077179@repo.freebsd.org>
References: <201610140337.u9E3baB7077179@repo.freebsd.org>
X-Mailer: Claws Mail 3.14.0 (GTK+ 2.24.29; amd64-portbld-freebsd12.0)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.23
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 14 Oct 2016 08:31:34 -0000

On Fri, 14 Oct 2016 03:37:36 +0000 (UTC)
Oleksandr Tymoshenko <gonzo@FreeBSD.org> wrote:

> Author: gonzo
> Date: Fri Oct 14 03:37:35 2016
> New Revision: 307257
> URL: https://svnweb.freebsd.org/changeset/base/307257
> 
> Log:
>   Add initial Raspberry Pi 3 support
>   
>   RPI3 kernel config builds kernel compatible with latest upstream
> device tree and firmware:
> https://github.com/raspberrypi/firmware/tree/master/boot As of today
> it's 597c662a613df1144a6bc43e5f4505d83bd748ca 
>   Default console is PL01x, so pi3-disable-bt dt overlay should be
> configured in config.txt and stock U-Boot should be patched to use
> proper serial port. 
>   Yet unsupported: SMP, VCHIQ, RNG driver. RNG requires some work due
> to upstream device tree incompatibility.
>   
>   Multiple people contributed to this work over time: db@, loos@,
> manu@
> 
> Added:
>   head/sys/arm64/broadcom/
>   head/sys/arm64/broadcom/bcm2837/
>   head/sys/arm64/broadcom/bcm2837/files.bcm2837   (contents, props
> changed) head/sys/arm64/conf/RPI3   (contents, props changed)
> Modified:
>   head/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h
>   head/sys/conf/options.arm64
> 
> Modified: head/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h
> ==============================================================================
> --- head/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h	Fri Oct 14
> 03:32:20 2016	(r307256) +++
> head/sys/arm/broadcom/bcm2835/bcm2835_vcbus.h	Fri Oct 14
> 03:37:35 2016	(r307257) @@ -37,7 +37,7 @@ #define
> BCM2835_VCBUS_IO_BASE		0x7E000000 #define
> BCM2835_VCBUS_SDRAM_UNCACHED	0xC0000000 
> -#ifdef SOC_BCM2836
> +#if defined(SOC_BCM2836) || defined(SOC_BCM2837)

You could reverse the logic here to:
#ifdef SOC_BCM2835
<2835 macros>
#else
<s836/s837 macros>
#endif

>  #define	BCM2835_ARM_IO_BASE		0x3f000000
>  #define	BCM2835_VCBUS_SDRAM_BASE
> BCM2835_VCBUS_SDRAM_UNCACHED #else
> 
> Added: head/sys/arm64/broadcom/bcm2837/files.bcm2837
> ==============================================================================
> --- /dev/null	00:00:00 1970	(empty, because file is
> newly added) +++ head/sys/arm64/broadcom/bcm2837/files.bcm2837
> Fri Oct 14 03:37:35 2016	(r307257) @@ -0,0 +1,4 @@
> +# $FreeBSD$
> +
> +arm/broadcom/bcm2835/bcm2836.c		standard
This should be in files.arm64 and enabled when the SOC_ option is set.

> +kern/kern_clocksource.c			standard
This is already in files.arm64.
> 
> Added: head/sys/arm64/conf/RPI3

Why a new kernel config and not GENERIC?

...
> Modified: head/sys/conf/options.arm64
> ==============================================================================
> --- head/sys/conf/options.arm64	Fri Oct 14 03:32:20
> 2016	(r307256) +++ head/sys/conf/options.arm64	Fri Oct
> 14 03:37:35 2016	(r307257) @@ -9,5 +9,6 @@
> VFP				opt_global.h 
>  # SoC Support
>  SOC_ALLWINNER_A64		opt_soc.h
> +SOC_BCM2837			opt_global.h
This should be SOC_BRCM_BCM2837 (or maybe SOC_BRCM_BCM283X) and live in
opt_soc.h

Andrew